instantsearch.js 4.49.0 → 4.49.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. package/README.md +3 -3
  2. package/cjs/components/Answers/Answers.js +6 -16
  3. package/cjs/components/Breadcrumb/Breadcrumb.js +5 -12
  4. package/cjs/components/ClearRefinements/ClearRefinements.js +4 -11
  5. package/cjs/components/CurrentRefinements/CurrentRefinements.js +5 -12
  6. package/cjs/components/GeoSearchControls/GeoSearchButton.js +4 -6
  7. package/cjs/components/GeoSearchControls/GeoSearchControls.js +11 -20
  8. package/cjs/components/GeoSearchControls/GeoSearchToggle.js +4 -6
  9. package/cjs/components/Highlight/Highlight.js +3 -11
  10. package/cjs/components/Hits/Hits.js +8 -20
  11. package/cjs/components/InfiniteHits/InfiniteHits.js +13 -25
  12. package/cjs/components/InternalHighlight/InternalHighlight.js +0 -3
  13. package/cjs/components/MenuSelect/MenuSelect.js +9 -19
  14. package/cjs/components/Pagination/Pagination.js +10 -17
  15. package/cjs/components/Panel/Panel.js +7 -26
  16. package/cjs/components/PoweredBy/PoweredBy.js +4 -5
  17. package/cjs/components/QueryRuleCustomData/QueryRuleCustomData.js +2 -6
  18. package/cjs/components/RangeInput/RangeInput.js +16 -48
  19. package/cjs/components/RefinementList/RefinementList.js +19 -73
  20. package/cjs/components/RefinementList/RefinementListItem.js +8 -14
  21. package/cjs/components/RelevantSort/RelevantSort.js +4 -8
  22. package/cjs/components/ReverseHighlight/ReverseHighlight.js +3 -11
  23. package/cjs/components/ReverseSnippet/ReverseSnippet.js +3 -11
  24. package/cjs/components/SearchBox/SearchBox.js +25 -69
  25. package/cjs/components/Selector/Selector.js +3 -6
  26. package/cjs/components/Slider/Pit.js +3 -10
  27. package/cjs/components/Slider/Rheostat.js +63 -131
  28. package/cjs/components/Slider/Slider.js +28 -65
  29. package/cjs/components/Snippet/Snippet.js +3 -11
  30. package/cjs/components/Stats/Stats.js +7 -20
  31. package/cjs/components/Template/Template.js +8 -37
  32. package/cjs/components/ToggleRefinement/ToggleRefinement.js +4 -10
  33. package/cjs/components/VoiceSearch/VoiceSearch.js +8 -15
  34. package/cjs/connectors/answers/connectAnswers.js +21 -36
  35. package/cjs/connectors/autocomplete/connectAutocomplete.js +8 -25
  36. package/cjs/connectors/breadcrumb/connectBreadcrumb.js +17 -48
  37. package/cjs/connectors/clear-refinements/connectClearRefinements.js +27 -45
  38. package/cjs/connectors/configure/connectConfigure.js +6 -20
  39. package/cjs/connectors/configure-related-items/connectConfigureRelatedItems.js +11 -36
  40. package/cjs/connectors/current-refinements/connectCurrentRefinements.js +18 -57
  41. package/cjs/connectors/dynamic-widgets/connectDynamicWidgets.js +17 -37
  42. package/cjs/connectors/geo-search/connectGeoSearch.js +17 -47
  43. package/cjs/connectors/hierarchical-menu/connectHierarchicalMenu.js +38 -74
  44. package/cjs/connectors/hits/connectHits.js +10 -26
  45. package/cjs/connectors/hits/connectHitsWithInsights.js +0 -4
  46. package/cjs/connectors/hits-per-page/connectHitsPerPage.js +15 -38
  47. package/cjs/connectors/index.js +62 -96
  48. package/cjs/connectors/infinite-hits/connectInfiniteHits.js +26 -62
  49. package/cjs/connectors/infinite-hits/connectInfiniteHitsWithInsights.js +0 -4
  50. package/cjs/connectors/menu/connectMenu.js +28 -66
  51. package/cjs/connectors/numeric-menu/connectNumericMenu.js +24 -78
  52. package/cjs/connectors/pagination/Paginator.js +3 -20
  53. package/cjs/connectors/pagination/connectPagination.js +8 -25
  54. package/cjs/connectors/powered-by/connectPoweredBy.js +4 -13
  55. package/cjs/connectors/query-rules/connectQueryRules.js +32 -56
  56. package/cjs/connectors/range/connectRange.js +41 -101
  57. package/cjs/connectors/rating-menu/connectRatingMenu.js +23 -79
  58. package/cjs/connectors/refinement-list/connectRefinementList.js +37 -70
  59. package/cjs/connectors/relevant-sort/connectRelevantSort.js +4 -14
  60. package/cjs/connectors/search-box/connectSearchBox.js +7 -23
  61. package/cjs/connectors/sort-by/connectSortBy.js +11 -21
  62. package/cjs/connectors/stats/connectStats.js +4 -11
  63. package/cjs/connectors/toggle-refinement/connectToggleRefinement.js +29 -63
  64. package/cjs/connectors/voice-search/connectVoiceSearch.js +13 -35
  65. package/cjs/helpers/components/Highlight.js +4 -12
  66. package/cjs/helpers/components/ReverseHighlight.js +7 -19
  67. package/cjs/helpers/components/ReverseSnippet.js +7 -19
  68. package/cjs/helpers/components/Snippet.js +4 -12
  69. package/cjs/helpers/components/index.js +0 -8
  70. package/cjs/helpers/get-insights-anonymous-user-token.js +7 -12
  71. package/cjs/helpers/highlight.js +10 -16
  72. package/cjs/helpers/index.js +17 -31
  73. package/cjs/helpers/insights.js +5 -17
  74. package/cjs/helpers/reverseHighlight.js +10 -16
  75. package/cjs/helpers/reverseSnippet.js +10 -16
  76. package/cjs/helpers/snippet.js +10 -16
  77. package/cjs/index.js +3 -18
  78. package/cjs/lib/InstantSearch.js +79 -180
  79. package/cjs/lib/createHelpers.js +4 -11
  80. package/cjs/lib/formatNumber.js +0 -1
  81. package/cjs/lib/infiniteHitsCache/index.js +0 -2
  82. package/cjs/lib/infiniteHitsCache/sessionStorage.js +9 -18
  83. package/cjs/lib/insights/client.js +8 -34
  84. package/cjs/lib/insights/index.js +7 -13
  85. package/cjs/lib/insights/listener.js +4 -20
  86. package/cjs/lib/routers/history.js +63 -102
  87. package/cjs/lib/routers/index.js +0 -2
  88. package/cjs/lib/stateMappings/index.js +0 -3
  89. package/cjs/lib/stateMappings/simple.js +6 -13
  90. package/cjs/lib/stateMappings/singleIndex.js +1 -7
  91. package/cjs/lib/suit.js +2 -5
  92. package/cjs/lib/templating/index.js +0 -4
  93. package/cjs/lib/templating/prepareTemplateProps.js +8 -19
  94. package/cjs/lib/templating/renderTemplate.js +9 -24
  95. package/cjs/lib/utils/capitalize.js +0 -1
  96. package/cjs/lib/utils/checkIndexUiState.js +15 -43
  97. package/cjs/lib/utils/checkRendering.js +0 -2
  98. package/cjs/lib/utils/clearRefinements.js +2 -9
  99. package/cjs/lib/utils/concatHighlightedParts.js +1 -3
  100. package/cjs/lib/utils/createConcurrentSafePromise.js +0 -3
  101. package/cjs/lib/utils/createSendEventForFacet.js +7 -14
  102. package/cjs/lib/utils/createSendEventForHits.js +9 -33
  103. package/cjs/lib/utils/debounce.js +0 -3
  104. package/cjs/lib/utils/defer.js +0 -11
  105. package/cjs/lib/utils/detect-insights-client.js +0 -2
  106. package/cjs/lib/utils/documentation.js +2 -5
  107. package/cjs/lib/utils/escape-highlight.js +5 -22
  108. package/cjs/lib/utils/escape-html.js +9 -7
  109. package/cjs/lib/utils/escapeFacetValue.js +1 -5
  110. package/cjs/lib/utils/find.js +2 -5
  111. package/cjs/lib/utils/findIndex.js +0 -3
  112. package/cjs/lib/utils/geo-search.js +14 -34
  113. package/cjs/lib/utils/getAppIdAndApiKey.js +2 -3
  114. package/cjs/lib/utils/getContainerNode.js +0 -6
  115. package/cjs/lib/utils/getHighlightFromSiblings.js +0 -6
  116. package/cjs/lib/utils/getHighlightedParts.js +1 -4
  117. package/cjs/lib/utils/getObjectType.js +0 -1
  118. package/cjs/lib/utils/getPropertyByPath.js +0 -1
  119. package/cjs/lib/utils/getRefinements.js +13 -26
  120. package/cjs/lib/utils/getWidgetAttribute.js +0 -6
  121. package/cjs/lib/utils/hits-absolute-position.js +2 -6
  122. package/cjs/lib/utils/hits-query-id.js +2 -7
  123. package/cjs/lib/utils/index.js +0 -92
  124. package/cjs/lib/utils/isDomElement.js +0 -1
  125. package/cjs/lib/utils/isEqual.js +0 -8
  126. package/cjs/lib/utils/isFacetRefined.js +0 -1
  127. package/cjs/lib/utils/isFiniteNumber.js +0 -1
  128. package/cjs/lib/utils/isIndexWidget.js +0 -1
  129. package/cjs/lib/utils/isPlainObject.js +3 -11
  130. package/cjs/lib/utils/isSpecialClick.js +0 -1
  131. package/cjs/lib/utils/logger.js +3 -13
  132. package/cjs/lib/utils/mergeSearchParameters.js +16 -40
  133. package/cjs/lib/utils/noop.js +0 -1
  134. package/cjs/lib/utils/range.js +8 -14
  135. package/cjs/lib/utils/render-args.js +0 -2
  136. package/cjs/lib/utils/resolveSearchParameters.js +0 -3
  137. package/cjs/lib/utils/reverseHighlightedParts.js +2 -8
  138. package/cjs/lib/utils/safelyRunOnBrowser.js +7 -9
  139. package/cjs/lib/utils/serializer.js +1 -3
  140. package/cjs/lib/utils/setIndexHelperState.js +0 -5
  141. package/cjs/lib/utils/toArray.js +0 -1
  142. package/cjs/lib/utils/typedObject.js +0 -1
  143. package/cjs/lib/utils/uniq.js +0 -1
  144. package/cjs/lib/version.js +1 -1
  145. package/cjs/lib/voiceSearchHelper/index.js +8 -36
  146. package/cjs/middlewares/createInsightsMiddleware.js +15 -44
  147. package/cjs/middlewares/createMetadataMiddleware.js +4 -12
  148. package/cjs/middlewares/createRouterMiddleware.js +8 -19
  149. package/cjs/middlewares/index.js +0 -6
  150. package/cjs/types/algoliasearch.js +0 -2
  151. package/cjs/types/index.js +0 -28
  152. package/cjs/widgets/analytics/analytics.js +12 -47
  153. package/cjs/widgets/answers/answers.js +19 -39
  154. package/cjs/widgets/breadcrumb/breadcrumb.js +18 -38
  155. package/cjs/widgets/clear-refinements/clear-refinements.js +15 -35
  156. package/cjs/widgets/configure/configure.js +2 -10
  157. package/cjs/widgets/configure-related-items/configure-related-items.js +2 -10
  158. package/cjs/widgets/current-refinements/current-refinements.js +12 -30
  159. package/cjs/widgets/dynamic-widgets/dynamic-widgets.js +6 -25
  160. package/cjs/widgets/geo-search/GeoSearchRenderer.js +41 -68
  161. package/cjs/widgets/geo-search/createHTMLMarker.js +30 -60
  162. package/cjs/widgets/geo-search/defaultTemplates.js +0 -3
  163. package/cjs/widgets/geo-search/geo-search.js +27 -59
  164. package/cjs/widgets/hierarchical-menu/defaultTemplates.js +4 -7
  165. package/cjs/widgets/hierarchical-menu/hierarchical-menu.js +28 -47
  166. package/cjs/widgets/hits/hits.js +16 -37
  167. package/cjs/widgets/hits-per-page/hits-per-page.js +13 -31
  168. package/cjs/widgets/index/index.js +49 -95
  169. package/cjs/widgets/index.js +12 -50
  170. package/cjs/widgets/infinite-hits/infinite-hits.js +23 -44
  171. package/cjs/widgets/menu/defaultTemplates.js +3 -6
  172. package/cjs/widgets/menu/menu.js +23 -43
  173. package/cjs/widgets/menu-select/defaultTemplates.js +1 -3
  174. package/cjs/widgets/menu-select/menu-select.js +18 -38
  175. package/cjs/widgets/numeric-menu/defaultTemplates.js +3 -4
  176. package/cjs/widgets/numeric-menu/numeric-menu.js +17 -37
  177. package/cjs/widgets/pagination/pagination.js +32 -53
  178. package/cjs/widgets/panel/panel.js +20 -48
  179. package/cjs/widgets/places/places.js +16 -33
  180. package/cjs/widgets/powered-by/powered-by.js +10 -27
  181. package/cjs/widgets/query-rule-context/query-rule-context.js +2 -13
  182. package/cjs/widgets/query-rule-custom-data/query-rule-custom-data.js +14 -32
  183. package/cjs/widgets/range-input/range-input.js +23 -50
  184. package/cjs/widgets/range-slider/range-slider.js +28 -53
  185. package/cjs/widgets/rating-menu/defaultTemplates.js +8 -14
  186. package/cjs/widgets/rating-menu/rating-menu.js +17 -38
  187. package/cjs/widgets/refinement-list/defaultTemplates.js +5 -8
  188. package/cjs/widgets/refinement-list/refinement-list.js +39 -60
  189. package/cjs/widgets/relevant-sort/relevant-sort.js +10 -29
  190. package/cjs/widgets/search-box/defaultTemplates.js +0 -5
  191. package/cjs/widgets/search-box/search-box.js +31 -49
  192. package/cjs/widgets/sort-by/sort-by.js +11 -29
  193. package/cjs/widgets/stats/defaultTemplates.js +0 -1
  194. package/cjs/widgets/stats/stats.js +27 -57
  195. package/cjs/widgets/toggle-refinement/toggle-refinement.js +16 -36
  196. package/cjs/widgets/voice-search/defaultTemplates.js +4 -14
  197. package/cjs/widgets/voice-search/voice-search.js +17 -36
  198. package/dist/instantsearch.development.d.ts +8 -6
  199. package/dist/instantsearch.development.js +1725 -3087
  200. package/dist/instantsearch.development.js.map +1 -1
  201. package/dist/instantsearch.production.d.ts +8 -6
  202. package/dist/instantsearch.production.min.d.ts +8 -6
  203. package/dist/instantsearch.production.min.js +2 -2
  204. package/dist/instantsearch.production.min.js.map +1 -1
  205. package/es/components/Answers/Answers.js +6 -11
  206. package/es/components/Breadcrumb/Breadcrumb.js +5 -7
  207. package/es/components/ClearRefinements/ClearRefinements.js +4 -6
  208. package/es/components/CurrentRefinements/CurrentRefinements.js +7 -10
  209. package/es/components/GeoSearchControls/GeoSearchButton.js +6 -6
  210. package/es/components/GeoSearchControls/GeoSearchControls.js +11 -13
  211. package/es/components/GeoSearchControls/GeoSearchToggle.js +6 -6
  212. package/es/components/Highlight/Highlight.js +3 -7
  213. package/es/components/Hits/Hits.js +8 -15
  214. package/es/components/InfiniteHits/InfiniteHits.js +13 -20
  215. package/es/components/MenuSelect/MenuSelect.js +9 -13
  216. package/es/components/Pagination/Pagination.js +12 -15
  217. package/es/components/Panel/Panel.js +7 -20
  218. package/es/components/PoweredBy/PoweredBy.js +6 -5
  219. package/es/components/QueryRuleCustomData/QueryRuleCustomData.js +4 -4
  220. package/es/components/RangeInput/RangeInput.js +16 -43
  221. package/es/components/RefinementList/RefinementList.js +19 -64
  222. package/es/components/RefinementList/RefinementListItem.js +8 -10
  223. package/es/components/RelevantSort/RelevantSort.js +6 -6
  224. package/es/components/ReverseHighlight/ReverseHighlight.js +3 -7
  225. package/es/components/ReverseSnippet/ReverseSnippet.js +3 -7
  226. package/es/components/SearchBox/SearchBox.js +25 -63
  227. package/es/components/Selector/Selector.js +5 -5
  228. package/es/components/Slider/Pit.js +3 -7
  229. package/es/components/Slider/Rheostat.js +64 -129
  230. package/es/components/Slider/Slider.js +28 -58
  231. package/es/components/Snippet/Snippet.js +3 -7
  232. package/es/components/Stats/Stats.js +7 -15
  233. package/es/components/Template/Template.js +8 -32
  234. package/es/components/ToggleRefinement/ToggleRefinement.js +4 -6
  235. package/es/components/VoiceSearch/VoiceSearch.js +10 -13
  236. package/es/connectors/answers/connectAnswers.js +21 -35
  237. package/es/connectors/autocomplete/connectAutocomplete.js +8 -23
  238. package/es/connectors/breadcrumb/connectBreadcrumb.js +17 -46
  239. package/es/connectors/clear-refinements/connectClearRefinements.js +27 -43
  240. package/es/connectors/configure/connectConfigure.js +7 -16
  241. package/es/connectors/configure-related-items/connectConfigureRelatedItems.js +11 -31
  242. package/es/connectors/current-refinements/connectCurrentRefinements.js +18 -55
  243. package/es/connectors/dynamic-widgets/connectDynamicWidgets.js +17 -35
  244. package/es/connectors/geo-search/connectGeoSearch.js +17 -45
  245. package/es/connectors/hierarchical-menu/connectHierarchicalMenu.js +38 -72
  246. package/es/connectors/hits/connectHits.js +10 -24
  247. package/es/connectors/hits-per-page/connectHitsPerPage.js +15 -36
  248. package/es/connectors/index.d.ts +2 -1
  249. package/es/connectors/index.js +6 -3
  250. package/es/connectors/infinite-hits/connectInfiniteHits.js +26 -60
  251. package/es/connectors/menu/connectMenu.js +28 -64
  252. package/es/connectors/numeric-menu/connectNumericMenu.js +24 -76
  253. package/es/connectors/pagination/Paginator.js +3 -19
  254. package/es/connectors/pagination/connectPagination.js +8 -21
  255. package/es/connectors/powered-by/connectPoweredBy.js +4 -11
  256. package/es/connectors/query-rules/connectQueryRules.js +32 -54
  257. package/es/connectors/range/connectRange.js +41 -99
  258. package/es/connectors/rating-menu/connectRatingMenu.js +23 -77
  259. package/es/connectors/refinement-list/connectRefinementList.js +37 -68
  260. package/es/connectors/relevant-sort/connectRelevantSort.js +4 -13
  261. package/es/connectors/search-box/connectSearchBox.js +7 -21
  262. package/es/connectors/sort-by/connectSortBy.js +11 -19
  263. package/es/connectors/stats/connectStats.js +4 -9
  264. package/es/connectors/toggle-refinement/connectToggleRefinement.js +29 -61
  265. package/es/connectors/voice-search/connectVoiceSearch.js +13 -31
  266. package/es/helpers/components/Highlight.js +4 -8
  267. package/es/helpers/components/ReverseHighlight.js +7 -15
  268. package/es/helpers/components/ReverseSnippet.js +7 -15
  269. package/es/helpers/components/Snippet.js +4 -8
  270. package/es/helpers/get-insights-anonymous-user-token.js +5 -7
  271. package/es/helpers/highlight.js +9 -11
  272. package/es/helpers/insights.js +3 -10
  273. package/es/helpers/reverseHighlight.js +9 -11
  274. package/es/helpers/reverseSnippet.js +9 -11
  275. package/es/helpers/snippet.js +9 -11
  276. package/es/index.js +0 -2
  277. package/es/lib/InstantSearch.js +79 -170
  278. package/es/lib/createHelpers.js +4 -8
  279. package/es/lib/infiniteHitsCache/sessionStorage.js +9 -16
  280. package/es/lib/insights/client.js +8 -32
  281. package/es/lib/insights/listener.js +6 -18
  282. package/es/lib/routers/history.js +63 -99
  283. package/es/lib/stateMappings/simple.js +6 -12
  284. package/es/lib/stateMappings/singleIndex.js +1 -6
  285. package/es/lib/suit.js +2 -3
  286. package/es/lib/templating/prepareTemplateProps.js +8 -18
  287. package/es/lib/templating/renderTemplate.js +9 -20
  288. package/es/lib/utils/checkIndexUiState.js +18 -40
  289. package/es/lib/utils/clearRefinements.js +2 -8
  290. package/es/lib/utils/concatHighlightedParts.js +1 -1
  291. package/es/lib/utils/createConcurrentSafePromise.js +0 -2
  292. package/es/lib/utils/createSendEventForFacet.js +7 -12
  293. package/es/lib/utils/createSendEventForHits.js +8 -30
  294. package/es/lib/utils/debounce.js +0 -2
  295. package/es/lib/utils/defer.js +0 -10
  296. package/es/lib/utils/documentation.js +2 -3
  297. package/es/lib/utils/escape-highlight.js +3 -16
  298. package/es/lib/utils/escape-html.js +9 -5
  299. package/es/lib/utils/escapeFacetValue.js +0 -2
  300. package/es/lib/utils/find.js +2 -4
  301. package/es/lib/utils/findIndex.js +0 -2
  302. package/es/lib/utils/geo-search.js +14 -32
  303. package/es/lib/utils/getAppIdAndApiKey.js +2 -2
  304. package/es/lib/utils/getContainerNode.js +1 -5
  305. package/es/lib/utils/getHighlightFromSiblings.js +0 -3
  306. package/es/lib/utils/getHighlightedParts.js +1 -2
  307. package/es/lib/utils/getRefinements.js +13 -24
  308. package/es/lib/utils/getWidgetAttribute.js +0 -5
  309. package/es/lib/utils/hits-absolute-position.js +2 -5
  310. package/es/lib/utils/hits-query-id.js +2 -6
  311. package/es/lib/utils/isEqual.js +0 -7
  312. package/es/lib/utils/isPlainObject.js +3 -10
  313. package/es/lib/utils/logger.js +2 -12
  314. package/es/lib/utils/mergeSearchParameters.js +16 -37
  315. package/es/lib/utils/range.js +8 -13
  316. package/es/lib/utils/resolveSearchParameters.js +0 -2
  317. package/es/lib/utils/reverseHighlightedParts.js +2 -6
  318. package/es/lib/utils/safelyRunOnBrowser.js +7 -8
  319. package/es/lib/utils/setIndexHelperState.js +0 -2
  320. package/es/lib/version.d.ts +1 -1
  321. package/es/lib/version.js +1 -1
  322. package/es/lib/voiceSearchHelper/index.js +8 -35
  323. package/es/middlewares/createInsightsMiddleware.js +15 -41
  324. package/es/middlewares/createMetadataMiddleware.js +3 -9
  325. package/es/middlewares/createRouterMiddleware.js +8 -13
  326. package/es/types/index.js +9 -5
  327. package/es/widgets/analytics/analytics.js +12 -45
  328. package/es/widgets/answers/answers.js +19 -28
  329. package/es/widgets/breadcrumb/breadcrumb.js +18 -27
  330. package/es/widgets/clear-refinements/clear-refinements.js +15 -24
  331. package/es/widgets/configure/configure.js +3 -6
  332. package/es/widgets/configure-related-items/configure-related-items.js +2 -7
  333. package/es/widgets/current-refinements/current-refinements.js +12 -21
  334. package/es/widgets/dynamic-widgets/dynamic-widgets.js +6 -20
  335. package/es/widgets/geo-search/GeoSearchRenderer.js +41 -63
  336. package/es/widgets/geo-search/createHTMLMarker.js +30 -59
  337. package/es/widgets/geo-search/defaultTemplates.js +2 -2
  338. package/es/widgets/geo-search/geo-search.js +27 -49
  339. package/es/widgets/hierarchical-menu/defaultTemplates.js +5 -4
  340. package/es/widgets/hierarchical-menu/hierarchical-menu.js +28 -36
  341. package/es/widgets/hits/hits.js +16 -25
  342. package/es/widgets/hits-per-page/hits-per-page.js +13 -22
  343. package/es/widgets/index/index.js +49 -91
  344. package/es/widgets/index.d.ts +2 -1
  345. package/es/widgets/index.js +4 -3
  346. package/es/widgets/infinite-hits/infinite-hits.js +23 -32
  347. package/es/widgets/menu/defaultTemplates.js +4 -3
  348. package/es/widgets/menu/menu.js +23 -32
  349. package/es/widgets/menu-select/defaultTemplates.js +1 -1
  350. package/es/widgets/menu-select/menu-select.js +18 -27
  351. package/es/widgets/numeric-menu/defaultTemplates.js +4 -3
  352. package/es/widgets/numeric-menu/numeric-menu.js +17 -26
  353. package/es/widgets/pagination/pagination.js +32 -44
  354. package/es/widgets/panel/panel.js +20 -40
  355. package/es/widgets/places/places.js +16 -32
  356. package/es/widgets/powered-by/powered-by.js +10 -18
  357. package/es/widgets/query-rule-context/query-rule-context.js +2 -9
  358. package/es/widgets/query-rule-custom-data/query-rule-custom-data.js +13 -22
  359. package/es/widgets/range-input/range-input.js +23 -40
  360. package/es/widgets/range-slider/range-slider.js +28 -44
  361. package/es/widgets/rating-menu/defaultTemplates.js +9 -12
  362. package/es/widgets/rating-menu/rating-menu.js +17 -27
  363. package/es/widgets/refinement-list/defaultTemplates.js +6 -5
  364. package/es/widgets/refinement-list/refinement-list.js +39 -48
  365. package/es/widgets/relevant-sort/relevant-sort.js +10 -19
  366. package/es/widgets/search-box/defaultTemplates.js +1 -4
  367. package/es/widgets/search-box/search-box.js +31 -39
  368. package/es/widgets/sort-by/sort-by.js +11 -20
  369. package/es/widgets/stats/stats.js +26 -45
  370. package/es/widgets/toggle-refinement/toggle-refinement.js +16 -25
  371. package/es/widgets/voice-search/defaultTemplates.js +5 -13
  372. package/es/widgets/voice-search/voice-search.js +17 -26
  373. package/package.json +20 -119
  374. package/scripts/transforms/__testfixtures__/addWidget-to-addWidgets/imported.input.js +0 -1
  375. package/scripts/transforms/__testfixtures__/addWidget-to-addWidgets/imported.output.js +0 -1
  376. package/CHANGELOG.md +0 -3684
