vue-instantsearch 4.7.0 → 4.7.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 (425) hide show
  1. package/README.md +14 -2
  2. package/package.json +20 -104
  3. package/src/__tests__/index.js +12 -3
  4. package/src/components/Autocomplete.vue +4 -5
  5. package/src/components/Breadcrumb.vue +9 -6
  6. package/src/components/ClearRefinements.vue +2 -5
  7. package/src/components/Configure.js +1 -1
  8. package/src/components/CurrentRefinements.vue +6 -9
  9. package/src/components/DynamicWidgets.js +6 -4
  10. package/src/components/HierarchicalMenu.vue +4 -5
  11. package/src/components/HierarchicalMenuList.vue +3 -6
  12. package/src/components/Highlighter.vue +6 -7
  13. package/src/components/Hits.vue +4 -5
  14. package/src/components/HitsPerPage.vue +8 -13
  15. package/src/components/Index.js +1 -1
  16. package/src/components/InfiniteHits.vue +18 -10
  17. package/src/components/InstantSearch.js +1 -1
  18. package/src/components/InstantSearchSsr.js +1 -1
  19. package/src/components/Menu.vue +7 -5
  20. package/src/components/MenuSelect.vue +5 -9
  21. package/src/components/NumericMenu.vue +1 -1
  22. package/src/components/Pagination.vue +20 -30
  23. package/src/components/Panel.vue +4 -16
  24. package/src/components/PoweredBy.vue +2 -2
  25. package/src/components/QueryRuleCustomData.vue +3 -12
  26. package/src/components/RangeInput.vue +10 -8
  27. package/src/components/RatingMenu.vue +11 -22
  28. package/src/components/RefinementList.vue +12 -29
  29. package/src/components/RelevantSort.vue +9 -21
  30. package/src/components/SearchBox.vue +10 -40
  31. package/src/components/SearchInput.vue +12 -17
  32. package/src/components/SortBy.vue +4 -5
  33. package/src/components/StateResults.vue +2 -7
  34. package/src/components/Stats.vue +8 -5
  35. package/src/components/ToggleRefinement.vue +4 -5
  36. package/src/components/VoiceSearch.vue +10 -50
  37. package/src/components/__Template.vue +7 -17
  38. package/src/components/__tests__/Autocomplete.js +7 -1
  39. package/src/components/__tests__/Breadcrumb.js +7 -2
  40. package/src/components/__tests__/ClearRefinements.js +6 -1
  41. package/src/components/__tests__/Configure.js +7 -2
  42. package/src/components/__tests__/ConfigureRelatedItems.js +7 -2
  43. package/src/components/__tests__/CurrentRefinements.js +6 -0
  44. package/src/components/__tests__/DynamicWidgets.js +8 -3
  45. package/src/components/__tests__/ExperimentalDynamicWidgets.js +9 -1
  46. package/src/components/__tests__/HierarchicalMenu.js +12 -4
  47. package/src/components/__tests__/Highlight.js +5 -0
  48. package/src/components/__tests__/Hits.js +5 -0
  49. package/src/components/__tests__/HitsPerPage.js +5 -0
  50. package/src/components/__tests__/Index-integration.js +5 -0
  51. package/src/components/__tests__/Index.js +7 -1
  52. package/src/components/__tests__/InfiniteHits.js +7 -2
  53. package/src/components/__tests__/InstantSearch-integration.js +6 -1
  54. package/src/components/__tests__/InstantSearch.js +18 -5
  55. package/src/components/__tests__/InstantSearchSsr.js +6 -1
  56. package/src/components/__tests__/Menu.js +8 -3
  57. package/src/components/__tests__/MenuSelect.js +5 -0
  58. package/src/components/__tests__/NumericMenu.js +6 -1
  59. package/src/components/__tests__/Pagination.js +5 -0
  60. package/src/components/__tests__/Panel.js +5 -0
  61. package/src/components/__tests__/PoweredBy.js +6 -1
  62. package/src/components/__tests__/QueryRuleContext.js +5 -0
  63. package/src/components/__tests__/QueryRuleCustomData.js +5 -0
  64. package/src/components/__tests__/RangeInput.js +5 -0
  65. package/src/components/__tests__/RatingMenu.js +5 -0
  66. package/src/components/__tests__/RefinementList.js +7 -2
  67. package/src/components/__tests__/RelevantSort.js +7 -1
  68. package/src/components/__tests__/SearchBox.js +15 -10
  69. package/src/components/__tests__/Snippet.js +5 -0
  70. package/src/components/__tests__/SortBy.js +5 -0
  71. package/src/components/__tests__/StateResults.js +35 -9
  72. package/src/components/__tests__/Stats.js +5 -0
  73. package/src/components/__tests__/ToggleRefinement.js +5 -0
  74. package/src/components/__tests__/VoiceSearch.js +6 -1
  75. package/src/components/__tests__/__Template.js +5 -0
  76. package/src/components/__tests__/__snapshots__/PoweredBy.js.snap +2 -2
  77. package/src/components/__tests__/__snapshots__/__Template.js.snap +0 -345
  78. package/src/connectors/connectStateResults.js +31 -31
  79. package/src/mixins/__tests__/panel.test.js +4 -0
  80. package/src/mixins/__tests__/suit.test.js +4 -0
  81. package/src/mixins/__tests__/widget.test.js +8 -4
  82. package/src/mixins/panel.js +2 -2
  83. package/src/plugin.js +1 -1
  84. package/src/util/__tests__/createServerRootMixin.test.js +266 -206
  85. package/src/util/__tests__/parseAlgoliaHit.test.js +1 -1
  86. package/src/util/createInstantSearchComponent.js +7 -7
  87. package/src/util/createServerRootMixin.js +17 -16
  88. package/src/util/parseAlgoliaHit.js +3 -3
  89. package/src/util/polyfills.js +1 -0
  90. package/src/util/testutils/client.js +1 -1
  91. package/src/util/unescape.js +1 -1
  92. package/src/util/vue-compat/index-vue2.js +1 -1
  93. package/src/util/vue-compat/index-vue3.js +1 -1
  94. package/src/widgets.js +7 -21
  95. package/vue2/cjs/index.js +1 -1
  96. package/vue2/cjs/index.js.map +1 -1
  97. package/vue2/es/package.json.js +1 -1
  98. package/vue2/es/src/components/Autocomplete.vue.js +1 -1
  99. package/vue2/es/src/components/Autocomplete.vue.js.map +1 -1
  100. package/vue2/es/src/components/Autocomplete.vue_rollup-plugin-vue=script.js +2 -0
  101. package/vue2/es/src/components/Autocomplete.vue_rollup-plugin-vue=script.js.map +1 -0
  102. package/vue2/es/src/components/Breadcrumb.vue.js +1 -1
  103. package/vue2/es/src/components/Breadcrumb.vue.js.map +1 -1
  104. package/vue2/es/src/components/Breadcrumb.vue_rollup-plugin-vue=script.js +2 -0
  105. package/vue2/es/src/components/Breadcrumb.vue_rollup-plugin-vue=script.js.map +1 -0
  106. package/vue2/es/src/components/ClearRefinements.vue.js +1 -1
  107. package/vue2/es/src/components/ClearRefinements.vue.js.map +1 -1
  108. package/vue2/es/src/components/ClearRefinements.vue_rollup-plugin-vue=script.js +2 -0
  109. package/vue2/es/src/components/ClearRefinements.vue_rollup-plugin-vue=script.js.map +1 -0
  110. package/vue2/es/src/components/Configure.js.map +1 -1
  111. package/vue2/es/src/components/ConfigureRelatedItems.js.map +1 -1
  112. package/vue2/es/src/components/CurrentRefinements.vue.js +1 -1
  113. package/vue2/es/src/components/CurrentRefinements.vue.js.map +1 -1
  114. package/vue2/es/src/components/CurrentRefinements.vue_rollup-plugin-vue=script.js +2 -0
  115. package/vue2/es/src/components/CurrentRefinements.vue_rollup-plugin-vue=script.js.map +1 -0
  116. package/vue2/es/src/components/DynamicWidgets.js.map +1 -1
  117. package/vue2/es/src/components/HierarchicalMenu.vue.js +1 -1
  118. package/vue2/es/src/components/HierarchicalMenu.vue.js.map +1 -1
  119. package/vue2/es/src/components/HierarchicalMenu.vue_rollup-plugin-vue=script.js +2 -0
  120. package/vue2/es/src/components/HierarchicalMenu.vue_rollup-plugin-vue=script.js.map +1 -0
  121. package/vue2/es/src/components/HierarchicalMenuList.vue.js +1 -1
  122. package/vue2/es/src/components/HierarchicalMenuList.vue.js.map +1 -1
  123. package/vue2/es/src/components/HierarchicalMenuList.vue_rollup-plugin-vue=script.js +2 -0
  124. package/vue2/es/src/components/HierarchicalMenuList.vue_rollup-plugin-vue=script.js.map +1 -0
  125. package/vue2/es/src/components/Highlight.vue.js +1 -1
  126. package/vue2/es/src/components/Highlight.vue.js.map +1 -1
  127. package/vue2/es/src/components/Highlight.vue_rollup-plugin-vue=script.js +2 -0
  128. package/vue2/es/src/components/Highlight.vue_rollup-plugin-vue=script.js.map +1 -0
  129. package/vue2/es/src/components/Highlighter.vue.js +1 -1
  130. package/vue2/es/src/components/Highlighter.vue.js.map +1 -1
  131. package/vue2/es/src/components/Highlighter.vue_rollup-plugin-vue=script.js +2 -0
  132. package/vue2/es/src/components/Highlighter.vue_rollup-plugin-vue=script.js.map +1 -0
  133. package/vue2/es/src/components/Hits.vue.js +1 -1
  134. package/vue2/es/src/components/Hits.vue.js.map +1 -1
  135. package/vue2/es/src/components/Hits.vue_rollup-plugin-vue=script.js +2 -0
  136. package/vue2/es/src/components/Hits.vue_rollup-plugin-vue=script.js.map +1 -0
  137. package/vue2/es/src/components/HitsPerPage.vue.js +1 -1
  138. package/vue2/es/src/components/HitsPerPage.vue.js.map +1 -1
  139. package/vue2/es/src/components/HitsPerPage.vue_rollup-plugin-vue=script.js +2 -0
  140. package/vue2/es/src/components/HitsPerPage.vue_rollup-plugin-vue=script.js.map +1 -0
  141. package/vue2/es/src/components/Index.js.map +1 -1
  142. package/vue2/es/src/components/InfiniteHits.vue.js +1 -1
  143. package/vue2/es/src/components/InfiniteHits.vue.js.map +1 -1
  144. package/vue2/es/src/components/InfiniteHits.vue_rollup-plugin-vue=script.js +2 -0
  145. package/vue2/es/src/components/InfiniteHits.vue_rollup-plugin-vue=script.js.map +1 -0
  146. package/vue2/es/src/components/InstantSearch.js.map +1 -1
  147. package/vue2/es/src/components/InstantSearchSsr.js.map +1 -1
  148. package/vue2/es/src/components/Menu.vue.js +1 -1
  149. package/vue2/es/src/components/Menu.vue.js.map +1 -1
  150. package/vue2/es/src/components/Menu.vue_rollup-plugin-vue=script.js +2 -0
  151. package/vue2/es/src/components/Menu.vue_rollup-plugin-vue=script.js.map +1 -0
  152. package/vue2/es/src/components/MenuSelect.vue.js +1 -1
  153. package/vue2/es/src/components/MenuSelect.vue.js.map +1 -1
  154. package/vue2/es/src/components/MenuSelect.vue_rollup-plugin-vue=script.js +2 -0
  155. package/vue2/es/src/components/MenuSelect.vue_rollup-plugin-vue=script.js.map +1 -0
  156. package/vue2/es/src/components/NumericMenu.vue.js +1 -1
  157. package/vue2/es/src/components/NumericMenu.vue.js.map +1 -1
  158. package/vue2/es/src/components/NumericMenu.vue_rollup-plugin-vue=script.js +2 -0
  159. package/vue2/es/src/components/NumericMenu.vue_rollup-plugin-vue=script.js.map +1 -0
  160. package/vue2/es/src/components/Pagination.vue.js +1 -1
  161. package/vue2/es/src/components/Pagination.vue.js.map +1 -1
  162. package/vue2/es/src/components/Pagination.vue_rollup-plugin-vue=script.js +2 -0
  163. package/vue2/es/src/components/Pagination.vue_rollup-plugin-vue=script.js.map +1 -0
  164. package/vue2/es/src/components/Panel.vue.js +1 -1
  165. package/vue2/es/src/components/Panel.vue.js.map +1 -1
  166. package/vue2/es/src/components/Panel.vue_rollup-plugin-vue=script.js +2 -0
  167. package/vue2/es/src/components/Panel.vue_rollup-plugin-vue=script.js.map +1 -0
  168. package/vue2/es/src/components/PoweredBy.vue.js +1 -1
  169. package/vue2/es/src/components/PoweredBy.vue.js.map +1 -1
  170. package/vue2/es/src/components/PoweredBy.vue_rollup-plugin-vue=script.js +2 -0
  171. package/vue2/es/src/components/PoweredBy.vue_rollup-plugin-vue=script.js.map +1 -0
  172. package/vue2/es/src/components/QueryRuleContext.js.map +1 -1
  173. package/vue2/es/src/components/QueryRuleCustomData.vue.js +1 -1
  174. package/vue2/es/src/components/QueryRuleCustomData.vue.js.map +1 -1
  175. package/vue2/es/src/components/QueryRuleCustomData.vue_rollup-plugin-vue=script.js +2 -0
  176. package/vue2/es/src/components/QueryRuleCustomData.vue_rollup-plugin-vue=script.js.map +1 -0
  177. package/vue2/es/src/components/RangeInput.vue.js +1 -1
  178. package/vue2/es/src/components/RangeInput.vue.js.map +1 -1
  179. package/vue2/es/src/components/RangeInput.vue_rollup-plugin-vue=script.js +2 -0
  180. package/vue2/es/src/components/RangeInput.vue_rollup-plugin-vue=script.js.map +1 -0
  181. package/vue2/es/src/components/RatingMenu.vue.js +1 -1
  182. package/vue2/es/src/components/RatingMenu.vue.js.map +1 -1
  183. package/vue2/es/src/components/RatingMenu.vue_rollup-plugin-vue=script.js +2 -0
  184. package/vue2/es/src/components/RatingMenu.vue_rollup-plugin-vue=script.js.map +1 -0
  185. package/vue2/es/src/components/RefinementList.vue.js +1 -1
  186. package/vue2/es/src/components/RefinementList.vue.js.map +1 -1
  187. package/vue2/es/src/components/RefinementList.vue_rollup-plugin-vue=script.js +2 -0
  188. package/vue2/es/src/components/RefinementList.vue_rollup-plugin-vue=script.js.map +1 -0
  189. package/vue2/es/src/components/RelevantSort.vue.js +1 -1
  190. package/vue2/es/src/components/RelevantSort.vue.js.map +1 -1
  191. package/vue2/es/src/components/RelevantSort.vue_rollup-plugin-vue=script.js +2 -0
  192. package/vue2/es/src/components/RelevantSort.vue_rollup-plugin-vue=script.js.map +1 -0
  193. package/vue2/es/src/components/SearchBox.vue.js +1 -1
  194. package/vue2/es/src/components/SearchBox.vue.js.map +1 -1
  195. package/vue2/es/src/components/SearchBox.vue_rollup-plugin-vue=script.js +2 -0
  196. package/vue2/es/src/components/SearchBox.vue_rollup-plugin-vue=script.js.map +1 -0
  197. package/vue2/es/src/components/SearchInput.vue.js +1 -1
  198. package/vue2/es/src/components/SearchInput.vue.js.map +1 -1
  199. package/vue2/es/src/components/SearchInput.vue_rollup-plugin-vue=script.js +2 -0
  200. package/vue2/es/src/components/SearchInput.vue_rollup-plugin-vue=script.js.map +1 -0
  201. package/vue2/es/src/components/Snippet.vue.js +1 -1
  202. package/vue2/es/src/components/Snippet.vue.js.map +1 -1
  203. package/vue2/es/src/components/Snippet.vue_rollup-plugin-vue=script.js +2 -0
  204. package/vue2/es/src/components/Snippet.vue_rollup-plugin-vue=script.js.map +1 -0
  205. package/vue2/es/src/components/SortBy.vue.js +1 -1
  206. package/vue2/es/src/components/SortBy.vue.js.map +1 -1
  207. package/vue2/es/src/components/SortBy.vue_rollup-plugin-vue=script.js +2 -0
  208. package/vue2/es/src/components/SortBy.vue_rollup-plugin-vue=script.js.map +1 -0
  209. package/vue2/es/src/components/StateResults.vue.js +1 -1
  210. package/vue2/es/src/components/StateResults.vue.js.map +1 -1
  211. package/vue2/es/src/components/StateResults.vue_rollup-plugin-vue=script.js +2 -0
  212. package/vue2/es/src/components/StateResults.vue_rollup-plugin-vue=script.js.map +1 -0
  213. package/vue2/es/src/components/Stats.vue.js +1 -1
  214. package/vue2/es/src/components/Stats.vue.js.map +1 -1
  215. package/vue2/es/src/components/Stats.vue_rollup-plugin-vue=script.js +2 -0
  216. package/vue2/es/src/components/Stats.vue_rollup-plugin-vue=script.js.map +1 -0
  217. package/vue2/es/src/components/ToggleRefinement.vue.js +1 -1
  218. package/vue2/es/src/components/ToggleRefinement.vue.js.map +1 -1
  219. package/vue2/es/src/components/ToggleRefinement.vue_rollup-plugin-vue=script.js +2 -0
  220. package/vue2/es/src/components/ToggleRefinement.vue_rollup-plugin-vue=script.js.map +1 -0
  221. package/vue2/es/src/components/VoiceSearch.vue.js +1 -1
  222. package/vue2/es/src/components/VoiceSearch.vue.js.map +1 -1
  223. package/vue2/es/src/components/VoiceSearch.vue_rollup-plugin-vue=script.js +2 -0
  224. package/vue2/es/src/components/VoiceSearch.vue_rollup-plugin-vue=script.js.map +1 -0
  225. package/vue2/es/src/mixins/panel.js.map +1 -1
  226. package/vue2/es/src/mixins/suit.js.map +1 -1
  227. package/vue2/es/src/mixins/widget.js.map +1 -1
  228. package/vue2/es/src/plugin.js.map +1 -1
  229. package/vue2/es/src/util/createInstantSearchComponent.js +1 -1
  230. package/vue2/es/src/util/createInstantSearchComponent.js.map +1 -1
  231. package/vue2/es/src/util/createServerRootMixin.js +1 -1
  232. package/vue2/es/src/util/createServerRootMixin.js.map +1 -1
  233. package/vue2/es/src/util/parseAlgoliaHit.js.map +1 -1
  234. package/vue2/es/src/util/polyfills.js.map +1 -1
  235. package/vue2/es/src/util/suit.js.map +1 -1
  236. package/vue2/es/src/util/unescape.js.map +1 -1
  237. package/vue2/es/src/util/vue-compat/index-vue2.js.map +1 -1
  238. package/vue2/umd/index.js +1 -1
  239. package/vue2/umd/index.js.map +1 -1
  240. package/vue3/cjs/index.js +1 -1
  241. package/vue3/cjs/index.js.map +1 -1
  242. package/vue3/es/package.json.js +1 -1
  243. package/vue3/es/src/components/Autocomplete.vue.js +1 -1
  244. package/vue3/es/src/components/Autocomplete.vue_vue&type=script&lang.js.map +1 -1
  245. package/vue3/es/src/components/Autocomplete.vue_vue&type=template&id=7ca53d64&lang.js +2 -0
  246. package/vue3/es/src/components/Autocomplete.vue_vue&type=template&id=7ca53d64&lang.js.map +1 -0
  247. package/vue3/es/src/components/Breadcrumb.vue.js +1 -1
  248. package/vue3/es/src/components/Breadcrumb.vue_vue&type=script&lang.js.map +1 -1
  249. package/vue3/es/src/components/{Breadcrumb.vue_vue&type=template&id=6f46de9a&lang.js → Breadcrumb.vue_vue&type=template&id=5374ac81&lang.js} +2 -2
  250. package/vue3/es/src/components/Breadcrumb.vue_vue&type=template&id=5374ac81&lang.js.map +1 -0
  251. package/vue3/es/src/components/ClearRefinements.vue.js +1 -1
  252. package/vue3/es/src/components/ClearRefinements.vue_vue&type=script&lang.js.map +1 -1
  253. package/vue3/es/src/components/ClearRefinements.vue_vue&type=template&id=1b5799b9&lang.js +2 -0
  254. package/vue3/es/src/components/ClearRefinements.vue_vue&type=template&id=1b5799b9&lang.js.map +1 -0
  255. package/vue3/es/src/components/Configure.js.map +1 -1
  256. package/vue3/es/src/components/ConfigureRelatedItems.js.map +1 -1
  257. package/vue3/es/src/components/CurrentRefinements.vue.js +1 -1
  258. package/vue3/es/src/components/CurrentRefinements.vue_vue&type=script&lang.js.map +1 -1
  259. package/vue3/es/src/components/{CurrentRefinements.vue_vue&type=template&id=4f1917ff&lang.js → CurrentRefinements.vue_vue&type=template&id=6256a290&lang.js} +2 -2
  260. package/vue3/es/src/components/CurrentRefinements.vue_vue&type=template&id=6256a290&lang.js.map +1 -0
  261. package/vue3/es/src/components/DynamicWidgets.js.map +1 -1
  262. package/vue3/es/src/components/HierarchicalMenu.vue.js +1 -1
  263. package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=script&lang.js.map +1 -1
  264. package/vue3/es/src/components/{HierarchicalMenu.vue_vue&type=template&id=4361a0b8&lang.js → HierarchicalMenu.vue_vue&type=template&id=3548a9a1&lang.js} +2 -2
  265. package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=template&id=3548a9a1&lang.js.map +1 -0
  266. package/vue3/es/src/components/HierarchicalMenuList.vue.js +1 -1
  267. package/vue3/es/src/components/HierarchicalMenuList.vue_vue&type=script&lang.js.map +1 -1
  268. package/vue3/es/src/components/{HierarchicalMenuList.vue_vue&type=template&id=0435b314&lang.js → HierarchicalMenuList.vue_vue&type=template&id=45723c6c&lang.js} +2 -2
  269. package/vue3/es/src/components/HierarchicalMenuList.vue_vue&type=template&id=45723c6c&lang.js.map +1 -0
  270. package/vue3/es/src/components/Highlight.vue.js +1 -1
  271. package/vue3/es/src/components/{Highlight.vue_vue&type=template&id=300b0ab4&lang.js → Highlight.vue_vue&type=template&id=7592ff40&lang.js} +1 -1
  272. package/vue3/es/src/components/{Highlight.vue_vue&type=template&id=300b0ab4&lang.js.map → Highlight.vue_vue&type=template&id=7592ff40&lang.js.map} +1 -1
  273. package/vue3/es/src/components/Highlighter.vue.js +1 -1
  274. package/vue3/es/src/components/Highlighter.vue_vue&type=script&lang.js.map +1 -1
  275. package/vue3/es/src/components/{Highlighter.vue_vue&type=template&id=92153c3e&lang.js → Highlighter.vue_vue&type=template&id=11ec06d9&lang.js} +1 -1
  276. package/vue3/es/src/components/Highlighter.vue_vue&type=template&id=11ec06d9&lang.js.map +1 -0
  277. package/vue3/es/src/components/Hits.vue.js +1 -1
  278. package/vue3/es/src/components/Hits.vue_vue&type=script&lang.js.map +1 -1
  279. package/vue3/es/src/components/Hits.vue_vue&type=template&id=5bc4cfef&lang.js +2 -0
  280. package/vue3/es/src/components/Hits.vue_vue&type=template&id=5bc4cfef&lang.js.map +1 -0
  281. package/vue3/es/src/components/HitsPerPage.vue.js +1 -1
  282. package/vue3/es/src/components/HitsPerPage.vue_vue&type=script&lang.js.map +1 -1
  283. package/vue3/es/src/components/{HitsPerPage.vue_vue&type=template&id=74f3ac28&lang.js → HitsPerPage.vue_vue&type=template&id=73c9813e&lang.js} +2 -2
  284. package/vue3/es/src/components/HitsPerPage.vue_vue&type=template&id=73c9813e&lang.js.map +1 -0
  285. package/vue3/es/src/components/Index.js.map +1 -1
  286. package/vue3/es/src/components/InfiniteHits.vue.js +1 -1
  287. package/vue3/es/src/components/InfiniteHits.vue_vue&type=script&lang.js.map +1 -1
  288. package/vue3/es/src/components/InfiniteHits.vue_vue&type=template&id=0e2ba520&lang.js +2 -0
  289. package/vue3/es/src/components/InfiniteHits.vue_vue&type=template&id=0e2ba520&lang.js.map +1 -0
  290. package/vue3/es/src/components/InstantSearch.js.map +1 -1
  291. package/vue3/es/src/components/InstantSearchSsr.js.map +1 -1
  292. package/vue3/es/src/components/Menu.vue.js +1 -1
  293. package/vue3/es/src/components/Menu.vue_vue&type=script&lang.js.map +1 -1
  294. package/vue3/es/src/components/{Menu.vue_vue&type=template&id=9bcc0be2&lang.js → Menu.vue_vue&type=template&id=577979d0&lang.js} +2 -2
  295. package/vue3/es/src/components/Menu.vue_vue&type=template&id=577979d0&lang.js.map +1 -0
  296. package/vue3/es/src/components/MenuSelect.vue.js +1 -1
  297. package/vue3/es/src/components/MenuSelect.vue_vue&type=script&lang.js.map +1 -1
  298. package/vue3/es/src/components/MenuSelect.vue_vue&type=template&id=12bad393&lang.js +2 -0
  299. package/vue3/es/src/components/MenuSelect.vue_vue&type=template&id=12bad393&lang.js.map +1 -0
  300. package/vue3/es/src/components/NumericMenu.vue.js +1 -1
  301. package/vue3/es/src/components/NumericMenu.vue_vue&type=script&lang.js.map +1 -1
  302. package/vue3/es/src/components/{NumericMenu.vue_vue&type=template&id=160fae0c&lang.js → NumericMenu.vue_vue&type=template&id=ada9761c&lang.js} +2 -2
  303. package/vue3/es/src/components/NumericMenu.vue_vue&type=template&id=ada9761c&lang.js.map +1 -0
  304. package/vue3/es/src/components/Pagination.vue.js +1 -1
  305. package/vue3/es/src/components/Pagination.vue_vue&type=script&lang.js.map +1 -1
  306. package/vue3/es/src/components/Pagination.vue_vue&type=template&id=189fc463&lang.js +2 -0
  307. package/vue3/es/src/components/Pagination.vue_vue&type=template&id=189fc463&lang.js.map +1 -0
  308. package/vue3/es/src/components/Panel.vue.js +1 -1
  309. package/vue3/es/src/components/Panel.vue_vue&type=script&lang.js.map +1 -1
  310. package/vue3/es/src/components/Panel.vue_vue&type=template&id=766abb5d&lang.js +2 -0
  311. package/vue3/es/src/components/Panel.vue_vue&type=template&id=766abb5d&lang.js.map +1 -0
  312. package/vue3/es/src/components/PoweredBy.vue.js +1 -1
  313. package/vue3/es/src/components/PoweredBy.vue_vue&type=script&lang.js.map +1 -1
  314. package/vue3/es/src/components/{PoweredBy.vue_vue&type=template&id=3e8d7a5b&lang.js → PoweredBy.vue_vue&type=template&id=85db7eac&lang.js} +1 -1
  315. package/vue3/es/src/components/PoweredBy.vue_vue&type=template&id=85db7eac&lang.js.map +1 -0
  316. package/vue3/es/src/components/QueryRuleContext.js.map +1 -1
  317. package/vue3/es/src/components/QueryRuleCustomData.vue.js +1 -1
  318. package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=script&lang.js.map +1 -1
  319. package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=template&id=31c98630&lang.js +2 -0
  320. package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=template&id=31c98630&lang.js.map +1 -0
  321. package/vue3/es/src/components/RangeInput.vue.js +1 -1
  322. package/vue3/es/src/components/RangeInput.vue_vue&type=script&lang.js.map +1 -1
  323. package/vue3/es/src/components/RangeInput.vue_vue&type=template&id=2c7c21d8&lang.js +2 -0
  324. package/vue3/es/src/components/RangeInput.vue_vue&type=template&id=2c7c21d8&lang.js.map +1 -0
  325. package/vue3/es/src/components/RatingMenu.vue.js +1 -1
  326. package/vue3/es/src/components/RatingMenu.vue_vue&type=script&lang.js.map +1 -1
  327. package/vue3/es/src/components/{RatingMenu.vue_vue&type=template&id=9254de68&lang.js → RatingMenu.vue_vue&type=template&id=0fb40347&lang.js} +2 -2
  328. package/vue3/es/src/components/RatingMenu.vue_vue&type=template&id=0fb40347&lang.js.map +1 -0
  329. package/vue3/es/src/components/RefinementList.vue.js +1 -1
  330. package/vue3/es/src/components/RefinementList.vue_vue&type=script&lang.js.map +1 -1
  331. package/vue3/es/src/components/RefinementList.vue_vue&type=template&id=00083417&lang.js +2 -0
  332. package/vue3/es/src/components/RefinementList.vue_vue&type=template&id=00083417&lang.js.map +1 -0
  333. package/vue3/es/src/components/RelevantSort.vue.js +1 -1
  334. package/vue3/es/src/components/RelevantSort.vue_vue&type=script&lang.js.map +1 -1
  335. package/vue3/es/src/components/RelevantSort.vue_vue&type=template&id=0d400606&lang.js +2 -0
  336. package/vue3/es/src/components/RelevantSort.vue_vue&type=template&id=0d400606&lang.js.map +1 -0
  337. package/vue3/es/src/components/SearchBox.vue.js +1 -1
  338. package/vue3/es/src/components/SearchBox.vue_vue&type=script&lang.js.map +1 -1
  339. package/vue3/es/src/components/SearchBox.vue_vue&type=template&id=30bd05ae&lang.js +2 -0
  340. package/vue3/es/src/components/SearchBox.vue_vue&type=template&id=30bd05ae&lang.js.map +1 -0
  341. package/vue3/es/src/components/SearchInput.vue.js +1 -1
  342. package/vue3/es/src/components/SearchInput.vue_vue&type=script&lang.js.map +1 -1
  343. package/vue3/es/src/components/SearchInput.vue_vue&type=template&id=084af36e&lang.js +2 -0
  344. package/vue3/es/src/components/SearchInput.vue_vue&type=template&id=084af36e&lang.js.map +1 -0
  345. package/vue3/es/src/components/Snippet.vue.js +1 -1
  346. package/vue3/es/src/components/{Snippet.vue_vue&type=template&id=eb4966c6&lang.js → Snippet.vue_vue&type=template&id=1cd4c392&lang.js} +1 -1
  347. package/vue3/es/src/components/{Snippet.vue_vue&type=template&id=eb4966c6&lang.js.map → Snippet.vue_vue&type=template&id=1cd4c392&lang.js.map} +1 -1
  348. package/vue3/es/src/components/SortBy.vue.js +1 -1
  349. package/vue3/es/src/components/SortBy.vue_vue&type=script&lang.js.map +1 -1
  350. package/vue3/es/src/components/{SortBy.vue_vue&type=template&id=b69b3b76&lang.js → SortBy.vue_vue&type=template&id=6a94a4c1&lang.js} +2 -2
  351. package/vue3/es/src/components/SortBy.vue_vue&type=template&id=6a94a4c1&lang.js.map +1 -0
  352. package/vue3/es/src/components/StateResults.vue.js +1 -1
  353. package/vue3/es/src/components/StateResults.vue_vue&type=script&lang.js.map +1 -1
  354. package/vue3/es/src/components/StateResults.vue_vue&type=template&id=2ea5b184&lang.js +2 -0
  355. package/vue3/es/src/components/StateResults.vue_vue&type=template&id=2ea5b184&lang.js.map +1 -0
  356. package/vue3/es/src/components/Stats.vue.js +1 -1
  357. package/vue3/es/src/components/Stats.vue_vue&type=script&lang.js.map +1 -1
  358. package/vue3/es/src/components/{Stats.vue_vue&type=template&id=7337491f&lang.js → Stats.vue_vue&type=template&id=05ff9d6a&lang.js} +2 -2
  359. package/vue3/es/src/components/Stats.vue_vue&type=template&id=05ff9d6a&lang.js.map +1 -0
  360. package/vue3/es/src/components/ToggleRefinement.vue.js +1 -1
  361. package/vue3/es/src/components/ToggleRefinement.vue_vue&type=script&lang.js.map +1 -1
  362. package/vue3/es/src/components/{ToggleRefinement.vue_vue&type=template&id=14e4586f&lang.js → ToggleRefinement.vue_vue&type=template&id=461db228&lang.js} +2 -2
  363. package/vue3/es/src/components/ToggleRefinement.vue_vue&type=template&id=461db228&lang.js.map +1 -0
  364. package/vue3/es/src/components/VoiceSearch.vue.js +1 -1
  365. package/vue3/es/src/components/VoiceSearch.vue_vue&type=script&lang.js.map +1 -1
  366. package/vue3/es/src/components/{VoiceSearch.vue_vue&type=template&id=24b0f67a&lang.js → VoiceSearch.vue_vue&type=template&id=1cf17560&lang.js} +2 -2
  367. package/vue3/es/src/components/VoiceSearch.vue_vue&type=template&id=1cf17560&lang.js.map +1 -0
  368. package/vue3/es/src/mixins/panel.js.map +1 -1
  369. package/vue3/es/src/mixins/suit.js.map +1 -1
  370. package/vue3/es/src/mixins/widget.js.map +1 -1
  371. package/vue3/es/src/plugin.js.map +1 -1
  372. package/vue3/es/src/util/createInstantSearchComponent.js +1 -1
  373. package/vue3/es/src/util/createInstantSearchComponent.js.map +1 -1
  374. package/vue3/es/src/util/createServerRootMixin.js +1 -1
  375. package/vue3/es/src/util/createServerRootMixin.js.map +1 -1
  376. package/vue3/es/src/util/parseAlgoliaHit.js.map +1 -1
  377. package/vue3/es/src/util/polyfills.js.map +1 -1
  378. package/vue3/es/src/util/suit.js.map +1 -1
  379. package/vue3/es/src/util/unescape.js.map +1 -1
  380. package/vue3/es/src/util/vue-compat/index-vue3.js.map +1 -1
  381. package/vue3/umd/index.js +1 -1
  382. package/vue3/umd/index.js.map +1 -1
  383. package/CHANGELOG.md +0 -892
  384. package/vue3/es/src/components/Autocomplete.vue_vue&type=template&id=e7c95fd0&lang.js +0 -2
  385. package/vue3/es/src/components/Autocomplete.vue_vue&type=template&id=e7c95fd0&lang.js.map +0 -1
  386. package/vue3/es/src/components/Breadcrumb.vue_vue&type=template&id=6f46de9a&lang.js.map +0 -1
  387. package/vue3/es/src/components/ClearRefinements.vue_vue&type=template&id=410a3aaa&lang.js +0 -2
  388. package/vue3/es/src/components/ClearRefinements.vue_vue&type=template&id=410a3aaa&lang.js.map +0 -1
  389. package/vue3/es/src/components/CurrentRefinements.vue_vue&type=template&id=4f1917ff&lang.js.map +0 -1
  390. package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=template&id=4361a0b8&lang.js.map +0 -1
  391. package/vue3/es/src/components/HierarchicalMenuList.vue_vue&type=template&id=0435b314&lang.js.map +0 -1
  392. package/vue3/es/src/components/Highlighter.vue_vue&type=template&id=92153c3e&lang.js.map +0 -1
  393. package/vue3/es/src/components/Hits.vue_vue&type=template&id=ef242920&lang.js +0 -2
  394. package/vue3/es/src/components/Hits.vue_vue&type=template&id=ef242920&lang.js.map +0 -1
  395. package/vue3/es/src/components/HitsPerPage.vue_vue&type=template&id=74f3ac28&lang.js.map +0 -1
  396. package/vue3/es/src/components/InfiniteHits.vue_vue&type=template&id=dcfb64b8&lang.js +0 -2
  397. package/vue3/es/src/components/InfiniteHits.vue_vue&type=template&id=dcfb64b8&lang.js.map +0 -1
  398. package/vue3/es/src/components/Menu.vue_vue&type=template&id=9bcc0be2&lang.js.map +0 -1
  399. package/vue3/es/src/components/MenuSelect.vue_vue&type=template&id=694477eb&lang.js +0 -2
  400. package/vue3/es/src/components/MenuSelect.vue_vue&type=template&id=694477eb&lang.js.map +0 -1
  401. package/vue3/es/src/components/NumericMenu.vue_vue&type=template&id=160fae0c&lang.js.map +0 -1
  402. package/vue3/es/src/components/Pagination.vue_vue&type=template&id=849a166c&lang.js +0 -2
  403. package/vue3/es/src/components/Pagination.vue_vue&type=template&id=849a166c&lang.js.map +0 -1
  404. package/vue3/es/src/components/Panel.vue_vue&type=template&id=d32d57f8&lang.js +0 -2
  405. package/vue3/es/src/components/Panel.vue_vue&type=template&id=d32d57f8&lang.js.map +0 -1
  406. package/vue3/es/src/components/PoweredBy.vue_vue&type=template&id=3e8d7a5b&lang.js.map +0 -1
  407. package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=template&id=e4da0782&lang.js +0 -2
  408. package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=template&id=e4da0782&lang.js.map +0 -1
  409. package/vue3/es/src/components/RangeInput.vue_vue&type=template&id=1e17783d&lang.js +0 -2
  410. package/vue3/es/src/components/RangeInput.vue_vue&type=template&id=1e17783d&lang.js.map +0 -1
  411. package/vue3/es/src/components/RatingMenu.vue_vue&type=template&id=9254de68&lang.js.map +0 -1
  412. package/vue3/es/src/components/RefinementList.vue_vue&type=template&id=28927239&lang.js +0 -2
  413. package/vue3/es/src/components/RefinementList.vue_vue&type=template&id=28927239&lang.js.map +0 -1
  414. package/vue3/es/src/components/RelevantSort.vue_vue&type=template&id=257b248b&lang.js +0 -2
  415. package/vue3/es/src/components/RelevantSort.vue_vue&type=template&id=257b248b&lang.js.map +0 -1
  416. package/vue3/es/src/components/SearchBox.vue_vue&type=template&id=27029d83&lang.js +0 -2
  417. package/vue3/es/src/components/SearchBox.vue_vue&type=template&id=27029d83&lang.js.map +0 -1
  418. package/vue3/es/src/components/SearchInput.vue_vue&type=template&id=2eed8ffc&lang.js +0 -2
  419. package/vue3/es/src/components/SearchInput.vue_vue&type=template&id=2eed8ffc&lang.js.map +0 -1
  420. package/vue3/es/src/components/SortBy.vue_vue&type=template&id=b69b3b76&lang.js.map +0 -1
  421. package/vue3/es/src/components/StateResults.vue_vue&type=template&id=5992f3d5&lang.js +0 -2
  422. package/vue3/es/src/components/StateResults.vue_vue&type=template&id=5992f3d5&lang.js.map +0 -1
  423. package/vue3/es/src/components/Stats.vue_vue&type=template&id=7337491f&lang.js.map +0 -1
  424. package/vue3/es/src/components/ToggleRefinement.vue_vue&type=template&id=14e4586f&lang.js.map +0 -1
  425. package/vue3/es/src/components/VoiceSearch.vue_vue&type=template&id=24b0f67a&lang.js.map +0 -1
