vue-instantsearch 4.10.7 → 4.10.9

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 (231) hide show
  1. package/package.json +4 -4
  2. package/src/__tests__/common-connectors.test.js +10 -10
  3. package/src/__tests__/common-shared.test.js +3 -3
  4. package/src/__tests__/common-widgets.test.js +2 -2
  5. package/src/__tests__/index.js +2 -2
  6. package/src/components/Autocomplete.vue +2 -1
  7. package/src/components/Breadcrumb.vue +1 -0
  8. package/src/components/ClearRefinements.vue +1 -0
  9. package/src/components/Configure.js +3 -2
  10. package/src/components/ConfigureRelatedItems.js +2 -1
  11. package/src/components/CurrentRefinements.vue +2 -1
  12. package/src/components/DynamicWidgets.js +2 -1
  13. package/src/components/ExperimentalDynamicWidgets.js +2 -1
  14. package/src/components/HierarchicalMenu.vue +4 -2
  15. package/src/components/Highlight.vue +1 -0
  16. package/src/components/Highlighter.vue +1 -1
  17. package/src/components/Hits.vue +2 -1
  18. package/src/components/HitsPerPage.vue +2 -1
  19. package/src/components/Index.js +2 -1
  20. package/src/components/InfiniteHits.vue +2 -1
  21. package/src/components/InstantSearch.js +2 -1
  22. package/src/components/Menu.vue +2 -1
  23. package/src/components/MenuSelect.vue +2 -1
  24. package/src/components/NumericMenu.vue +2 -1
  25. package/src/components/Pagination.vue +2 -1
  26. package/src/components/Panel.vue +1 -1
  27. package/src/components/QueryRuleContext.js +2 -1
  28. package/src/components/QueryRuleCustomData.vue +2 -1
  29. package/src/components/RangeInput.vue +2 -1
  30. package/src/components/RatingMenu.vue +2 -1
  31. package/src/components/RefinementList.vue +5 -3
  32. package/src/components/RelevantSort.vue +2 -1
  33. package/src/components/SearchBox.vue +2 -0
  34. package/src/components/Snippet.vue +1 -0
  35. package/src/components/SortBy.vue +1 -0
  36. package/src/components/StateResults.vue +1 -1
  37. package/src/components/Stats.vue +2 -1
  38. package/src/components/ToggleRefinement.vue +2 -1
  39. package/src/components/VoiceSearch.vue +1 -0
  40. package/src/components/__tests__/Autocomplete.js +1 -1
  41. package/src/components/__tests__/CurrentRefinements.js +1 -1
  42. package/src/components/__tests__/DynamicWidgets.js +1 -1
  43. package/src/components/__tests__/ExperimentalDynamicWidgets.js +2 -2
  44. package/src/components/__tests__/HitsPerPage.js +4 -3
  45. package/src/components/__tests__/Index-integration.js +3 -2
  46. package/src/components/__tests__/Index.js +1 -1
  47. package/src/components/__tests__/InstantSearch-integration.js +1 -1
  48. package/src/components/__tests__/InstantSearch.js +4 -3
  49. package/src/components/__tests__/InstantSearchSsr.js +4 -3
  50. package/src/components/__tests__/MenuSelect.js +1 -1
  51. package/src/components/__tests__/QueryRuleContext.js +1 -1
  52. package/src/components/__tests__/QueryRuleCustomData.js +1 -1
  53. package/src/components/__tests__/RatingMenu.js +1 -1
  54. package/src/components/__tests__/RefinementList.js +1 -1
  55. package/src/components/__tests__/RelevantSort.js +1 -1
  56. package/src/components/__tests__/SearchBox.js +1 -1
  57. package/src/components/__tests__/SortBy.js +3 -3
  58. package/src/components/__tests__/StateResults.js +1 -1
  59. package/src/components/__tests__/Stats.js +2 -3
  60. package/src/components/__tests__/VoiceSearch.js +1 -1
  61. package/src/components/__tests__/__Template.js +1 -1
  62. package/src/mixins/__tests__/panel.test.js +2 -1
  63. package/src/mixins/panel.js +2 -1
  64. package/src/util/__tests__/createServerRootMixin.test.js +12 -11
  65. package/src/util/createInstantSearchComponent.js +2 -1
  66. package/src/util/createServerRootMixin.js +1 -0
  67. package/src/util/parseAlgoliaHit.js +1 -0
  68. package/vue2/cjs/index.js +1 -1
  69. package/vue2/cjs/index.js.map +1 -1
  70. package/vue2/es/package.json.js +1 -1
  71. package/vue2/es/src/components/Configure.js.map +1 -1
  72. package/vue2/es/src/components/ConfigureRelatedItems.js.map +1 -1
  73. package/vue2/es/src/components/DynamicWidgets.js.map +1 -1
  74. package/vue2/es/src/components/ExperimentalDynamicWidgets.js.map +1 -1
  75. package/vue2/es/src/components/Highlighter.vue_rollup-plugin-vue=script.js.map +1 -1
  76. package/vue2/es/src/components/Index.js.map +1 -1
  77. package/vue2/es/src/components/InstantSearch.js.map +1 -1
  78. package/vue2/es/src/components/QueryRuleContext.js.map +1 -1
  79. package/vue2/es/src/components/RefinementList.vue_rollup-plugin-vue=script.js.map +1 -1
  80. package/vue2/es/src/mixins/panel.js.map +1 -1
  81. package/vue2/es/src/util/createInstantSearchComponent.js.map +1 -1
  82. package/vue2/es/src/util/createServerRootMixin.js.map +1 -1
  83. package/vue2/es/src/util/parseAlgoliaHit.js.map +1 -1
  84. package/vue2/umd/index.js +1 -1
  85. package/vue2/umd/index.js.map +1 -1
  86. package/vue3/cjs/index.js +1 -1
  87. package/vue3/cjs/index.js.map +1 -1
  88. package/vue3/es/package.json.js +1 -1
  89. package/vue3/es/src/components/Autocomplete.vue.js +1 -1
  90. package/vue3/es/src/components/Autocomplete.vue_vue&type=script&lang.js.map +1 -1
  91. package/vue3/es/src/components/{Autocomplete.vue_vue&type=template&id=7ca53d64&lang.js → Autocomplete.vue_vue&type=template&id=52a2a414&lang.js} +1 -1
  92. package/vue3/es/src/components/Autocomplete.vue_vue&type=template&id=52a2a414&lang.js.map +1 -0
  93. package/vue3/es/src/components/Breadcrumb.vue.js +1 -1
  94. package/vue3/es/src/components/Breadcrumb.vue_vue&type=script&lang.js.map +1 -1
  95. package/vue3/es/src/components/{Breadcrumb.vue_vue&type=template&id=136e0623&lang.js → Breadcrumb.vue_vue&type=template&id=ea18edbe&lang.js} +1 -1
  96. package/vue3/es/src/components/Breadcrumb.vue_vue&type=template&id=ea18edbe&lang.js.map +1 -0
  97. package/vue3/es/src/components/ClearRefinements.vue.js +1 -1
  98. package/vue3/es/src/components/ClearRefinements.vue_vue&type=script&lang.js.map +1 -1
  99. package/vue3/es/src/components/{ClearRefinements.vue_vue&type=template&id=1b5799b9&lang.js → ClearRefinements.vue_vue&type=template&id=302b873a&lang.js} +1 -1
  100. package/vue3/es/src/components/ClearRefinements.vue_vue&type=template&id=302b873a&lang.js.map +1 -0
  101. package/vue3/es/src/components/Configure.js.map +1 -1
  102. package/vue3/es/src/components/ConfigureRelatedItems.js.map +1 -1
  103. package/vue3/es/src/components/CurrentRefinements.vue.js +1 -1
  104. package/vue3/es/src/components/CurrentRefinements.vue_vue&type=script&lang.js.map +1 -1
  105. package/vue3/es/src/components/{CurrentRefinements.vue_vue&type=template&id=6256a290&lang.js → CurrentRefinements.vue_vue&type=template&id=3ffbec3c&lang.js} +1 -1
  106. package/vue3/es/src/components/CurrentRefinements.vue_vue&type=template&id=3ffbec3c&lang.js.map +1 -0
  107. package/vue3/es/src/components/DynamicWidgets.js.map +1 -1
  108. package/vue3/es/src/components/ExperimentalDynamicWidgets.js.map +1 -1
  109. package/vue3/es/src/components/HierarchicalMenu.vue.js +1 -1
  110. package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=script&lang.js.map +1 -1
  111. package/vue3/es/src/components/{HierarchicalMenu.vue_vue&type=template&id=3548a9a1&lang.js → HierarchicalMenu.vue_vue&type=template&id=15099ac6&lang.js} +1 -1
  112. package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=template&id=15099ac6&lang.js.map +1 -0
  113. package/vue3/es/src/components/Highlight.vue.js +1 -1
  114. package/vue3/es/src/components/Highlight.vue_vue&type=script&lang.js.map +1 -1
  115. package/vue3/es/src/components/{Highlight.vue_vue&type=template&id=7592ff40&lang.js → Highlight.vue_vue&type=template&id=1d5c1fda&lang.js} +1 -1
  116. package/vue3/es/src/components/Highlight.vue_vue&type=template&id=1d5c1fda&lang.js.map +1 -0
  117. package/vue3/es/src/components/Highlighter.vue.js +1 -1
  118. package/vue3/es/src/components/Highlighter.vue_vue&type=script&lang.js.map +1 -1
  119. package/vue3/es/src/components/{Highlighter.vue_vue&type=template&id=11ec06d9&lang.js → Highlighter.vue_vue&type=template&id=f822f802&lang.js} +1 -1
  120. package/vue3/es/src/components/{Highlighter.vue_vue&type=template&id=11ec06d9&lang.js.map → Highlighter.vue_vue&type=template&id=f822f802&lang.js.map} +1 -1
  121. package/vue3/es/src/components/Hits.vue.js +1 -1
  122. package/vue3/es/src/components/Hits.vue_vue&type=script&lang.js.map +1 -1
  123. package/vue3/es/src/components/{Hits.vue_vue&type=template&id=d5fcff04&lang.js → Hits.vue_vue&type=template&id=026646d2&lang.js} +1 -1
  124. package/vue3/es/src/components/Hits.vue_vue&type=template&id=026646d2&lang.js.map +1 -0
  125. package/vue3/es/src/components/HitsPerPage.vue.js +1 -1
  126. package/vue3/es/src/components/HitsPerPage.vue_vue&type=script&lang.js.map +1 -1
  127. package/vue3/es/src/components/{HitsPerPage.vue_vue&type=template&id=d68f3530&lang.js → HitsPerPage.vue_vue&type=template&id=5d43db9c&lang.js} +1 -1
  128. package/vue3/es/src/components/HitsPerPage.vue_vue&type=template&id=5d43db9c&lang.js.map +1 -0
  129. package/vue3/es/src/components/Index.js.map +1 -1
  130. package/vue3/es/src/components/InfiniteHits.vue.js +1 -1
  131. package/vue3/es/src/components/InfiniteHits.vue_vue&type=script&lang.js.map +1 -1
  132. package/vue3/es/src/components/{InfiniteHits.vue_vue&type=template&id=0abcf352&lang.js → InfiniteHits.vue_vue&type=template&id=39939af3&lang.js} +1 -1
  133. package/vue3/es/src/components/InfiniteHits.vue_vue&type=template&id=39939af3&lang.js.map +1 -0
  134. package/vue3/es/src/components/InstantSearch.js.map +1 -1
  135. package/vue3/es/src/components/Menu.vue.js +1 -1
  136. package/vue3/es/src/components/Menu.vue_vue&type=script&lang.js.map +1 -1
  137. package/vue3/es/src/components/{Menu.vue_vue&type=template&id=577979d0&lang.js → Menu.vue_vue&type=template&id=8e757064&lang.js} +1 -1
  138. package/vue3/es/src/components/Menu.vue_vue&type=template&id=8e757064&lang.js.map +1 -0
  139. package/vue3/es/src/components/MenuSelect.vue.js +1 -1
  140. package/vue3/es/src/components/MenuSelect.vue_vue&type=script&lang.js.map +1 -1
  141. package/vue3/es/src/components/{MenuSelect.vue_vue&type=template&id=12bad393&lang.js → MenuSelect.vue_vue&type=template&id=11a03a77&lang.js} +1 -1
  142. package/vue3/es/src/components/MenuSelect.vue_vue&type=template&id=11a03a77&lang.js.map +1 -0
  143. package/vue3/es/src/components/NumericMenu.vue.js +1 -1
  144. package/vue3/es/src/components/NumericMenu.vue_vue&type=script&lang.js.map +1 -1
  145. package/vue3/es/src/components/{NumericMenu.vue_vue&type=template&id=ada9761c&lang.js → NumericMenu.vue_vue&type=template&id=583b28d4&lang.js} +1 -1
  146. package/vue3/es/src/components/NumericMenu.vue_vue&type=template&id=583b28d4&lang.js.map +1 -0
  147. package/vue3/es/src/components/Pagination.vue.js +1 -1
  148. package/vue3/es/src/components/Pagination.vue_vue&type=script&lang.js.map +1 -1
  149. package/vue3/es/src/components/{Pagination.vue_vue&type=template&id=455c122a&lang.js → Pagination.vue_vue&type=template&id=5a680db4&lang.js} +1 -1
  150. package/vue3/es/src/components/{Pagination.vue_vue&type=template&id=455c122a&lang.js.map → Pagination.vue_vue&type=template&id=5a680db4&lang.js.map} +1 -1
  151. package/vue3/es/src/components/Panel.vue.js +1 -1
  152. package/vue3/es/src/components/Panel.vue_vue&type=script&lang.js.map +1 -1
  153. package/vue3/es/src/components/{Panel.vue_vue&type=template&id=766abb5d&lang.js → Panel.vue_vue&type=template&id=7fcc1827&lang.js} +1 -1
  154. package/vue3/es/src/components/{Panel.vue_vue&type=template&id=766abb5d&lang.js.map → Panel.vue_vue&type=template&id=7fcc1827&lang.js.map} +1 -1
  155. package/vue3/es/src/components/QueryRuleContext.js.map +1 -1
  156. package/vue3/es/src/components/QueryRuleCustomData.vue.js +1 -1
  157. package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=script&lang.js.map +1 -1
  158. package/vue3/es/src/components/{QueryRuleCustomData.vue_vue&type=template&id=31c98630&lang.js → QueryRuleCustomData.vue_vue&type=template&id=1e550962&lang.js} +1 -1
  159. package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=template&id=1e550962&lang.js.map +1 -0
  160. package/vue3/es/src/components/RangeInput.vue.js +1 -1
  161. package/vue3/es/src/components/RangeInput.vue_vue&type=script&lang.js.map +1 -1
  162. package/vue3/es/src/components/{RangeInput.vue_vue&type=template&id=2c7c21d8&lang.js → RangeInput.vue_vue&type=template&id=3e30e816&lang.js} +1 -1
  163. package/vue3/es/src/components/RangeInput.vue_vue&type=template&id=3e30e816&lang.js.map +1 -0
  164. package/vue3/es/src/components/RatingMenu.vue.js +1 -1
  165. package/vue3/es/src/components/RatingMenu.vue_vue&type=script&lang.js.map +1 -1
  166. package/vue3/es/src/components/{RatingMenu.vue_vue&type=template&id=0fb40347&lang.js → RatingMenu.vue_vue&type=template&id=6effe1ff&lang.js} +1 -1
  167. package/vue3/es/src/components/{RatingMenu.vue_vue&type=template&id=0fb40347&lang.js.map → RatingMenu.vue_vue&type=template&id=6effe1ff&lang.js.map} +1 -1
  168. package/vue3/es/src/components/RefinementList.vue.js +1 -1
  169. package/vue3/es/src/components/RefinementList.vue_vue&type=script&lang.js.map +1 -1
  170. package/vue3/es/src/components/{RefinementList.vue_vue&type=template&id=00083417&lang.js → RefinementList.vue_vue&type=template&id=80c1baee&lang.js} +1 -1
  171. package/vue3/es/src/components/RefinementList.vue_vue&type=template&id=80c1baee&lang.js.map +1 -0
  172. package/vue3/es/src/components/RelevantSort.vue.js +1 -1
  173. package/vue3/es/src/components/RelevantSort.vue_vue&type=script&lang.js.map +1 -1
  174. package/vue3/es/src/components/{RelevantSort.vue_vue&type=template&id=0d400606&lang.js → RelevantSort.vue_vue&type=template&id=d83cf556&lang.js} +1 -1
  175. package/vue3/es/src/components/RelevantSort.vue_vue&type=template&id=d83cf556&lang.js.map +1 -0
  176. package/vue3/es/src/components/SearchBox.vue.js +1 -1
  177. package/vue3/es/src/components/SearchBox.vue_vue&type=script&lang.js.map +1 -1
  178. package/vue3/es/src/components/{SearchBox.vue_vue&type=template&id=30bd05ae&lang.js → SearchBox.vue_vue&type=template&id=27000fa5&lang.js} +1 -1
  179. package/vue3/es/src/components/SearchBox.vue_vue&type=template&id=27000fa5&lang.js.map +1 -0
  180. package/vue3/es/src/components/Snippet.vue.js +1 -1
  181. package/vue3/es/src/components/Snippet.vue_vue&type=script&lang.js.map +1 -1
  182. package/vue3/es/src/components/{Snippet.vue_vue&type=template&id=1cd4c392&lang.js → Snippet.vue_vue&type=template&id=1e214b4c&lang.js} +1 -1
  183. package/vue3/es/src/components/Snippet.vue_vue&type=template&id=1e214b4c&lang.js.map +1 -0
  184. package/vue3/es/src/components/SortBy.vue.js +1 -1
  185. package/vue3/es/src/components/SortBy.vue_vue&type=script&lang.js.map +1 -1
  186. package/vue3/es/src/components/{SortBy.vue_vue&type=template&id=6a94a4c1&lang.js → SortBy.vue_vue&type=template&id=507e7d3a&lang.js} +1 -1
  187. package/vue3/es/src/components/SortBy.vue_vue&type=template&id=507e7d3a&lang.js.map +1 -0
  188. package/vue3/es/src/components/StateResults.vue.js +1 -1
  189. package/vue3/es/src/components/StateResults.vue_vue&type=script&lang.js.map +1 -1
  190. package/vue3/es/src/components/{StateResults.vue_vue&type=template&id=2ea5b184&lang.js → StateResults.vue_vue&type=template&id=f5047700&lang.js} +1 -1
  191. package/vue3/es/src/components/{StateResults.vue_vue&type=template&id=2ea5b184&lang.js.map → StateResults.vue_vue&type=template&id=f5047700&lang.js.map} +1 -1
  192. package/vue3/es/src/components/Stats.vue.js +1 -1
  193. package/vue3/es/src/components/Stats.vue_vue&type=script&lang.js.map +1 -1
  194. package/vue3/es/src/components/{Stats.vue_vue&type=template&id=05ff9d6a&lang.js → Stats.vue_vue&type=template&id=6d9c672c&lang.js} +1 -1
  195. package/vue3/es/src/components/Stats.vue_vue&type=template&id=6d9c672c&lang.js.map +1 -0
  196. package/vue3/es/src/components/ToggleRefinement.vue.js +1 -1
  197. package/vue3/es/src/components/ToggleRefinement.vue_vue&type=script&lang.js.map +1 -1
  198. package/vue3/es/src/components/{ToggleRefinement.vue_vue&type=template&id=461db228&lang.js → ToggleRefinement.vue_vue&type=template&id=1e8d14ba&lang.js} +1 -1
  199. package/vue3/es/src/components/ToggleRefinement.vue_vue&type=template&id=1e8d14ba&lang.js.map +1 -0
  200. package/vue3/es/src/components/VoiceSearch.vue.js +1 -1
  201. package/vue3/es/src/components/VoiceSearch.vue_vue&type=script&lang.js.map +1 -1
  202. package/vue3/es/src/components/{VoiceSearch.vue_vue&type=template&id=1cf17560&lang.js → VoiceSearch.vue_vue&type=template&id=c25adbd0&lang.js} +1 -1
  203. package/vue3/es/src/components/VoiceSearch.vue_vue&type=template&id=c25adbd0&lang.js.map +1 -0
  204. package/vue3/es/src/mixins/panel.js.map +1 -1
  205. package/vue3/es/src/util/createInstantSearchComponent.js.map +1 -1
  206. package/vue3/es/src/util/createServerRootMixin.js.map +1 -1
  207. package/vue3/es/src/util/parseAlgoliaHit.js.map +1 -1
  208. package/vue3/umd/index.js +1 -1
  209. package/vue3/umd/index.js.map +1 -1
  210. package/vue3/es/src/components/Autocomplete.vue_vue&type=template&id=7ca53d64&lang.js.map +0 -1
  211. package/vue3/es/src/components/Breadcrumb.vue_vue&type=template&id=136e0623&lang.js.map +0 -1
  212. package/vue3/es/src/components/ClearRefinements.vue_vue&type=template&id=1b5799b9&lang.js.map +0 -1
  213. package/vue3/es/src/components/CurrentRefinements.vue_vue&type=template&id=6256a290&lang.js.map +0 -1
  214. package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=template&id=3548a9a1&lang.js.map +0 -1
  215. package/vue3/es/src/components/Highlight.vue_vue&type=template&id=7592ff40&lang.js.map +0 -1
  216. package/vue3/es/src/components/Hits.vue_vue&type=template&id=d5fcff04&lang.js.map +0 -1
  217. package/vue3/es/src/components/HitsPerPage.vue_vue&type=template&id=d68f3530&lang.js.map +0 -1
  218. package/vue3/es/src/components/InfiniteHits.vue_vue&type=template&id=0abcf352&lang.js.map +0 -1
  219. package/vue3/es/src/components/Menu.vue_vue&type=template&id=577979d0&lang.js.map +0 -1
  220. package/vue3/es/src/components/MenuSelect.vue_vue&type=template&id=12bad393&lang.js.map +0 -1
  221. package/vue3/es/src/components/NumericMenu.vue_vue&type=template&id=ada9761c&lang.js.map +0 -1
  222. package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=template&id=31c98630&lang.js.map +0 -1
  223. package/vue3/es/src/components/RangeInput.vue_vue&type=template&id=2c7c21d8&lang.js.map +0 -1
  224. package/vue3/es/src/components/RefinementList.vue_vue&type=template&id=00083417&lang.js.map +0 -1
  225. package/vue3/es/src/components/RelevantSort.vue_vue&type=template&id=0d400606&lang.js.map +0 -1
  226. package/vue3/es/src/components/SearchBox.vue_vue&type=template&id=30bd05ae&lang.js.map +0 -1
  227. package/vue3/es/src/components/Snippet.vue_vue&type=template&id=1cd4c392&lang.js.map +0 -1
  228. package/vue3/es/src/components/SortBy.vue_vue&type=template&id=6a94a4c1&lang.js.map +0 -1
  229. package/vue3/es/src/components/Stats.vue_vue&type=template&id=05ff9d6a&lang.js.map +0 -1
  230. package/vue3/es/src/components/ToggleRefinement.vue_vue&type=template&id=461db228&lang.js.map +0 -1
  231. package/vue3/es/src/components/VoiceSearch.vue_vue&type=template&id=1cf17560&lang.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RefinementList.vue_vue&type=script&lang.js","sources":["../../../../src/components/RefinementList.vue"],"sourcesContent":["<template>\n <div\n :class=\"[suit(), !state.canRefine && suit('', 'noRefinement')]\"\n v-if=\"state\"\n >\n <slot\n :items=\"items\"\n :refine=\"refine\"\n :search-for-items=\"state.searchForItems\"\n :search-for-items-query=\"searchForFacetValuesQuery\"\n :toggle-show-more=\"toggleShowMore\"\n :can-toggle-show-more=\"state.canToggleShowMore\"\n :is-showing-more=\"state.isShowingMore\"\n :createURL=\"state.createURL\"\n :is-from-search=\"state.isFromSearch\"\n :can-refine=\"state.canRefine\"\n :send-event=\"state.sendEvent\"\n >\n <div :class=\"suit('searchBox')\" v-if=\"searchable\">\n <search-input\n v-model=\"searchForFacetValues\"\n :placeholder=\"searchablePlaceholder\"\n :class-names=\"classNames\"\n />\n </div>\n <slot\n name=\"noResults\"\n :query=\"searchForFacetValues\"\n v-if=\"state.isFromSearch && items.length === 0\"\n >\n <div :class=\"suit('noResults')\">No results.</div>\n </slot>\n <ul :class=\"suit('list')\">\n <li\n :class=\"[suit('item'), item.isRefined && suit('item', 'selected')]\"\n v-for=\"item in items\"\n :key=\"item.value\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :refine=\"refine\"\n :createURL=\"state.createURL\"\n >\n <label :class=\"suit('label')\">\n <input\n :class=\"suit('checkbox')\"\n type=\"checkbox\"\n :value=\"item.value\"\n :checked=\"item.isRefined\"\n @change=\"refine(item.value)\"\n />\n <span v-if=\"searchable\" :class=\"suit('labelText')\">\n <ais-highlight attribute=\"item\" :hit=\"item\" />\n </span>\n <span v-else :class=\"suit('labelText')\">{{ item.label }}</span>\n <span :class=\"suit('count')\">{{ item.count }}</span>\n </label>\n </slot>\n </li>\n </ul>\n <button\n :class=\"[\n suit('showMore'),\n {\n [suit('showMore', 'disabled')]: !state.canToggleShowMore,\n },\n ]\"\n @click=\"toggleShowMore\"\n v-if=\"showMore\"\n :disabled=\"!state.canToggleShowMore\"\n >\n <slot name=\"showMoreLabel\" :is-showing-more=\"state.isShowingMore\">\n Show {{ state.isShowingMore ? 'less' : 'more' }}\n </slot>\n </button>\n </slot>\n </div>\n</template>\n\n<script>\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\nimport { connectRefinementList } from 'instantsearch.js/es/connectors';\nimport SearchInput from './SearchInput.vue';\nimport AisHighlight from './Highlight.vue';\n\nconst noop = () => {};\n\nexport default {\n name: 'AisRefinementList',\n components: { SearchInput, AisHighlight },\n mixins: [\n createSuitMixin({ name: 'RefinementList' }),\n createWidgetMixin(\n {\n connector: connectRefinementList,\n },\n {\n $$widgetType: 'ais.refinementList',\n }\n ),\n createPanelConsumerMixin(),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n searchable: {\n type: Boolean,\n default: undefined,\n },\n searchablePlaceholder: {\n type: String,\n required: false,\n default: 'Search here…',\n },\n operator: {\n default: 'or',\n validator(value) {\n return value === 'and' || value === 'or';\n },\n required: false,\n },\n limit: {\n type: Number,\n required: false,\n default: undefined,\n },\n showMoreLimit: {\n type: Number,\n required: false,\n default: undefined,\n },\n showMore: {\n type: Boolean,\n required: false,\n default: false,\n },\n sortBy: {\n type: [Array, Function],\n required: false,\n default: undefined,\n },\n transformItems: {\n type: Function,\n required: false,\n default: undefined,\n },\n },\n data() {\n return {\n searchForFacetValuesQuery: '',\n };\n },\n computed: {\n searchForFacetValues: {\n get() {\n return this.searchForFacetValuesQuery;\n },\n set(value) {\n this.state.searchForItems(value);\n this.searchForFacetValuesQuery = value;\n },\n },\n toggleShowMore() {\n return this.state.toggleShowMore || noop;\n },\n items() {\n return this.state.items.map((item) =>\n Object.assign({}, item, {\n _highlightResult: {\n item: {\n value: item.highlighted,\n },\n },\n })\n );\n },\n widgetParams() {\n return {\n attribute: this.attribute,\n operator: this.operator,\n limit: this.limit,\n showMore: this.showMore,\n showMoreLimit: this.showMoreLimit,\n sortBy: this.sortBy,\n escapeFacetValues: true,\n transformItems: this.transformItems,\n };\n },\n },\n methods: {\n refine(value) {\n this.state.refine(value);\n this.searchForFacetValuesQuery = '';\n },\n },\n};\n</script>\n"],"names":["const","noop","name","components","SearchInput","AisHighlight","mixins","createSuitMixin","createWidgetMixin","connector","connectRefinementList","$$widgetType","createPanelConsumerMixin","props","attribute","type","String","required","searchable","Boolean","default","undefined","searchablePlaceholder","operator","validator","value","limit","Number","showMoreLimit","showMore","sortBy","Array","Function","transformItems","data","searchForFacetValuesQuery","computed","searchForFacetValues","get","this","set","state","searchForItems","toggleShowMore","items","map","item","Object","assign","_highlightResult","highlighted","widgetParams","escapeFacetValues","methods","refine"],"mappings":"gUAwFAA,IAAMC,6BAES,CACbC,KAAM,oBACNC,WAAY,aAAEC,eAAaC,GAC3BC,OAAQ,CACNC,EAAgB,CAAEL,KAAM,mBACxBM,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,uBAGlBC,KAEFC,MAAO,CACLC,UAAW,CACTC,KAAMC,OACNC,UAAU,GAEZC,WAAY,CACVH,KAAMI,QACNC,aAASC,GAEXC,sBAAuB,CACrBP,KAAMC,OACNC,UAAU,EACVG,QAAS,gBAEXG,SAAU,CACRH,QAAS,KACTI,mBAAUC,GACR,MAAiB,QAAVA,GAA6B,OAAVA,GAE5BR,UAAU,GAEZS,MAAO,CACLX,KAAMY,OACNV,UAAU,EACVG,aAASC,GAEXO,cAAe,CACbb,KAAMY,OACNV,UAAU,EACVG,aAASC,GAEXQ,SAAU,CACRd,KAAMI,QACNF,UAAU,EACVG,SAAS,GAEXU,OAAQ,CACNf,KAAM,CAACgB,MAAOC,UACdf,UAAU,EACVG,aAASC,GAEXY,eAAgB,CACdlB,KAAMiB,SACNf,UAAU,EACVG,aAASC,IAGba,gBACE,MAAO,CACLC,0BAA2B,KAG/BC,SAAU,CACRC,qBAAsB,CACpBC,eACE,OAAOC,KAAKJ,2BAEdK,aAAIf,GACFc,KAAKE,MAAMC,eAAejB,GAC1Bc,KAAKJ,0BAA4BV,IAGrCkB,0BACE,OAAOJ,KAAKE,MAAME,gBAAkB1C,GAEtC2C,iBACE,OAAOL,KAAKE,MAAMG,MAAMC,aAAKC,UAC3BC,OAAOC,OAAO,GAAIF,EAAM,CACtBG,iBAAkB,CAChBH,KAAM,CACJrB,MAAOqB,EAAKI,mBAMtBC,wBACE,MAAO,CACLrC,UAAWyB,KAAKzB,UAChBS,SAAUgB,KAAKhB,SACfG,MAAOa,KAAKb,MACZG,SAAUU,KAAKV,SACfD,cAAeW,KAAKX,cACpBE,OAAQS,KAAKT,OACbsB,mBAAmB,EACnBnB,eAAgBM,KAAKN,kBAI3BoB,QAAS,CACPC,gBAAO7B,GACLc,KAAKE,MAAMa,OAAO7B,GAClBc,KAAKJ,0BAA4B"}
