instantsearch.js 4.49.1 → 4.49.3

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 (396) hide show
  1. package/README.md +14 -8
  2. package/cjs/components/Answers/Answers.js +11 -18
  3. package/cjs/components/Breadcrumb/Breadcrumb.js +6 -13
  4. package/cjs/components/ClearRefinements/ClearRefinements.js +5 -12
  5. package/cjs/components/CurrentRefinements/CurrentRefinements.js +8 -16
  6. package/cjs/components/GeoSearchControls/GeoSearchButton.js +4 -7
  7. package/cjs/components/GeoSearchControls/GeoSearchControls.js +14 -23
  8. package/cjs/components/GeoSearchControls/GeoSearchToggle.js +4 -7
  9. package/cjs/components/Highlight/Highlight.js +5 -12
  10. package/cjs/components/Hits/Hits.js +13 -22
  11. package/cjs/components/InfiniteHits/InfiniteHits.js +18 -27
  12. package/cjs/components/InternalHighlight/InternalHighlight.js +0 -3
  13. package/cjs/components/MenuSelect/MenuSelect.js +12 -22
  14. package/cjs/components/Pagination/Pagination.js +12 -20
  15. package/cjs/components/Panel/Panel.js +9 -28
  16. package/cjs/components/PoweredBy/PoweredBy.js +4 -6
  17. package/cjs/components/QueryRuleCustomData/QueryRuleCustomData.js +3 -8
  18. package/cjs/components/RangeInput/RangeInput.js +21 -51
  19. package/cjs/components/RefinementList/RefinementList.js +30 -81
  20. package/cjs/components/RefinementList/RefinementListItem.js +9 -15
  21. package/cjs/components/RelevantSort/RelevantSort.js +5 -10
  22. package/cjs/components/ReverseHighlight/ReverseHighlight.js +5 -12
  23. package/cjs/components/ReverseSnippet/ReverseSnippet.js +5 -12
  24. package/cjs/components/SearchBox/SearchBox.js +35 -77
  25. package/cjs/components/Selector/Selector.js +3 -7
  26. package/cjs/components/Slider/Pit.js +7 -11
  27. package/cjs/components/Slider/Rheostat.js +69 -133
  28. package/cjs/components/Slider/Slider.js +39 -72
  29. package/cjs/components/Snippet/Snippet.js +5 -12
  30. package/cjs/components/Stats/Stats.js +13 -22
  31. package/cjs/components/Template/Template.js +17 -44
  32. package/cjs/components/ToggleRefinement/ToggleRefinement.js +5 -11
  33. package/cjs/components/VoiceSearch/VoiceSearch.js +9 -17
  34. package/cjs/connectors/answers/connectAnswers.js +36 -46
  35. package/cjs/connectors/autocomplete/connectAutocomplete.js +21 -35
  36. package/cjs/connectors/breadcrumb/connectBreadcrumb.js +27 -55
  37. package/cjs/connectors/clear-refinements/connectClearRefinements.js +41 -56
  38. package/cjs/connectors/configure/connectConfigure.js +17 -28
  39. package/cjs/connectors/configure-related-items/connectConfigureRelatedItems.js +21 -43
  40. package/cjs/connectors/current-refinements/connectCurrentRefinements.js +29 -65
  41. package/cjs/connectors/dynamic-widgets/connectDynamicWidgets.js +27 -45
  42. package/cjs/connectors/geo-search/connectGeoSearch.js +32 -59
  43. package/cjs/connectors/hierarchical-menu/connectHierarchicalMenu.js +50 -82
  44. package/cjs/connectors/hits/connectHits.js +25 -38
  45. package/cjs/connectors/hits/connectHitsWithInsights.js +3 -7
  46. package/cjs/connectors/hits-per-page/connectHitsPerPage.js +26 -46
  47. package/cjs/connectors/index.js +92 -126
  48. package/cjs/connectors/infinite-hits/connectInfiniteHits.js +43 -75
  49. package/cjs/connectors/infinite-hits/connectInfiniteHitsWithInsights.js +3 -7
  50. package/cjs/connectors/menu/connectMenu.js +39 -73
  51. package/cjs/connectors/numeric-menu/connectNumericMenu.js +37 -86
  52. package/cjs/connectors/pagination/Paginator.js +11 -25
  53. package/cjs/connectors/pagination/connectPagination.js +17 -31
  54. package/cjs/connectors/powered-by/connectPoweredBy.js +13 -19
  55. package/cjs/connectors/query-rules/connectQueryRules.js +44 -65
  56. package/cjs/connectors/range/connectRange.js +72 -129
  57. package/cjs/connectors/rating-menu/connectRatingMenu.js +34 -87
  58. package/cjs/connectors/refinement-list/connectRefinementList.js +51 -79
  59. package/cjs/connectors/relevant-sort/connectRelevantSort.js +11 -18
  60. package/cjs/connectors/search-box/connectSearchBox.js +15 -28
  61. package/cjs/connectors/sort-by/connectSortBy.js +21 -28
  62. package/cjs/connectors/stats/connectStats.js +12 -16
  63. package/cjs/connectors/toggle-refinement/connectToggleRefinement.js +44 -75
  64. package/cjs/connectors/voice-search/connectVoiceSearch.js +22 -41
  65. package/cjs/helpers/components/Highlight.js +11 -18
  66. package/cjs/helpers/components/ReverseHighlight.js +19 -26
  67. package/cjs/helpers/components/ReverseSnippet.js +19 -26
  68. package/cjs/helpers/components/Snippet.js +11 -18
  69. package/cjs/helpers/components/index.js +4 -12
  70. package/cjs/helpers/get-insights-anonymous-user-token.js +6 -17
  71. package/cjs/helpers/highlight.js +15 -19
  72. package/cjs/helpers/index.js +23 -37
  73. package/cjs/helpers/insights.js +9 -21
  74. package/cjs/helpers/reverseHighlight.js +16 -20
  75. package/cjs/helpers/reverseSnippet.js +16 -20
  76. package/cjs/helpers/snippet.js +15 -19
  77. package/cjs/index.js +12 -27
  78. package/cjs/lib/InstantSearch.js +108 -207
  79. package/cjs/lib/createHelpers.js +15 -19
  80. package/cjs/lib/formatNumber.js +0 -1
  81. package/cjs/lib/infiniteHitsCache/index.js +1 -3
  82. package/cjs/lib/infiniteHitsCache/sessionStorage.js +14 -22
  83. package/cjs/lib/insights/client.js +17 -40
  84. package/cjs/lib/insights/index.js +9 -15
  85. package/cjs/lib/insights/listener.js +7 -24
  86. package/cjs/lib/routers/history.js +75 -117
  87. package/cjs/lib/routers/index.js +1 -3
  88. package/cjs/lib/stateMappings/index.js +2 -5
  89. package/cjs/lib/stateMappings/simple.js +11 -14
  90. package/cjs/lib/stateMappings/singleIndex.js +6 -8
  91. package/cjs/lib/suit.js +2 -5
  92. package/cjs/lib/templating/index.js +2 -6
  93. package/cjs/lib/templating/prepareTemplateProps.js +14 -22
  94. package/cjs/lib/templating/renderTemplate.js +17 -30
  95. package/cjs/lib/utils/capitalize.js +0 -1
  96. package/cjs/lib/utils/checkIndexUiState.js +19 -47
  97. package/cjs/lib/utils/checkRendering.js +1 -3
  98. package/cjs/lib/utils/clearRefinements.js +2 -9
  99. package/cjs/lib/utils/concatHighlightedParts.js +2 -4
  100. package/cjs/lib/utils/createConcurrentSafePromise.js +0 -3
  101. package/cjs/lib/utils/createSendEventForFacet.js +8 -15
  102. package/cjs/lib/utils/createSendEventForHits.js +10 -34
  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 +1 -3
  106. package/cjs/lib/utils/documentation.js +2 -5
  107. package/cjs/lib/utils/escape-highlight.js +13 -26
  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 +21 -37
  113. package/cjs/lib/utils/getAppIdAndApiKey.js +2 -3
  114. package/cjs/lib/utils/getContainerNode.js +1 -7
  115. package/cjs/lib/utils/getHighlightFromSiblings.js +1 -7
  116. package/cjs/lib/utils/getHighlightedParts.js +2 -5
  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 +30 -45
  120. package/cjs/lib/utils/getWidgetAttribute.js +0 -6
  121. package/cjs/lib/utils/hits-absolute-position.js +6 -7
  122. package/cjs/lib/utils/hits-query-id.js +6 -8
  123. package/cjs/lib/utils/index.js +46 -138
  124. package/cjs/lib/utils/isDomElement.js +0 -1
  125. package/cjs/lib/utils/isEqual.js +2 -7
  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 +6 -16
  132. package/cjs/lib/utils/mergeSearchParameters.js +23 -43
  133. package/cjs/lib/utils/noop.js +0 -1
  134. package/cjs/lib/utils/range.js +9 -15
  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 +7 -10
  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 +2 -7
  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 +12 -37
  146. package/cjs/middlewares/createInsightsMiddleware.js +30 -54
  147. package/cjs/middlewares/createMetadataMiddleware.js +7 -15
  148. package/cjs/middlewares/createRouterMiddleware.js +16 -24
  149. package/cjs/middlewares/index.js +3 -9
  150. package/cjs/types/algoliasearch.js +0 -2
  151. package/cjs/types/index.js +14 -42
  152. package/cjs/widgets/analytics/analytics.js +22 -48
  153. package/cjs/widgets/answers/answers.js +32 -49
  154. package/cjs/widgets/breadcrumb/breadcrumb.js +31 -48
  155. package/cjs/widgets/clear-refinements/clear-refinements.js +28 -45
  156. package/cjs/widgets/configure/configure.js +9 -14
  157. package/cjs/widgets/configure-related-items/configure-related-items.js +9 -14
  158. package/cjs/widgets/current-refinements/current-refinements.js +22 -37
  159. package/cjs/widgets/dynamic-widgets/dynamic-widgets.js +17 -32
  160. package/cjs/widgets/geo-search/GeoSearchRenderer.js +50 -72
  161. package/cjs/widgets/geo-search/createHTMLMarker.js +34 -62
  162. package/cjs/widgets/geo-search/defaultTemplates.js +0 -3
  163. package/cjs/widgets/geo-search/geo-search.js +44 -70
  164. package/cjs/widgets/hierarchical-menu/defaultTemplates.js +5 -9
  165. package/cjs/widgets/hierarchical-menu/hierarchical-menu.js +41 -57
  166. package/cjs/widgets/hits/hits.js +32 -50
  167. package/cjs/widgets/hits-per-page/hits-per-page.js +24 -39
  168. package/cjs/widgets/index/index.js +71 -113
  169. package/cjs/widgets/index.js +47 -85
  170. package/cjs/widgets/infinite-hits/infinite-hits.js +39 -57
  171. package/cjs/widgets/menu/defaultTemplates.js +4 -8
  172. package/cjs/widgets/menu/menu.js +36 -53
  173. package/cjs/widgets/menu-select/defaultTemplates.js +2 -4
  174. package/cjs/widgets/menu-select/menu-select.js +31 -48
  175. package/cjs/widgets/numeric-menu/defaultTemplates.js +3 -5
  176. package/cjs/widgets/numeric-menu/numeric-menu.js +30 -47
  177. package/cjs/widgets/pagination/pagination.js +43 -61
  178. package/cjs/widgets/panel/panel.js +31 -56
  179. package/cjs/widgets/places/places.js +22 -34
  180. package/cjs/widgets/powered-by/powered-by.js +20 -34
  181. package/cjs/widgets/query-rule-context/query-rule-context.js +10 -18
  182. package/cjs/widgets/query-rule-custom-data/query-rule-custom-data.js +24 -39
  183. package/cjs/widgets/range-input/range-input.js +36 -60
  184. package/cjs/widgets/range-slider/range-slider.js +39 -61
  185. package/cjs/widgets/rating-menu/defaultTemplates.js +9 -16
  186. package/cjs/widgets/rating-menu/rating-menu.js +30 -48
  187. package/cjs/widgets/refinement-list/defaultTemplates.js +6 -10
  188. package/cjs/widgets/refinement-list/refinement-list.js +54 -72
  189. package/cjs/widgets/relevant-sort/relevant-sort.js +21 -37
  190. package/cjs/widgets/search-box/defaultTemplates.js +0 -5
  191. package/cjs/widgets/search-box/search-box.js +42 -57
  192. package/cjs/widgets/sort-by/sort-by.js +21 -36
  193. package/cjs/widgets/stats/defaultTemplates.js +1 -2
  194. package/cjs/widgets/stats/stats.js +40 -67
  195. package/cjs/widgets/toggle-refinement/toggle-refinement.js +29 -46
  196. package/cjs/widgets/voice-search/defaultTemplates.js +4 -14
  197. package/cjs/widgets/voice-search/voice-search.js +28 -44
  198. package/dist/instantsearch.development.d.ts +9 -6
  199. package/dist/instantsearch.development.js +1840 -3142
  200. package/dist/instantsearch.development.js.map +1 -1
  201. package/dist/instantsearch.production.d.ts +9 -6
  202. package/dist/instantsearch.production.min.d.ts +9 -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 +10 -13
  206. package/es/components/Breadcrumb/Breadcrumb.js +5 -8
  207. package/es/components/ClearRefinements/ClearRefinements.js +4 -7
  208. package/es/components/CurrentRefinements/CurrentRefinements.js +5 -10
  209. package/es/components/GeoSearchControls/GeoSearchButton.js +4 -6
  210. package/es/components/GeoSearchControls/GeoSearchControls.js +11 -14
  211. package/es/components/GeoSearchControls/GeoSearchToggle.js +4 -6
  212. package/es/components/Highlight/Highlight.js +4 -7
  213. package/es/components/Hits/Hits.js +12 -17
  214. package/es/components/InfiniteHits/InfiniteHits.js +17 -22
  215. package/es/components/MenuSelect/MenuSelect.js +9 -14
  216. package/es/components/Pagination/Pagination.js +10 -15
  217. package/es/components/Panel/Panel.js +8 -22
  218. package/es/components/PoweredBy/PoweredBy.js +4 -5
  219. package/es/components/QueryRuleCustomData/QueryRuleCustomData.js +2 -4
  220. package/es/components/RangeInput/RangeInput.js +20 -46
  221. package/es/components/RefinementList/RefinementList.js +24 -67
  222. package/es/components/RefinementList/RefinementListItem.js +8 -11
  223. package/es/components/RelevantSort/RelevantSort.js +4 -6
  224. package/es/components/ReverseHighlight/ReverseHighlight.js +4 -7
  225. package/es/components/ReverseSnippet/ReverseSnippet.js +4 -7
  226. package/es/components/SearchBox/SearchBox.js +29 -66
  227. package/es/components/Selector/Selector.js +3 -5
  228. package/es/components/Slider/Pit.js +7 -9
  229. package/es/components/Slider/Rheostat.js +70 -133
  230. package/es/components/Slider/Slider.js +34 -61
  231. package/es/components/Snippet/Snippet.js +4 -7
  232. package/es/components/Stats/Stats.js +12 -17
  233. package/es/components/Template/Template.js +12 -35
  234. package/es/components/ToggleRefinement/ToggleRefinement.js +4 -7
  235. package/es/components/VoiceSearch/VoiceSearch.js +8 -13
  236. package/es/connectors/answers/connectAnswers.js +27 -36
  237. package/es/connectors/autocomplete/connectAutocomplete.js +12 -24
  238. package/es/connectors/breadcrumb/connectBreadcrumb.js +22 -48
  239. package/es/connectors/clear-refinements/connectClearRefinements.js +32 -45
  240. package/es/connectors/configure/connectConfigure.js +11 -17
  241. package/es/connectors/configure-related-items/connectConfigureRelatedItems.js +16 -33
  242. package/es/connectors/current-refinements/connectCurrentRefinements.js +23 -57
  243. package/es/connectors/dynamic-widgets/connectDynamicWidgets.js +20 -36
  244. package/es/connectors/geo-search/connectGeoSearch.js +21 -46
  245. package/es/connectors/hierarchical-menu/connectHierarchicalMenu.js +44 -74
  246. package/es/connectors/hits/connectHits.js +14 -25
  247. package/es/connectors/hits-per-page/connectHitsPerPage.js +20 -38
  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 +32 -62
  251. package/es/connectors/menu/connectMenu.js +34 -66
  252. package/es/connectors/numeric-menu/connectNumericMenu.js +31 -78
  253. package/es/connectors/pagination/Paginator.js +8 -21
  254. package/es/connectors/pagination/connectPagination.js +12 -22
  255. package/es/connectors/powered-by/connectPoweredBy.js +8 -12
  256. package/es/connectors/query-rules/connectQueryRules.js +37 -56
  257. package/es/connectors/range/connectRange.js +46 -101
  258. package/es/connectors/rating-menu/connectRatingMenu.js +28 -79
  259. package/es/connectors/refinement-list/connectRefinementList.js +43 -69
  260. package/es/connectors/relevant-sort/connectRelevantSort.js +8 -14
  261. package/es/connectors/search-box/connectSearchBox.js +11 -22
  262. package/es/connectors/sort-by/connectSortBy.js +15 -20
  263. package/es/connectors/stats/connectStats.js +8 -10
  264. package/es/connectors/toggle-refinement/connectToggleRefinement.js +33 -62
  265. package/es/connectors/toggle-refinement/types.js +1 -0
  266. package/es/connectors/voice-search/connectVoiceSearch.js +17 -32
  267. package/es/helpers/components/Highlight.js +5 -8
  268. package/es/helpers/components/ReverseHighlight.js +13 -16
  269. package/es/helpers/components/ReverseSnippet.js +13 -16
  270. package/es/helpers/components/Snippet.js +5 -8
  271. package/es/helpers/get-insights-anonymous-user-token.js +2 -10
  272. package/es/helpers/highlight.js +10 -10
  273. package/es/helpers/insights.js +3 -10
  274. package/es/helpers/reverseHighlight.js +10 -10
  275. package/es/helpers/reverseSnippet.js +10 -10
  276. package/es/helpers/snippet.js +10 -10
  277. package/es/index.js +0 -2
  278. package/es/lib/InstantSearch.js +83 -172
  279. package/es/lib/createHelpers.js +8 -9
  280. package/es/lib/infiniteHitsCache/sessionStorage.js +10 -16
  281. package/es/lib/insights/client.js +12 -33
  282. package/es/lib/insights/listener.js +4 -18
  283. package/es/lib/routers/history.js +69 -108
  284. package/es/lib/stateMappings/simple.js +11 -13
  285. package/es/lib/stateMappings/singleIndex.js +6 -7
  286. package/es/lib/suit.js +2 -3
  287. package/es/lib/templating/prepareTemplateProps.js +13 -20
  288. package/es/lib/templating/renderTemplate.js +12 -21
  289. package/es/lib/utils/checkIndexUiState.js +19 -41
  290. package/es/lib/utils/clearRefinements.js +2 -8
  291. package/es/lib/utils/concatHighlightedParts.js +1 -1
  292. package/es/lib/utils/createConcurrentSafePromise.js +0 -2
  293. package/es/lib/utils/createSendEventForFacet.js +7 -12
  294. package/es/lib/utils/createSendEventForHits.js +8 -30
  295. package/es/lib/utils/debounce.js +0 -2
  296. package/es/lib/utils/defer.js +0 -10
  297. package/es/lib/utils/documentation.js +2 -3
  298. package/es/lib/utils/escape-highlight.js +9 -18
  299. package/es/lib/utils/escape-html.js +9 -5
  300. package/es/lib/utils/escapeFacetValue.js +0 -2
  301. package/es/lib/utils/find.js +2 -4
  302. package/es/lib/utils/findIndex.js +0 -2
  303. package/es/lib/utils/geo-search.js +21 -35
  304. package/es/lib/utils/getAppIdAndApiKey.js +2 -2
  305. package/es/lib/utils/getContainerNode.js +1 -5
  306. package/es/lib/utils/getHighlightFromSiblings.js +0 -3
  307. package/es/lib/utils/getHighlightedParts.js +1 -2
  308. package/es/lib/utils/getRefinements.js +28 -41
  309. package/es/lib/utils/getWidgetAttribute.js +0 -5
  310. package/es/lib/utils/hits-absolute-position.js +6 -6
  311. package/es/lib/utils/hits-query-id.js +6 -7
  312. package/es/lib/utils/isEqual.js +2 -6
  313. package/es/lib/utils/isPlainObject.js +3 -10
  314. package/es/lib/utils/logger.js +4 -14
  315. package/es/lib/utils/mergeSearchParameters.js +21 -38
  316. package/es/lib/utils/range.js +9 -14
  317. package/es/lib/utils/resolveSearchParameters.js +0 -2
  318. package/es/lib/utils/reverseHighlightedParts.js +6 -7
  319. package/es/lib/utils/safelyRunOnBrowser.js +7 -8
  320. package/es/lib/utils/setIndexHelperState.js +0 -2
  321. package/es/lib/version.d.ts +1 -1
  322. package/es/lib/version.js +1 -1
  323. package/es/lib/voiceSearchHelper/index.js +12 -36
  324. package/es/lib/voiceSearchHelper/types.js +1 -0
  325. package/es/middlewares/createInsightsMiddleware.js +21 -42
  326. package/es/middlewares/createMetadataMiddleware.js +3 -9
  327. package/es/middlewares/createRouterMiddleware.js +12 -14
  328. package/es/types/algoliasearch.js +1 -0
  329. package/es/types/component.js +1 -0
  330. package/es/types/connector.js +1 -0
  331. package/es/types/index.js +9 -5
  332. package/es/types/insights.js +1 -0
  333. package/es/types/instantsearch.js +1 -0
  334. package/es/types/middleware.js +1 -0
  335. package/es/types/render-state.js +1 -0
  336. package/es/types/results.js +1 -0
  337. package/es/types/router.js +1 -0
  338. package/es/types/templates.js +1 -0
  339. package/es/types/ui-state.js +1 -0
  340. package/es/types/utils.js +1 -0
  341. package/es/types/widget-factory.js +1 -0
  342. package/es/types/widget.js +1 -0
  343. package/es/widgets/analytics/analytics.js +19 -43
  344. package/es/widgets/answers/answers.js +23 -30
  345. package/es/widgets/breadcrumb/breadcrumb.js +22 -29
  346. package/es/widgets/clear-refinements/clear-refinements.js +19 -26
  347. package/es/widgets/configure/configure.js +7 -7
  348. package/es/widgets/configure-related-items/configure-related-items.js +6 -8
  349. package/es/widgets/current-refinements/current-refinements.js +16 -23
  350. package/es/widgets/dynamic-widgets/dynamic-widgets.js +11 -21
  351. package/es/widgets/geo-search/GeoSearchRenderer.d.js +1 -0
  352. package/es/widgets/geo-search/GeoSearchRenderer.js +47 -65
  353. package/es/widgets/geo-search/createHTMLMarker.d.ts +1 -0
  354. package/es/widgets/geo-search/createHTMLMarker.js +34 -61
  355. package/es/widgets/geo-search/defaultTemplates.js +0 -2
  356. package/es/widgets/geo-search/geo-search.d.ts +1 -0
  357. package/es/widgets/geo-search/geo-search.js +34 -50
  358. package/es/widgets/hierarchical-menu/defaultTemplates.js +4 -4
  359. package/es/widgets/hierarchical-menu/hierarchical-menu.js +32 -38
  360. package/es/widgets/hits/hits.js +20 -27
  361. package/es/widgets/hits-per-page/hits-per-page.js +17 -24
  362. package/es/widgets/index/index.js +55 -93
  363. package/es/widgets/index.d.ts +2 -1
  364. package/es/widgets/index.js +4 -3
  365. package/es/widgets/infinite-hits/infinite-hits.js +27 -34
  366. package/es/widgets/menu/defaultTemplates.js +3 -3
  367. package/es/widgets/menu/menu.js +27 -34
  368. package/es/widgets/menu-select/defaultTemplates.js +1 -1
  369. package/es/widgets/menu-select/menu-select.js +22 -29
  370. package/es/widgets/numeric-menu/defaultTemplates.js +3 -3
  371. package/es/widgets/numeric-menu/numeric-menu.js +21 -28
  372. package/es/widgets/pagination/pagination.js +36 -46
  373. package/es/widgets/panel/panel.js +24 -42
  374. package/es/widgets/places/places.js +22 -33
  375. package/es/widgets/powered-by/powered-by.js +14 -20
  376. package/es/widgets/query-rule-context/query-rule-context.js +6 -10
  377. package/es/widgets/query-rule-custom-data/query-rule-custom-data.js +17 -24
  378. package/es/widgets/range-input/range-input.js +28 -43
  379. package/es/widgets/range-slider/range-slider.js +33 -47
  380. package/es/widgets/rating-menu/defaultTemplates.js +8 -12
  381. package/es/widgets/rating-menu/rating-menu.js +21 -29
  382. package/es/widgets/refinement-list/defaultTemplates.js +5 -5
  383. package/es/widgets/refinement-list/refinement-list.js +43 -50
  384. package/es/widgets/relevant-sort/relevant-sort.js +14 -21
  385. package/es/widgets/search-box/defaultTemplates.js +0 -4
  386. package/es/widgets/search-box/search-box.js +35 -41
  387. package/es/widgets/sort-by/sort-by.js +15 -22
  388. package/es/widgets/stats/stats.js +30 -47
  389. package/es/widgets/toggle-refinement/toggle-refinement.js +20 -27
  390. package/es/widgets/voice-search/defaultTemplates.js +4 -13
  391. package/es/widgets/voice-search/voice-search.js +21 -28
  392. package/package.json +20 -119
  393. package/scripts/transforms/__testfixtures__/addWidget-to-addWidgets/imported.input.js +0 -1
  394. package/scripts/transforms/__testfixtures__/addWidget-to-addWidgets/imported.output.js +0 -1
  395. package/scripts/transforms/__tests__/addWidget-to-addWidgets.test.js +1 -0
  396. package/CHANGELOG.md +0 -3693