package/README.md CHANGED
@@ -1,3 +1,15 @@
1
+ <!-- START doctoc generated TOC please keep comment here to allow auto update -->
2
+ <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
3
+ **Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)*
4
+
5
+ - [Vue InstantSearch](#vue-instantsearch)
6
+ - [Documentation](#documentation)
7
+ - [Installation](#installation)
8
+ - [Troubleshooting](#troubleshooting)
9
+ - [Contributing, dev, release](#contributing-dev-release)
10
+
11
+ <!-- END doctoc generated TOC please keep comment here to allow auto update -->
12
+
1
13
  [![Vue InstantSearch logo][logo]][website]
2
14
 
3
15
  InstantSearch projects: **Vue InstantSearch**
@@ -41,9 +53,9 @@ Encountering an issue? Before reaching out to support, we recommend heading to o
41
53
 
42
54
  We welcome all contributors, from casual to regular. You are only
43
55
  one command away to start the developer environment,
44
- [read our CONTRIBUTING guide](.github/CONTRIBUTING.md).
56
+ [read our CONTRIBUTING guide](CONTRIBUTING.md).
45
57
 
46
- [logo]: .github/vue-instantsearch-readme.png
58
+ [logo]: vue-instantsearch-readme.png
47
59
  [website]: https://www.algolia.com/doc/guides/building-search-ui/what-is-instantsearch/vue/
48
60
  [getting-started-guide]: https://www.algolia.com/doc/guides/building-search-ui/getting-started/vue/
49
61
  [algolia-website]: https://www.algolia.com/
package/package.json CHANGED
@@ -16,7 +16,7 @@
16
16
  "autocomplete"
17
17
  ],
18
18
  "license": "MIT",
19
- "version": "4.7.0",
19
+ "version": "4.7.2",
20
20
  "files": [
21
21
  "vue2",
22
22
  "vue3",
@@ -25,28 +25,17 @@
25
25
  "main": "vue2/cjs",
26
26
  "module": "vue2/es",
27
27
  "sideEffects": false,
28
- "repository": "https://github.com/algolia/vue-instantsearch",
28
+ "repository": "https://github.com/algolia/instantsearch.js",
29
29
  "scripts": {
30
30
  "prebuild": "rm -rf vue2 vue3",
31
31
  "build": "rollup -c",
32
- "storybook": "start-storybook -p 9001 -c .storybook",
33
- "storybook:build": "build-storybook -c .storybook -o website/stories",
34
- "examples:build": "yarn build && ./examples/build.sh",
35
- "website:build": "yarn storybook:build && yarn examples:build && ./scripts/clean-node-modules.sh",
36
- "test": "jest",
37
- "test:build": "yarn build && bundlesize",
38
- "test:update": "jest --updateSnapshot",
39
- "test:watch": "jest --watch",
40
- "test:e2e": "yarn test:e2e:local",
41
- "test:e2e:local": "wdio wdio.local.conf.js",
42
- "test:e2e:saucelabs": "wdio wdio.saucelabs.conf.js",
43
- "lint": "eslint --ext .js,.vue .",
44
- "lint:fix": "eslint --ext .js,.vue . --fix",
45
- "format": "prettier --write '**/*.{js,md,vue,css}'",
46
- "release": "shipjs prepare"
32
+ "storybook": "start-storybook -p 6006 -c .storybook",
33
+ "storybook:build": "build-storybook -c .storybook -o ../../website/stories/vue",
34
+ "test:exports": "node ./test/module/vue2/is-es-module.mjs && node ./test/module/vue2/is-cjs-module.cjs",
35
+ "test:exports:vue3": "node ./test/module/vue3/is-es-module.mjs && node ./test/module/vue3/is-cjs-module.cjs"
47
36
  },
48
37
  "dependencies": {
49
- "instantsearch.js": "^4.47.0",
38
+ "instantsearch.js": "^4.49.4",
50
39
  "mitt": "^2.1.0"
51
40
  },
52
41
  "peerDependencies": {
@@ -64,45 +53,15 @@
64
53
  }
65
54
  },
66
55
  "devDependencies": {
67
- "@babel/core": "^7.17.0",
68
- "@storybook/addon-actions": "3.4.11",
69
- "@storybook/addon-knobs": "3.4.11",
70
- "@storybook/addon-options": "3.4.11",
71
- "@storybook/vue": "3.4.11",
72
- "@vue/compiler-sfc": "3.0.11",
73
- "@vue/test-utils": "1.2.1",
56
+ "@babel/core": "7.15.5",
57
+ "@storybook/vue": "5.3.9",
58
+ "@vue/compiler-sfc": "3.1.2",
59
+ "@vue/server-renderer": "3.1.2",
60
+ "@vue/test-utils": "1.3.0",
74
61
  "@vue/test-utils2": "npm:@vue/test-utils@2.0.0-rc.11",
75
- "@wdio/cli": "^5.11.13",
76
- "@wdio/jasmine-framework": "^5.11.0",
77
- "@wdio/junit-reporter": "^5.11.7",
78
- "@wdio/local-runner": "^5.11.13",
79
- "@wdio/sauce-service": "^5.11.1",
80
- "@wdio/selenium-standalone-service": "^5.11.2",
81
- "@wdio/spec-reporter": "^5.11.7",
82
- "@wdio/static-server-service": "^5.11.0",
83
- "algoliasearch": "4.0.1",
84
- "algoliasearch-helper": "^3.10.0",
85
- "babel-eslint": "10.0.1",
86
- "babel-jest": "23.6.0",
87
- "babel-preset-es2015": "6.24.1",
88
- "bundlesize": "0.17.1",
89
- "concurrently": "4.1.0",
90
- "conventional-changelog-cli": "2.0.12",
91
- "eslint": "5.14.1",
92
- "eslint-config-algolia": "13.2.3",
93
- "eslint-config-prettier": "3.1.0",
94
- "eslint-plugin-import": "2.16.0",
95
- "eslint-plugin-jest": "22.3.0",
96
- "eslint-plugin-prettier": "3.0.0",
97
- "eslint-plugin-vue": "4.7.1",
98
- "instantsearch-e2e-tests": "algolia/instantsearch-e2e-tests#v2.0.2",
99
- "instantsearch.css": "7.3.1",
100
- "jest": "23.6.0",
101
- "jest-serializer-html": "7.1.0",
102
- "jest-vue-preprocessor": "1.4.0",
103
- "jest-watch-typeahead": "0.2.1",
104
- "lodash": "4.17.19",
105
- "prettier": "1.14.3",
62
+ "algoliasearch": "4.14.3",
63
+ "algoliasearch-helper": "3.11.2",
64
+ "instantsearch.css": "8.0.0",
106
65
  "rollup": "1.32.1",
107
66
  "rollup-plugin-babel": "4.4.0",
108
67
  "rollup-plugin-buble": "0.19.6",
@@ -112,62 +71,19 @@
112
71
  "rollup-plugin-node-resolve": "5.2.0",
113
72
  "rollup-plugin-replace": "2.1.0",
114
73
  "rollup-plugin-terser": "4.0.4",
115
- "rollup-plugin-vue2": "npm:rollup-plugin-vue@3.0.0",
74
+ "rollup-plugin-vue2": "npm:rollup-plugin-vue@4.3.2",
116
75
  "rollup-plugin-vue3": "npm:rollup-plugin-vue@6.0.0",
117
- "rollup-watch": "4.3.1",
118
- "shipjs": "0.20.0-beta.3",
119
- "vue": "2.6.0",
76
+ "vue": "2.7.14",
120
77
  "vue-autosuggest": "1.8.1",
121
- "vue-jest": "2.6.0",
122
- "vue-json-tree": "0.3.3",
123
78
  "vue-loader": "14.2.2",
124
79
  "vue-router": "3.4.3",
125
80
  "vue-router4": "npm:vue-router@4.0.0",
126
- "vue-server-renderer": "^2.6.11",
81
+ "vue-server-renderer": "2.7.14",
127
82
  "vue-slider-component": "3.0.15",
128
- "vue-template-compiler": "2.6.0",
83
+ "vue-template-compiler": "2.7.14",
129
84
  "vuetify": "1.5.3",
130
85
  "vuex": "3.5.1",
131
86
  "vuex4": "npm:vuex@4.0.0"
132
87
  },
133
- "bundlesize": [
134
- {
135
- "path": "./vue2/umd/index.js",
136
- "maxSize": "57.25 kB"
137
- },
138
- {
139
- "path": "./vue3/umd/index.js",
140
- "maxSize": "58.25 kB"
141
- },
142
- {
143
- "path": "./vue2/cjs/index.js",
144
- "maxSize": "17.00 kB"
145
- },
146
- {
147
- "path": "./vue3/cjs/index.js",
148
- "maxSize": "18.50 kB"
149
- }
150
- ],
151
- "resolutions": {
152
- "brotli-size": "4.0.0"
153
- },
154
- "jest": {
155
- "setupTestFrameworkScriptFile": "./jest.setup.js",
156
- "moduleFileExtensions": [
157
- "js",
158
- "vue"
159
- ],
160
- "transformIgnorePatterns": [
161
- "node_modules/(?!(instantsearch\\.js|vue-json-tree))"
162
- ],
163
- "transform": {
164
- "^.+\\.js$": "babel-jest",
165
- "^.+\\.vue$": "vue-jest"
166
- },
167
- "testURL": "https://example.com",
168
- "watchPlugins": [
169
- "jest-watch-typeahead/filename",
170
- "jest-watch-typeahead/testname"
171
- ]
172
- }
88
+ "gitHead": "4c473604508a865a2488e064fdd3a415f416d14a"
173
89
  }
@@ -1,3 +1,9 @@
1
+ /**
2
+ * @jest-environment jsdom
3
+ */
4
+
5
+ /* eslint-disable jest/no-conditional-expect */
6
+
1
7
  import {
2
8
  isVue3,
3
9
  isVue2,
@@ -5,6 +11,7 @@ import {
5
11
  createApp,
6
12
  renderCompat,
7
13
  } from '../util/vue-compat';
14
+ import { mount } from '../../test/utils';
8
15
  import InstantSearch from '../instantsearch';
9
16
  import { AisInstantSearch } from '../widgets';
10
17
 
@@ -39,7 +46,7 @@ function getAllComponents() {
39
46
 
40
47
  try {
41
48
  suitClass = mixins
42
- .find(mixin => mixin.methods && mixin.methods.suit)
49
+ .find((mixin) => mixin.methods && mixin.methods.suit)
43
50
  .methods.suit();
44
51
  } catch (e) {
45
52
  /* no suit class, so will fail the assertions */
@@ -76,7 +83,7 @@ function getAllComponents() {
76
83
  }
77
84
 
78
85
  const Component = {
79
- render: renderCompat(h =>
86
+ render: renderCompat((h) =>
80
87
  h(
81
88
  AisInstantSearch,
82
89
  {
@@ -101,10 +108,12 @@ function getAllComponents() {
101
108
 
102
109
  let vm;
103
110
  if (isVue2) {
104
- vm = new Vue2(Component).$mount();
111
+ const wrapper = mount(Component);
112
+ vm = wrapper.vm;
105
113
  } else if (isVue3) {
106
114
  vm = createApp(Component).mount(document.createElement('div'));
107
115
  }
116
+
108
117
  widget = vm.$refs.widgetComponent.widget;
109
118
  } catch (e) {
110
119
  /* no widget, so will fail the assertions */
@@ -1,14 +1,13 @@
1
1
  <template>
2
- <div
3
- :class="suit()"
4
- v-if="state"
5
- >
2
+ <div :class="suit()" v-if="state">
6
3
  <slot
7
4
  :refine="state.refine"
8
5
  :current-refinement="state.currentRefinement"
9
6
  :indices="state.indices"
10
7
  >
11
- <p>This widget doesn't render anything without a filled in default slot.</p>
8
+ <p>
9
+ This widget doesn't render anything without a filled in default slot.
10
+ </p>
12
11
  <p>query, function to refine and results are provided.</p>
13
12
  <pre>refine: Function</pre>
14
13
  <pre>currentRefinement: "{{ state.currentRefinement }}"</pre>
@@ -10,7 +10,12 @@
10
10
  :createURL="state.createURL"
11
11
  >
12
12
  <ul :class="suit('list')">
13
- <li :class="[suit('item'), !state.items.length && suit('item', 'selected')]">
13
+ <li
14
+ :class="[
15
+ suit('item'),
16
+ !state.items.length && suit('item', 'selected'),
17
+ ]"
18
+ >
14
19
  <a
15
20
  v-if="Boolean(state.items.length)"
16
21
  :href="state.createURL()"
@@ -28,10 +33,7 @@
28
33
  :key="item.label"
29
34
  :class="[suit('item'), isLastItem(index) && suit('item', 'selected')]"
30
35
  >
31
- <span
32
- :class="suit('separator')"
33
- aria-hidden="true"
34
- >
36
+ <span :class="suit('separator')" aria-hidden="true">
35
37
  <slot name="separator">></slot>
36
38
  </span>
37
39
  <a
@@ -39,7 +41,8 @@
39
41
  :href="state.createURL(item.value)"
40
42
  :class="suit('link')"
41
43
  @click.prevent="state.refine(item.value)"
42
- >{{ item.label }}</a>
44
+ >{{ item.label }}</a
45
+ >
43
46
  <span v-else>{{ item.label }}</span>
44
47
  </li>
45
48
  </ul>
@@ -1,8 +1,5 @@
1
1
  <template>
2
- <div
3
- v-if="state"
4
- :class="suit()"
5
- >
2
+ <div v-if="state" :class="suit()">
6
3
  <slot
7
4
  :can-refine="canRefine"
8
5
  :refine="state.refine"
@@ -14,7 +11,7 @@
14
11
  :disabled="!canRefine"
15
12
  @click.prevent="state.refine"
16
13
  >
17
- <slot name="resetLabel">Clear refinements</slot>
14
+ <slot name="resetLabel"> Clear refinements </slot>
18
15
  </button>
19
16
  </slot>
20
17
  </div>
@@ -24,7 +24,7 @@ export default {
24
24
  };
25
25
  },
26
26
  },
27
- render: renderCompat(function(h) {
27
+ render: renderCompat(function (h) {
28
28
  const slot = isVue3 ? this.$slots.default : this.$scopedSlots.default;
29
29
 
30
30
  if (!this.state || !slot) {
@@ -1,8 +1,5 @@
1
1
  <template>
2
- <div
3
- :class="[suit(), noRefinement && suit('','noRefinement')]"
4
- v-if="state"
5
- >
2
+ <div :class="[suit(), noRefinement && suit('', 'noRefinement')]" v-if="state">
6
3
  <slot
7
4
  :refine="state.refine"
8
5
  :items="state.items"
@@ -33,7 +30,9 @@
33
30
  :createURL="state.createURL"
34
31
  >
35
32
  <span :class="suit('categoryLabel')">
36
- <q v-if="refinement.attribute === 'query'">{{ refinement.label }}</q>
33
+ <q v-if="refinement.attribute === 'query'">{{
34
+ refinement.label
35
+ }}</q>
37
36
  <template v-else>
38
37
  {{ refinement.label }}
39
38
  </template>
@@ -106,10 +105,8 @@ export default {
106
105
  capitalize(value) {
107
106
  if (!value) return '';
108
107
  return (
109
- value
110
- .toString()
111
- .charAt(0)
112
- .toLocaleUpperCase() + value.toString().slice(1)
108
+ value.toString().charAt(0).toLocaleUpperCase() +
109
+ value.toString().slice(1)
113
110
  );
114
111
  },
115
112
  },
@@ -66,10 +66,10 @@ export default {
66
66
  default: undefined,
67
67
  },
68
68
  },
69
- render: renderCompat(function(h) {
69
+ render: renderCompat(function (h) {
70
70
  const components = new Map();
71
71
 
72
- (getDefaultSlot(this) || []).forEach(vnode => {
72
+ (getDefaultSlot(this) || []).forEach((vnode) => {
73
73
  const attribute = getWidgetAttribute(vnode);
74
74
  if (attribute) {
75
75
  components.set(
@@ -82,7 +82,7 @@ export default {
82
82
  // by default, render everything, but hidden so that the routing doesn't disappear
83
83
  if (!this.state) {
84
84
  const allComponents = [];
85
- components.forEach(component => allComponents.push(component));
85
+ components.forEach((component) => allComponents.push(component));
86
86
 
87
87
  return h(
88
88
  'div',
@@ -99,7 +99,9 @@ export default {
99
99
  return h(
100
100
  'div',
101
101
  { class: [this.suit()] },
102
- this.state.attributesToRender.map(attribute => components.get(attribute))
102
+ this.state.attributesToRender.map((attribute) =>
103
+ components.get(attribute)
104
+ )
103
105
  );
104
106
  }),
105
107
  computed: {
@@ -25,15 +25,14 @@
25
25
  v-if="showMore"
26
26
  :class="[
27
27
  suit('showMore'),
28
- !state.canToggleShowMore && suit('showMore', 'disabled')
28
+ !state.canToggleShowMore && suit('showMore', 'disabled'),
29
29
  ]"
30
30
  :disabled="!state.canToggleShowMore"
31
31
  @click.prevent="state.toggleShowMore"
32
32
  >
33
- <slot
34
- name="showMoreLabel"
35
- :is-showing-more="state.isShowingMore"
36
- >{{ state.isShowingMore ? 'Show less' : 'Show more' }}</slot>
33
+ <slot name="showMoreLabel" :is-showing-more="state.isShowingMore">
34
+ {{ state.isShowingMore ? 'Show less' : 'Show more' }}
35
+ </slot>
37
36
  </button>
38
37
  </slot>
39
38
  </div>
@@ -3,7 +3,7 @@
3
3
  :class="[
4
4
  suit('list'),
5
5
  level > 0 && suit('list', 'child'),
6
- suit('list', `lvl${level}`)
6
+ suit('list', `lvl${level}`),
7
7
  ]"
8
8
  >
9
9
  <li
@@ -12,15 +12,12 @@
12
12
  :class="[
13
13
  suit('item'),
14
14
  item.data && suit('item', 'parent'),
15
- item.isRefined && suit('item', 'selected')
15
+ item.isRefined && suit('item', 'selected'),
16
16
  ]"
17
17
  >
18
18
  <a
19
19
  :href="createURL(item.value)"
20
- :class="[
21
- suit('link'),
22
- item.isRefined && suit('link', 'selected')
23
- ]"
20
+ :class="[suit('link'), item.isRefined && suit('link', 'selected')]"
24
21
  @click.prevent="refine(item.value)"
25
22
  >
26
23
  <span :class="suit('label')">{{ item.label }}</span>
@@ -5,22 +5,21 @@
5
5
  :class="[isHighlighted && suit('highlighted')]"
6
6
  :key="index"
7
7
  :is="isHighlighted ? highlightedTagName : TextNode"
8
- >{{ value }}</component>
8
+ >{{ value }}</component
9
+ >
9
10
  </span>
10
11
  </template>
11
12
 
12
13
  <script>
13
- import { isVue3 } from '../util/vue-compat';
14
+ import { getDefaultSlot, renderCompat, isVue3 } from '../util/vue-compat';
14
15
  import { parseAlgoliaHit } from '../util/parseAlgoliaHit';
15
16
 
16
17
  const TextNode = isVue3
17
18
  ? (props, context) => context.slots.default()
18
19
  : {
19
- functional: true,
20
- render(createElement, context) {
21
- const slots = context.slots();
22
- return slots.default;
23
- },
20
+ render: renderCompat(function () {
21
+ return getDefaultSlot(this);
22
+ }),
24
23
  };
25
24
 
26
25
  export default {
@@ -1,8 +1,5 @@
1
1
  <template>
2
- <div
3
- v-if="state"
4
- :class="suit()"
5
- >
2
+ <div v-if="state" :class="suit()">
6
3
  <slot
7
4
  :items="items"
8
5
  :insights="state.insights"
@@ -19,7 +16,9 @@
19
16
  :item="item"
20
17
  :index="itemIndex"
21
18
  :insights="state.insights"
22
- >objectID: {{ item.objectID }}, index: {{ itemIndex }}</slot>
19
+ >
20
+ objectID: {{ item.objectID }}, index: {{ itemIndex }}
21
+ </slot>
23
22
  </li>
24
23
  </ol>
25
24
  </slot>
@@ -1,25 +1,20 @@
1
1
  <template>
2
- <div
3
- v-if="state"
4
- :class="suit()"
5
- >
2
+ <div v-if="state" :class="suit()">
6
3
  <slot
7
4
  :items="state.items"
8
5
  :refine="state.refine"
9
- :hasNoResults="state.hasNoResults"
10
- :canRefine="state.canRefine"
6
+ :has-no-results="state.hasNoResults"
7
+ :can-refine="state.canRefine"
11
8
  >
12
- <select
13
- :class="suit('select')"
14
- v-model="selected"
15
- @change="handleChange"
16
- >
9
+ <select :class="suit('select')" v-model="selected" @change="handleChange">
17
10
  <option
18
11
  v-for="item in state.items"
19
12
  :key="item.value"
20
13
  :class="suit('option')"
21
14
  :value="item.value"
22
- >{{ item.label }}</option>
15
+ >
16
+ {{ item.label }}
17
+ </option>
23
18
  </select>
24
19
  </slot>
25
20
  </div>
@@ -57,7 +52,7 @@ export default {
57
52
  },
58
53
  data() {
59
54
  return {
60
- selected: this.items.find(item => item.default === true).value,
55
+ selected: this.items.find((item) => item.default === true).value,
61
56
  };
62
57
  },
63
58
  computed: {
@@ -34,7 +34,7 @@ export default {
34
34
  required: false,
35
35
  },
36
36
  },
37
- render: renderCompat(function(h) {
37
+ render: renderCompat(function (h) {
38
38
  return h('div', {}, getDefaultSlot(this));
39
39
  }),
40
40
  computed: {
@@ -1,9 +1,5 @@
1
1
  <template>
2
- <div
3
- v-if="state"
4
- :class="suit()"
5
- >
6
-
2
+ <div v-if="state" :class="suit()">
7
3
  <slot
8
4
  v-if="showPrevious"
9
5
  name="loadPrevious"
@@ -12,10 +8,15 @@
12
8
  :is-first-page="state.isFirstPage"
13
9
  >
14
10
  <button
15
- :class="[suit('loadPrevious'), state.isFirstPage && suit('loadPrevious', 'disabled')]"
11
+ :class="[
12
+ suit('loadPrevious'),
13
+ state.isFirstPage && suit('loadPrevious', 'disabled'),
14
+ ]"
16
15
  :disabled="state.isFirstPage"
17
16
  @click="refinePrevious()"
18
- >Show previous results</button>
17
+ >
18
+ Show previous results
19
+ </button>
19
20
  </slot>
20
21
 
21
22
  <slot
@@ -39,7 +40,9 @@
39
40
  :item="item"
40
41
  :index="index"
41
42
  :insights="state.insights"
42
- >objectID: {{ item.objectID }}, index: {{ index }}</slot>
43
+ >
44
+ objectID: {{ item.objectID }}, index: {{ index }}
45
+ </slot>
43
46
  </li>
44
47
  </ol>
45
48
 
@@ -51,10 +54,15 @@
51
54
  :is-last-page="state.isLastPage"
52
55
  >
53
56
  <button
54
- :class="[suit('loadMore'), state.isLastPage && suit('loadMore', 'disabled')]"
57
+ :class="[
58
+ suit('loadMore'),
59
+ state.isLastPage && suit('loadMore', 'disabled'),
60
+ ]"
55
61
  :disabled="state.isLastPage"
56
62
  @click="refineNext()"
57
- >Show more results</button>
63
+ >
64
+ Show more results
65
+ </button>
58
66
  </slot>
59
67
  </slot>
60
68
  </div>
@@ -93,7 +93,7 @@ export default createInstantSearchComponent({
93
93
  }),
94
94
  };
95
95
  },
96
- render: renderCompat(function(h) {
96
+ render: renderCompat(function (h) {
97
97
  return h(
98
98
  'div',
99
99
  {
@@ -15,7 +15,7 @@ export default createInstantSearchComponent({
15
15
  instantSearchInstance: this.$_ais_ssrInstantSearchInstance,
16
16
  };
17
17
  },
18
- render: renderCompat(function(h) {
18
+ render: renderCompat(function (h) {
19
19
  return h(
20
20
  'div',
21
21
  {
@@ -32,14 +32,16 @@
32
32
 
33
33
  <button
34
34
  v-if="showShowMoreButton"
35
- :class="[suit('showMore'), !state.canToggleShowMore && suit('showMore', 'disabled')]"
35
+ :class="[
36
+ suit('showMore'),
37
+ !state.canToggleShowMore && suit('showMore', 'disabled'),
38
+ ]"
36
39
  :disabled="!state.canToggleShowMore"
37
40
  @click.prevent="state.toggleShowMore()"
38
41
  >
39
- <slot
40
- name="showMoreLabel"
41
- :is-showing-more="state.isShowingMore"
42
- >{{ state.isShowingMore ? 'Show less' : 'Show more' }}</slot>
42
+ <slot name="showMoreLabel" :is-showing-more="state.isShowingMore">
43
+ {{ state.isShowingMore ? 'Show less' : 'Show more' }}
44
+ </slot>
43
45
  </button>
44
46
  </slot>
45
47
  </div>