1
+ {"version":3,"file":"RefinementList.vue_vue&type=script&lang.js","sources":["../../../../src/components/RefinementList.vue"],"sourcesContent":["<template>\n <div\n :class=\"[suit(), !state.canRefine && suit('', 'noRefinement')]\"\n v-if=\"state\"\n >\n <slot\n :items=\"items\"\n :refine=\"refine\"\n :search-for-items=\"state.searchForItems\"\n :search-for-items-query=\"searchForFacetValuesQuery\"\n :toggle-show-more=\"toggleShowMore\"\n :can-toggle-show-more=\"state.canToggleShowMore\"\n :is-showing-more=\"state.isShowingMore\"\n :createURL=\"state.createURL\"\n :is-from-search=\"state.isFromSearch\"\n :can-refine=\"state.canRefine\"\n :send-event=\"state.sendEvent\"\n >\n <div :class=\"suit('searchBox')\" v-if=\"searchable\">\n <search-input\n v-model=\"searchForFacetValues\"\n :placeholder=\"searchablePlaceholder\"\n :class-names=\"classNames\"\n />\n </div>\n <slot\n name=\"noResults\"\n :query=\"searchForFacetValues\"\n v-if=\"state.isFromSearch && items.length === 0\"\n >\n <div :class=\"suit('noResults')\">No results.</div>\n </slot>\n <ul :class=\"suit('list')\">\n <li\n :class=\"[suit('item'), item.isRefined && suit('item', 'selected')]\"\n v-for=\"item in items\"\n :key=\"item.value\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :refine=\"refine\"\n :createURL=\"state.createURL\"\n >\n <label :class=\"suit('label')\">\n <input\n :class=\"suit('checkbox')\"\n type=\"checkbox\"\n :value=\"item.value\"\n :checked=\"item.isRefined\"\n @change=\"refine(item.value)\"\n />\n <span v-if=\"searchable\" :class=\"suit('labelText')\">\n <ais-highlight attribute=\"item\" :hit=\"item\" />\n </span>\n <span v-else :class=\"suit('labelText')\">{{ item.label }}</span>\n <span :class=\"suit('count')\">{{ item.count }}</span>\n </label>\n </slot>\n </li>\n </ul>\n <button\n :class=\"[\n suit('showMore'),\n {\n [suit('showMore', 'disabled')]: !state.canToggleShowMore,\n },\n ]\"\n @click=\"toggleShowMore\"\n v-if=\"showMore\"\n :disabled=\"!state.canToggleShowMore\"\n >\n <slot name=\"showMoreLabel\" :is-showing-more=\"state.isShowingMore\">\n Show {{ state.isShowingMore ? 'less' : 'more' }}\n </slot>\n </button>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRefinementList } from 'instantsearch.js/es/connectors';\n\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nimport AisHighlight from './Highlight.vue';\nimport SearchInput from './SearchInput.vue';\n\nconst noop = () => {};\n\nexport default {\n name: 'AisRefinementList',\n components: { SearchInput, AisHighlight },\n mixins: [\n createSuitMixin({ name: 'RefinementList' }),\n createWidgetMixin(\n {\n connector: connectRefinementList,\n },\n {\n $$widgetType: 'ais.refinementList',\n }\n ),\n createPanelConsumerMixin(),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n searchable: {\n type: Boolean,\n default: undefined,\n },\n searchablePlaceholder: {\n type: String,\n required: false,\n default: 'Search here…',\n },\n operator: {\n default: 'or',\n validator(value) {\n return value === 'and' || value === 'or';\n },\n required: false,\n },\n limit: {\n type: Number,\n required: false,\n default: undefined,\n },\n showMoreLimit: {\n type: Number,\n required: false,\n default: undefined,\n },\n showMore: {\n type: Boolean,\n required: false,\n default: false,\n },\n sortBy: {\n type: [Array, Function],\n required: false,\n default: undefined,\n },\n transformItems: {\n type: Function,\n required: false,\n default: undefined,\n },\n },\n data() {\n return {\n searchForFacetValuesQuery: '',\n };\n },\n computed: {\n searchForFacetValues: {\n get() {\n return this.searchForFacetValuesQuery;\n },\n set(value) {\n this.state.searchForItems(value);\n this.searchForFacetValuesQuery = value;\n },\n },\n toggleShowMore() {\n return this.state.toggleShowMore || noop;\n },\n items() {\n return this.state.items.map((item) =>\n Object.assign({}, item, {\n _highlightResult: {\n item: {\n value: item.highlighted,\n },\n },\n })\n );\n },\n widgetParams() {\n return {\n attribute: this.attribute,\n operator: this.operator,\n limit: this.limit,\n showMore: this.showMore,\n showMoreLimit: this.showMoreLimit,\n sortBy: this.sortBy,\n escapeFacetValues: true,\n transformItems: this.transformItems,\n };\n },\n },\n methods: {\n refine(value) {\n this.state.refine(value);\n this.searchForFacetValuesQuery = '';\n },\n },\n};\n</script>\n"],"names":["const","noop","name","components","SearchInput","AisHighlight","mixins","createSuitMixin","createWidgetMixin","connector","connectRefinementList","$$widgetType","createPanelConsumerMixin","props","attribute","type","String","required","searchable","Boolean","default","undefined","searchablePlaceholder","operator","validator","value","limit","Number","showMoreLimit","showMore","sortBy","Array","Function","transformItems","data","searchForFacetValuesQuery","computed","searchForFacetValues","get","this","set","state","searchForItems","toggleShowMore","items","map","item","Object","assign","_highlightResult","highlighted","widgetParams","escapeFacetValues","methods","refine"],"mappings":"gUA0FAA,IAAMC,6BAES,CACbC,KAAM,oBACNC,WAAY,aAAEC,eAAaC,GAC3BC,OAAQ,CACNC,EAAgB,CAAEL,KAAM,mBACxBM,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,uBAGlBC,KAEFC,MAAO,CACLC,UAAW,CACTC,KAAMC,OACNC,UAAU,GAEZC,WAAY,CACVH,KAAMI,QACNC,aAASC,GAEXC,sBAAuB,CACrBP,KAAMC,OACNC,UAAU,EACVG,QAAS,gBAEXG,SAAU,CACRH,QAAS,KACTI,mBAAUC,GACR,MAAiB,QAAVA,GAA6B,OAAVA,GAE5BR,UAAU,GAEZS,MAAO,CACLX,KAAMY,OACNV,UAAU,EACVG,aAASC,GAEXO,cAAe,CACbb,KAAMY,OACNV,UAAU,EACVG,aAASC,GAEXQ,SAAU,CACRd,KAAMI,QACNF,UAAU,EACVG,SAAS,GAEXU,OAAQ,CACNf,KAAM,CAACgB,MAAOC,UACdf,UAAU,EACVG,aAASC,GAEXY,eAAgB,CACdlB,KAAMiB,SACNf,UAAU,EACVG,aAASC,IAGba,gBACE,MAAO,CACLC,0BAA2B,KAG/BC,SAAU,CACRC,qBAAsB,CACpBC,eACE,OAAOC,KAAKJ,2BAEdK,aAAIf,GACFc,KAAKE,MAAMC,eAAejB,GAC1Bc,KAAKJ,0BAA4BV,IAGrCkB,0BACE,OAAOJ,KAAKE,MAAME,gBAAkB1C,GAEtC2C,iBACE,OAAOL,KAAKE,MAAMG,MAAMC,aAAKC,UAC3BC,OAAOC,OAAO,GAAIF,EAAM,CACtBG,iBAAkB,CAChBH,KAAM,CACJrB,MAAOqB,EAAKI,mBAMtBC,wBACE,MAAO,CACLrC,UAAWyB,KAAKzB,UAChBS,SAAUgB,KAAKhB,SACfG,MAAOa,KAAKb,MACZG,SAAUU,KAAKV,SACfD,cAAeW,KAAKX,cACpBE,OAAQS,KAAKT,OACbsB,mBAAmB,EACnBnB,eAAgBM,KAAKN,kBAI3BoB,QAAS,CACPC,gBAAO7B,GACLc,KAAKE,MAAMa,OAAO7B,GAClBc,KAAKJ,0BAA4B"}
@@ -1,2 +1,2 @@
1
1
  import{resolveComponent as e,openBlock as s,createElementBlock as t,normalizeClass as a,renderSlot as o,createVNode as l,createCommentVNode as r,createElementVNode as n,Fragment as i,renderList as c,toDisplayString as u,createTextVNode as h}from"vue";var g=["value","checked","onChange"],m=["disabled"];function d(d,f,w,M,S,b){var v=e("search-input"),F=e("ais-highlight");return d.state?(s(),t("div",{key:0,class:a([d.suit(),!d.state.canRefine&&d.suit("","noRefinement")])},[o(d.$slots,"default",{items:b.items,refine:b.refine,searchForItems:d.state.searchForItems,searchForItemsQuery:S.searchForFacetValuesQuery,toggleShowMore:b.toggleShowMore,canToggleShowMore:d.state.canToggleShowMore,isShowingMore:d.state.isShowingMore,createURL:d.state.createURL,isFromSearch:d.state.isFromSearch,canRefine:d.state.canRefine,sendEvent:d.state.sendEvent},function(){var e;return[w.searchable?(s(),t("div",{key:0,class:a(d.suit("searchBox"))},[l(v,{modelValue:b.searchForFacetValues,"onUpdate:modelValue":f[0]||(f[0]=function(e){return b.searchForFacetValues=e}),placeholder:w.searchablePlaceholder,"class-names":d.classNames},null,8,["modelValue","placeholder","class-names"])],2)):r("",!0),d.state.isFromSearch&&0===b.items.length?o(d.$slots,"noResults",{key:1,query:b.searchForFacetValues},function(){return[n("div",{class:a(d.suit("noResults"))},"No results.",2)]}):r("",!0),n("ul",{class:a(d.suit("list"))},[(s(!0),t(i,null,c(b.items,function(e){return s(),t("li",{class:a([d.suit("item"),e.isRefined&&d.suit("item","selected")]),key:e.value},[o(d.$slots,"item",{item:e,refine:b.refine,createURL:d.state.createURL},function(){return[n("label",{class:a(d.suit("label"))},[n("input",{class:a(d.suit("checkbox")),type:"checkbox",value:e.value,checked:e.isRefined,onChange:function(s){return b.refine(e.value)}},null,42,g),w.searchable?(s(),t("span",{key:0,class:a(d.suit("labelText"))},[l(F,{attribute:"item",hit:e},null,8,["hit"])],2)):(s(),t("span",{key:1,class:a(d.suit("labelText"))},u(e.label),3)),n("span",{class:a(d.suit("count"))},u(e.count),3)],2)]})],2)}),128))],2),w.showMore?(s(),t("button",{key:2,class:a([d.suit("showMore"),(e={},e[d.suit("showMore","disabled")]=!d.state.canToggleShowMore,e)]),onClick:f[1]||(f[1]=function(){for(var e=[],s=arguments.length;s--;)e[s]=arguments[s];return b.toggleShowMore&&b.toggleShowMore.apply(b,e)}),disabled:!d.state.canToggleShowMore},[o(d.$slots,"showMoreLabel",{isShowingMore:d.state.isShowingMore},function(){return[h(" Show "+u(d.state.isShowingMore?"less":"more"),1)]})],10,m)):r("",!0)]})],2)):r("",!0)}export{d as render};