@@ -1,42 +1,35 @@
1
- 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); }
2
-
1
+ 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); }
3
2
  /**
4
3
  * This implementation is taken from Lodash implementation.
5
4
  * See: https://github.com/lodash/lodash/blob/master/isPlainObject.js
6
5
  */
6
+
7
7
  function getTag(value) {
8
8
  if (value === null) {
9
9
  return value === undefined ? '[object Undefined]' : '[object Null]';
10
10
  }
11
-
12
11
  return Object.prototype.toString.call(value);
13
12
  }
14
-
15
13
  function isObjectLike(value) {
16
14
  return _typeof(value) === 'object' && value !== null;
17
15
  }
16
+
18
17
  /**
19
18
  * Checks if `value` is a plain object.
20
19
  *
21
20
  * A plain object is an object created by the `Object`
22
21
  * constructor or with a `[[Prototype]]` of `null`.
23
22
  */
24
-
25
-
26
23
  export function isPlainObject(value) {
27
24
  if (!isObjectLike(value) || getTag(value) !== '[object Object]') {
28
25
  return false;
29
26
  }
30
-
31
27
  if (Object.getPrototypeOf(value) === null) {
32
28
  return true;
33
29
  }
34
-
35
30
  var proto = value;
36
-
37
31
  while (Object.getPrototypeOf(proto) !== null) {
38
32
  proto = Object.getPrototypeOf(proto);
39
33
  }
40
-
41
34
  return Object.getPrototypeOf(value) === proto;
42
35
  }