@@ -1,38 +1,23 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
-
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _preact = require("preact");
11
-
12
9
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
13
-
14
10
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
15
-
16
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
17
-
18
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
19
-
20
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
21
-
11
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
12
+ function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
13
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
22
14
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
23
-
24
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
25
-
15
+ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
26
16
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
27
-
28
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
29
-
30
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
31
-
17
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
18
+ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
32
19
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
33
-
34
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
35
-
20
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
36
21
  var KEYS = {
37
22
  DOWN: 40,
38
23
  END: 35,
@@ -46,61 +31,47 @@ var KEYS = {
46
31
  };
47
32
  var PERCENT_EMPTY = 0;
48
33
  var PERCENT_FULL = 100;
49
-
50
34
  function getPosition(value, min, max) {
51
35
  return (value - min) / (max - min) * 100;
52
36
  }
53
-
54
37
  function getValue(pos, min, max) {
55
38
  var decimal = pos / 100;
56
-
57
39
  if (pos === 0) {
58
40
  return min;
59
41
  } else if (pos === 100) {
60
42
  return max;
61
43
  }
62
-
63
44
  return Math.round((max - min) * decimal + min);
64
45
  }
65
-
66
46
  function getClassName(props) {
67
47
  var orientation = props.orientation === 'vertical' ? 'rheostat-vertical' : 'rheostat-horizontal';
68
48
  return ['rheostat', orientation].concat(props.className.split(' ')).join(' ');
69
49
  }
70
-
71
50
  function getHandleFor(ev) {
72
51
  return Number(ev.currentTarget.getAttribute('data-handle-key'));
73
52
  }
74
-
75
53
  function killEvent(ev) {
76
54
  ev.stopPropagation();
77
55
  ev.preventDefault();
78
56
  }
79
-
80
57
  function Button(props) {
81
58
  return (0, _preact.h)("button", _extends({}, props, {
82
59
  type: "button"
83
60
  }));
84
- } // Preact doesn't have builtin types for Style, JSX.HTMLAttributes['style'] is just object
85
- // maybe migrate to csstype later?
86
-
61
+ }
87
62
 