2
- //# sourceMappingURL=RefinementList.vue_vue&type=template&id=00083417&lang.js.map
2
+ //# sourceMappingURL=RefinementList.vue_vue&type=template&id=80c1baee&lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefinementList.vue_vue&type=template&id=80c1baee&lang.js","sources":["../../../../src/components/RefinementList.vue?vue&type=template&id=80c1baee&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"[suit(), !state.canRefine && suit('', 'noRefinement')]\"\n v-if=\"state\"\n >\n <slot\n :items=\"items\"\n :refine=\"refine\"\n :search-for-items=\"state.searchForItems\"\n :search-for-items-query=\"searchForFacetValuesQuery\"\n :toggle-show-more=\"toggleShowMore\"\n :can-toggle-show-more=\"state.canToggleShowMore\"\n :is-showing-more=\"state.isShowingMore\"\n :createURL=\"state.createURL\"\n :is-from-search=\"state.isFromSearch\"\n :can-refine=\"state.canRefine\"\n :send-event=\"state.sendEvent\"\n >\n <div :class=\"suit('searchBox')\" v-if=\"searchable\">\n <search-input\n v-model=\"searchForFacetValues\"\n :placeholder=\"searchablePlaceholder\"\n :class-names=\"classNames\"\n />\n </div>\n <slot\n name=\"noResults\"\n :query=\"searchForFacetValues\"\n v-if=\"state.isFromSearch && items.length === 0\"\n >\n <div :class=\"suit('noResults')\">No results.</div>\n </slot>\n <ul :class=\"suit('list')\">\n <li\n :class=\"[suit('item'), item.isRefined && suit('item', 'selected')]\"\n v-for=\"item in items\"\n :key=\"item.value\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n :refine=\"refine\"\n :createURL=\"state.createURL\"\n >\n <label :class=\"suit('label')\">\n <input\n :class=\"suit('checkbox')\"\n type=\"checkbox\"\n :value=\"item.value\"\n :checked=\"item.isRefined\"\n @change=\"refine(item.value)\"\n />\n <span v-if=\"searchable\" :class=\"suit('labelText')\">\n <ais-highlight attribute=\"item\" :hit=\"item\" />\n </span>\n <span v-else :class=\"suit('labelText')\">{{ item.label }}</span>\n <span :class=\"suit('count')\">{{ item.count }}</span>\n </label>\n </slot>\n </li>\n </ul>\n <button\n :class=\"[\n suit('showMore'),\n {\n [suit('showMore', 'disabled')]: !state.canToggleShowMore,\n },\n ]\"\n @click=\"toggleShowMore\"\n v-if=\"showMore\"\n :disabled=\"!state.canToggleShowMore\"\n >\n <slot name=\"showMoreLabel\" :is-showing-more=\"state.isShowingMore\">\n Show {{ state.isShowingMore ? 'less' : 'more' }}\n </slot>\n </button>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRefinementList } from 'instantsearch.js/es/connectors';\n\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nimport AisHighlight from './Highlight.vue';\nimport SearchInput from './SearchInput.vue';\n\nconst noop = () => {};\n\nexport default {\n name: 'AisRefinementList',\n components: { SearchInput, AisHighlight },\n mixins: [\n createSuitMixin({ name: 'RefinementList' }),\n createWidgetMixin(\n {\n connector: connectRefinementList,\n },\n {\n $$widgetType: 'ais.refinementList',\n }\n ),\n createPanelConsumerMixin(),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n searchable: {\n type: Boolean,\n default: undefined,\n },\n searchablePlaceholder: {\n type: String,\n required: false,\n default: 'Search here…',\n },\n operator: {\n default: 'or',\n validator(value) {\n return value === 'and' || value === 'or';\n },\n required: false,\n },\n limit: {\n type: Number,\n required: false,\n default: undefined,\n },\n showMoreLimit: {\n type: Number,\n required: false,\n default: undefined,\n },\n showMore: {\n type: Boolean,\n required: false,\n default: false,\n },\n sortBy: {\n type: [Array, Function],\n required: false,\n default: undefined,\n },\n transformItems: {\n type: Function,\n required: false,\n default: undefined,\n },\n },\n data() {\n return {\n searchForFacetValuesQuery: '',\n };\n },\n computed: {\n searchForFacetValues: {\n get() {\n return this.searchForFacetValuesQuery;\n },\n set(value) {\n this.state.searchForItems(value);\n this.searchForFacetValuesQuery = value;\n },\n },\n toggleShowMore() {\n return this.state.toggleShowMore || noop;\n },\n items() {\n return this.state.items.map((item) =>\n Object.assign({}, item, {\n _highlightResult: {\n item: {\n value: item.highlighted,\n },\n },\n })\n );\n },\n widgetParams() {\n return {\n attribute: this.attribute,\n operator: this.operator,\n limit: this.limit,\n showMore: this.showMore,\n showMoreLimit: this.showMoreLimit,\n sortBy: this.sortBy,\n escapeFacetValues: true,\n transformItems: this.transformItems,\n };\n },\n },\n methods: {\n refine(value) {\n this.state.refine(value);\n this.searchForFacetValuesQuery = '';\n },\n },\n};\n</script>\n"],"names":["_ctx","_createElementBlock","class","canRefine","_renderSlot","items","$options","refine","searchForItems","searchForItemsQuery","$data","toggleShowMore","canToggleShowMore","isShowingMore","createURL","isFromSearch","sendEvent","$props","_createVNode","placeholder","class-names","length","query","_createElementVNode","item","isRefined","key","value","type","checked","onChange","attribute","hit","label","count","onClick","disabled"],"mappings":"2XAGUA,aAFRC,eACGC,SAAQF,UAASA,QAAMG,WAAaH,8BAGrCI,sBACGC,MAAOC,QACPC,OAAQD,SACRE,eAAkBR,QAAMQ,eACxBC,oBAAwBC,4BACxBC,eAAkBL,iBAClBM,kBAAsBZ,QAAMY,kBAC5BC,cAAiBb,QAAMa,cACvBC,UAAWd,QAAMc,UACjBC,aAAgBf,QAAMe,aACtBZ,UAAYH,QAAMG,UAClBa,UAAYhB,QAAMgB,mCAEmBC,kBAAtChB,eAAMC,QAAOF,uBACXkB,gBACWZ,4EAAAA,2BACRa,YAAaF,wBACbG,cAAapB,+EAMVA,QAAMe,kBAAgBT,QAAMe,OAHpCjB,8BAEGkB,MAAOhB,0CAGRiB,SAAMrB,QAAOF,sBAAmB,6BAElCuB,QAAKrB,QAAOF,yBACVC,WAEiBK,iBAARkB,cAFTvB,QACGC,SAAQF,eAAcwB,EAAKC,WAAazB,4BAExC0B,IAAKF,EAAKG,QAEXvB,mBAEGoB,KAAMA,EACNjB,OAAQD,SACRQ,UAAWd,QAAMc,6BAElBS,WAAQrB,QAAOF,mBACbuB,WACGrB,QAAOF,oBACR4B,KAAK,WACJD,MAAOH,EAAKG,MACZE,QAASL,EAAKC,UACdK,4BAAQxB,SAAOkB,EAAKG,oBAEXV,kBAAZhB,gBAAyBC,QAAOF,uBAC9BkB,KAAea,UAAU,OAAQC,IAAKR,6BAExCvB,gBAAcC,QAAOF,wBAAsBwB,EAAKS,WAChDV,UAAOrB,QAAOF,oBAAkBwB,EAAKU,iCAarCjB,gBARRhB,kBACGC,mGAMAiC,6FAAO7B,gDAEP8B,UAAWpC,QAAMY,oBAElBR,4BAA4BS,cAAiBb,QAAMa,8CACzCb,QAAMa"}
@@ -1,2 +1,2 @@
1
- import e from"./RelevantSort.vue_vue&type=script&lang.js";import{render as t}from"./RelevantSort.vue_vue&type=template&id=0d400606&lang.js";e.render=t;export default e;
1
+ import e from"./RelevantSort.vue_vue&type=script&lang.js";import{render as t}from"./RelevantSort.vue_vue&type=template&id=d83cf556&lang.js";e.render=t;export default e;
2
2
  //# sourceMappingURL=RelevantSort.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RelevantSort.vue_vue&type=script&lang.js","sources":["../../../../src/components/RelevantSort.vue"],"sourcesContent":["<template>\n <div v-if=\"state && state.isVirtualReplica\" :class=\"suit()\">\n <slot :is-relevant-sorted=\"state.isRelevantSorted\" :refine=\"state.refine\">\n <div :class=\"suit('text')\">\n <slot name=\"text\" :is-relevant-sorted=\"state.isRelevantSorted\" />\n </div>\n <button type=\"button\" :class=\"suit('button')\" @click=\"refine()\">\n <slot name=\"button\" :is-relevant-sorted=\"state.isRelevantSorted\">\n {{\n state.isRelevantSorted ? 'See all results' : 'See relevant results'\n }}\n </slot>\n </button>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRelevantSort } from 'instantsearch.js/es/connectors';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'AisRelevantSort',\n mixins: [\n createSuitMixin({ name: 'RelevantSort' }),\n createWidgetMixin(\n {\n connector: connectRelevantSort,\n },\n {\n $$widgetType: 'ais.relevantSort',\n }\n ),\n ],\n methods: {\n refine() {\n if (this.state.isRelevantSorted) {\n this.state.refine(0);\n } else {\n this.state.refine(undefined);\n }\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","createWidgetMixin","connector","connectRelevantSort","$$widgetType","methods","refine","this","state","isRelevantSorted","undefined"],"mappings":"wMAsBe,CACbA,KAAM,kBACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,iBACxBG,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,sBAIpBC,QAAS,CACPC,kBACMC,KAAKC,MAAMC,iBACbF,KAAKC,MAAMF,OAAO,GAElBC,KAAKC,MAAMF,YAAOI"}
1
+ {"version":3,"file":"RelevantSort.vue_vue&type=script&lang.js","sources":["../../../../src/components/RelevantSort.vue"],"sourcesContent":["<template>\n <div v-if=\"state && state.isVirtualReplica\" :class=\"suit()\">\n <slot :is-relevant-sorted=\"state.isRelevantSorted\" :refine=\"state.refine\">\n <div :class=\"suit('text')\">\n <slot name=\"text\" :is-relevant-sorted=\"state.isRelevantSorted\" />\n </div>\n <button type=\"button\" :class=\"suit('button')\" @click=\"refine()\">\n <slot name=\"button\" :is-relevant-sorted=\"state.isRelevantSorted\">\n {{\n state.isRelevantSorted ? 'See all results' : 'See relevant results'\n }}\n </slot>\n </button>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRelevantSort } from 'instantsearch.js/es/connectors';\n\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisRelevantSort',\n mixins: [\n createSuitMixin({ name: 'RelevantSort' }),\n createWidgetMixin(\n {\n connector: connectRelevantSort,\n },\n {\n $$widgetType: 'ais.relevantSort',\n }\n ),\n ],\n methods: {\n refine() {\n if (this.state.isRelevantSorted) {\n this.state.refine(0);\n } else {\n this.state.refine(undefined);\n }\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","createWidgetMixin","connector","connectRelevantSort","$$widgetType","methods","refine","this","state","isRelevantSorted","undefined"],"mappings":"wMAuBe,CACbA,KAAM,kBACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,iBACxBG,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,sBAIpBC,QAAS,CACPC,kBACMC,KAAKC,MAAMC,iBACbF,KAAKC,MAAMF,OAAO,GAElBC,KAAKC,MAAMF,YAAOI"}
@@ -1,2 +1,2 @@
1
1
  import{openBlock as t,createElementBlock as e,normalizeClass as s,renderSlot as n,createElementVNode as r,createTextVNode as i,toDisplayString as a,createCommentVNode as l}from"vue";function o(o,u,v,d,c,f){return o.state&&o.state.isVirtualReplica?(t(),e("div",{key:0,class:s(o.suit())},[n(o.$slots,"default",{isRelevantSorted:o.state.isRelevantSorted,refine:o.state.refine},function(){return[r("div",{class:s(o.suit("text"))},[n(o.$slots,"text",{isRelevantSorted:o.state.isRelevantSorted})],2),r("button",{type:"button",class:s(o.suit("button")),onClick:u[0]||(u[0]=function(t){return f.refine()})},[n(o.$slots,"button",{isRelevantSorted:o.state.isRelevantSorted},function(){return[i(a(o.state.isRelevantSorted?"See all results":"See relevant results"),1)]})],2)]})],2)):l("",!0)}export{o as render};
2
- //# sourceMappingURL=RelevantSort.vue_vue&type=template&id=0d400606&lang.js.map
2
+ //# sourceMappingURL=RelevantSort.vue_vue&type=template&id=d83cf556&lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RelevantSort.vue_vue&type=template&id=d83cf556&lang.js","sources":["../../../../src/components/RelevantSort.vue?vue&type=template&id=d83cf556&lang.js"],"sourcesContent":["<template>\n <div v-if=\"state && state.isVirtualReplica\" :class=\"suit()\">\n <slot :is-relevant-sorted=\"state.isRelevantSorted\" :refine=\"state.refine\">\n <div :class=\"suit('text')\">\n <slot name=\"text\" :is-relevant-sorted=\"state.isRelevantSorted\" />\n </div>\n <button type=\"button\" :class=\"suit('button')\" @click=\"refine()\">\n <slot name=\"button\" :is-relevant-sorted=\"state.isRelevantSorted\">\n {{\n state.isRelevantSorted ? 'See all results' : 'See relevant results'\n }}\n </slot>\n </button>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRelevantSort } from 'instantsearch.js/es/connectors';\n\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisRelevantSort',\n mixins: [\n createSuitMixin({ name: 'RelevantSort' }),\n createWidgetMixin(\n {\n connector: connectRelevantSort,\n },\n {\n $$widgetType: 'ais.relevantSort',\n }\n ),\n ],\n methods: {\n refine() {\n if (this.state.isRelevantSorted) {\n this.state.refine(0);\n } else {\n this.state.refine(undefined);\n }\n },\n },\n};\n</script>\n"],"names":["_ctx","isVirtualReplica","_createElementBlock","class","_renderSlot","isRelevantSorted","refine","_createElementVNode","type","onClick","$options"],"mappings":"qNACaA,SAASA,QAAMC,sBAA1BC,eAA6CC,QAAOH,YAClDI,sBAAOC,iBAAoBL,QAAMK,iBAAmBC,OAAQN,QAAMM,0BAChEC,SAAMJ,QAAOH,kBACXI,mBAAmBC,iBAAoBL,QAAMK,uBAE/CE,YAAQC,KAAK,SAAUL,QAAOH,kBAAiBS,uCAAOC,eACpDN,qBAAqBC,iBAAoBL,QAAMK,wCAE3CL,QAAMK"}
@@ -1,2 +1,2 @@
1
- import e from"./SearchBox.vue_vue&type=script&lang.js";import{render as r}from"./SearchBox.vue_vue&type=template&id=30bd05ae&lang.js";e.render=r;export default e;
1
+ import e from"./SearchBox.vue_vue&type=script&lang.js";import{render as r}from"./SearchBox.vue_vue&type=template&id=27000fa5&lang.js";e.render=r;export default e;
2
2
  //# sourceMappingURL=SearchBox.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SearchBox.vue_vue&type=script&lang.js","sources":["../../../../src/components/SearchBox.vue"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot\n :current-refinement=\"currentRefinement\"\n :is-search-stalled=\"state.isSearchStalled\"\n :refine=\"state.refine\"\n >\n <search-input\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n @reset=\"$emit('reset')\"\n :placeholder=\"placeholder\"\n :autofocus=\"autofocus\"\n :show-loading-indicator=\"showLoadingIndicator\"\n :should-show-loading-indicator=\"state.isSearchStalled\"\n :submit-title=\"submitTitle\"\n :reset-title=\"resetTitle\"\n :class-names=\"classNames\"\n v-model=\"currentRefinement\"\n ref=\"searchInput\"\n >\n <template #loading-indicator v-if=\"isVue3\">\n <slot name=\"loading-indicator\" />\n </template>\n <slot v-if=\"isVue2\" name=\"loading-indicator\" slot=\"loading-indicator\" />\n\n <template #submit-icon v-if=\"isVue3\">\n <slot name=\"submit-icon\" />\n </template>\n <slot v-if=\"isVue2\" name=\"submit-icon\" slot=\"submit-icon\" />\n\n <template #reset-icon v-if=\"isVue3\">\n <slot name=\"reset-icon\" />\n </template>\n <slot v-if=\"isVue2\" name=\"reset-icon\" slot=\"reset-icon\" />\n </search-input>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectSearchBox } from 'instantsearch.js/es/connectors';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { isVue3, isVue2 } from '../util/vue-compat';\nimport SearchInput from './SearchInput.vue';\n\nexport default {\n name: 'AisSearchBox',\n mixins: [\n createWidgetMixin(\n {\n connector: connectSearchBox,\n },\n {\n $$widgetType: 'ais.searchBox',\n }\n ),\n createSuitMixin({ name: 'SearchBox' }),\n ],\n components: {\n SearchInput,\n },\n props: {\n placeholder: {\n type: String,\n default: 'Search here…',\n },\n autofocus: {\n type: Boolean,\n default: false,\n },\n showLoadingIndicator: {\n type: Boolean,\n default: false,\n },\n submitTitle: {\n type: String,\n default: 'Search',\n },\n resetTitle: {\n type: String,\n default: 'Clear',\n },\n value: {\n type: String,\n default: undefined,\n },\n modelValue: {\n type: String,\n default: undefined,\n },\n queryHook: {\n type: Function,\n default: undefined,\n },\n },\n data() {\n return {\n localValue: '',\n isVue2,\n isVue3,\n };\n },\n computed: {\n widgetParams() {\n return {\n queryHook: this.queryHook,\n };\n },\n isControlled() {\n return (\n typeof this.value !== 'undefined' ||\n typeof this.modelValue !== 'undefined'\n );\n },\n model() {\n return this.value || this.modelValue;\n },\n currentRefinement: {\n get() {\n // if the input is controlled, but not up to date\n // this means it didn't search, and we should pretend it was `set`\n if (this.isControlled && this.model !== this.localValue) {\n // eslint-disable-next-line vue/no-side-effects-in-computed-properties\n this.localValue = this.model;\n this.$emit('input', this.model);\n this.$emit('update:modelValue', this.model);\n this.state.refine(this.model);\n }\n\n // we return the local value if the input is focused to avoid\n // concurrent updates when typing\n const { searchInput } = this.$refs;\n if (searchInput && searchInput.isFocused()) {\n return this.localValue;\n }\n\n return this.model || this.state.query || '';\n },\n set(val) {\n this.localValue = val;\n this.state.refine(val);\n if (this.isControlled) {\n this.$emit('input', val);\n this.$emit('update:modelValue', val);\n }\n },\n },\n },\n};\n</script>\n"],"names":["name","mixins","createWidgetMixin","connector","connectSearchBox","$$widgetType","createSuitMixin","components","SearchInput","props","placeholder","type","String","default","autofocus","Boolean","showLoadingIndicator","submitTitle","resetTitle","value","undefined","modelValue","queryHook","Function","data","localValue","isVue2","isVue3","computed","widgetParams","this","isControlled","model","currentRefinement","get","$emit","state","refine","$refs","searchInput","isFocused","query","set","val"],"mappings":"+SA+Ce,CACbA,KAAM,eACNC,OAAQ,CACNC,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,kBAGlBC,EAAgB,CAAEN,KAAM,eAE1BO,WAAY,aACVC,GAEFC,MAAO,CACLC,YAAa,CACXC,KAAMC,OACNC,QAAS,gBAEXC,UAAW,CACTH,KAAMI,QACNF,SAAS,GAEXG,qBAAsB,CACpBL,KAAMI,QACNF,SAAS,GAEXI,YAAa,CACXN,KAAMC,OACNC,QAAS,UAEXK,WAAY,CACVP,KAAMC,OACNC,QAAS,SAEXM,MAAO,CACLR,KAAMC,OACNC,aAASO,GAEXC,WAAY,CACVV,KAAMC,OACNC,aAASO,GAEXE,UAAW,CACTX,KAAMY,SACNV,aAASO,IAGbI,gBACE,MAAO,CACLC,WAAY,UACZC,SACAC,IAGJC,SAAU,CACRC,wBACE,MAAO,CACLP,UAAWQ,KAAKR,YAGpBS,wBACE,YACwB,IAAfD,KAAKX,YACe,IAApBW,KAAKT,YAGhBW,iBACE,OAAOF,KAAKX,OAASW,KAAKT,YAE5BY,kBAAmB,CACjBC,eAGMJ,KAAKC,cAAgBD,KAAKE,QAAUF,KAAKL,aAE3CK,KAAKL,WAAaK,KAAKE,MACvBF,KAAKK,MAAM,QAASL,KAAKE,OACzBF,KAAKK,MAAM,oBAAqBL,KAAKE,OACrCF,KAAKM,MAAMC,OAAOP,KAAKE,cAKDF,KAAKQ,kBAC7B,OAAIC,GAAeA,EAAYC,YACtBV,KAAKL,WAGPK,KAAKE,OAASF,KAAKM,MAAMK,OAAS,IAE3CC,aAAIC,GACFb,KAAKL,WAAakB,EAClBb,KAAKM,MAAMC,OAAOM,GACdb,KAAKC,eACPD,KAAKK,MAAM,QAASQ,GACpBb,KAAKK,MAAM,oBAAqBQ"}