@@ -1,57 +1,47 @@
1
1
  import { noop } from "./noop.js";
2
-
3
2
  /**
4
3
  * Logs a warning when this function is called, in development environment only.
5
4
  */
6
5
  var deprecate = function deprecate(fn, message) {
7
6
  return fn;
8
7
  };
8
+
9
9
  /**
10
10
  * Logs a warning
11
11
  * This is used to log issues in development environment only.
12
12
  */
13
-
14
-
15
13
  var warn = noop;
14
+
16
15
  /**
17
16
  * Logs a warning if the condition is not met.
18
17
  * This is used to log issues in development environment only.
19
18
  */
20
-
21
19
  var _warning = noop;
22
-
23
20
  if (process.env.NODE_ENV === 'development') {
24
21
  warn = function warn(message) {
25
22
  // eslint-disable-next-line no-console
26
23
  console.warn("[InstantSearch.js]: ".concat(message.trim()));
27
24
  };
28
-
29
25
  deprecate = function deprecate(fn, message) {
30
26
  var hasAlreadyPrinted = false;
31
27
  return function () {
32
28
  if (!hasAlreadyPrinted) {
33
29
  hasAlreadyPrinted = true;
34
- warn(message);
30
+ process.env.NODE_ENV === 'development' ? warn(message) : void 0;
35
31
  }
36
-
37
32
  return fn.apply(void 0, arguments);
38
33
  };
39
34
  };
40
-
41
35
  _warning = function warning(condition, message) {
42
36
  if (condition) {
43
37
  return;
44
38
  }
45
-
46
39
  var hasAlreadyPrinted = _warning.cache[message];
47
-
48
40
  if (!hasAlreadyPrinted) {
49
41
  _warning.cache[message] = true;
50
- warn(message);
42
+ process.env.NODE_ENV === 'development' ? warn(message) : void 0;
51
43
  }
52
44
  };
53
-
54
45
  _warning.cache = {};
55
46
  }