63
+ // Preact doesn't have builtin types for Style, JSX.HTMLAttributes['style'] is just object
64
+ // maybe migrate to csstype later?
88
65
  var _ref6 = (0, _preact.h)("div", {
89
66
  className: "rheostat-background"
90
67
  });
91
-
92
68
  var Rheostat = /*#__PURE__*/function (_Component) {
93
69
  _inherits(Rheostat, _Component);
94
-
95
70
  var _super = _createSuper(Rheostat);
96
-
97
71
  function Rheostat(props) {
98
72
  var _this;
99
-
100
73
  _classCallCheck(this, Rheostat);
101
-
102
74
  _this = _super.call(this, props);
103
-
104
75
  _defineProperty(_assertThisInitialized(_this), "state", {
105
76
  className: getClassName(_this.props),
106
77
  // non-null thanks to defaultProps
@@ -114,9 +85,7 @@ var Rheostat = /*#__PURE__*/function (_Component) {
114
85
  // non-null thanks to defaultProps
115
86
  values: _this.props.values
116
87
  });
117
-
118
88
  _defineProperty(_assertThisInitialized(_this), "rheostat", (0, _preact.createRef)());
119
-
120
89
  _this.getPublicState = _this.getPublicState.bind(_assertThisInitialized(_this));
121
90
  _this.getSliderBoundingBox = _this.getSliderBoundingBox.bind(_assertThisInitialized(_this));
122
91
  _this.getProgressStyle = _this.getProgressStyle.bind(_assertThisInitialized(_this));
@@ -145,34 +114,30 @@ var Rheostat = /*#__PURE__*/function (_Component) {
145
114
  _this.updateNewValues = _this.updateNewValues.bind(_assertThisInitialized(_this));
146
115
  return _this;
147
116
  }
148
-
149
117
  _createClass(Rheostat, [{
150
118
  key: "componentWillReceiveProps",
151
119
  value: function componentWillReceiveProps(nextProps) {
152
120
  var _this$props = this.props,
153
- className = _this$props.className,
154
- disabled = _this$props.disabled,
155
- min = _this$props.min,
156
- max = _this$props.max,
157
- orientation = _this$props.orientation;
121
+ className = _this$props.className,
122
+ disabled = _this$props.disabled,
123
+ min = _this$props.min,
124
+ max = _this$props.max,
125
+ orientation = _this$props.orientation;
158
126
  var _this$state = this.state,
159
- values = _this$state.values,
160
- slidingIndex = _this$state.slidingIndex;
127
+ values = _this$state.values,
128
+ slidingIndex = _this$state.slidingIndex;
161
129
  var minMaxChanged = nextProps.min !== min || nextProps.max !== max;
162
130
  var valuesChanged = values.length !== nextProps.values.length || values.some(function (value, idx) {
163
131
  return nextProps.values[idx] !== value;
164
132
  });
165
133
  var orientationChanged = nextProps.className !== className || nextProps.orientation !== orientation;
166
134
  var willBeDisabled = nextProps.disabled && !disabled;
167
-
168
135
  if (orientationChanged) {
169
136
  this.setState({
170
137
  className: getClassName(nextProps)
171
138
  });
172
139
  }
173
-
174
140
  if (minMaxChanged || valuesChanged) this.updateNewValues(nextProps);
175
-
176
141
  if (willBeDisabled && slidingIndex !== null) {
177
142
  this.endSlide();
178
143
  }
@@ -181,8 +146,8 @@ var Rheostat = /*#__PURE__*/function (_Component) {
181
146
  key: "getPublicState",
182
147
  value: function getPublicState() {
183
148
  var _this$props2 = this.props,
184
- min = _this$props2.min,
185
- max = _this$props2.max;
149
+ min = _this$props2.min,
150
+ max = _this$props2.max;
186
151
  var values = this.state.values;
187
152
  return {
188
153
  max: max,
@@ -208,7 +173,6 @@ var Rheostat = /*#__PURE__*/function (_Component) {
208
173
  value: function getProgressStyle(idx) {
209
174
  var handlePos = this.state.handlePos;
210
175
  var value = handlePos[idx];
211
-
212
176
  if (idx === 0) {
213
177
  return this.props.orientation === 'vertical' ? {
214
178
  height: "".concat(value, "%"),
@@ -218,7 +182,6 @@ var Rheostat = /*#__PURE__*/function (_Component) {
218
182
  width: "".concat(value, "%")
219
183
  };
220
184
  }
221
-
222
185
  var prevValue = handlePos[idx - 1];
223
186
  var diffValue = value - prevValue;
224
187
  return this.props.orientation === 'vertical' ? {
@@ -260,8 +223,8 @@ var Rheostat = /*#__PURE__*/function (_Component) {
260
223
  value: function getSnapPosition(positionPercent) {
261
224
  if (!this.props.snap) return positionPercent;
262
225
  var _ref = this.props,
263
- max = _ref.max,
264
- min = _ref.min;
226
+ max = _ref.max,
227
+ min = _ref.min;
265
228
  var value = getValue(positionPercent, min, max);
266
229
  var snapValue = this.getClosestSnapPoint(value);
267
230
  return getPosition(snapValue, min, max);
@@ -270,32 +233,27 @@ var Rheostat = /*#__PURE__*/function (_Component) {
270
233
  key: "getNextPositionForKey",
271
234
  value: function getNextPositionForKey(idx, keyCode) {
272
235
  var _stepMultiplier;
273
-
274
236
  var _this$state2 = this.state,
275
- handlePos = _this$state2.handlePos,
276
- values = _this$state2.values;
237
+ handlePos = _this$state2.handlePos,
238
+ values = _this$state2.values;
277
239
  var _ref2 = this.props,
278
- max = _ref2.max,
279
- min = _ref2.min,
280
- snapPoints = _ref2.snapPoints;
240
+ max = _ref2.max,
241
+ min = _ref2.min,
242
+ snapPoints = _ref2.snapPoints;
281
243
  var shouldSnap = this.props.snap;
282
244
  var proposedValue = values[idx];
283
245
  var proposedPercentage = handlePos[idx];
284
246
  var originalPercentage = proposedPercentage;
285
247
  var stepValue = 1;
286
-
287
248
  if (max >= 100) {
288
249
  proposedPercentage = Math.round(proposedPercentage);
289
250
  } else {
290
251
  stepValue = 100 / (max - min);
291
252
  }
292
-
293
253
  var currentIndex = null;
294
-
295
254
  if (shouldSnap) {
296
255
  currentIndex = snapPoints.indexOf(this.getClosestSnapPoint(values[idx]));
297
256
  }
298
-
299
257
  var stepMultiplier = (_stepMultiplier = {}, _defineProperty(_stepMultiplier, KEYS.LEFT, function (v) {
300
258
  return v * -1;
301
259
  }), _defineProperty(_stepMultiplier, KEYS.RIGHT, function (v) {
@@ -309,38 +267,34 @@ var Rheostat = /*#__PURE__*/function (_Component) {
309
267
  }), _defineProperty(_stepMultiplier, KEYS.PAGE_UP, function (v) {
310
268
  return v > 1 ? v : v * 10;
311
269
  }), _stepMultiplier);
312
-
313
270
  if (Object.prototype.hasOwnProperty.call(stepMultiplier, keyCode)) {
314
271
  proposedPercentage += stepMultiplier[keyCode](stepValue);
315
-
316
272
  if (shouldSnap) {
317
- if (!currentIndex) {// nothing happens
273
+ if (!currentIndex) {
274
+ // nothing happens
318
275
  } else if (proposedPercentage > originalPercentage) {
319
276
  // move cursor right unless overflow
320
277
  if (currentIndex < snapPoints.length - 1) {
321
278
  proposedValue = snapPoints[currentIndex + 1];
322
- } // move cursor left unless there is overflow
323
-
279
+ }
280
+ // move cursor left unless there is overflow
324
281
  } else if (currentIndex > 0) {
325
282
  proposedValue = snapPoints[currentIndex - 1];
326
283
  }
327
284
  }
328
285
  } else if (keyCode === KEYS.HOME) {
329
286
  proposedPercentage = PERCENT_EMPTY;
330
-
331
287
  if (shouldSnap) {
332
288
  proposedValue = snapPoints[0];
333
289
  }
334
290
  } else if (keyCode === KEYS.END) {
335
291
  proposedPercentage = PERCENT_FULL;
336
-
337
292
  if (shouldSnap) {
338
293
  proposedValue = snapPoints[snapPoints.length - 1];
339
294
  }
340
295
  } else {
341
296
  return null;
342
297
  }
343
-
344
298
  return shouldSnap ? getPosition(proposedValue, min, max) : proposedPercentage;
345
299
  }
346
300
  }, {
@@ -348,8 +302,8 @@ var Rheostat = /*#__PURE__*/function (_Component) {
348
302
  value: function getNextState(idx, proposedPosition) {
349
303
  var handlePos = this.state.handlePos;
350
304
  var _ref3 = this.props,
351
- max = _ref3.max,
352
- min = _ref3.min;
305
+ max = _ref3.max,
306
+ min = _ref3.min;
353
307
  var actualPosition = this.validatePosition(idx, proposedPosition);
354
308
  var nextHandlePos = handlePos.map(function (pos, index) {
355
309
  return index === idx ? actualPosition : pos;
@@ -415,12 +369,10 @@ var Rheostat = /*#__PURE__*/function (_Component) {
415
369
  key: "handleTouchSlide",
416
370
  value: function handleTouchSlide(ev) {
417
371
  if (this.state.slidingIndex === null) return;
418
-
419
372
  if (ev.changedTouches.length > 1) {
420
373
  this.endSlide();
421
374
  return;
422
375
  }
423
-
424
376
  var touch = ev.changedTouches[0];
425
377
  this.handleSlide(touch.clientX, touch.clientY);
426
378
  killEvent(ev);
@@ -429,11 +381,10 @@ var Rheostat = /*#__PURE__*/function (_Component) {
429
381
  key: "handleSlide",
430
382
  value: function handleSlide(x, y) {
431
383
  var _this$state3 = this.state,
432
- idx = _this$state3.slidingIndex,
433
- sliderBox = _this$state3.sliderBox;
384
+ idx = _this$state3.slidingIndex,
385
+ sliderBox = _this$state3.sliderBox;
434
386
  var positionPercent = this.props.orientation === 'vertical' ? (y - sliderBox.top) / sliderBox.height * PERCENT_FULL : (x - sliderBox.left) / sliderBox.width * PERCENT_FULL;
435
387
  this.slideTo(idx, positionPercent);
436
-
437
388
  if (this.canMove(idx, positionPercent)) {
438
389
  // update mouse positions
439
390
  this.setState({
@@ -449,7 +400,6 @@ var Rheostat = /*#__PURE__*/function (_Component) {
449
400
  key: "endSlide",
450
401
  value: function endSlide() {
451
402
  var _this2 = this;
452
-
453
403
  var idx = this.state.slidingIndex;
454
404
  this.setState({
455
405
  slidingIndex: null
@@ -459,7 +409,6 @@ var Rheostat = /*#__PURE__*/function (_Component) {
459
409
  document.removeEventListener('touchmove', this.handleTouchSlide, false);
460
410
  document.removeEventListener('mousemove', this.handleMouseSlide, false);
461
411
  if (this.props.onSliderDragEnd) this.props.onSliderDragEnd();
462
-
463
412
  if (this.props.snap) {
464
413
  var positionPercent = this.getSnapPosition(this.state.handlePos[idx]);
465
414
  this.slideTo(idx, positionPercent, function () {
@@ -473,19 +422,19 @@ var Rheostat = /*#__PURE__*/function (_Component) {
473
422
  key: "handleClick",
474
423
  value: function handleClick(ev) {
475
424
  var _this3 = this;
476
-
477
425
  if (ev.target.getAttribute('data-handle-key')) {
478
426
  return;
479
- } // Calculate the position of the slider on the page so we can determine
480
- // the position where you click in relativity.
481
-
427
+ }
482
428
 
429
+ // Calculate the position of the slider on the page so we can determine
430
+ // the position where you click in relativity.
483
431
  var sliderBox = this.getSliderBoundingBox();
484
432
  var positionDecimal = this.props.orientation === 'vertical' ? (ev.clientY - sliderBox.top) / sliderBox.height : (ev.clientX - sliderBox.left) / sliderBox.width;
485
433
  var positionPercent = positionDecimal * PERCENT_FULL;
486
434
  var handleId = this.getClosestHandle(positionPercent);
487
- var validPositionPercent = this.getSnapPosition(positionPercent); // Move the handle there
435
+ var validPositionPercent = this.getSnapPosition(positionPercent);
488
436
 
437
+ // Move the handle there
489
438
  this.slideTo(handleId, validPositionPercent, function () {
490
439
  return _this3.fireChangeEvent();
491
440
  });
@@ -495,34 +444,30 @@ var Rheostat = /*#__PURE__*/function (_Component) {
495
444
  key: "handleKeydown",
496
445
  value: function handleKeydown(ev) {
497
446
  var _this4 = this;
498
-
499
447
  var idx = getHandleFor(ev);
500
-
501
448
  if (ev.keyCode === KEYS.ESC) {
502
449
  ev.currentTarget.blur();
503
450
  return;
504
451
  }
505
-
506
452
  var proposedPercentage = this.getNextPositionForKey(idx, ev.keyCode);
507
453
  if (proposedPercentage === null) return;
508
-
509
454
  if (this.canMove(idx, proposedPercentage)) {
510
455
  this.slideTo(idx, proposedPercentage, function () {
511
456
  return _this4.fireChangeEvent();
512
457
  });
513
458
  if (this.props.onKeyPress) this.props.onKeyPress();
514
459
  }
515
-
516
460
  killEvent(ev);
517
- } // Make sure the proposed position respects the bounds and
518
- // does not collide with other handles too much.
461
+ }
519
462
 
463
+ // Make sure the proposed position respects the bounds and
464
+ // does not collide with other handles too much.
520
465
  }, {
521
466
  key: "validatePosition",
522
467
  value: function validatePosition(idx, proposedPosition) {
523
468
  var _this$state4 = this.state,
524
- handlePos = _this$state4.handlePos,
525
- handleDimensions = _this$state4.handleDimensions;
469
+ handlePos = _this$state4.handlePos,
470
+ handleDimensions = _this$state4.handleDimensions;
526
471
  return Math.max(Math.min(proposedPosition, handlePos[idx + 1] !== undefined ? handlePos[idx + 1] - handleDimensions : PERCENT_FULL // 100% is the highest value
527
472
  ), handlePos[idx - 1] !== undefined ? handlePos[idx - 1] + handleDimensions : PERCENT_EMPTY // 0% is the lowest value
528
473
  );
@@ -531,16 +476,13 @@ var Rheostat = /*#__PURE__*/function (_Component) {
531
476
  key: "validateValues",
532
477
  value: function validateValues(proposedValues, props) {
533
478
  var _ref4 = props || this.props,
534
- max = _ref4.max,
535
- min = _ref4.min;
536
-
479
+ max = _ref4.max,
480
+ min = _ref4.min;
537
481
  return proposedValues.map(function (value, idx, values) {
538
482
  var realValue = Math.max(Math.min(value, max), min);
539
-
540
483
  if (values.length && realValue < values[idx - 1]) {
541
484
  return values[idx - 1];
542
485
  }
543
-
544
486
  return realValue;
545
487
  });
546
488
  }
@@ -548,8 +490,8 @@ var Rheostat = /*#__PURE__*/function (_Component) {
548
490
  key: "canMove",
549
491
  value: function canMove(idx, proposedPosition) {
550
492
  var _this$state5 = this.state,
551
- handlePos = _this$state5.handlePos,
552
- handleDimensions = _this$state5.handleDimensions;
493
+ handlePos = _this$state5.handlePos,
494
+ handleDimensions = _this$state5.handleDimensions;
553
495
  if (proposedPosition < PERCENT_EMPTY) return false;
554
496
  if (proposedPosition > PERCENT_FULL) return false;
555
497
  var nextHandlePosition = handlePos[idx + 1] !== undefined ? handlePos[idx + 1] - handleDimensions : Infinity;
@@ -568,7 +510,6 @@ var Rheostat = /*#__PURE__*/function (_Component) {
568
510
  key: "slideTo",
569
511
  value: function slideTo(idx, proposedPosition, onAfterSet) {
570
512
  var _this5 = this;
571
-
572
513
  var nextState = this.getNextState(idx, proposedPosition);
573
514
  this.setState(nextState, function () {
574
515
  var onValuesUpdated = _this5.props.onValuesUpdated;
@@ -580,16 +521,13 @@ var Rheostat = /*#__PURE__*/function (_Component) {
580
521
  key: "updateNewValues",
581
522
  value: function updateNewValues(nextProps) {
582
523
  var _this6 = this;
583
-
584
524
  var slidingIndex = this.state.slidingIndex; // Don't update while the slider is sliding
585
-
586
525
  if (slidingIndex !== null) {
587
526
  return;
588
527
  }
589
-
590
528
  var max = nextProps.max,
591
- min = nextProps.min,
592
- values = nextProps.values;
529
+ min = nextProps.min,
530
+ values = nextProps.values;
593
531
  var nextValues = this.validateValues(values, nextProps);
594
532
  this.setState({
595
533
  handlePos: nextValues.map(function (value) {
@@ -604,22 +542,20 @@ var Rheostat = /*#__PURE__*/function (_Component) {
604
542
  key: "render",
605
543
  value: function render() {
606
544
  var _this7 = this;
607
-
608
545
  var _ref5 = this.props,
609
- children = _ref5.children,
610
- disabled = _ref5.disabled,
611
- Handle = _ref5.handle,
612
- max = _ref5.max,
613
- min = _ref5.min,
614
- orientation = _ref5.orientation,
615
- PitComponent = _ref5.pitComponent,
616
- pitPoints = _ref5.pitPoints,
617
- ProgressBar = _ref5.progressBar; // all required thanks to defaultProps
618
-
546
+ children = _ref5.children,
547
+ disabled = _ref5.disabled,
548
+ Handle = _ref5.handle,
549
+ max = _ref5.max,
550
+ min = _ref5.min,
551
+ orientation = _ref5.orientation,
552
+ PitComponent = _ref5.pitComponent,
553
+ pitPoints = _ref5.pitPoints,
554
+ ProgressBar = _ref5.progressBar; // all required thanks to defaultProps
619
555
  var _this$state6 = this.state,
620
- className = _this$state6.className,
621
- handlePos = _this$state6.handlePos,
622
- values = _this$state6.values;
556
+ className = _this$state6.className,
557
+ handlePos = _this$state6.handlePos,
558
+ values = _this$state6.values;
623
559
  return (0, _preact.h)("div", {
624
560
  className: className,
625
561
  ref: this.rheostat,
@@ -655,7 +591,6 @@ var Rheostat = /*#__PURE__*/function (_Component) {
655
591
  if (idx === 0 && arr.length > 1) {
656
592
  return null;
657
593
  }
658
-
659
594
  return (0, _preact.h)(ProgressBar, {
660
595
  className: "rheostat-progress",
661
596
  key: "progress-bar-".concat(idx),
@@ -677,10 +612,8 @@ var Rheostat = /*#__PURE__*/function (_Component) {
677
612
  }), children);
678
613
  }
679
614
  }]);
680
-
681
615
  return Rheostat;
682
616
  }(_preact.Component);
683
-
684
617
  _defineProperty(Rheostat, "defaultProps", {
685
618
  className: '',
686
619
  children: null,
@@ -703,6 +636,5 @@ _defineProperty(Rheostat, "defaultProps", {
703
636
  snapPoints: [],
704
637
  values: [PERCENT_EMPTY]
705
638
  });
706
-
707
639
  var _default = Rheostat;
708
640
  exports.default = _default;