1
+ {"version":3,"file":"SearchBox.vue_vue&type=script&lang.js","sources":["../../../../src/components/SearchBox.vue"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot\n :current-refinement=\"currentRefinement\"\n :is-search-stalled=\"state.isSearchStalled\"\n :refine=\"state.refine\"\n >\n <search-input\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n @reset=\"$emit('reset')\"\n :placeholder=\"placeholder\"\n :autofocus=\"autofocus\"\n :show-loading-indicator=\"showLoadingIndicator\"\n :should-show-loading-indicator=\"state.isSearchStalled\"\n :submit-title=\"submitTitle\"\n :reset-title=\"resetTitle\"\n :class-names=\"classNames\"\n v-model=\"currentRefinement\"\n ref=\"searchInput\"\n >\n <template #loading-indicator v-if=\"isVue3\">\n <slot name=\"loading-indicator\" />\n </template>\n <slot v-if=\"isVue2\" name=\"loading-indicator\" slot=\"loading-indicator\" />\n\n <template #submit-icon v-if=\"isVue3\">\n <slot name=\"submit-icon\" />\n </template>\n <slot v-if=\"isVue2\" name=\"submit-icon\" slot=\"submit-icon\" />\n\n <template #reset-icon v-if=\"isVue3\">\n <slot name=\"reset-icon\" />\n </template>\n <slot v-if=\"isVue2\" name=\"reset-icon\" slot=\"reset-icon\" />\n </search-input>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectSearchBox } from 'instantsearch.js/es/connectors';\n\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { isVue3, isVue2 } from '../util/vue-compat';\n\nimport SearchInput from './SearchInput.vue';\n\nexport default {\n name: 'AisSearchBox',\n mixins: [\n createWidgetMixin(\n {\n connector: connectSearchBox,\n },\n {\n $$widgetType: 'ais.searchBox',\n }\n ),\n createSuitMixin({ name: 'SearchBox' }),\n ],\n components: {\n SearchInput,\n },\n props: {\n placeholder: {\n type: String,\n default: 'Search here…',\n },\n autofocus: {\n type: Boolean,\n default: false,\n },\n showLoadingIndicator: {\n type: Boolean,\n default: false,\n },\n submitTitle: {\n type: String,\n default: 'Search',\n },\n resetTitle: {\n type: String,\n default: 'Clear',\n },\n value: {\n type: String,\n default: undefined,\n },\n modelValue: {\n type: String,\n default: undefined,\n },\n queryHook: {\n type: Function,\n default: undefined,\n },\n },\n data() {\n return {\n localValue: '',\n isVue2,\n isVue3,\n };\n },\n computed: {\n widgetParams() {\n return {\n queryHook: this.queryHook,\n };\n },\n isControlled() {\n return (\n typeof this.value !== 'undefined' ||\n typeof this.modelValue !== 'undefined'\n );\n },\n model() {\n return this.value || this.modelValue;\n },\n currentRefinement: {\n get() {\n // if the input is controlled, but not up to date\n // this means it didn't search, and we should pretend it was `set`\n if (this.isControlled && this.model !== this.localValue) {\n // eslint-disable-next-line vue/no-side-effects-in-computed-properties\n this.localValue = this.model;\n this.$emit('input', this.model);\n this.$emit('update:modelValue', this.model);\n this.state.refine(this.model);\n }\n\n // we return the local value if the input is focused to avoid\n // concurrent updates when typing\n const { searchInput } = this.$refs;\n if (searchInput && searchInput.isFocused()) {\n return this.localValue;\n }\n\n return this.model || this.state.query || '';\n },\n set(val) {\n this.localValue = val;\n this.state.refine(val);\n if (this.isControlled) {\n this.$emit('input', val);\n this.$emit('update:modelValue', val);\n }\n },\n },\n },\n};\n</script>\n"],"names":["name","mixins","createWidgetMixin","connector","connectSearchBox","$$widgetType","createSuitMixin","components","SearchInput","props","placeholder","type","String","default","autofocus","Boolean","showLoadingIndicator","submitTitle","resetTitle","value","undefined","modelValue","queryHook","Function","data","localValue","isVue2","isVue3","computed","widgetParams","this","isControlled","model","currentRefinement","get","$emit","state","refine","$refs","searchInput","isFocused","query","set","val"],"mappings":"+SAiDe,CACbA,KAAM,eACNC,OAAQ,CACNC,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,kBAGlBC,EAAgB,CAAEN,KAAM,eAE1BO,WAAY,aACVC,GAEFC,MAAO,CACLC,YAAa,CACXC,KAAMC,OACNC,QAAS,gBAEXC,UAAW,CACTH,KAAMI,QACNF,SAAS,GAEXG,qBAAsB,CACpBL,KAAMI,QACNF,SAAS,GAEXI,YAAa,CACXN,KAAMC,OACNC,QAAS,UAEXK,WAAY,CACVP,KAAMC,OACNC,QAAS,SAEXM,MAAO,CACLR,KAAMC,OACNC,aAASO,GAEXC,WAAY,CACVV,KAAMC,OACNC,aAASO,GAEXE,UAAW,CACTX,KAAMY,SACNV,aAASO,IAGbI,gBACE,MAAO,CACLC,WAAY,UACZC,SACAC,IAGJC,SAAU,CACRC,wBACE,MAAO,CACLP,UAAWQ,KAAKR,YAGpBS,wBACE,YACwB,IAAfD,KAAKX,YACe,IAApBW,KAAKT,YAGhBW,iBACE,OAAOF,KAAKX,OAASW,KAAKT,YAE5BY,kBAAmB,CACjBC,eAGMJ,KAAKC,cAAgBD,KAAKE,QAAUF,KAAKL,aAE3CK,KAAKL,WAAaK,KAAKE,MACvBF,KAAKK,MAAM,QAASL,KAAKE,OACzBF,KAAKK,MAAM,oBAAqBL,KAAKE,OACrCF,KAAKM,MAAMC,OAAOP,KAAKE,cAKDF,KAAKQ,kBAC7B,OAAIC,GAAeA,EAAYC,YACtBV,KAAKL,WAGPK,KAAKE,OAASF,KAAKM,MAAMK,OAAS,IAE3CC,aAAIC,GACFb,KAAKL,WAAakB,EAClBb,KAAKM,MAAMC,OAAOM,GACdb,KAAKC,eACPD,KAAKK,MAAM,QAASQ,GACpBb,KAAKK,MAAM,oBAAqBQ"}
@@ -1,2 +1,2 @@
1
1
  import{resolveComponent as e,openBlock as t,createElementBlock as n,normalizeClass as i,renderSlot as o,createVNode as s,createSlots as r,withCtx as u,createCommentVNode as a}from"vue";function l(l,c,d,f,m,h){var $=e("search-input");return l.state?(t(),n("div",{key:0,class:i(l.suit())},[o(l.$slots,"default",{currentRefinement:h.currentRefinement,isSearchStalled:l.state.isSearchStalled,refine:l.state.refine},function(){return[s($,{onFocus:c[0]||(c[0]=function(e){return l.$emit("focus",e)}),onBlur:c[1]||(c[1]=function(e){return l.$emit("blur",e)}),onReset:c[2]||(c[2]=function(e){return l.$emit("reset")}),placeholder:d.placeholder,autofocus:d.autofocus,"show-loading-indicator":d.showLoadingIndicator,"should-show-loading-indicator":l.state.isSearchStalled,"submit-title":d.submitTitle,"reset-title":d.resetTitle,"class-names":l.classNames,modelValue:h.currentRefinement,"onUpdate:modelValue":c[3]||(c[3]=function(e){return h.currentRefinement=e}),ref:"searchInput"},r({default:u(function(){return[m.isVue2?o(l.$slots,"loading-indicator",{key:0,slot:"loading-indicator"}):a("",!0),m.isVue2?o(l.$slots,"submit-icon",{key:1,slot:"submit-icon"}):a("",!0),m.isVue2?o(l.$slots,"reset-icon",{key:2,slot:"reset-icon"}):a("",!0)]}),_:2},[m.isVue3?{name:"loading-indicator",fn:u(function(){return[o(l.$slots,"loading-indicator")]}),key:"0"}:void 0,m.isVue3?{name:"submit-icon",fn:u(function(){return[o(l.$slots,"submit-icon")]}),key:"1"}:void 0,m.isVue3?{name:"reset-icon",fn:u(function(){return[o(l.$slots,"reset-icon")]}),key:"2"}:void 0]),1032,["placeholder","autofocus","show-loading-indicator","should-show-loading-indicator","submit-title","reset-title","class-names","modelValue"])]})],2)):a("",!0)}export{l as render};
2
- //# sourceMappingURL=SearchBox.vue_vue&type=template&id=30bd05ae&lang.js.map
2
+ //# sourceMappingURL=SearchBox.vue_vue&type=template&id=27000fa5&lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SearchBox.vue_vue&type=template&id=27000fa5&lang.js","sources":["../../../../src/components/SearchBox.vue?vue&type=template&id=27000fa5&lang.js"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot\n :current-refinement=\"currentRefinement\"\n :is-search-stalled=\"state.isSearchStalled\"\n :refine=\"state.refine\"\n >\n <search-input\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n @reset=\"$emit('reset')\"\n :placeholder=\"placeholder\"\n :autofocus=\"autofocus\"\n :show-loading-indicator=\"showLoadingIndicator\"\n :should-show-loading-indicator=\"state.isSearchStalled\"\n :submit-title=\"submitTitle\"\n :reset-title=\"resetTitle\"\n :class-names=\"classNames\"\n v-model=\"currentRefinement\"\n ref=\"searchInput\"\n >\n <template #loading-indicator v-if=\"isVue3\">\n <slot name=\"loading-indicator\" />\n </template>\n <slot v-if=\"isVue2\" name=\"loading-indicator\" slot=\"loading-indicator\" />\n\n <template #submit-icon v-if=\"isVue3\">\n <slot name=\"submit-icon\" />\n </template>\n <slot v-if=\"isVue2\" name=\"submit-icon\" slot=\"submit-icon\" />\n\n <template #reset-icon v-if=\"isVue3\">\n <slot name=\"reset-icon\" />\n </template>\n <slot v-if=\"isVue2\" name=\"reset-icon\" slot=\"reset-icon\" />\n </search-input>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectSearchBox } from 'instantsearch.js/es/connectors';\n\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { isVue3, isVue2 } from '../util/vue-compat';\n\nimport SearchInput from './SearchInput.vue';\n\nexport default {\n name: 'AisSearchBox',\n mixins: [\n createWidgetMixin(\n {\n connector: connectSearchBox,\n },\n {\n $$widgetType: 'ais.searchBox',\n }\n ),\n createSuitMixin({ name: 'SearchBox' }),\n ],\n components: {\n SearchInput,\n },\n props: {\n placeholder: {\n type: String,\n default: 'Search here…',\n },\n autofocus: {\n type: Boolean,\n default: false,\n },\n showLoadingIndicator: {\n type: Boolean,\n default: false,\n },\n submitTitle: {\n type: String,\n default: 'Search',\n },\n resetTitle: {\n type: String,\n default: 'Clear',\n },\n value: {\n type: String,\n default: undefined,\n },\n modelValue: {\n type: String,\n default: undefined,\n },\n queryHook: {\n type: Function,\n default: undefined,\n },\n },\n data() {\n return {\n localValue: '',\n isVue2,\n isVue3,\n };\n },\n computed: {\n widgetParams() {\n return {\n queryHook: this.queryHook,\n };\n },\n isControlled() {\n return (\n typeof this.value !== 'undefined' ||\n typeof this.modelValue !== 'undefined'\n );\n },\n model() {\n return this.value || this.modelValue;\n },\n currentRefinement: {\n get() {\n // if the input is controlled, but not up to date\n // this means it didn't search, and we should pretend it was `set`\n if (this.isControlled && this.model !== this.localValue) {\n // eslint-disable-next-line vue/no-side-effects-in-computed-properties\n this.localValue = this.model;\n this.$emit('input', this.model);\n this.$emit('update:modelValue', this.model);\n this.state.refine(this.model);\n }\n\n // we return the local value if the input is focused to avoid\n // concurrent updates when typing\n const { searchInput } = this.$refs;\n if (searchInput && searchInput.isFocused()) {\n return this.localValue;\n }\n\n return this.model || this.state.query || '';\n },\n set(val) {\n this.localValue = val;\n this.state.refine(val);\n if (this.isControlled) {\n this.$emit('input', val);\n this.$emit('update:modelValue', val);\n }\n },\n },\n },\n};\n</script>\n"],"names":["_ctx","_createElementBlock","class","_renderSlot","currentRefinement","$options","isSearchStalled","refine","_createVNode","onFocus","$event","onBlur","onReset","placeholder","$props","autofocus","show-loading-indicator","should-show-loading-indicator","submit-title","reset-title","class-names","ref","$data","slot"],"mappings":"gPACaA,aAAXC,eAAmBC,QAAOF,YACxBG,sBACGC,kBAAoBC,oBACpBC,gBAAmBN,QAAMM,gBACzBC,OAAQP,QAAMO,0BAEfC,KACGC,uCAAOT,gBAAeU,KACtBC,sCAAMX,eAAcU,KACpBE,uCAAOZ,mBACPa,YAAaC,cACbC,UAAWD,YACXE,yBAAwBF,uBACxBG,gCAA+BjB,QAAMM,gBACrCY,eAAcJ,cACdK,cAAaL,aACbM,cAAapB,wBACLK,yEAAAA,wBACTgB,IAAI,8CAKQC,SAAZnB,sCAA6CoB,KAAK,+BAKtCD,SAAZnB,gCAAuCoB,KAAK,yBAKhCD,SAAZnB,+BAAsCoB,KAAK,iCAbRD,eAAxB,2CACTnB,mDAI2BmB,eAAlB,qCACTnB,6CAI0BmB,eAAjB,oCACTnB"}
@@ -1,2 +1,2 @@
1
- import e from"./Snippet.vue_vue&type=script&lang.js";import{render as p}from"./Snippet.vue_vue&type=template&id=1cd4c392&lang.js";e.render=p;export default e;
1
+ import e from"./Snippet.vue_vue&type=script&lang.js";import{render as p}from"./Snippet.vue_vue&type=template&id=1e214b4c&lang.js";e.render=p;export default e;
2
2
  //# sourceMappingURL=Snippet.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Snippet.vue_vue&type=script&lang.js","sources":["../../../../src/components/Snippet.vue"],"sourcesContent":["<template>\n <ais-highlighter\n :hit=\"hit\"\n :attribute=\"attribute\"\n :highlighted-tag-name=\"highlightedTagName\"\n :suit=\"suit\"\n highlight-property=\"_snippetResult\"\n pre-tag=\"<mark>\"\n post-tag=\"</mark>\"\n />\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\nimport AisHighlighter from './Highlighter.vue';\n\nexport default {\n name: 'AisSnippet',\n mixins: [createSuitMixin({ name: 'Snippet' })],\n components: { AisHighlighter },\n props: {\n hit: {\n type: Object,\n required: true,\n },\n attribute: {\n type: String,\n required: true,\n },\n highlightedTagName: {\n type: String,\n default: 'mark',\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","components","AisHighlighter","props","hit","type","Object","required","attribute","String","highlightedTagName","default"],"mappings":"sGAgBe,CACbA,KAAM,aACNC,OAAQ,CAACC,EAAgB,CAAEF,KAAM,aACjCG,WAAY,gBAAEC,GACdC,MAAO,CACLC,IAAK,CACHC,KAAMC,OACNC,UAAU,GAEZC,UAAW,CACTH,KAAMI,OACNF,UAAU,GAEZG,mBAAoB,CAClBL,KAAMI,OACNE,QAAS"}
1
+ {"version":3,"file":"Snippet.vue_vue&type=script&lang.js","sources":["../../../../src/components/Snippet.vue"],"sourcesContent":["<template>\n <ais-highlighter\n :hit=\"hit\"\n :attribute=\"attribute\"\n :highlighted-tag-name=\"highlightedTagName\"\n :suit=\"suit\"\n highlight-property=\"_snippetResult\"\n pre-tag=\"<mark>\"\n post-tag=\"</mark>\"\n />\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\n\nimport AisHighlighter from './Highlighter.vue';\n\nexport default {\n name: 'AisSnippet',\n mixins: [createSuitMixin({ name: 'Snippet' })],\n components: { AisHighlighter },\n props: {\n hit: {\n type: Object,\n required: true,\n },\n attribute: {\n type: String,\n required: true,\n },\n highlightedTagName: {\n type: String,\n default: 'mark',\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","components","AisHighlighter","props","hit","type","Object","required","attribute","String","highlightedTagName","default"],"mappings":"sGAiBe,CACbA,KAAM,aACNC,OAAQ,CAACC,EAAgB,CAAEF,KAAM,aACjCG,WAAY,gBAAEC,GACdC,MAAO,CACLC,IAAK,CACHC,KAAMC,OACNC,UAAU,GAEZC,UAAW,CACTH,KAAMI,OACNF,UAAU,GAEZG,mBAAoB,CAClBL,KAAMI,OACNE,QAAS"}
@@ -1,2 +1,2 @@
1
1
  import{resolveComponent as t,openBlock as i,createBlock as h}from"vue";function e(e,a,g,r,u,l){var p=t("ais-highlighter");return i(),h(p,{hit:g.hit,attribute:g.attribute,"highlighted-tag-name":g.highlightedTagName,suit:e.suit,"highlight-property":"_snippetResult","pre-tag":"<mark>","post-tag":"</mark>"},null,8,["hit","attribute","highlighted-tag-name","suit"])}export{e as render};