56
-
57
47
  export { warn, deprecate, _warning as warning };
@@ -1,117 +1,100 @@
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
-
5
- 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
-
1
+ 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); }
2
+ var _excluded = ["facets", "disjunctiveFacets", "facetsRefinements", "facetsExcludes", "disjunctiveFacetsRefinements", "numericRefinements", "tagRefinements", "hierarchicalFacets", "hierarchicalFacetsRefinements", "ruleContexts"];
3
+ 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; }
4
+ 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
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
7
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
8
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
8
-
9
9
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
10
-
11
10
  import { findIndex } from "./findIndex.js";
12
11
  import { uniq } from "./uniq.js";
13
-
14
12
  var mergeWithRest = function mergeWithRest(left, right) {
15
13
  var facets = right.facets,
16
- disjunctiveFacets = right.disjunctiveFacets,
17
- facetsRefinements = right.facetsRefinements,
18
- facetsExcludes = right.facetsExcludes,
19
- disjunctiveFacetsRefinements = right.disjunctiveFacetsRefinements,
20
- numericRefinements = right.numericRefinements,
21
- tagRefinements = right.tagRefinements,
22
- hierarchicalFacets = right.hierarchicalFacets,
23
- hierarchicalFacetsRefinements = right.hierarchicalFacetsRefinements,
24
- ruleContexts = right.ruleContexts,
25
- rest = _objectWithoutProperties(right, ["facets", "disjunctiveFacets", "facetsRefinements", "facetsExcludes", "disjunctiveFacetsRefinements", "numericRefinements", "tagRefinements", "hierarchicalFacets", "hierarchicalFacetsRefinements", "ruleContexts"]);
26
-
14
+ disjunctiveFacets = right.disjunctiveFacets,
15
+ facetsRefinements = right.facetsRefinements,
16
+ facetsExcludes = right.facetsExcludes,
17
+ disjunctiveFacetsRefinements = right.disjunctiveFacetsRefinements,
18
+ numericRefinements = right.numericRefinements,
19
+ tagRefinements = right.tagRefinements,
20
+ hierarchicalFacets = right.hierarchicalFacets,
21
+ hierarchicalFacetsRefinements = right.hierarchicalFacetsRefinements,
22
+ ruleContexts = right.ruleContexts,
23
+ rest = _objectWithoutProperties(right, _excluded);
27
24
  return left.setQueryParameters(rest);
28
- }; // Merge facets
29
-
25
+ };
30
26
 
