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,30 +1,19 @@
1
- function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
2
-
1
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
3
2
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
4
-
5
3
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
6
-
7
4
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
-
9
5
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
10
-
11
- function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
12
-
6
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
13
7
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
-
15
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
16
-
17
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
18
-
8
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
10
  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; }
20
-
21
11
  import { checkRendering, createDocumentationMessageGenerator, isFiniteNumber, noop } from "../../lib/utils/index.js";
22
12
  var withUsage = createDocumentationMessageGenerator({
23
13
  name: 'numeric-menu',
24
14
  connector: true
25
15
  });
26
16
  var $$type = 'ais.numericMenu';
27
-
28
17
  var createSendEvent = function createSendEvent(_ref) {
29
18
  var instantSearchInstance = _ref.instantSearchInstance;
30
19
  return function () {
@@ -34,34 +23,30 @@ var createSendEvent = function createSendEvent(_ref) {
34
23
  }
35
24
  };
36
25
  };
37
-
38
26
  var connectNumericMenu = function connectNumericMenu(renderFn) {
39
27
  var unmountFn = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : noop;
40
28
  checkRendering(renderFn, withUsage());
41
29
  return function (widgetParams) {
42
30
  var _ref2 = widgetParams || {},
43
- _ref2$attribute = _ref2.attribute,
44
- attribute = _ref2$attribute === void 0 ? '' : _ref2$attribute,
45
- _ref2$items = _ref2.items,
46
- items = _ref2$items === void 0 ? [] : _ref2$items,
47
- _ref2$transformItems = _ref2.transformItems,
48
- transformItems = _ref2$transformItems === void 0 ? function (item) {
49
- return item;
50
- } : _ref2$transformItems;
51
-
31
+ _ref2$attribute = _ref2.attribute,
32
+ attribute = _ref2$attribute === void 0 ? '' : _ref2$attribute,
33
+ _ref2$items = _ref2.items,
34
+ items = _ref2$items === void 0 ? [] : _ref2$items,
35
+ _ref2$transformItems = _ref2.transformItems,
36
+ transformItems = _ref2$transformItems === void 0 ? function (item) {
37
+ return item;
38
+ } : _ref2$transformItems;
52
39
  if (attribute === '') {
53
40
  throw new Error(withUsage('The `attribute` option is required.'));
54
41
  }
55
-
56
42
  if (!items || items.length === 0) {
57
43
  throw new Error(withUsage('The `items` option expects an array of objects.'));
58
44
  }
59
-
60
45
  var prepareItems = function prepareItems(state) {
61
46
  return items.map(function (_ref3) {
62
47
  var start = _ref3.start,
63
- end = _ref3.end,
64
- label = _ref3.label;
48
+ end = _ref3.end,
49
+ label = _ref3.label;
65
50
  return {
66
51
  label: label,
67
52
  value: encodeURI(JSON.stringify({
@@ -76,7 +61,6 @@ var connectNumericMenu = function connectNumericMenu(renderFn) {
76
61
  };
77
62
  });
78
63
  };
79
-
80
64
  var connectorState = {};
81
65
  return {
82
66
  $$type: $$type,
@@ -101,20 +85,16 @@ var connectNumericMenu = function connectNumericMenu(renderFn) {
101
85
  var searchParameters = _ref5.searchParameters;
102
86
  var values = searchParameters.getNumericRefinements(attribute);
103
87
  var equal = values['='] && values['='][0];
104
-
105
88
  if (equal || equal === 0) {
106
89
  return _objectSpread(_objectSpread({}, uiState), {}, {
107
90
  numericMenu: _objectSpread(_objectSpread({}, uiState.numericMenu), {}, _defineProperty({}, attribute, "".concat(values['='])))
108
91
  });
109
92
  }
110
-
111
93
  var min = values['>='] && values['>='][0] || '';
112
94
  var max = values['<='] && values['<='][0] || '';
113
-
114
95
  if (min === '' && max === '') {
115
96
  return uiState;
116
97
  }
117
-
118
98
  return _objectSpread(_objectSpread({}, uiState), {}, {
119
99
  numericMenu: _objectSpread(_objectSpread({}, uiState.numericMenu), {}, _defineProperty({}, attribute, "".concat(min, ":").concat(max)))
120
100
  });
@@ -123,24 +103,19 @@ var connectNumericMenu = function connectNumericMenu(renderFn) {
123
103
  var uiState = _ref6.uiState;
124
104
  var value = uiState.numericMenu && uiState.numericMenu[attribute];
125
105
  var withoutRefinements = searchParameters.clearRefinements(attribute);
126
-
127
106
  if (!value) {
128
107
  return withoutRefinements.setQueryParameters({
129
108
  numericRefinements: _objectSpread(_objectSpread({}, withoutRefinements.numericRefinements), {}, _defineProperty({}, attribute, {}))
130
109
  });
131
110
  }
132
-
133
111
  var isExact = value.indexOf(':') === -1;
134
-
135
112
  if (isExact) {
136
113
  return withoutRefinements.addNumericRefinement(attribute, '=', Number(value));
137
114
  }
138
-
139
115
  var _value$split$map = value.split(':').map(parseFloat),
140
- _value$split$map2 = _slicedToArray(_value$split$map, 2),
141
- min = _value$split$map2[0],
142
- max = _value$split$map2[1];
143
-
116
+ _value$split$map2 = _slicedToArray(_value$split$map, 2),
117
+ min = _value$split$map2[0],
118
+ max = _value$split$map2[1];
144
119
  var withMinRefinement = isFiniteNumber(min) ? withoutRefinements.addNumericRefinement(attribute, '>=', min) : withoutRefinements;
145
120
  var withMaxRefinement = isFiniteNumber(max) ? withMinRefinement.addNumericRefinement(attribute, '<=', max) : withMinRefinement;
146
121
  return withMaxRefinement;
@@ -152,11 +127,10 @@ var connectNumericMenu = function connectNumericMenu(renderFn) {
152
127
  },
153
128
  getWidgetRenderState: function getWidgetRenderState(_ref7) {
154
129
  var results = _ref7.results,
155
- state = _ref7.state,
156
- instantSearchInstance = _ref7.instantSearchInstance,
157
- helper = _ref7.helper,
158
- createURL = _ref7.createURL;
159
-
130
+ state = _ref7.state,
131
+ instantSearchInstance = _ref7.instantSearchInstance,
132
+ helper = _ref7.helper,
133
+ createURL = _ref7.createURL;
160
134
  if (!connectorState.refine) {
161
135
  connectorState.refine = function (facetValue) {
162
136
  var refinedState = getRefinedState(helper.state, attribute, facetValue);
@@ -164,7 +138,6 @@ var connectNumericMenu = function connectNumericMenu(renderFn) {
164
138
  helper.setState(refinedState).search();
165
139
  };
166
140
  }
167
-
168
141
  if (!connectorState.createURL) {
169
142
  connectorState.createURL = function (newState) {
170
143
  return function (facetValue) {
@@ -172,24 +145,19 @@ var connectNumericMenu = function connectNumericMenu(renderFn) {
172
145
  };
173
146
  };
174
147
  }
175
-
176
148
  if (!connectorState.sendEvent) {
177
149
  connectorState.sendEvent = createSendEvent({
178
150
  instantSearchInstance: instantSearchInstance
179
151
  });
180
152
  }
181
-
182
153
  var hasNoResults = results ? results.nbHits === 0 : true;
183
154
  var preparedItems = prepareItems(state);
184
155
  var allIsSelected = true;
185
-
186
156
  var _iterator = _createForOfIteratorHelper(preparedItems),
187
- _step;
188
-
157
+ _step;
189
158
  try {
190
159
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
191
160
  var item = _step.value;
192
-
193
161
  if (item.isRefined && decodeURI(item.value) !== '{}') {
194
162
  allIsSelected = false;
195
163
  break;
@@ -200,7 +168,6 @@ var connectNumericMenu = function connectNumericMenu(renderFn) {
200
168
  } finally {
201
169
  _iterator.f();
202
170
  }
203
-
204
171
  return {
205
172
  createURL: connectorState.createURL(state),
206
173
  items: transformItems(preparedItems, {
@@ -216,11 +183,9 @@ var connectNumericMenu = function connectNumericMenu(renderFn) {
216
183
  };
217
184
  };
218
185
  };
219
-
220
186
  function isRefined(state, attribute, option) {
221
187
  // @TODO: same as another spot, why is this mixing arrays & elements?
222
188
  var currentRefinements = state.getNumericRefinements(attribute);
223
-
224
189
  if (option.start !== undefined && option.end !== undefined) {
225
190
  if (option.start === option.end) {
226
191
  return hasNumericRefinement(currentRefinements, '=', option.start);
@@ -228,79 +193,62 @@ function isRefined(state, attribute, option) {
228
193
  return hasNumericRefinement(currentRefinements, '>=', option.start) && hasNumericRefinement(currentRefinements, '<=', option.end);
229
194
  }
230
195
  }
231
-
232
196
  if (option.start !== undefined) {
233
197
  return hasNumericRefinement(currentRefinements, '>=', option.start);
234
198
  }
235
-
236
199
  if (option.end !== undefined) {
237
200
  return hasNumericRefinement(currentRefinements, '<=', option.end);
238
201
  }
239
-
240
202
  if (option.start === undefined && option.end === undefined) {
241
203
  return Object.keys(currentRefinements).every(function (operator) {
242
204
  return (currentRefinements[operator] || []).length === 0;
243
205
  });
244
206
  }
245
-
246
207
  return false;
247
208
  }
248
-
249
209
  function getRefinedState(state, attribute, facetValue) {
250
210
  var resolvedState = state;
251
- var refinedOption = JSON.parse(decodeURI(facetValue)); // @TODO: why is array / element mixed here & hasRefinements; seems wrong?
211
+ var refinedOption = JSON.parse(decodeURI(facetValue));
252
212
 
213
+ // @TODO: why is array / element mixed here & hasRefinements; seems wrong?
253
214
  var currentRefinements = resolvedState.getNumericRefinements(attribute);
254
-
255
215
  if (refinedOption.start === undefined && refinedOption.end === undefined) {
256
216
  return resolvedState.removeNumericRefinement(attribute);
257
217
  }
258
-
259
218
  if (!isRefined(resolvedState, attribute, refinedOption)) {
260
219
  resolvedState = resolvedState.removeNumericRefinement(attribute);
261
220
  }
262
-
263
221
  if (refinedOption.start !== undefined && refinedOption.end !== undefined) {
264
222
  if (refinedOption.start > refinedOption.end) {
265
223
  throw new Error('option.start should be > to option.end');
266
224
  }
267
-
268
225
  if (refinedOption.start === refinedOption.end) {
269
226
  if (hasNumericRefinement(currentRefinements, '=', refinedOption.start)) {
270
227
  resolvedState = resolvedState.removeNumericRefinement(attribute, '=', refinedOption.start);
271
228
  } else {
272
229
  resolvedState = resolvedState.addNumericRefinement(attribute, '=', refinedOption.start);
273
230
  }
274
-
275
231
  return resolvedState;
276
232
  }
277
233
  }
278
-
279
234
  if (refinedOption.start !== undefined) {
280
235
  if (hasNumericRefinement(currentRefinements, '>=', refinedOption.start)) {
281
236
  resolvedState = resolvedState.removeNumericRefinement(attribute, '>=', refinedOption.start);
282
237
  }
283
-
284
238
  resolvedState = resolvedState.addNumericRefinement(attribute, '>=', refinedOption.start);
285
239
  }
286
-
287
240
  if (refinedOption.end !== undefined) {
288
241
  if (hasNumericRefinement(currentRefinements, '<=', refinedOption.end)) {
289
242
  resolvedState = resolvedState.removeNumericRefinement(attribute, '<=', refinedOption.end);
290
243
  }
291
-
292
244
  resolvedState = resolvedState.addNumericRefinement(attribute, '<=', refinedOption.end);
293
245
  }
294
-
295
246
  if (typeof resolvedState.page === 'number') {
296
247
  resolvedState.page = 0;
297
248
  }
298
-
299
249
  return resolvedState;
300
250
  }
301
-
302
251
  function hasNumericRefinement(currentRefinements, operator, value) {
303
252
  return currentRefinements[operator] !== undefined && currentRefinements[operator].includes(value);
304
253
  }
305
-
306
254
  export default connectNumericMenu;
@@ -1,43 +1,31 @@
1
1
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
2
-
3
2
  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); } }
4
-
5
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
6
-
3
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
7
4
  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; }
8
-
9
5
  import { range } from "../../lib/utils/index.js";
10
-
11
6
  var Paginator = /*#__PURE__*/function () {
12
7
  function Paginator(params) {
13
8
  _classCallCheck(this, Paginator);
14
-
15
9
  _defineProperty(this, "currentPage", void 0);
16
-
17
10
  _defineProperty(this, "total", void 0);
18
-
19
11
  _defineProperty(this, "padding", void 0);
20
-
21
12
  this.currentPage = params.currentPage;
22
13
  this.total = params.total;
23
14
  this.padding = params.padding;
24
15
  }
25
-
26
16
  _createClass(Paginator, [{
27
17
  key: "pages",
28
18
  value: function pages() {
29
19
  var total = this.total,
30
- currentPage = this.currentPage,
31
- padding = this.padding;
20
+ currentPage = this.currentPage,
21
+ padding = this.padding;
32
22
  if (total === 0) return [0];
33
23
  var totalDisplayedPages = this.nbPagesDisplayed(padding, total);
34
-
35
24
  if (totalDisplayedPages === total) {
36
25
  return range({
37
26
  end: total
38
27
  });
39
28
  }
40
-
41
29
  var paddingLeft = this.calculatePaddingLeft(currentPage, padding, total, totalDisplayedPages);
42
30
  var paddingRight = totalDisplayedPages - paddingLeft;
43
31
  var first = currentPage - paddingLeft;
@@ -58,11 +46,9 @@ var Paginator = /*#__PURE__*/function () {
58
46
  if (current <= padding) {
59
47
  return current;
60
48
  }
61
-
62
49
  if (current >= total - padding) {
63
50
  return totalDisplayedPages - (total - current);
64
51
  }
65
-
66
52
  return padding;
67
53
  }
68
54
  }, {
@@ -76,8 +62,6 @@ var Paginator = /*#__PURE__*/function () {
76
62
  return this.currentPage === 0;
77
63
  }
78
64
  }]);
79
-
80
65
  return Paginator;
81
66
  }();
82
-
83
67
  export default Paginator;
@@ -1,16 +1,12 @@
1
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
2
-
3
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4
-
1
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
3
  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; }
6
-
7
4
  import { checkRendering, createDocumentationMessageGenerator, noop } from "../../lib/utils/index.js";
8
5
  import Paginator from "./Paginator.js";
9
6
  var withUsage = createDocumentationMessageGenerator({
10
7
  name: 'pagination',
11
8
  connector: true
12
9
  });
13
-
14
10
  /**
15
11
  * **Pagination** connector provides the logic to build a widget that will let the user
16
12
  * choose the current page of the results.
@@ -23,22 +19,19 @@ var connectPagination = function connectPagination(renderFn) {
23
19
  checkRendering(renderFn, withUsage());
24
20
  return function (widgetParams) {
25
21
  var _ref = widgetParams || {},
26
- totalPages = _ref.totalPages,
27
- _ref$padding = _ref.padding,
28
- padding = _ref$padding === void 0 ? 3 : _ref$padding;
29
-
22
+ totalPages = _ref.totalPages,
23
+ _ref$padding = _ref.padding,
24
+ padding = _ref$padding === void 0 ? 3 : _ref$padding;
30
25
  var pager = new Paginator({
31
26
  currentPage: 0,
32
27
  total: 0,
33
28
  padding: padding
34
29
  });
35
30
  var connectorState = {};
36
-
37
31
  function getMaxPage(_ref2) {
38
32
  var nbPages = _ref2.nbPages;
39
33
  return totalPages !== undefined ? Math.min(totalPages, nbPages) : nbPages;
40
34
  }
41
-
42
35
  return {
43
36
  $$type: 'ais.pagination',
44
37
  init: function init(initOptions) {
@@ -61,11 +54,9 @@ var connectPagination = function connectPagination(renderFn) {
61
54
  getWidgetUiState: function getWidgetUiState(uiState, _ref4) {
62
55
  var searchParameters = _ref4.searchParameters;
63
56
  var page = searchParameters.page || 0;
64
-
65
57
  if (!page) {
66
58
  return uiState;
67
59
  }
68
-
69
60
  return _objectSpread(_objectSpread({}, uiState), {}, {
70
61
  page: page + 1
71
62
  });
@@ -77,17 +68,15 @@ var connectPagination = function connectPagination(renderFn) {
77
68
  },
78
69
  getWidgetRenderState: function getWidgetRenderState(_ref6) {
79
70
  var results = _ref6.results,
80
- helper = _ref6.helper,
81
- state = _ref6.state,
82
- createURL = _ref6.createURL;
83
-
71
+ helper = _ref6.helper,
72
+ state = _ref6.state,
73
+ createURL = _ref6.createURL;
84
74
  if (!connectorState.refine) {
85
75
  connectorState.refine = function (page) {
86
76
  helper.setPage(page);
87
77
  helper.search();
88
78
  };
89
79
  }
90
-
91
80
  if (!connectorState.createURL) {
92
81
  connectorState.createURL = function (helperState) {
93
82
  return function (page) {
@@ -95,7 +84,6 @@ var connectPagination = function connectPagination(renderFn) {
95
84
  };
96
85
  };
97
86
  }
98
-
99
87
  var page = state.page || 0;
100
88
  var nbPages = getMaxPage(results || {
101
89
  nbPages: 0
@@ -123,5 +111,4 @@ var connectPagination = function connectPagination(renderFn) {
123
111
  };
124
112
  };
125
113
  };
126
-
127
114
  export default connectPagination;
@@ -1,15 +1,11 @@
1
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
2
-
3
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4
-
1
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
3
  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; }
6
-
7
4
  import { safelyRunOnBrowser, checkRendering, createDocumentationMessageGenerator, noop } from "../../lib/utils/index.js";
8
5
  var withUsage = createDocumentationMessageGenerator({
9
6
  name: 'powered-by',
10
7
  connector: true
11
8
  });
12
-
13
9
  /**
14
10
  * **PoweredBy** connector provides the logic to build a custom widget that will displays
15
11
  * the logo to redirect to Algolia.
@@ -19,7 +15,6 @@ var connectPoweredBy = function connectPoweredBy(renderFn) {
19
15
  checkRendering(renderFn, withUsage());
20
16
  var defaultUrl = 'https://www.algolia.com/?' + 'utm_source=instantsearch.js&' + 'utm_medium=website&' + "utm_content=".concat(safelyRunOnBrowser(function (_ref) {
21
17
  var _window$location;
22
-
23
18
  var window = _ref.window;
24
19
  return ((_window$location = window.location) === null || _window$location === void 0 ? void 0 : _window$location.hostname) || '';
25
20
  }, {
@@ -29,9 +24,8 @@ var connectPoweredBy = function connectPoweredBy(renderFn) {
29
24
  }), "&") + 'utm_campaign=poweredby';
30
25
  return function (widgetParams) {
31
26
  var _ref2 = widgetParams || {},
32
- _ref2$url = _ref2.url,
33
- url = _ref2$url === void 0 ? defaultUrl : _ref2$url;
34
-
27
+ _ref2$url = _ref2.url,
28
+ url = _ref2$url === void 0 ? defaultUrl : _ref2$url;
35
29
  return {
36
30
  $$type: 'ais.poweredBy',
37
31
  init: function init(initOptions) {
@@ -63,5 +57,4 @@ var connectPoweredBy = function connectPoweredBy(renderFn) {
63
57
  };
64
58
  };
65
59
  };
66
-
67
60
  export default connectPoweredBy;