2
- //# sourceMappingURL=Snippet.vue_vue&type=template&id=1cd4c392&lang.js.map
2
+ //# sourceMappingURL=Snippet.vue_vue&type=template&id=1e214b4c&lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Snippet.vue_vue&type=template&id=1e214b4c&lang.js","sources":["../../../../src/components/Snippet.vue?vue&type=template&id=1e214b4c&lang.js"],"sourcesContent":["<template>\n <ais-highlighter\n :hit=\"hit\"\n :attribute=\"attribute\"\n :highlighted-tag-name=\"highlightedTagName\"\n :suit=\"suit\"\n highlight-property=\"_snippetResult\"\n pre-tag=\"<mark>\"\n post-tag=\"</mark>\"\n />\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\n\nimport AisHighlighter from './Highlighter.vue';\n\nexport default {\n name: 'AisSnippet',\n mixins: [createSuitMixin({ name: 'Snippet' })],\n components: { AisHighlighter },\n props: {\n hit: {\n type: Object,\n required: true,\n },\n attribute: {\n type: String,\n required: true,\n },\n highlightedTagName: {\n type: String,\n default: 'mark',\n },\n },\n};\n</script>\n"],"names":["_createBlock","hit","$props","attribute","highlighted-tag-name","suit","_ctx","highlight-property","pre-tag","post-tag"],"mappings":"qIACEA,KACGC,IAAKC,MACLC,UAAWD,YACXE,uBAAsBF,qBACtBG,KAAMC,OACPC,qBAAmB,iBACnBC,UAAQ,SACRC,WAAS"}
@@ -1,2 +1,2 @@
1
- import e from"./SortBy.vue_vue&type=script&lang.js";import{render as t}from"./SortBy.vue_vue&type=template&id=6a94a4c1&lang.js";e.render=t;export default e;
1
+ import e from"./SortBy.vue_vue&type=script&lang.js";import{render as t}from"./SortBy.vue_vue&type=template&id=507e7d3a&lang.js";e.render=t;export default e;
2
2
  //# sourceMappingURL=SortBy.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SortBy.vue_vue&type=script&lang.js","sources":["../../../../src/components/SortBy.vue"],"sourcesContent":["<template>\n <div :class=\"suit()\" v-if=\"state\">\n <slot\n :items=\"state.options\"\n :has-no-results=\"state.hasNoResults\"\n :refine=\"state.refine\"\n :current-refinement=\"state.currentRefinement\"\n :can-refine=\"state.canRefine\"\n >\n <select\n :class=\"suit('select')\"\n @change=\"state.refine($event.currentTarget.value)\"\n >\n <option\n v-for=\"item in state.options\"\n :key=\"item.value\"\n :class=\"suit('option')\"\n :value=\"item.value\"\n :selected=\"item.value === state.currentRefinement\"\n >\n {{ item.label }}\n </option>\n </select>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectSortBy } from 'instantsearch.js/es/connectors';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisSortBy',\n mixins: [\n createSuitMixin({ name: 'SortBy' }),\n createWidgetMixin(\n { connector: connectSortBy },\n {\n $$widgetType: 'ais.sortBy',\n }\n ),\n\n createPanelConsumerMixin(),\n ],\n props: {\n items: {\n type: Array,\n required: true,\n },\n transformItems: {\n type: Function,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n items: this.items,\n transformItems: this.transformItems,\n };\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","createWidgetMixin","connector","connectSortBy","$$widgetType","createPanelConsumerMixin","props","items","type","Array","required","transformItems","Function","default","undefined","computed","widgetParams","this"],"mappings":"gQAiCe,CACbA,KAAM,YACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,WACxBG,EACE,CAAEC,UAAWC,GACb,CACEC,aAAc,eAIlBC,KAEFC,MAAO,CACLC,MAAO,CACLC,KAAMC,MACNC,UAAU,GAEZC,eAAgB,CACdH,KAAMI,SACNC,aAASC,IAGbC,SAAU,CACRC,wBACE,MAAO,CACLT,MAAOU,KAAKV,MACZI,eAAgBM,KAAKN"}
1
+ {"version":3,"file":"SortBy.vue_vue&type=script&lang.js","sources":["../../../../src/components/SortBy.vue"],"sourcesContent":["<template>\n <div :class=\"suit()\" v-if=\"state\">\n <slot\n :items=\"state.options\"\n :has-no-results=\"state.hasNoResults\"\n :refine=\"state.refine\"\n :current-refinement=\"state.currentRefinement\"\n :can-refine=\"state.canRefine\"\n >\n <select\n :class=\"suit('select')\"\n @change=\"state.refine($event.currentTarget.value)\"\n >\n <option\n v-for=\"item in state.options\"\n :key=\"item.value\"\n :class=\"suit('option')\"\n :value=\"item.value\"\n :selected=\"item.value === state.currentRefinement\"\n >\n {{ item.label }}\n </option>\n </select>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectSortBy } from 'instantsearch.js/es/connectors';\n\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisSortBy',\n mixins: [\n createSuitMixin({ name: 'SortBy' }),\n createWidgetMixin(\n { connector: connectSortBy },\n {\n $$widgetType: 'ais.sortBy',\n }\n ),\n\n createPanelConsumerMixin(),\n ],\n props: {\n items: {\n type: Array,\n required: true,\n },\n transformItems: {\n type: Function,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n items: this.items,\n transformItems: this.transformItems,\n };\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","createWidgetMixin","connector","connectSortBy","$$widgetType","createPanelConsumerMixin","props","items","type","Array","required","transformItems","Function","default","undefined","computed","widgetParams","this"],"mappings":"gQAkCe,CACbA,KAAM,YACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,WACxBG,EACE,CAAEC,UAAWC,GACb,CACEC,aAAc,eAIlBC,KAEFC,MAAO,CACLC,MAAO,CACLC,KAAMC,MACNC,UAAU,GAEZC,eAAgB,CACdH,KAAMI,SACNC,aAASC,IAGbC,SAAU,CACRC,wBACE,MAAO,CACLT,MAAOU,KAAKV,MACZI,eAAgBM,KAAKN"}
@@ -1,2 +1,2 @@
1
1
  import{openBlock as e,createElementBlock as t,normalizeClass as n,renderSlot as s,createElementVNode as a,Fragment as u,renderList as r,toDisplayString as i,createCommentVNode as l}from"vue";var o=["value","selected"];function c(c,f,v,R,m,p){return c.state?(e(),t("div",{key:0,class:n(c.suit())},[s(c.$slots,"default",{items:c.state.options,hasNoResults:c.state.hasNoResults,refine:c.state.refine,currentRefinement:c.state.currentRefinement,canRefine:c.state.canRefine},function(){return[a("select",{class:n(c.suit("select")),onChange:f[0]||(f[0]=function(e){return c.state.refine(e.currentTarget.value)})},[(e(!0),t(u,null,r(c.state.options,function(s){return e(),t("option",{key:s.value,class:n(c.suit("option")),value:s.value,selected:s.value===c.state.currentRefinement},i(s.label),11,o)}),128))],34)]})],2)):l("",!0)}export{c as render};
2
- //# sourceMappingURL=SortBy.vue_vue&type=template&id=6a94a4c1&lang.js.map
2
+ //# sourceMappingURL=SortBy.vue_vue&type=template&id=507e7d3a&lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SortBy.vue_vue&type=template&id=507e7d3a&lang.js","sources":["../../../../src/components/SortBy.vue?vue&type=template&id=507e7d3a&lang.js"],"sourcesContent":["<template>\n <div :class=\"suit()\" v-if=\"state\">\n <slot\n :items=\"state.options\"\n :has-no-results=\"state.hasNoResults\"\n :refine=\"state.refine\"\n :current-refinement=\"state.currentRefinement\"\n :can-refine=\"state.canRefine\"\n >\n <select\n :class=\"suit('select')\"\n @change=\"state.refine($event.currentTarget.value)\"\n >\n <option\n v-for=\"item in state.options\"\n :key=\"item.value\"\n :class=\"suit('option')\"\n :value=\"item.value\"\n :selected=\"item.value === state.currentRefinement\"\n >\n {{ item.label }}\n </option>\n </select>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectSortBy } from 'instantsearch.js/es/connectors';\n\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisSortBy',\n mixins: [\n createSuitMixin({ name: 'SortBy' }),\n createWidgetMixin(\n { connector: connectSortBy },\n {\n $$widgetType: 'ais.sortBy',\n }\n ),\n\n createPanelConsumerMixin(),\n ],\n props: {\n items: {\n type: Array,\n required: true,\n },\n transformItems: {\n type: Function,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n items: this.items,\n transformItems: this.transformItems,\n };\n },\n },\n};\n</script>\n"],"names":["_ctx","_createElementBlock","class","_renderSlot","items","options","hasNoResults","refine","currentRefinement","canRefine","_createElementVNode","onChange","$event","currentTarget","value","item","key","selected","label"],"mappings":"yPAC6BA,aAA3BC,eAAMC,QAAOF,YACXG,sBACGC,MAAOJ,QAAMK,QACbC,aAAgBN,QAAMM,aACtBC,OAAQP,QAAMO,OACdC,kBAAoBR,QAAMQ,kBAC1BC,UAAYT,QAAMS,6BAEnBC,YACGR,QAAOF,kBACPW,wCAAQX,QAAMO,OAAOK,EAAOC,cAAcC,kBAE3Cb,WACiBD,QAAMK,iBAAdU,cADTd,YAEGe,IAAKD,EAAKD,MACVZ,QAAOF,kBACPc,MAAOC,EAAKD,MACZG,SAAUF,EAAKD,QAAUd,QAAMQ,qBAE7BO,EAAKG"}
@@ -1,2 +1,2 @@
1
- import e from"./StateResults.vue_vue&type=script&lang.js";import{render as t}from"./StateResults.vue_vue&type=template&id=2ea5b184&lang.js";e.render=t;export default e;
1
+ import e from"./StateResults.vue_vue&type=script&lang.js";import{render as t}from"./StateResults.vue_vue&type=template&id=f5047700&lang.js";e.render=t;export default e;
2
2
  //# sourceMappingURL=StateResults.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StateResults.vue_vue&type=script&lang.js","sources":["../../../../src/components/StateResults.vue"],"sourcesContent":["<template>\n <div :class=\"suit()\" v-if=\"state && state.state && state.results\">\n <slot v-bind=\"stateResults\">\n <p>\n Use this component to have a different layout based on a certain state.\n </p>\n <p>Fill in the slot, and get access to the following things:</p>\n <pre>results: {{ Object.keys(state.results) }}</pre>\n <pre>state: {{ Object.keys(state.state) }}</pre>\n <pre>status: {{ state.status }}</pre>\n <pre>error: {{ state.error }}</pre>\n </slot>\n </div>\n</template>\n\n<script>\nimport { isVue3 } from '../util/vue-compat';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { _objectSpread } from '../util/polyfills';\n\nexport default {\n name: 'AisStateResults',\n mixins: [\n createWidgetMixin({ connector: true }),\n createSuitMixin({ name: 'StateResults' }),\n ],\n props: {\n catchError: {\n type: Boolean,\n default: false,\n },\n },\n data() {\n return {\n renderFn: () => {\n const { status, error } = this.instantSearchInstance;\n const results = this.getParentIndex().getResults();\n const helper = this.getParentIndex().getHelper();\n const state = helper ? helper.state : null;\n\n // @MAJOR no longer spread this inside `results`\n this.state = {\n results,\n state,\n status,\n error,\n };\n },\n };\n },\n created() {\n this.instantSearchInstance.addListener('render', this.renderFn);\n this.renderFn();\n },\n [isVue3 ? 'beforeUnmount' : 'beforeDestroy']() {\n if (this.widget) {\n this.instantSearchInstance.removeListener('render', this.renderFn);\n if (this.errorFn) {\n this.instantSearchInstance.removeListener('error', this.errorFn);\n }\n }\n },\n watch: {\n catchError: {\n immediate: true,\n handler(catchError) {\n if (catchError) {\n this.errorFn = () => {};\n this.instantSearchInstance.addListener('error', this.errorFn);\n } else if (this.errorFn) {\n this.instantSearchInstance.removeListener('error', this.errorFn);\n this.errorFn = undefined;\n }\n },\n },\n },\n computed: {\n stateResults() {\n const { results, state, status, error } = this.state;\n return _objectSpread({}, results, { results, state, status, error });\n },\n },\n};\n</script>\n"],"names":["name","mixins","createWidgetMixin","connector","createSuitMixin","props","catchError","type","Boolean","default","data","renderFn","this","instantSearchInstance","results","getParentIndex","getResults","helper","getHelper","state","status","error","created","addListener","widget","removeListener","errorFn","watch","immediate","handler","undefined","computed","stateResults","_objectSpread"],"mappings":"kOAqBe,CACbA,KAAM,kBACNC,OAAQ,CACNC,EAAkB,CAAEC,WAAW,IAC/BC,EAAgB,CAAEJ,KAAM,kBAE1BK,MAAO,CACLC,WAAY,CACVC,KAAMC,QACNC,SAAS,IAGbC,2BACE,MAAO,CACLC,0BAC4BC,EAAKC,2CACzBC,EAAUF,EAAKG,iBAAiBC,aAChCC,EAASL,EAAKG,iBAAiBG,YAC/BC,EAAQF,EAASA,EAAOE,MAAQ,KAGtCP,EAAKO,MAAQ,SACXL,QACAK,SACAC,QACAC,MAKRC,mBACEV,KAAKC,sBAAsBU,YAAY,SAAUX,KAAKD,UACtDC,KAAKD,cAEoC,yBACrCC,KAAKY,SACPZ,KAAKC,sBAAsBY,eAAe,SAAUb,KAAKD,UACrDC,KAAKc,SACPd,KAAKC,sBAAsBY,eAAe,QAASb,KAAKc,aAI9DC,MAAO,CACLrB,WAAY,CACVsB,WAAW,EACXC,iBAAQvB,GACFA,GACFM,KAAKc,qBACLd,KAAKC,sBAAsBU,YAAY,QAASX,KAAKc,UAC5Cd,KAAKc,UACdd,KAAKC,sBAAsBY,eAAe,QAASb,KAAKc,SACxDd,KAAKc,aAAUI,QAKvBC,SAAU,CACRC,8BAC4CpB,KAAKO,iDAC/C,OAAOc,EAAc,GAAInB,EAAS,SAAEA,QAASK,SAAOC,QAAQC"}
1
+ {"version":3,"file":"StateResults.vue_vue&type=script&lang.js","sources":["../../../../src/components/StateResults.vue"],"sourcesContent":["<template>\n <div :class=\"suit()\" v-if=\"state && state.state && state.results\">\n <slot v-bind=\"stateResults\">\n <p>\n Use this component to have a different layout based on a certain state.\n </p>\n <p>Fill in the slot, and get access to the following things:</p>\n <pre>results: {{ Object.keys(state.results) }}</pre>\n <pre>state: {{ Object.keys(state.state) }}</pre>\n <pre>status: {{ state.status }}</pre>\n <pre>error: {{ state.error }}</pre>\n </slot>\n </div>\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { _objectSpread } from '../util/polyfills';\nimport { isVue3 } from '../util/vue-compat';\n\nexport default {\n name: 'AisStateResults',\n mixins: [\n createWidgetMixin({ connector: true }),\n createSuitMixin({ name: 'StateResults' }),\n ],\n props: {\n catchError: {\n type: Boolean,\n default: false,\n },\n },\n data() {\n return {\n renderFn: () => {\n const { status, error } = this.instantSearchInstance;\n const results = this.getParentIndex().getResults();\n const helper = this.getParentIndex().getHelper();\n const state = helper ? helper.state : null;\n\n // @MAJOR no longer spread this inside `results`\n this.state = {\n results,\n state,\n status,\n error,\n };\n },\n };\n },\n created() {\n this.instantSearchInstance.addListener('render', this.renderFn);\n this.renderFn();\n },\n [isVue3 ? 'beforeUnmount' : 'beforeDestroy']() {\n if (this.widget) {\n this.instantSearchInstance.removeListener('render', this.renderFn);\n if (this.errorFn) {\n this.instantSearchInstance.removeListener('error', this.errorFn);\n }\n }\n },\n watch: {\n catchError: {\n immediate: true,\n handler(catchError) {\n if (catchError) {\n this.errorFn = () => {};\n this.instantSearchInstance.addListener('error', this.errorFn);\n } else if (this.errorFn) {\n this.instantSearchInstance.removeListener('error', this.errorFn);\n this.errorFn = undefined;\n }\n },\n },\n },\n computed: {\n stateResults() {\n const { results, state, status, error } = this.state;\n return _objectSpread({}, results, { results, state, status, error });\n },\n },\n};\n</script>\n"],"names":["name","mixins","createWidgetMixin","connector","createSuitMixin","props","catchError","type","Boolean","default","data","renderFn","this","instantSearchInstance","results","getParentIndex","getResults","helper","getHelper","state","status","error","created","addListener","widget","removeListener","errorFn","watch","immediate","handler","undefined","computed","stateResults","_objectSpread"],"mappings":"kOAqBe,CACbA,KAAM,kBACNC,OAAQ,CACNC,EAAkB,CAAEC,WAAW,IAC/BC,EAAgB,CAAEJ,KAAM,kBAE1BK,MAAO,CACLC,WAAY,CACVC,KAAMC,QACNC,SAAS,IAGbC,2BACE,MAAO,CACLC,0BAC4BC,EAAKC,2CACzBC,EAAUF,EAAKG,iBAAiBC,aAChCC,EAASL,EAAKG,iBAAiBG,YAC/BC,EAAQF,EAASA,EAAOE,MAAQ,KAGtCP,EAAKO,MAAQ,SACXL,QACAK,SACAC,QACAC,MAKRC,mBACEV,KAAKC,sBAAsBU,YAAY,SAAUX,KAAKD,UACtDC,KAAKD,cAEoC,yBACrCC,KAAKY,SACPZ,KAAKC,sBAAsBY,eAAe,SAAUb,KAAKD,UACrDC,KAAKc,SACPd,KAAKC,sBAAsBY,eAAe,QAASb,KAAKc,aAI9DC,MAAO,CACLrB,WAAY,CACVsB,WAAW,EACXC,iBAAQvB,GACFA,GACFM,KAAKc,qBACLd,KAAKC,sBAAsBU,YAAY,QAASX,KAAKc,UAC5Cd,KAAKc,UACdd,KAAKC,sBAAsBY,eAAe,QAASb,KAAKc,SACxDd,KAAKc,aAAUI,QAKvBC,SAAU,CACRC,8BAC4CpB,KAAKO,iDAC/C,OAAOc,EAAc,GAAInB,EAAS,SAAEA,QAASK,SAAOC,QAAQC"}
@@ -1,2 +1,2 @@
1
1
  import{openBlock as t,createElementBlock as e,normalizeClass as s,renderSlot as a,normalizeProps as l,guardReactiveProps as r,createElementVNode as n,toDisplayString as u,createCommentVNode as o}from"vue";var i=n("p",null," Use this component to have a different layout based on a certain state. ",-1),c=n("p",null,"Fill in the slot, and get access to the following things:",-1);function p(p,f,d,h,v,y){return p.state&&p.state.state&&p.state.results?(t(),e("div",{key:0,class:s(p.suit())},[a(p.$slots,"default",l(r(y.stateResults)),function(){return[i,c,n("pre",null,"results: "+u(Object.keys(p.state.results)),1),n("pre",null,"state: "+u(Object.keys(p.state.state)),1),n("pre",null,"status: "+u(p.state.status),1),n("pre",null,"error: "+u(p.state.error),1)]})],2)):o("",!0)}export{p as render};