27
+ // Merge facets
31
28
  var mergeFacets = function mergeFacets(left, right) {
32
29
  return right.facets.reduce(function (_, name) {
33
30
  return _.addFacet(name);
34
31
  }, left);
35
32
  };
36
-
37
33
  var mergeDisjunctiveFacets = function mergeDisjunctiveFacets(left, right) {
38
34
  return right.disjunctiveFacets.reduce(function (_, name) {
39
35
  return _.addDisjunctiveFacet(name);
40
36
  }, left);
41
37
  };
42
-
43
38
  var mergeHierarchicalFacets = function mergeHierarchicalFacets(left, right) {
44
39
  return left.setQueryParameters({
45
40
  hierarchicalFacets: right.hierarchicalFacets.reduce(function (facets, facet) {
46
41
  var index = findIndex(facets, function (_) {
47
42
  return _.name === facet.name;
48
43
  });
49
-
50
44
  if (index === -1) {
51
45
  return facets.concat(facet);
52
46
  }
53
-
54
47
  var nextFacets = facets.slice();
55
48
  nextFacets.splice(index, 1, facet);
56
49
  return nextFacets;
57
50
  }, left.hierarchicalFacets)
58
51
  });
59
- }; // Merge facet refinements
60
-
52
+ };
61
53
 
54
+ // Merge facet refinements
62
55
  var mergeTagRefinements = function mergeTagRefinements(left, right) {
63
56
  return right.tagRefinements.reduce(function (_, value) {
64
57
  return _.addTagRefinement(value);
65
58
  }, left);
66
59
  };
67
-
68
60
  var mergeFacetRefinements = function mergeFacetRefinements(left, right) {
69
61
  return left.setQueryParameters({
70
62
  facetsRefinements: _objectSpread(_objectSpread({}, left.facetsRefinements), right.facetsRefinements)
71
63
  });
72
64
  };
73
-
74
65
  var mergeFacetsExcludes = function mergeFacetsExcludes(left, right) {
75
66
  return left.setQueryParameters({
76
67
  facetsExcludes: _objectSpread(_objectSpread({}, left.facetsExcludes), right.facetsExcludes)
77
68
  });
78
69
  };
79
-
80
70
  var mergeDisjunctiveFacetsRefinements = function mergeDisjunctiveFacetsRefinements(left, right) {
81
71
  return left.setQueryParameters({
82
72
  disjunctiveFacetsRefinements: _objectSpread(_objectSpread({}, left.disjunctiveFacetsRefinements), right.disjunctiveFacetsRefinements)
83
73
  });
84
74
  };
85
-
86
75
  var mergeNumericRefinements = function mergeNumericRefinements(left, right) {
87
76
  return left.setQueryParameters({
88
77
  numericRefinements: _objectSpread(_objectSpread({}, left.numericRefinements), right.numericRefinements)
89
78
  });
90
79
  };