2
- //# sourceMappingURL=StateResults.vue_vue&type=template&id=2ea5b184&lang.js.map
2
+ //# sourceMappingURL=StateResults.vue_vue&type=template&id=f5047700&lang.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StateResults.vue_vue&type=template&id=2ea5b184&lang.js","sources":["../../../../src/components/StateResults.vue?vue&type=template&id=2ea5b184&lang.js"],"sourcesContent":["<template>\n <div :class=\"suit()\" v-if=\"state && state.state && state.results\">\n <slot v-bind=\"stateResults\">\n <p>\n Use this component to have a different layout based on a certain state.\n </p>\n <p>Fill in the slot, and get access to the following things:</p>\n <pre>results: {{ Object.keys(state.results) }}</pre>\n <pre>state: {{ Object.keys(state.state) }}</pre>\n <pre>status: {{ state.status }}</pre>\n <pre>error: {{ state.error }}</pre>\n </slot>\n </div>\n</template>\n\n<script>\nimport { isVue3 } from '../util/vue-compat';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { _objectSpread } from '../util/polyfills';\n\nexport default {\n name: 'AisStateResults',\n mixins: [\n createWidgetMixin({ connector: true }),\n createSuitMixin({ name: 'StateResults' }),\n ],\n props: {\n catchError: {\n type: Boolean,\n default: false,\n },\n },\n data() {\n return {\n renderFn: () => {\n const { status, error } = this.instantSearchInstance;\n const results = this.getParentIndex().getResults();\n const helper = this.getParentIndex().getHelper();\n const state = helper ? helper.state : null;\n\n // @MAJOR no longer spread this inside `results`\n this.state = {\n results,\n state,\n status,\n error,\n };\n },\n };\n },\n created() {\n this.instantSearchInstance.addListener('render', this.renderFn);\n this.renderFn();\n },\n [isVue3 ? 'beforeUnmount' : 'beforeDestroy']() {\n if (this.widget) {\n this.instantSearchInstance.removeListener('render', this.renderFn);\n if (this.errorFn) {\n this.instantSearchInstance.removeListener('error', this.errorFn);\n }\n }\n },\n watch: {\n catchError: {\n immediate: true,\n handler(catchError) {\n if (catchError) {\n this.errorFn = () => {};\n this.instantSearchInstance.addListener('error', this.errorFn);\n } else if (this.errorFn) {\n this.instantSearchInstance.removeListener('error', this.errorFn);\n this.errorFn = undefined;\n }\n },\n },\n },\n computed: {\n stateResults() {\n const { results, state, status, error } = this.state;\n return _objectSpread({}, results, { results, state, status, error });\n },\n },\n};\n</script>\n"],"names":["_createElementVNode","_ctx","state","results","_createElementBlock","class","_renderSlot","$options","_hoisted_1","_hoisted_2","Object","keys","status","error"],"mappings":"mNAGMA,6FAGAA,WAAG,+FALoBC,SAASA,QAAMC,OAASD,QAAME,aAAzDC,eAAMC,QAAOJ,YACXK,yBAAcC,mCACZC,EAGAC,EACAT,aAAK,cAAYU,OAAOC,KAAKV,QAAME,aACnCH,aAAK,YAAUU,OAAOC,KAAKV,QAAMC,WACjCF,aAAK,aAAWC,QAAMW,WACtBZ,aAAK,YAAUC,QAAMY"}
1
+ {"version":3,"file":"StateResults.vue_vue&type=template&id=f5047700&lang.js","sources":["../../../../src/components/StateResults.vue?vue&type=template&id=f5047700&lang.js"],"sourcesContent":["<template>\n <div :class=\"suit()\" v-if=\"state && state.state && state.results\">\n <slot v-bind=\"stateResults\">\n <p>\n Use this component to have a different layout based on a certain state.\n </p>\n <p>Fill in the slot, and get access to the following things:</p>\n <pre>results: {{ Object.keys(state.results) }}</pre>\n <pre>state: {{ Object.keys(state.state) }}</pre>\n <pre>status: {{ state.status }}</pre>\n <pre>error: {{ state.error }}</pre>\n </slot>\n </div>\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { _objectSpread } from '../util/polyfills';\nimport { isVue3 } from '../util/vue-compat';\n\nexport default {\n name: 'AisStateResults',\n mixins: [\n createWidgetMixin({ connector: true }),\n createSuitMixin({ name: 'StateResults' }),\n ],\n props: {\n catchError: {\n type: Boolean,\n default: false,\n },\n },\n data() {\n return {\n renderFn: () => {\n const { status, error } = this.instantSearchInstance;\n const results = this.getParentIndex().getResults();\n const helper = this.getParentIndex().getHelper();\n const state = helper ? helper.state : null;\n\n // @MAJOR no longer spread this inside `results`\n this.state = {\n results,\n state,\n status,\n error,\n };\n },\n };\n },\n created() {\n this.instantSearchInstance.addListener('render', this.renderFn);\n this.renderFn();\n },\n [isVue3 ? 'beforeUnmount' : 'beforeDestroy']() {\n if (this.widget) {\n this.instantSearchInstance.removeListener('render', this.renderFn);\n if (this.errorFn) {\n this.instantSearchInstance.removeListener('error', this.errorFn);\n }\n }\n },\n watch: {\n catchError: {\n immediate: true,\n handler(catchError) {\n if (catchError) {\n this.errorFn = () => {};\n this.instantSearchInstance.addListener('error', this.errorFn);\n } else if (this.errorFn) {\n this.instantSearchInstance.removeListener('error', this.errorFn);\n this.errorFn = undefined;\n }\n },\n },\n },\n computed: {\n stateResults() {\n const { results, state, status, error } = this.state;\n return _objectSpread({}, results, { results, state, status, error });\n },\n },\n};\n</script>\n"],"names":["_createElementVNode","_ctx","state","results","_createElementBlock","class","_renderSlot","$options","_hoisted_1","_hoisted_2","Object","keys","status","error"],"mappings":"mNAGMA,6FAGAA,WAAG,+FALoBC,SAASA,QAAMC,OAASD,QAAME,aAAzDC,eAAMC,QAAOJ,YACXK,yBAAcC,mCACZC,EAGAC,EACAT,aAAK,cAAYU,OAAOC,KAAKV,QAAME,aACnCH,aAAK,YAAUU,OAAOC,KAAKV,QAAMC,WACjCF,aAAK,aAAWC,QAAMW,WACtBZ,aAAK,YAAUC,QAAMY"}
@@ -1,2 +1,2 @@
1
- import t from"./Stats.vue_vue&type=script&lang.js";import{render as e}from"./Stats.vue_vue&type=template&id=05ff9d6a&lang.js";t.render=e;export default t;
1
+ import t from"./Stats.vue_vue&type=script&lang.js";import{render as e}from"./Stats.vue_vue&type=template&id=6d9c672c&lang.js";t.render=e;export default t;
2
2
  //# sourceMappingURL=Stats.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Stats.vue_vue&type=script&lang.js","sources":["../../../../src/components/Stats.vue"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot\n v-bind=\"state\"\n :results=\"state.instantSearchInstance.helper.lastResults\"\n >\n <!-- prettier-ignore -->\n <span :class=\"suit('text')\"\n ><template v-if=\"state.areHitsSorted\"\n >{{ state.nbSortedHits.toLocaleString() }} relevant results sorted out of {{ state.nbHits.toLocaleString() }}</template\n ><template v-else>{{ state.nbHits.toLocaleString() }} results</template\n > found in {{ state.processingTimeMS.toLocaleString() }}ms</span\n >\n </slot>\n </div>\n</template>\n\n<script>\nimport { createWidgetMixin } from '../mixins/widget';\nimport { connectStats } from 'instantsearch.js/es/connectors';\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'AisStats',\n mixins: [\n createWidgetMixin(\n { connector: connectStats },\n {\n $$widgetType: 'ais.stats',\n }\n ),\n createSuitMixin({ name: 'Stats' }),\n ],\n computed: {\n widgetParams() {\n return {};\n },\n },\n};\n</script>\n"],"names":["name","mixins","createWidgetMixin","connector","connectStats","$$widgetType","createSuitMixin","computed","widgetParams"],"mappings":"iMAsBe,CACbA,KAAM,WACNC,OAAQ,CACNC,EACE,CAAEC,UAAWC,GACb,CACEC,aAAc,cAGlBC,EAAgB,CAAEN,KAAM,WAE1BO,SAAU,CACRC,wBACE,MAAO"}
1
+ {"version":3,"file":"Stats.vue_vue&type=script&lang.js","sources":["../../../../src/components/Stats.vue"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot\n v-bind=\"state\"\n :results=\"state.instantSearchInstance.helper.lastResults\"\n >\n <!-- prettier-ignore -->\n <span :class=\"suit('text')\"\n ><template v-if=\"state.areHitsSorted\"\n >{{ state.nbSortedHits.toLocaleString() }} relevant results sorted out of {{ state.nbHits.toLocaleString() }}</template\n ><template v-else>{{ state.nbHits.toLocaleString() }} results</template\n > found in {{ state.processingTimeMS.toLocaleString() }}ms</span\n >\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectStats } from 'instantsearch.js/es/connectors';\n\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisStats',\n mixins: [\n createWidgetMixin(\n { connector: connectStats },\n {\n $$widgetType: 'ais.stats',\n }\n ),\n createSuitMixin({ name: 'Stats' }),\n ],\n computed: {\n widgetParams() {\n return {};\n },\n },\n};\n</script>\n"],"names":["name","mixins","createWidgetMixin","connector","connectStats","$$widgetType","createSuitMixin","computed","widgetParams"],"mappings":"iMAuBe,CACbA,KAAM,WACNC,OAAQ,CACNC,EACE,CAAEC,UAAWC,GACb,CACEC,aAAc,cAGlBC,EAAgB,CAAEN,KAAM,WAE1BO,SAAU,CACRC,wBACE,MAAO"}
@@ -1,2 +1,2 @@
1
1
  import{openBlock as t,createElementBlock as e,normalizeClass as s,renderSlot as a,mergeProps as n,createElementVNode as r,Fragment as o,createTextVNode as i,toDisplayString as l,createCommentVNode as u}from"vue";function c(c,S,d,f,g,p){return c.state?(t(),e("div",{key:0,class:s(c.suit())},[a(c.$slots,"default",n(c.state,{results:c.state.instantSearchInstance.helper.lastResults}),function(){return[r("span",{class:s(c.suit("text"))},[c.state.areHitsSorted?(t(),e(o,{key:0},[i(l(c.state.nbSortedHits.toLocaleString())+" relevant results sorted out of "+l(c.state.nbHits.toLocaleString()),1)],64)):(t(),e(o,{key:1},[i(l(c.state.nbHits.toLocaleString())+" results",1)],64)),i(" found in "+l(c.state.processingTimeMS.toLocaleString())+"ms",1)],2)]})],2)):u("",!0)}export{c as render};
2
- //# sourceMappingURL=Stats.vue_vue&type=template&id=05ff9d6a&lang.js.map
2
+ //# sourceMappingURL=Stats.vue_vue&type=template&id=6d9c672c&lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Stats.vue_vue&type=template&id=6d9c672c&lang.js","sources":["../../../../src/components/Stats.vue?vue&type=template&id=6d9c672c&lang.js"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot\n v-bind=\"state\"\n :results=\"state.instantSearchInstance.helper.lastResults\"\n >\n <!-- prettier-ignore -->\n <span :class=\"suit('text')\"\n ><template v-if=\"state.areHitsSorted\"\n >{{ state.nbSortedHits.toLocaleString() }} relevant results sorted out of {{ state.nbHits.toLocaleString() }}</template\n ><template v-else>{{ state.nbHits.toLocaleString() }} results</template\n > found in {{ state.processingTimeMS.toLocaleString() }}ms</span\n >\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectStats } from 'instantsearch.js/es/connectors';\n\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisStats',\n mixins: [\n createWidgetMixin(\n { connector: connectStats },\n {\n $$widgetType: 'ais.stats',\n }\n ),\n createSuitMixin({ name: 'Stats' }),\n ],\n computed: {\n widgetParams() {\n return {};\n },\n },\n};\n</script>\n"],"names":["_ctx","_createElementBlock","class","_renderSlot","_mergeProps","results","instantSearchInstance","helper","lastResults","_createElementVNode","areHitsSorted","_Fragment","nbSortedHits","toLocaleString","nbHits","processingTimeMS"],"mappings":"mPACaA,aAAXC,eAAmBC,QAAOF,YACxBG,qBAAAC,WAEGC,QAASL,QAAMM,sBAAsBC,OAAOC,gCAG7CC,UAAOP,QAAOF,kBACKA,QAAMU,mBAAtBT,EAEAU,eADKX,QAAMY,aAAaC,uDAAsDb,QAAMc,OAAOD,gCAC3FZ,iBAAoBD,QAAMc,OAAOD,uDACpBb,QAAMe,iBAAiBF,kBAAmB"}
@@ -1,2 +1,2 @@
1
- import e from"./ToggleRefinement.vue_vue&type=script&lang.js";import{render as t}from"./ToggleRefinement.vue_vue&type=template&id=461db228&lang.js";e.render=t;export default e;
1
+ import e from"./ToggleRefinement.vue_vue&type=script&lang.js";import{render as t}from"./ToggleRefinement.vue_vue&type=template&id=1e8d14ba&lang.js";e.render=t;export default e;
2
2
  //# sourceMappingURL=ToggleRefinement.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleRefinement.vue_vue&type=script&lang.js","sources":["../../../../src/components/ToggleRefinement.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"[suit(), !state.canRefine && suit('', 'noRefinement')]\"\n >\n <slot\n :value=\"state.value\"\n :can-refine=\"state.canRefine\"\n :refine=\"state.refine\"\n :createURL=\"state.createURL\"\n :send-event=\"state.sendEvent\"\n >\n <label :class=\"suit('label')\">\n <input\n :class=\"suit('checkbox')\"\n type=\"checkbox\"\n :name=\"state.value.name\"\n :value=\"on\"\n :checked=\"state.value.isRefined\"\n @change=\"state.refine(state.value)\"\n />\n <span :class=\"suit('labelText')\">{{ label }}</span>\n <span v-if=\"state.value.count !== null\" :class=\"suit('count')\">{{\n state.value.count.toLocaleString()\n }}</span>\n </label>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectToggleRefinement } from 'instantsearch.js/es/connectors';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'AisToggleRefinement',\n mixins: [\n createSuitMixin({ name: 'ToggleRefinement' }),\n createWidgetMixin(\n {\n connector: connectToggleRefinement,\n },\n {\n $$widgetType: 'ais.toggleRefinement',\n }\n ),\n createPanelConsumerMixin(),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n label: {\n type: String,\n required: true,\n },\n on: {\n type: [String, Number, Boolean, Array],\n required: false,\n default: true,\n },\n off: {\n type: [String, Number, Boolean, Array],\n required: false,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n attribute: this.attribute,\n label: this.label,\n on: this.on,\n off: this.off,\n };\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","createWidgetMixin","connector","connectToggleRefinement","$$widgetType","createPanelConsumerMixin","props","attribute","type","String","required","label","on","Number","Boolean","Array","default","off","undefined","computed","widgetParams","this"],"mappings":"0QAoCe,CACbA,KAAM,sBACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,qBACxBG,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,yBAGlBC,KAEFC,MAAO,CACLC,UAAW,CACTC,KAAMC,OACNC,UAAU,GAEZC,MAAO,CACLH,KAAMC,OACNC,UAAU,GAEZE,GAAI,CACFJ,KAAM,CAACC,OAAQI,OAAQC,QAASC,OAChCL,UAAU,EACVM,SAAS,GAEXC,IAAK,CACHT,KAAM,CAACC,OAAQI,OAAQC,QAASC,OAChCL,UAAU,EACVM,aAASE,IAGbC,SAAU,CACRC,wBACE,MAAO,CACLb,UAAWc,KAAKd,UAChBI,MAAOU,KAAKV,MACZC,GAAIS,KAAKT,GACTK,IAAKI,KAAKJ"}
1
+ {"version":3,"file":"ToggleRefinement.vue_vue&type=script&lang.js","sources":["../../../../src/components/ToggleRefinement.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"[suit(), !state.canRefine && suit('', 'noRefinement')]\"\n >\n <slot\n :value=\"state.value\"\n :can-refine=\"state.canRefine\"\n :refine=\"state.refine\"\n :createURL=\"state.createURL\"\n :send-event=\"state.sendEvent\"\n >\n <label :class=\"suit('label')\">\n <input\n :class=\"suit('checkbox')\"\n type=\"checkbox\"\n :name=\"state.value.name\"\n :value=\"on\"\n :checked=\"state.value.isRefined\"\n @change=\"state.refine(state.value)\"\n />\n <span :class=\"suit('labelText')\">{{ label }}</span>\n <span v-if=\"state.value.count !== null\" :class=\"suit('count')\">{{\n state.value.count.toLocaleString()\n }}</span>\n </label>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectToggleRefinement } from 'instantsearch.js/es/connectors';\n\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisToggleRefinement',\n mixins: [\n createSuitMixin({ name: 'ToggleRefinement' }),\n createWidgetMixin(\n {\n connector: connectToggleRefinement,\n },\n {\n $$widgetType: 'ais.toggleRefinement',\n }\n ),\n createPanelConsumerMixin(),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n label: {\n type: String,\n required: true,\n },\n on: {\n type: [String, Number, Boolean, Array],\n required: false,\n default: true,\n },\n off: {\n type: [String, Number, Boolean, Array],\n required: false,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n attribute: this.attribute,\n label: this.label,\n on: this.on,\n off: this.off,\n };\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","createWidgetMixin","connector","connectToggleRefinement","$$widgetType","createPanelConsumerMixin","props","attribute","type","String","required","label","on","Number","Boolean","Array","default","off","undefined","computed","widgetParams","this"],"mappings":"0QAqCe,CACbA,KAAM,sBACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,qBACxBG,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,yBAGlBC,KAEFC,MAAO,CACLC,UAAW,CACTC,KAAMC,OACNC,UAAU,GAEZC,MAAO,CACLH,KAAMC,OACNC,UAAU,GAEZE,GAAI,CACFJ,KAAM,CAACC,OAAQI,OAAQC,QAASC,OAChCL,UAAU,EACVM,SAAS,GAEXC,IAAK,CACHT,KAAM,CAACC,OAAQI,OAAQC,QAASC,OAChCL,UAAU,EACVM,aAASE,IAGbC,SAAU,CACRC,wBACE,MAAO,CACLb,UAAWc,KAAKd,UAChBI,MAAOU,KAAKV,MACZC,GAAIS,KAAKT,GACTK,IAAKI,KAAKJ"}
@@ -1,2 +1,2 @@
1
1
  import{openBlock as e,createElementBlock as t,normalizeClass as a,renderSlot as n,createElementVNode as s,toDisplayString as l,createCommentVNode as u}from"vue";var c=["name","value","checked"];function i(i,o,r,v,f,d){return i.state?(e(),t("div",{key:0,class:a([i.suit(),!i.state.canRefine&&i.suit("","noRefinement")])},[n(i.$slots,"default",{value:i.state.value,canRefine:i.state.canRefine,refine:i.state.refine,createURL:i.state.createURL,sendEvent:i.state.sendEvent},function(){return[s("label",{class:a(i.suit("label"))},[s("input",{class:a(i.suit("checkbox")),type:"checkbox",name:i.state.value.name,value:r.on,checked:i.state.value.isRefined,onChange:o[0]||(o[0]=function(e){return i.state.refine(i.state.value)})},null,42,c),s("span",{class:a(i.suit("labelText"))},l(r.label),3),null!==i.state.value.count?(e(),t("span",{key:0,class:a(i.suit("count"))},l(i.state.value.count.toLocaleString()),3)):u("",!0)],2)]})],2)):u("",!0)}export{i as render};