91
-
92
80
  var mergeHierarchicalFacetsRefinements = function mergeHierarchicalFacetsRefinements(left, right) {
93
81
  return left.setQueryParameters({
94
82
  hierarchicalFacetsRefinements: _objectSpread(_objectSpread({}, left.hierarchicalFacetsRefinements), right.hierarchicalFacetsRefinements)
95
83
  });
96
84
  };
97
-
98
85
  var mergeRuleContexts = function mergeRuleContexts(left, right) {
99
86
  var ruleContexts = uniq([].concat(left.ruleContexts).concat(right.ruleContexts).filter(Boolean));
100
-
101
87
  if (ruleContexts.length > 0) {
102
88
  return left.setQueryParameters({
103
89
  ruleContexts: ruleContexts
104
90
  });
105
91
  }
106
-
107
92
  return left;
108
93
  };
109
-
110
94
  export var mergeSearchParameters = function mergeSearchParameters() {
111
95
  for (var _len = arguments.length, parameters = new Array(_len), _key = 0; _key < _len; _key++) {
112
96
  parameters[_key] = arguments[_key];
113
97
  }
114
-
115
98
  return parameters.reduce(function (left, right) {
116
99
  var hierarchicalFacetsRefinementsMerged = mergeHierarchicalFacetsRefinements(left, right);
117
100
  var hierarchicalFacetsMerged = mergeHierarchicalFacets(hierarchicalFacetsRefinementsMerged, right);
@@ -1,28 +1,23 @@
1
1
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
-
3
2
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
-
5
3
  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); }
6
-
7
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
8
-
4
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
9
5
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
10
-
11
- 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; }
12
-
6
+ 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; }
13
7
  export function range(_ref) {
14
8
  var _ref$start = _ref.start,
15
- start = _ref$start === void 0 ? 0 : _ref$start,
16
- end = _ref.end,
17
- _ref$step = _ref.step,
18
- step = _ref$step === void 0 ? 1 : _ref$step;
9
+ start = _ref$start === void 0 ? 0 : _ref$start,
10
+ end = _ref.end,
11
+ _ref$step = _ref.step,
12
+ step = _ref$step === void 0 ? 1 : _ref$step;
19
13
  // We can't divide by 0 so we re-assign the step to 1 if it happens.
20
- var limitStep = step === 0 ? 1 : step; // In some cases the array to create has a decimal length.
14
+ var limitStep = step === 0 ? 1 : step;
15
+
16
+ // In some cases the array to create has a decimal length.
21
17
  // We therefore need to round the value.
22
18
  // Example:
23
19
  // { start: 1, end: 5000, step: 500 }
24
20
  // => Array length = (5000 - 1) / 500 = 9.998
25
-
26
21
  var arrayLength = Math.round((end - start) / limitStep);
27
22
  return _toConsumableArray(Array(arrayLength)).map(function (_, current) {
28
23
  return start + current * limitStep;
@@ -1,11 +1,9 @@
1
1
  export function resolveSearchParameters(current) {
2
2
  var parent = current.getParent();
3
3
  var states = [current.getHelper().state];
4
-
5
4
  while (parent !== null) {
6
5
  states = [parent.getHelper().state].concat(states);
7
6
  parent = parent.getParent();
8
7
  }
9
-
10
8
  return states;
11
9
  }
@@ -1,9 +1,9 @@
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
-
5
- 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
-
1
+ 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); }
2
+ 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; }
3
+ 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; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
7
  import { getHighlightFromSiblings } from "./getHighlightFromSiblings.js";
8
8
  export function reverseHighlightedParts(parts) {
9
9
  if (!parts.some(function (part) {
@@ -15,7 +15,6 @@ export function reverseHighlightedParts(parts) {
15
15
  });
16
16
  });
17
17
  }
18
-
19
18
  return parts.map(function (part, i) {
20
19
  return _objectSpread(_objectSpread({}, part), {}, {
21
20
  isHighlighted: !getHighlightFromSiblings(parts, i)
@@ -5,18 +5,17 @@
5
5
  */
6
6
  export function safelyRunOnBrowser(callback) {
7
7
  var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
8
- fallback: function fallback() {
9
- return undefined;
10
- }
11
- },
12
- fallback = _ref.fallback;
13
-
8
+ fallback: function fallback() {
9
+ return undefined;
10
+ }
11
+ },
12
+ fallback = _ref.fallback;
14
13
  // eslint-disable-next-line no-restricted-globals
15
14
  if (typeof window === 'undefined') {
16
15
  return fallback();
17
- } // eslint-disable-next-line no-restricted-globals
18
-
16
+ }
19
17
 
18
+ // eslint-disable-next-line no-restricted-globals
20
19
  return callback({
21
20
  window: window
22
21
  });
@@ -2,14 +2,12 @@ import { isIndexWidget } from "./isIndexWidget.js";
2
2
  import { checkIndexUiState } from "./checkIndexUiState.js";
3
3
  export function setIndexHelperState(finalUiState, indexWidget) {
4
4
  var nextIndexUiState = finalUiState[indexWidget.getIndexId()] || {};
5
-
6
5
  if (process.env.NODE_ENV === 'development') {
7
6
  checkIndexUiState({
8
7
  index: indexWidget,
9
8
  indexUiState: nextIndexUiState
10
9
  });
11
10
  }
12
-
13
11
  indexWidget.getHelper().setState(indexWidget.getWidgetSearchParameters(indexWidget.getHelper().state, {
14
12
  uiState: nextIndexUiState
15
13
  }));
@@ -1,2 +1,2 @@
1
- declare const _default: "4.49.1";
1
+ declare const _default: "4.49.3";
2
2
  export default _default;
package/es/lib/version.js CHANGED
@@ -1 +1 @@
1
- export default '4.49.1';
1
+ export default '4.49.3';
@@ -1,22 +1,20 @@
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
-
5
- 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
-
1
+ 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); }
2
+ 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; }
3
+ 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; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
7
  // `SpeechRecognition` is an API used on the browser so we can safely disable