2
- //# sourceMappingURL=ToggleRefinement.vue_vue&type=template&id=461db228&lang.js.map
2
+ //# sourceMappingURL=ToggleRefinement.vue_vue&type=template&id=1e8d14ba&lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToggleRefinement.vue_vue&type=template&id=1e8d14ba&lang.js","sources":["../../../../src/components/ToggleRefinement.vue?vue&type=template&id=1e8d14ba&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"[suit(), !state.canRefine && suit('', 'noRefinement')]\"\n >\n <slot\n :value=\"state.value\"\n :can-refine=\"state.canRefine\"\n :refine=\"state.refine\"\n :createURL=\"state.createURL\"\n :send-event=\"state.sendEvent\"\n >\n <label :class=\"suit('label')\">\n <input\n :class=\"suit('checkbox')\"\n type=\"checkbox\"\n :name=\"state.value.name\"\n :value=\"on\"\n :checked=\"state.value.isRefined\"\n @change=\"state.refine(state.value)\"\n />\n <span :class=\"suit('labelText')\">{{ label }}</span>\n <span v-if=\"state.value.count !== null\" :class=\"suit('count')\">{{\n state.value.count.toLocaleString()\n }}</span>\n </label>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectToggleRefinement } from 'instantsearch.js/es/connectors';\n\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisToggleRefinement',\n mixins: [\n createSuitMixin({ name: 'ToggleRefinement' }),\n createWidgetMixin(\n {\n connector: connectToggleRefinement,\n },\n {\n $$widgetType: 'ais.toggleRefinement',\n }\n ),\n createPanelConsumerMixin(),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n label: {\n type: String,\n required: true,\n },\n on: {\n type: [String, Number, Boolean, Array],\n required: false,\n default: true,\n },\n off: {\n type: [String, Number, Boolean, Array],\n required: false,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n attribute: this.attribute,\n label: this.label,\n on: this.on,\n off: this.off,\n };\n },\n },\n};\n</script>\n"],"names":["_ctx","_createElementBlock","class","canRefine","_renderSlot","value","refine","createURL","sendEvent","_createElementVNode","type","name","$props","checked","isRefined","onChange","count","toLocaleString"],"mappings":"iOAEUA,aADRC,eAEGC,SAAQF,UAASA,QAAMG,WAAaH,8BAErCI,sBACGC,MAAOL,QAAMK,MACbF,UAAYH,QAAMG,UAClBG,OAAQN,QAAMM,OACdC,UAAWP,QAAMO,UACjBC,UAAYR,QAAMQ,6BAEnBC,WAAQP,QAAOF,mBACbS,WACGP,QAAOF,oBACRU,KAAK,WACJC,KAAMX,QAAMK,MAAMM,KAClBN,MAAOO,KACPC,QAASb,QAAMK,MAAMS,UACrBC,wCAAQf,QAAMM,OAAON,QAAMK,qBAE9BI,UAAOP,QAAOF,wBAAsBY,mBACxBZ,QAAMK,MAAMW,WAAxBf,gBAAyCC,QAAOF,oBAC9CA,QAAMK,MAAMW,MAAMC"}
@@ -1,2 +1,2 @@
1
- import e from"./VoiceSearch.vue_vue&type=script&lang.js";import{render as r}from"./VoiceSearch.vue_vue&type=template&id=1cf17560&lang.js";e.render=r;export default e;
1
+ import e from"./VoiceSearch.vue_vue&type=script&lang.js";import{render as r}from"./VoiceSearch.vue_vue&type=template&id=c25adbd0&lang.js";e.render=r;export default e;
2
2
  //# sourceMappingURL=VoiceSearch.vue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VoiceSearch.vue_vue&type=script&lang.js","sources":["../../../../src/components/VoiceSearch.vue"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot v-bind=\"rootSlotProps\">\n <button\n type=\"button\"\n :class=\"suit('button')\"\n :title=\"state.isBrowserSupported ? buttonTitle : disabledButtonTitle\"\n :disabled=\"!state.isBrowserSupported\"\n @click=\"handleClick\"\n >\n <slot name=\"buttonText\" v-bind=\"innerSlotProps\">\n <svg v-bind=\"buttonSvgAttrs\" v-if=\"errorNotAllowed\">\n <line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\" />\n <path d=\"M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6\" />\n <path d=\"M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23\" />\n <line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\" />\n <line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\" />\n </svg>\n <svg v-bind=\"buttonSvgAttrs\" v-else>\n <path\n d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\"\n :fill=\"state.isListening ? 'currentColor' : 'none'\"\n />\n <path d=\"M19 10v2a7 7 0 0 1-14 0v-2\" />\n <line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\" />\n <line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\" />\n </svg>\n </slot>\n </button>\n <div :class=\"suit('status')\">\n <slot name=\"status\" v-bind=\"innerSlotProps\">\n <p>{{ state.voiceListeningState.transcript }}</p>\n </slot>\n </div>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectVoiceSearch } from 'instantsearch.js/es/connectors';\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisVoiceSearch',\n mixins: [\n createWidgetMixin(\n {\n connector: connectVoiceSearch,\n },\n {\n $$widgetType: 'ais.voiceSearch',\n }\n ),\n createSuitMixin({ name: 'VoiceSearch' }),\n ],\n props: {\n searchAsYouSpeak: {\n type: Boolean,\n required: false,\n default: undefined,\n },\n language: {\n type: String,\n default: undefined,\n },\n additionalQueryParameters: {\n type: Object,\n default: undefined,\n },\n buttonTitle: {\n type: String,\n required: false,\n default: 'Search by voice',\n },\n disabledButtonTitle: {\n type: String,\n required: false,\n default: 'Search by voice (not supported on this browser)',\n },\n },\n data() {\n return {\n buttonSvgAttrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n width: '16',\n height: '16',\n viewBox: '0 0 24 24',\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: '2',\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n },\n };\n },\n computed: {\n widgetParams() {\n return {\n searchAsYouSpeak: this.searchAsYouSpeak,\n language: this.language,\n additionalQueryParameters: this.additionalQueryParameters,\n };\n },\n errorNotAllowed() {\n return (\n this.state.voiceListeningState.status === 'error' &&\n this.state.voiceListeningState.errorCode === 'not-allowed'\n );\n },\n rootSlotProps() {\n return {\n isBrowserSupported: this.state.isBrowserSupported,\n isListening: this.state.isListening,\n toggleListening: this.state.toggleListening,\n voiceListeningState: this.state.voiceListeningState,\n };\n },\n innerSlotProps() {\n return {\n status: this.state.voiceListeningState.status,\n errorCode: this.state.voiceListeningState.errorCode,\n isListening: this.state.isListening,\n transcript: this.state.voiceListeningState.transcript,\n isSpeechFinal: this.state.voiceListeningState.isSpeechFinal,\n isBrowserSupported: this.state.isBrowserSupported,\n };\n },\n },\n methods: {\n handleClick(event) {\n event.currentTarget.blur();\n this.state.toggleListening();\n },\n },\n};\n</script>\n"],"names":["name","mixins","createWidgetMixin","connector","connectVoiceSearch","$$widgetType","createSuitMixin","props","searchAsYouSpeak","type","Boolean","required","default","undefined","language","String","additionalQueryParameters","Object","buttonTitle","disabledButtonTitle","data","buttonSvgAttrs","xmlns","width","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","computed","widgetParams","this","errorNotAllowed","state","voiceListeningState","status","errorCode","rootSlotProps","isBrowserSupported","isListening","toggleListening","innerSlotProps","transcript","isSpeechFinal","methods","handleClick","event","currentTarget","blur"],"mappings":"uMA2Ce,CACbA,KAAM,iBACNC,OAAQ,CACNC,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,oBAGlBC,EAAgB,CAAEN,KAAM,iBAE1BO,MAAO,CACLC,iBAAkB,CAChBC,KAAMC,QACNC,UAAU,EACVC,aAASC,GAEXC,SAAU,CACRL,KAAMM,OACNH,aAASC,GAEXG,0BAA2B,CACzBP,KAAMQ,OACNL,aAASC,GAEXK,YAAa,CACXT,KAAMM,OACNJ,UAAU,EACVC,QAAS,mBAEXO,oBAAqB,CACnBV,KAAMM,OACNJ,UAAU,EACVC,QAAS,oDAGbQ,gBACE,MAAO,CACLC,eAAgB,CACdC,MAAO,6BACPC,MAAO,KACPC,OAAQ,KACRC,QAAS,YACTC,KAAM,OACNC,OAAQ,eACRC,YAAa,IACbC,cAAe,QACfC,eAAgB,WAItBC,SAAU,CACRC,wBACE,MAAO,CACLxB,iBAAkByB,KAAKzB,iBACvBM,SAAUmB,KAAKnB,SACfE,0BAA2BiB,KAAKjB,4BAGpCkB,2BACE,MAC4C,UAA1CD,KAAKE,MAAMC,oBAAoBC,QACc,gBAA7CJ,KAAKE,MAAMC,oBAAoBE,WAGnCC,yBACE,MAAO,CACLC,mBAAoBP,KAAKE,MAAMK,mBAC/BC,YAAaR,KAAKE,MAAMM,YACxBC,gBAAiBT,KAAKE,MAAMO,gBAC5BN,oBAAqBH,KAAKE,MAAMC,sBAGpCO,0BACE,MAAO,CACLN,OAAQJ,KAAKE,MAAMC,oBAAoBC,OACvCC,UAAWL,KAAKE,MAAMC,oBAAoBE,UAC1CG,YAAaR,KAAKE,MAAMM,YACxBG,WAAYX,KAAKE,MAAMC,oBAAoBQ,WAC3CC,cAAeZ,KAAKE,MAAMC,oBAAoBS,cAC9CL,mBAAoBP,KAAKE,MAAMK,sBAIrCM,QAAS,CACPC,qBAAYC,GACVA,EAAMC,cAAcC,OACpBjB,KAAKE,MAAMO"}
1
+ {"version":3,"file":"VoiceSearch.vue_vue&type=script&lang.js","sources":["../../../../src/components/VoiceSearch.vue"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot v-bind=\"rootSlotProps\">\n <button\n type=\"button\"\n :class=\"suit('button')\"\n :title=\"state.isBrowserSupported ? buttonTitle : disabledButtonTitle\"\n :disabled=\"!state.isBrowserSupported\"\n @click=\"handleClick\"\n >\n <slot name=\"buttonText\" v-bind=\"innerSlotProps\">\n <svg v-bind=\"buttonSvgAttrs\" v-if=\"errorNotAllowed\">\n <line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\" />\n <path d=\"M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6\" />\n <path d=\"M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23\" />\n <line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\" />\n <line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\" />\n </svg>\n <svg v-bind=\"buttonSvgAttrs\" v-else>\n <path\n d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\"\n :fill=\"state.isListening ? 'currentColor' : 'none'\"\n />\n <path d=\"M19 10v2a7 7 0 0 1-14 0v-2\" />\n <line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\" />\n <line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\" />\n </svg>\n </slot>\n </button>\n <div :class=\"suit('status')\">\n <slot name=\"status\" v-bind=\"innerSlotProps\">\n <p>{{ state.voiceListeningState.transcript }}</p>\n </slot>\n </div>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectVoiceSearch } from 'instantsearch.js/es/connectors';\n\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisVoiceSearch',\n mixins: [\n createWidgetMixin(\n {\n connector: connectVoiceSearch,\n },\n {\n $$widgetType: 'ais.voiceSearch',\n }\n ),\n createSuitMixin({ name: 'VoiceSearch' }),\n ],\n props: {\n searchAsYouSpeak: {\n type: Boolean,\n required: false,\n default: undefined,\n },\n language: {\n type: String,\n default: undefined,\n },\n additionalQueryParameters: {\n type: Object,\n default: undefined,\n },\n buttonTitle: {\n type: String,\n required: false,\n default: 'Search by voice',\n },\n disabledButtonTitle: {\n type: String,\n required: false,\n default: 'Search by voice (not supported on this browser)',\n },\n },\n data() {\n return {\n buttonSvgAttrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n width: '16',\n height: '16',\n viewBox: '0 0 24 24',\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: '2',\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n },\n };\n },\n computed: {\n widgetParams() {\n return {\n searchAsYouSpeak: this.searchAsYouSpeak,\n language: this.language,\n additionalQueryParameters: this.additionalQueryParameters,\n };\n },\n errorNotAllowed() {\n return (\n this.state.voiceListeningState.status === 'error' &&\n this.state.voiceListeningState.errorCode === 'not-allowed'\n );\n },\n rootSlotProps() {\n return {\n isBrowserSupported: this.state.isBrowserSupported,\n isListening: this.state.isListening,\n toggleListening: this.state.toggleListening,\n voiceListeningState: this.state.voiceListeningState,\n };\n },\n innerSlotProps() {\n return {\n status: this.state.voiceListeningState.status,\n errorCode: this.state.voiceListeningState.errorCode,\n isListening: this.state.isListening,\n transcript: this.state.voiceListeningState.transcript,\n isSpeechFinal: this.state.voiceListeningState.isSpeechFinal,\n isBrowserSupported: this.state.isBrowserSupported,\n };\n },\n },\n methods: {\n handleClick(event) {\n event.currentTarget.blur();\n this.state.toggleListening();\n },\n },\n};\n</script>\n"],"names":["name","mixins","createWidgetMixin","connector","connectVoiceSearch","$$widgetType","createSuitMixin","props","searchAsYouSpeak","type","Boolean","required","default","undefined","language","String","additionalQueryParameters","Object","buttonTitle","disabledButtonTitle","data","buttonSvgAttrs","xmlns","width","height","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","computed","widgetParams","this","errorNotAllowed","state","voiceListeningState","status","errorCode","rootSlotProps","isBrowserSupported","isListening","toggleListening","innerSlotProps","transcript","isSpeechFinal","methods","handleClick","event","currentTarget","blur"],"mappings":"uMA4Ce,CACbA,KAAM,iBACNC,OAAQ,CACNC,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,oBAGlBC,EAAgB,CAAEN,KAAM,iBAE1BO,MAAO,CACLC,iBAAkB,CAChBC,KAAMC,QACNC,UAAU,EACVC,aAASC,GAEXC,SAAU,CACRL,KAAMM,OACNH,aAASC,GAEXG,0BAA2B,CACzBP,KAAMQ,OACNL,aAASC,GAEXK,YAAa,CACXT,KAAMM,OACNJ,UAAU,EACVC,QAAS,mBAEXO,oBAAqB,CACnBV,KAAMM,OACNJ,UAAU,EACVC,QAAS,oDAGbQ,gBACE,MAAO,CACLC,eAAgB,CACdC,MAAO,6BACPC,MAAO,KACPC,OAAQ,KACRC,QAAS,YACTC,KAAM,OACNC,OAAQ,eACRC,YAAa,IACbC,cAAe,QACfC,eAAgB,WAItBC,SAAU,CACRC,wBACE,MAAO,CACLxB,iBAAkByB,KAAKzB,iBACvBM,SAAUmB,KAAKnB,SACfE,0BAA2BiB,KAAKjB,4BAGpCkB,2BACE,MAC4C,UAA1CD,KAAKE,MAAMC,oBAAoBC,QACc,gBAA7CJ,KAAKE,MAAMC,oBAAoBE,WAGnCC,yBACE,MAAO,CACLC,mBAAoBP,KAAKE,MAAMK,mBAC/BC,YAAaR,KAAKE,MAAMM,YACxBC,gBAAiBT,KAAKE,MAAMO,gBAC5BN,oBAAqBH,KAAKE,MAAMC,sBAGpCO,0BACE,MAAO,CACLN,OAAQJ,KAAKE,MAAMC,oBAAoBC,OACvCC,UAAWL,KAAKE,MAAMC,oBAAoBE,UAC1CG,YAAaR,KAAKE,MAAMM,YACxBG,WAAYX,KAAKE,MAAMC,oBAAoBQ,WAC3CC,cAAeZ,KAAKE,MAAMC,oBAAoBS,cAC9CL,mBAAoBP,KAAKE,MAAMK,sBAIrCM,QAAS,CACPC,qBAAYC,GACVA,EAAMC,cAAcC,OACpBjB,KAAKE,MAAMO"}
@@ -1,2 +1,2 @@
1
1
  import{openBlock as t,createElementBlock as n,normalizeClass as e,renderSlot as l,normalizeProps as i,guardReactiveProps as s,createElementVNode as o,mergeProps as r,toDisplayString as a,createCommentVNode as u,createStaticVNode as p}from"vue";var d=["title","disabled"],v=[p('<line x1="1" y1="1" x2="23" y2="23"></line><path d="M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6"></path><path d="M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23"></path><line x1="12" y1="19" x2="12" y2="23"></line><line x1="8" y1="23" x2="16" y2="23"></line>',5)],y=["fill"],c=o("path",{d:"M19 10v2a7 7 0 0 1-14 0v-2"},null,-1),x=o("line",{x1:"12",y1:"19",x2:"12",y2:"23"},null,-1),b=o("line",{x1:"8",y1:"23",x2:"16",y2:"23"},null,-1);function f(p,f,h,S,g,k){return p.state?(t(),n("div",{key:0,class:e(p.suit())},[l(p.$slots,"default",i(s(k.rootSlotProps)),function(){return[o("button",{type:"button",class:e(p.suit("button")),title:p.state.isBrowserSupported?h.buttonTitle:h.disabledButtonTitle,disabled:!p.state.isBrowserSupported,onClick:f[0]||(f[0]=function(){for(var t=[],n=arguments.length;n--;)t[n]=arguments[n];return k.handleClick&&k.handleClick.apply(k,t)})},[l(p.$slots,"buttonText",i(s(k.innerSlotProps)),function(){return[k.errorNotAllowed?(t(),n("svg",i(r({key:0},g.buttonSvgAttrs)),v,16)):(t(),n("svg",i(r({key:1},g.buttonSvgAttrs)),[o("path",{d:"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z",fill:p.state.isListening?"currentColor":"none"},null,8,y),c,x,b],16))]})],10,d),o("div",{class:e(p.suit("status"))},[l(p.$slots,"status",i(s(k.innerSlotProps)),function(){return[o("p",null,a(p.state.voiceListeningState.transcript),1)]})],2)]})],2)):u("",!0)}export{f as render};