8
8
  // the `window` check.
9
-
10
9
  /* eslint-disable no-restricted-globals */
11
-
12
10
  /* global SpeechRecognition SpeechRecognitionEvent */
11
+
13
12
  var createVoiceSearchHelper = function createVoiceSearchHelper(_ref) {
14
13
  var searchAsYouSpeak = _ref.searchAsYouSpeak,
15
- language = _ref.language,
16
- onQueryChange = _ref.onQueryChange,
17
- onStateChange = _ref.onStateChange;
14
+ language = _ref.language,
15
+ onQueryChange = _ref.onQueryChange,
16
+ onStateChange = _ref.onStateChange;
18
17
  var SpeechRecognitionAPI = window.webkitSpeechRecognition || window.SpeechRecognition;
19
-
20
18
  var getDefaultState = function getDefaultState(status) {
21
19
  return {
22
20
  status: status,
@@ -25,96 +23,77 @@ var createVoiceSearchHelper = function createVoiceSearchHelper(_ref) {
25
23
  errorCode: undefined
26
24
  };
27
25
  };
28
-
29
26
  var state = getDefaultState('initial');
30
27
  var recognition;
31
-
32
28
  var isBrowserSupported = function isBrowserSupported() {
33
29
  return Boolean(SpeechRecognitionAPI);
34
30
  };
35
-
36
31
  var isListening = function isListening() {
37
32
  return state.status === 'askingPermission' || state.status === 'waiting' || state.status === 'recognizing';
38
33
  };
39
-
40
34
  var setState = function setState() {
41
35
  var newState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
42
36
  state = _objectSpread(_objectSpread({}, state), newState);
43
37
  onStateChange();
44
38
  };
45
-
46
39
  var getState = function getState() {
47
40
  return state;
48
41
  };
49
-
50
42
  var resetState = function resetState() {
51
43
  var status = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'initial';
52
44
  setState(getDefaultState(status));
53
45
  };
54
-
55
46
  var onStart = function onStart() {
56
47
  setState({
57
48
  status: 'waiting'
58
49
  });
59
50
  };
60
-
61
51
  var onError = function onError(event) {
62
52
  setState({
63
53
  status: 'error',
64
54
  errorCode: event.error
65
55
  });
66
56
  };
67
-
68
57
  var onResult = function onResult(event) {
69
58
  setState({
70
59
  status: 'recognizing',
71
60
  transcript: event.results[0] && event.results[0][0] && event.results[0][0].transcript || '',
72
61
  isSpeechFinal: event.results[0] && event.results[0].isFinal
73
62
  });
74
-
75
63
  if (searchAsYouSpeak && state.transcript) {
76
64
  onQueryChange(state.transcript);
77
65
  }
78
66
  };
79
-
80
67
  var onEnd = function onEnd() {
81
68
  if (!state.errorCode && state.transcript && !searchAsYouSpeak) {
82
69
  onQueryChange(state.transcript);
83
70
  }
84
-
85
71
  if (state.status !== 'error') {
86
72
  setState({
87
73
  status: 'finished'
88
74
  });
89
75
  }
90
76
  };
91
-
92
77
  var startListening = function startListening() {
93
78
  recognition = new SpeechRecognitionAPI();
94
-
95
79
  if (!recognition) {
96
80
  return;
97
81
  }
98
-
99
82
  resetState('askingPermission');
100
83
  recognition.interimResults = true;
101
-
102
84
  if (language) {
103
85
  recognition.lang = language;
104
86
  }
105
-
106
87
  recognition.addEventListener('start', onStart);
107
88
  recognition.addEventListener('error', onError);
108
89
  recognition.addEventListener('result', onResult);
109
90
  recognition.addEventListener('end', onEnd);
110
91
  recognition.start();
111
92
  };
112
-
113
93
  var dispose = function dispose() {
114
94
  if (!recognition) {
115
95
  return;
116
96
  }
117
-
118
97
  recognition.stop();
119
98
  recognition.removeEventListener('start', onStart);
120
99
  recognition.removeEventListener('error', onError);
@@ -122,15 +101,13 @@ var createVoiceSearchHelper = function createVoiceSearchHelper(_ref) {
122
101
  recognition.removeEventListener('end', onEnd);
123
102
  recognition = undefined;
124
103
  };
125
-
126
104
  var stopListening = function stopListening() {
127
- dispose(); // Because `dispose` removes event listeners, `end` listener is not called.
105
+ dispose();
106
+ // Because `dispose` removes event listeners, `end` listener is not called.
128
107
  // So we're setting the `status` as `finished` here.
129
108
  // If we don't do it, it will be still `waiting` or `recognizing`.
130
-
131
109
  resetState('finished');
132
110
  };
133
-
134
111
  return {
135
112
  getState: getState,
136
113
  isBrowserSupported: isBrowserSupported,
@@ -140,5 +117,4 @@ var createVoiceSearchHelper = function createVoiceSearchHelper(_ref) {
140
117
  dispose: dispose
141
118
  };
142
119
  };
143
-
144
120
  export default createVoiceSearchHelper;
@@ -0,0 +1 @@
1
+ export {};