2
- //# sourceMappingURL=VoiceSearch.vue_vue&type=template&id=1cf17560&lang.js.map
2
+ //# sourceMappingURL=VoiceSearch.vue_vue&type=template&id=c25adbd0&lang.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VoiceSearch.vue_vue&type=template&id=c25adbd0&lang.js","sources":["../../../../src/components/VoiceSearch.vue?vue&type=template&id=c25adbd0&lang.js"],"sourcesContent":["<template>\n <div v-if=\"state\" :class=\"suit()\">\n <slot v-bind=\"rootSlotProps\">\n <button\n type=\"button\"\n :class=\"suit('button')\"\n :title=\"state.isBrowserSupported ? buttonTitle : disabledButtonTitle\"\n :disabled=\"!state.isBrowserSupported\"\n @click=\"handleClick\"\n >\n <slot name=\"buttonText\" v-bind=\"innerSlotProps\">\n <svg v-bind=\"buttonSvgAttrs\" v-if=\"errorNotAllowed\">\n <line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\" />\n <path d=\"M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6\" />\n <path d=\"M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23\" />\n <line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\" />\n <line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\" />\n </svg>\n <svg v-bind=\"buttonSvgAttrs\" v-else>\n <path\n d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\"\n :fill=\"state.isListening ? 'currentColor' : 'none'\"\n />\n <path d=\"M19 10v2a7 7 0 0 1-14 0v-2\" />\n <line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\" />\n <line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\" />\n </svg>\n </slot>\n </button>\n <div :class=\"suit('status')\">\n <slot name=\"status\" v-bind=\"innerSlotProps\">\n <p>{{ state.voiceListeningState.transcript }}</p>\n </slot>\n </div>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectVoiceSearch } from 'instantsearch.js/es/connectors';\n\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\n\nexport default {\n name: 'AisVoiceSearch',\n mixins: [\n createWidgetMixin(\n {\n connector: connectVoiceSearch,\n },\n {\n $$widgetType: 'ais.voiceSearch',\n }\n ),\n createSuitMixin({ name: 'VoiceSearch' }),\n ],\n props: {\n searchAsYouSpeak: {\n type: Boolean,\n required: false,\n default: undefined,\n },\n language: {\n type: String,\n default: undefined,\n },\n additionalQueryParameters: {\n type: Object,\n default: undefined,\n },\n buttonTitle: {\n type: String,\n required: false,\n default: 'Search by voice',\n },\n disabledButtonTitle: {\n type: String,\n required: false,\n default: 'Search by voice (not supported on this browser)',\n },\n },\n data() {\n return {\n buttonSvgAttrs: {\n xmlns: 'http://www.w3.org/2000/svg',\n width: '16',\n height: '16',\n viewBox: '0 0 24 24',\n fill: 'none',\n stroke: 'currentColor',\n strokeWidth: '2',\n strokeLinecap: 'round',\n strokeLinejoin: 'round',\n },\n };\n },\n computed: {\n widgetParams() {\n return {\n searchAsYouSpeak: this.searchAsYouSpeak,\n language: this.language,\n additionalQueryParameters: this.additionalQueryParameters,\n };\n },\n errorNotAllowed() {\n return (\n this.state.voiceListeningState.status === 'error' &&\n this.state.voiceListeningState.errorCode === 'not-allowed'\n );\n },\n rootSlotProps() {\n return {\n isBrowserSupported: this.state.isBrowserSupported,\n isListening: this.state.isListening,\n toggleListening: this.state.toggleListening,\n voiceListeningState: this.state.voiceListeningState,\n };\n },\n innerSlotProps() {\n return {\n status: this.state.voiceListeningState.status,\n errorCode: this.state.voiceListeningState.errorCode,\n isListening: this.state.isListening,\n transcript: this.state.voiceListeningState.transcript,\n isSpeechFinal: this.state.voiceListeningState.isSpeechFinal,\n isBrowserSupported: this.state.isBrowserSupported,\n };\n },\n },\n methods: {\n handleClick(event) {\n event.currentTarget.blur();\n this.state.toggleListening();\n },\n },\n};\n</script>\n"],"names":["_createElementVNode","d","x1","y1","x2","y2","_ctx","_createElementBlock","class","_renderSlot","$options","type","title","isBrowserSupported","$props","disabled","onClick","$data","fill","isListening","_hoisted_9","_hoisted_10","_hoisted_11","voiceListeningState","transcript"],"mappings":"2jBAuBYA,UAAMC,EAAE,yCACRD,UAAME,GAAG,KAAKC,GAAG,KAAKC,GAAG,KAAKC,GAAG,iBACjCL,UAAME,GAAG,IAAIC,GAAG,KAAKC,GAAG,KAAKC,GAAG,8CAxB/BC,aAAXC,eAAmBC,QAAOF,YACxBG,yBAAcC,oCACZV,YACEW,KAAK,SACJH,QAAOF,kBACPM,MAAON,QAAMO,mBAAqBC,cAAcA,sBAChDC,UAAWT,QAAMO,mBACjBG,6FAAON,4CAERD,4BAAgCC,qCACKA,uBAAnCH,oBAAaU,+BAObV,oBAAaU,oBACXjB,UACEC,EAAE,uDACDiB,KAAMZ,QAAMa,6CAEfC,EACAC,EACAC,kBAINtB,SAAMQ,QAAOF,oBACXG,wBAA4BC,qCAC1BV,aAAMM,QAAMiB,oBAAoBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"panel.js","sources":["../../../../src/mixins/panel.js"],"sourcesContent":["import { isVue3 } from '../util/vue-compat';\nimport mitt from 'mitt';\n\nexport const PANEL_EMITTER_NAMESPACE = 'instantSearchPanelEmitter';\nexport const PANEL_CHANGE_EVENT = 'PANEL_CHANGE_EVENT';\n\nexport const createPanelProviderMixin = () => ({\n props: {\n emitter: {\n type: Object,\n required: false,\n default() {\n return mitt();\n },\n },\n },\n provide() {\n return {\n [PANEL_EMITTER_NAMESPACE]: this.emitter,\n };\n },\n data() {\n return {\n canRefine: true,\n };\n },\n created() {\n this.emitter.on(PANEL_CHANGE_EVENT, (value) => {\n this.updateCanRefine(value);\n });\n },\n [isVue3 ? 'beforeUnmount' : 'beforeDestroy']() {\n this.emitter.all.clear();\n },\n methods: {\n updateCanRefine(value) {\n this.canRefine = value;\n },\n },\n});\n\nexport const createPanelConsumerMixin = ({\n mapStateToCanRefine = (state) => Boolean(state.canRefine),\n} = {}) => ({\n inject: {\n emitter: {\n from: PANEL_EMITTER_NAMESPACE,\n default() {\n return {\n emit: () => {},\n };\n },\n },\n },\n data() {\n return {\n state: null,\n hasAlreadyEmitted: false,\n };\n },\n watch: {\n state: {\n immediate: true,\n handler(nextState, previousState) {\n if (!nextState) {\n return;\n }\n\n const previousCanRefine = mapStateToCanRefine(previousState || {});\n const nextCanRefine = mapStateToCanRefine(nextState);\n\n if (!this.hasAlreadyEmitted || previousCanRefine !== nextCanRefine) {\n this.emitter.emit(PANEL_CHANGE_EVENT, nextCanRefine);\n this.hasAlreadyEmitted = true;\n }\n },\n },\n },\n});\n"],"names":["PANEL_EMITTER_NAMESPACE","PANEL_CHANGE_EVENT","createPanelProviderMixin","props","emitter","type","Object","required","default","mitt","provide","this","data","canRefine","created","on","value","updateCanRefine","all","clear","methods","createPanelConsumerMixin","state","Boolean","inject","from","emit","hasAlreadyEmitted","watch","immediate","handler","nextState","previousState","const","previousCanRefine","mapStateToCanRefine","nextCanRefine"],"mappings":"iEAGaA,EAA0B,4BAC1BC,EAAqB,qBAErBC,4BAAkC,CAC7CC,MAAO,CACLC,QAAS,CACPC,KAAMC,OACNC,UAAU,EACVC,mBACE,OAAOC,OAIbC,yBACE,SAAO,IACmB,0BAAGC,KAAKP,WAGpCQ,gBACE,MAAO,CACLC,WAAW,IAGfC,8BACEH,KAAKP,QAAQW,GAvBiB,8BAuBOC,GACnCL,EAAKM,gBAAgBD,QAGkB,yBACzCL,KAAKP,QAAQc,IAAIC,WAEnBC,QAAS,CACPH,yBAAgBD,GACdL,KAAKE,UAAYG,OAKVK,6BAET,+DADqBC,UAAUC,QAAQD,EAAMT,aACrC,CACVW,OAAQ,CACNpB,QAAS,CACPqB,KA3CiC,4BA4CjCjB,mBACE,MAAO,CACLkB,sBAKRd,gBACE,MAAO,CACLU,MAAO,KACPK,mBAAmB,IAGvBC,MAAO,CACLN,MAAO,CACLO,WAAW,EACXC,iBAAQC,EAAWC,GACjB,GAAKD,EAAL,CAIAE,IAAMC,EAAoBC,EAAoBH,GAAiB,IACzDI,EAAgBD,EAAoBJ,GAErCpB,KAAKgB,mBAAqBO,IAAsBE,IACnDzB,KAAKP,QAAQsB,KApEW,qBAoEcU,GACtCzB,KAAKgB,mBAAoB"}
1
+ {"version":3,"file":"panel.js","sources":["../../../../src/mixins/panel.js"],"sourcesContent":["import mitt from 'mitt';\n\nimport { isVue3 } from '../util/vue-compat';\n\nexport const PANEL_EMITTER_NAMESPACE = 'instantSearchPanelEmitter';\nexport const PANEL_CHANGE_EVENT = 'PANEL_CHANGE_EVENT';\n\nexport const createPanelProviderMixin = () => ({\n props: {\n emitter: {\n type: Object,\n required: false,\n default() {\n return mitt();\n },\n },\n },\n provide() {\n return {\n [PANEL_EMITTER_NAMESPACE]: this.emitter,\n };\n },\n data() {\n return {\n canRefine: true,\n };\n },\n created() {\n this.emitter.on(PANEL_CHANGE_EVENT, (value) => {\n this.updateCanRefine(value);\n });\n },\n [isVue3 ? 'beforeUnmount' : 'beforeDestroy']() {\n this.emitter.all.clear();\n },\n methods: {\n updateCanRefine(value) {\n this.canRefine = value;\n },\n },\n});\n\nexport const createPanelConsumerMixin = ({\n mapStateToCanRefine = (state) => Boolean(state.canRefine),\n} = {}) => ({\n inject: {\n emitter: {\n from: PANEL_EMITTER_NAMESPACE,\n default() {\n return {\n emit: () => {},\n };\n },\n },\n },\n data() {\n return {\n state: null,\n hasAlreadyEmitted: false,\n };\n },\n watch: {\n state: {\n immediate: true,\n handler(nextState, previousState) {\n if (!nextState) {\n return;\n }\n\n const previousCanRefine = mapStateToCanRefine(previousState || {});\n const nextCanRefine = mapStateToCanRefine(nextState);\n\n if (!this.hasAlreadyEmitted || previousCanRefine !== nextCanRefine) {\n this.emitter.emit(PANEL_CHANGE_EVENT, nextCanRefine);\n this.hasAlreadyEmitted = true;\n }\n },\n },\n },\n});\n"],"names":["PANEL_EMITTER_NAMESPACE","PANEL_CHANGE_EVENT","createPanelProviderMixin","props","emitter","type","Object","required","default","mitt","provide","this","data","canRefine","created","on","value","updateCanRefine","all","clear","methods","createPanelConsumerMixin","state","Boolean","inject","from","emit","hasAlreadyEmitted","watch","immediate","handler","nextState","previousState","const","previousCanRefine","mapStateToCanRefine","nextCanRefine"],"mappings":"iEAIaA,EAA0B,4BAC1BC,EAAqB,qBAErBC,4BAAkC,CAC7CC,MAAO,CACLC,QAAS,CACPC,KAAMC,OACNC,UAAU,EACVC,mBACE,OAAOC,OAIbC,yBACE,SAAO,IACmB,0BAAGC,KAAKP,WAGpCQ,gBACE,MAAO,CACLC,WAAW,IAGfC,8BACEH,KAAKP,QAAQW,GAvBiB,8BAuBOC,GACnCL,EAAKM,gBAAgBD,QAGkB,yBACzCL,KAAKP,QAAQc,IAAIC,WAEnBC,QAAS,CACPH,yBAAgBD,GACdL,KAAKE,UAAYG,OAKVK,6BAET,+DADqBC,UAAUC,QAAQD,EAAMT,aACrC,CACVW,OAAQ,CACNpB,QAAS,CACPqB,KA3CiC,4BA4CjCjB,mBACE,MAAO,CACLkB,sBAKRd,gBACE,MAAO,CACLU,MAAO,KACPK,mBAAmB,IAGvBC,MAAO,CACLN,MAAO,CACLO,WAAW,EACXC,iBAAQC,EAAWC,GACjB,GAAKD,EAAL,CAIAE,IAAMC,EAAoBC,EAAoBH,GAAiB,IACzDI,EAAgBD,EAAoBJ,GAErCpB,KAAKgB,mBAAqBO,IAAsBE,IACnDzB,KAAKP,QAAQsB,KApEW,qBAoEcU,GACtCzB,KAAKgB,mBAAoB"}
@@ -1 +1 @@
1
- {"version":3,"file":"createInstantSearchComponent.js","sources":["../../../../src/util/createInstantSearchComponent.js"],"sourcesContent":["import { createSuitMixin } from '../mixins/suit';\nimport { version } from '../../package.json'; // rollup does pick only what needed from json\nimport { _objectSpread } from './polyfills';\nimport { isVue3, version as vueVersion } from './vue-compat';\nimport { warn } from './warn';\n\nexport const createInstantSearchComponent = (component) =>\n _objectSpread(\n {\n mixins: [createSuitMixin({ name: 'InstantSearch' })],\n provide() {\n return {\n $_ais_instantSearchInstance: this.instantSearchInstance,\n };\n },\n watch: {\n searchClient(searchClient) {\n warn(\n false,\n 'The `search-client` prop of `<ais-instant-search>` changed between renders, which may cause more search requests than necessary. If this is an unwanted behavior, please provide a stable reference: https://www.algolia.com/doc/api-reference/widgets/instantsearch/vue/#widget-param-search-client'\n );\n\n this.instantSearchInstance.helper.setClient(searchClient).search();\n },\n indexName(indexName) {\n this.instantSearchInstance.helper.setIndex(indexName || '').search();\n },\n stalledSearchDelay(stalledSearchDelay) {\n // private InstantSearch.js API:\n this.instantSearchInstance._stalledSearchDelay = stalledSearchDelay;\n },\n routing() {\n throw new Error(\n 'routing configuration can not be changed dynamically at this point.' +\n '\\n\\n' +\n 'Please open a new issue: https://github.com/algolia/instantsearch.js/discussions/new?category=ideas&labels=triage%2cLibrary%3A+Vue+InstantSearch&title=Feature%20request%3A%20dynamic%20props'\n );\n },\n onStateChange() {\n throw new Error(\n 'onStateChange configuration can not be changed dynamically at this point.' +\n '\\n\\n' +\n 'Please open a new issue: https://github.com/algolia/instantsearch.js/discussions/new?category=ideas&labels=triage%2cLibrary%3A+Vue+InstantSearch&title=Feature%20request%3A%20dynamic%20props'\n );\n },\n searchFunction(searchFunction) {\n // private InstantSearch.js API:\n this.instantSearchInstance._searchFunction = searchFunction;\n },\n middlewares: {\n immediate: true,\n handler(next, prev) {\n (prev || [])\n .filter((middleware) => (next || []).indexOf(middleware) === -1)\n .forEach((middlewareToRemove) => {\n this.instantSearchInstance.unuse(middlewareToRemove);\n });\n\n (next || [])\n .filter((middleware) => (prev || []).indexOf(middleware) === -1)\n .forEach((middlewareToAdd) => {\n this.instantSearchInstance.use(middlewareToAdd);\n });\n },\n },\n },\n created() {\n const searchClient = this.instantSearchInstance.client;\n if (typeof searchClient.addAlgoliaAgent === 'function') {\n searchClient.addAlgoliaAgent(`Vue (${vueVersion})`);\n searchClient.addAlgoliaAgent(`Vue InstantSearch (${version})`);\n }\n },\n mounted() {\n // from the documentation: https://vuejs.org/v2/api/#mounted\n // \"Note that mounted does not guarantee that all child components have also been mounted. If you want to\n // wait until the entire view has been rendered, you can use vm.$nextTick inside of mounted\"\n this.$nextTick(() => {\n if (!this.instantSearchInstance.started) {\n this.instantSearchInstance.start();\n }\n });\n },\n [isVue3 ? 'beforeUnmount' : 'beforeDestroy']() {\n if (this.instantSearchInstance.started) {\n this.instantSearchInstance.dispose();\n }\n\n // a hydrated instance will no longer be hydrated once disposed, and starts from scratch\n this.instantSearchInstance.__initialSearchResults = undefined;\n },\n },\n component\n );\n"],"names":["createInstantSearchComponent","component","_objectSpread","mixins","createSuitMixin","name","provide","$_ais_instantSearchInstance","this","instantSearchInstance","watch","searchClient","warn","helper","setClient","search","indexName","setIndex","stalledSearchDelay","_stalledSearchDelay","routing","Error","onStateChange","searchFunction","_searchFunction","middlewares","immediate","handler","next","prev","filter","middleware","indexOf","forEach","middlewareToRemove","unuse","middlewareToAdd","use","created","const","client","addAlgoliaAgent","vueVersion","version","mounted","$nextTick","started","start","dispose","__initialSearchResults","undefined"],"mappings":"yPAMaA,WAAgCC,gBAC3CC,MACE,CACEC,OAAQ,CAACC,EAAgB,CAAEC,KAAM,mBACjCC,mBACE,MAAO,CACLC,4BAA6BC,KAAKC,wBAGtCC,MAAO,CACLC,sBAAaA,GACXC,GACE,GAIFJ,KAAKC,sBAAsBI,OAAOC,UAAUH,GAAcI,UAE5DC,mBAAUA,GACRR,KAAKC,sBAAsBI,OAAOI,SAASD,GAAa,IAAID,UAE9DG,4BAAmBA,GAEjBV,KAAKC,sBAAsBU,oBAAsBD,GAEnDE,mBACE,MAAM,IAAIC,MACR,yQAKJC,yBACE,MAAM,IAAID,MACR,+QAKJE,wBAAeA,GAEbf,KAAKC,sBAAsBe,gBAAkBD,GAE/CE,YAAa,CACXC,WAAW,EACXC,iBAAQC,EAAMC,eACXA,GAAQ,IACNC,gBAAQC,UAAqD,KAArCH,GAAQ,IAAII,QAAQD,KAC5CE,iBAASC,GACR1B,EAAKC,sBAAsB0B,MAAMD,MAGpCN,GAAQ,IACNE,gBAAQC,UAAqD,KAArCF,GAAQ,IAAIG,QAAQD,KAC5CE,iBAASG,GACR5B,EAAKC,sBAAsB4B,IAAID,QAKzCE,mBACEC,IAAM5B,EAAeH,KAAKC,sBAAsB+B,OACJ,mBAAjC7B,EAAa8B,kBACtB9B,EAAa8B,wBAAwBC,OACrC/B,EAAa8B,sCAAsCE,SAGvDC,8BAIEpC,KAAKqC,qBACErC,EAAKC,sBAAsBqC,SAC9BtC,EAAKC,sBAAsBsC,aAIU,yBACrCvC,KAAKC,sBAAsBqC,SAC7BtC,KAAKC,sBAAsBuC,UAI7BxC,KAAKC,sBAAsBwC,4BAAyBC,MAGxDjD"}
1
+ {"version":3,"file":"createInstantSearchComponent.js","sources":["../../../../src/util/createInstantSearchComponent.js"],"sourcesContent":["import { version } from '../../package.json'; // rollup does pick only what needed from json\nimport { createSuitMixin } from '../mixins/suit';\n\nimport { _objectSpread } from './polyfills';\nimport { isVue3, version as vueVersion } from './vue-compat';\nimport { warn } from './warn';\n\nexport const createInstantSearchComponent = (component) =>\n _objectSpread(\n {\n mixins: [createSuitMixin({ name: 'InstantSearch' })],\n provide() {\n return {\n $_ais_instantSearchInstance: this.instantSearchInstance,\n };\n },\n watch: {\n searchClient(searchClient) {\n warn(\n false,\n 'The `search-client` prop of `<ais-instant-search>` changed between renders, which may cause more search requests than necessary. If this is an unwanted behavior, please provide a stable reference: https://www.algolia.com/doc/api-reference/widgets/instantsearch/vue/#widget-param-search-client'\n );\n\n this.instantSearchInstance.helper.setClient(searchClient).search();\n },\n indexName(indexName) {\n this.instantSearchInstance.helper.setIndex(indexName || '').search();\n },\n stalledSearchDelay(stalledSearchDelay) {\n // private InstantSearch.js API:\n this.instantSearchInstance._stalledSearchDelay = stalledSearchDelay;\n },\n routing() {\n throw new Error(\n 'routing configuration can not be changed dynamically at this point.' +\n '\\n\\n' +\n 'Please open a new issue: https://github.com/algolia/instantsearch.js/discussions/new?category=ideas&labels=triage%2cLibrary%3A+Vue+InstantSearch&title=Feature%20request%3A%20dynamic%20props'\n );\n },\n onStateChange() {\n throw new Error(\n 'onStateChange configuration can not be changed dynamically at this point.' +\n '\\n\\n' +\n 'Please open a new issue: https://github.com/algolia/instantsearch.js/discussions/new?category=ideas&labels=triage%2cLibrary%3A+Vue+InstantSearch&title=Feature%20request%3A%20dynamic%20props'\n );\n },\n searchFunction(searchFunction) {\n // private InstantSearch.js API:\n this.instantSearchInstance._searchFunction = searchFunction;\n },\n middlewares: {\n immediate: true,\n handler(next, prev) {\n (prev || [])\n .filter((middleware) => (next || []).indexOf(middleware) === -1)\n .forEach((middlewareToRemove) => {\n this.instantSearchInstance.unuse(middlewareToRemove);\n });\n\n (next || [])\n .filter((middleware) => (prev || []).indexOf(middleware) === -1)\n .forEach((middlewareToAdd) => {\n this.instantSearchInstance.use(middlewareToAdd);\n });\n },\n },\n },\n created() {\n const searchClient = this.instantSearchInstance.client;\n if (typeof searchClient.addAlgoliaAgent === 'function') {\n searchClient.addAlgoliaAgent(`Vue (${vueVersion})`);\n searchClient.addAlgoliaAgent(`Vue InstantSearch (${version})`);\n }\n },\n mounted() {\n // from the documentation: https://vuejs.org/v2/api/#mounted\n // \"Note that mounted does not guarantee that all child components have also been mounted. If you want to\n // wait until the entire view has been rendered, you can use vm.$nextTick inside of mounted\"\n this.$nextTick(() => {\n if (!this.instantSearchInstance.started) {\n this.instantSearchInstance.start();\n }\n });\n },\n [isVue3 ? 'beforeUnmount' : 'beforeDestroy']() {\n if (this.instantSearchInstance.started) {\n this.instantSearchInstance.dispose();\n }\n\n // a hydrated instance will no longer be hydrated once disposed, and starts from scratch\n this.instantSearchInstance.__initialSearchResults = undefined;\n },\n },\n component\n );\n"],"names":["createInstantSearchComponent","component","_objectSpread","mixins","createSuitMixin","name","provide","$_ais_instantSearchInstance","this","instantSearchInstance","watch","searchClient","warn","helper","setClient","search","indexName","setIndex","stalledSearchDelay","_stalledSearchDelay","routing","Error","onStateChange","searchFunction","_searchFunction","middlewares","immediate","handler","next","prev","filter","middleware","indexOf","forEach","middlewareToRemove","unuse","middlewareToAdd","use","created","const","client","addAlgoliaAgent","vueVersion","version","mounted","$nextTick","started","start","dispose","__initialSearchResults","undefined"],"mappings":"yPAOaA,WAAgCC,gBAC3CC,MACE,CACEC,OAAQ,CAACC,EAAgB,CAAEC,KAAM,mBACjCC,mBACE,MAAO,CACLC,4BAA6BC,KAAKC,wBAGtCC,MAAO,CACLC,sBAAaA,GACXC,GACE,GAIFJ,KAAKC,sBAAsBI,OAAOC,UAAUH,GAAcI,UAE5DC,mBAAUA,GACRR,KAAKC,sBAAsBI,OAAOI,SAASD,GAAa,IAAID,UAE9DG,4BAAmBA,GAEjBV,KAAKC,sBAAsBU,oBAAsBD,GAEnDE,mBACE,MAAM,IAAIC,MACR,yQAKJC,yBACE,MAAM,IAAID,MACR,+QAKJE,wBAAeA,GAEbf,KAAKC,sBAAsBe,gBAAkBD,GAE/CE,YAAa,CACXC,WAAW,EACXC,iBAAQC,EAAMC,eACXA,GAAQ,IACNC,gBAAQC,UAAqD,KAArCH,GAAQ,IAAII,QAAQD,KAC5CE,iBAASC,GACR1B,EAAKC,sBAAsB0B,MAAMD,MAGpCN,GAAQ,IACNE,gBAAQC,UAAqD,KAArCF,GAAQ,IAAIG,QAAQD,KAC5CE,iBAASG,GACR5B,EAAKC,sBAAsB4B,IAAID,QAKzCE,mBACEC,IAAM5B,EAAeH,KAAKC,sBAAsB+B,OACJ,mBAAjC7B,EAAa8B,kBACtB9B,EAAa8B,wBAAwBC,OACrC/B,EAAa8B,sCAAsCE,SAGvDC,8BAIEpC,KAAKqC,qBACErC,EAAKC,sBAAsBqC,SAC9BtC,EAAKC,sBAAsBsC,aAIU,yBACrCvC,KAAKC,sBAAsBqC,SAC7BtC,KAAKC,sBAAsBuC,UAI7BxC,KAAKC,sBAAsBwC,4BAAyBC,MAGxDjD"}