vue-instantsearch 4.3.2 → 4.4.1
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.
- package/CHANGELOG.md +36 -0
- package/package.json +9 -9
- package/src/__tests__/index.js +133 -26
- package/src/components/Autocomplete.vue +8 -1
- package/src/components/Breadcrumb.vue +8 -1
- package/src/components/ClearRefinements.vue +8 -1
- package/src/components/Configure.js +8 -1
- package/src/components/ConfigureRelatedItems.js +8 -1
- package/src/components/CurrentRefinements.vue +8 -1
- package/src/components/DynamicWidgets.js +8 -1
- package/src/components/HierarchicalMenu.vue +8 -1
- package/src/components/Hits.vue +8 -1
- package/src/components/HitsPerPage.vue +8 -1
- package/src/components/Index.js +6 -1
- package/src/components/InfiniteHits.vue +8 -1
- package/src/components/Menu.vue +6 -1
- package/src/components/MenuSelect.vue +6 -1
- package/src/components/NumericMenu.vue +8 -1
- package/src/components/Pagination.vue +9 -1
- package/src/components/QueryRuleContext.js +8 -3
- package/src/components/QueryRuleCustomData.vue +8 -3
- package/src/components/RangeInput.vue +8 -1
- package/src/components/RatingMenu.vue +8 -1
- package/src/components/RefinementList.vue +8 -1
- package/src/components/RelevantSort.vue +8 -1
- package/src/components/SearchBox.vue +17 -1
- package/src/components/SearchInput.vue +3 -0
- package/src/components/SortBy.vue +6 -1
- package/src/components/StateResults.vue +8 -1
- package/src/components/Stats.vue +6 -1
- package/src/components/ToggleRefinement.vue +8 -1
- package/src/components/VoiceSearch.vue +8 -1
- package/src/components/__tests__/SearchBox.js +15 -0
- package/src/components/__tests__/__snapshots__/Pagination.js.snap +21 -21
- package/src/mixins/__tests__/widget.test.js +102 -0
- package/src/mixins/widget.js +13 -3
- package/src/util/__tests__/createServerRootMixin.test.js +57 -2
- package/src/util/createInstantSearchComponent.js +1 -1
- package/src/util/createServerRootMixin.js +9 -2
- package/src/util/vue-compat/{index-2.js → index-vue2.js} +0 -0
- package/src/util/vue-compat/{index-3.js → index-vue3.js} +0 -0
- package/src/util/vue-compat/index.js +3 -3
- package/vue2/cjs/index.js +1 -1
- package/vue2/cjs/index.js.map +1 -1
- package/vue2/cjs/package.json +1 -0
- package/vue2/es/index.js +1 -1
- package/vue2/es/package.json +1 -0
- package/vue2/es/package.json.js +1 -1
- package/vue2/es/src/components/Autocomplete.vue.js +1 -1
- package/vue2/es/src/components/Autocomplete.vue.js.map +1 -1
- package/vue2/es/src/components/Breadcrumb.vue.js +1 -1
- package/vue2/es/src/components/Breadcrumb.vue.js.map +1 -1
- package/vue2/es/src/components/ClearRefinements.vue.js +1 -1
- package/vue2/es/src/components/ClearRefinements.vue.js.map +1 -1
- package/vue2/es/src/components/Configure.js +1 -1
- package/vue2/es/src/components/Configure.js.map +1 -1
- package/vue2/es/src/components/ConfigureRelatedItems.js +1 -1
- package/vue2/es/src/components/ConfigureRelatedItems.js.map +1 -1
- package/vue2/es/src/components/CurrentRefinements.vue.js +1 -1
- package/vue2/es/src/components/CurrentRefinements.vue.js.map +1 -1
- package/vue2/es/src/components/DynamicWidgets.js +1 -1
- package/vue2/es/src/components/DynamicWidgets.js.map +1 -1
- package/vue2/es/src/components/HierarchicalMenu.vue.js +1 -1
- package/vue2/es/src/components/HierarchicalMenu.vue.js.map +1 -1
- package/vue2/es/src/components/Highlighter.vue.js +1 -1
- package/vue2/es/src/components/Highlighter.vue.js.map +1 -1
- package/vue2/es/src/components/Hits.vue.js +1 -1
- package/vue2/es/src/components/Hits.vue.js.map +1 -1
- package/vue2/es/src/components/HitsPerPage.vue.js +1 -1
- package/vue2/es/src/components/HitsPerPage.vue.js.map +1 -1
- package/vue2/es/src/components/Index.js +1 -1
- package/vue2/es/src/components/Index.js.map +1 -1
- package/vue2/es/src/components/InfiniteHits.vue.js +1 -1
- package/vue2/es/src/components/InfiniteHits.vue.js.map +1 -1
- package/vue2/es/src/components/InstantSearch.js +1 -1
- package/vue2/es/src/components/InstantSearch.js.map +1 -1
- package/vue2/es/src/components/InstantSearchSsr.js +1 -1
- package/vue2/es/src/components/InstantSearchSsr.js.map +1 -1
- package/vue2/es/src/components/Menu.vue.js +1 -1
- package/vue2/es/src/components/Menu.vue.js.map +1 -1
- package/vue2/es/src/components/MenuSelect.vue.js +1 -1
- package/vue2/es/src/components/MenuSelect.vue.js.map +1 -1
- package/vue2/es/src/components/NumericMenu.vue.js +1 -1
- package/vue2/es/src/components/NumericMenu.vue.js.map +1 -1
- package/vue2/es/src/components/Pagination.vue.js +1 -1
- package/vue2/es/src/components/Pagination.vue.js.map +1 -1
- package/vue2/es/src/components/Panel.vue.js +1 -1
- package/vue2/es/src/components/Panel.vue.js.map +1 -1
- package/vue2/es/src/components/PoweredBy.vue.js.map +1 -1
- package/vue2/es/src/components/QueryRuleContext.js +1 -1
- package/vue2/es/src/components/QueryRuleContext.js.map +1 -1
- package/vue2/es/src/components/QueryRuleCustomData.vue.js +1 -1
- package/vue2/es/src/components/QueryRuleCustomData.vue.js.map +1 -1
- package/vue2/es/src/components/RangeInput.vue.js +1 -1
- package/vue2/es/src/components/RangeInput.vue.js.map +1 -1
- package/vue2/es/src/components/RatingMenu.vue.js +1 -1
- package/vue2/es/src/components/RatingMenu.vue.js.map +1 -1
- package/vue2/es/src/components/RefinementList.vue.js +1 -1
- package/vue2/es/src/components/RefinementList.vue.js.map +1 -1
- package/vue2/es/src/components/RelevantSort.vue.js +1 -1
- package/vue2/es/src/components/RelevantSort.vue.js.map +1 -1
- package/vue2/es/src/components/SearchBox.vue.js +1 -1
- package/vue2/es/src/components/SearchBox.vue.js.map +1 -1
- package/vue2/es/src/components/SearchInput.vue.js +1 -1
- package/vue2/es/src/components/SearchInput.vue.js.map +1 -1
- package/vue2/es/src/components/SortBy.vue.js +1 -1
- package/vue2/es/src/components/SortBy.vue.js.map +1 -1
- package/vue2/es/src/components/StateResults.vue.js +1 -1
- package/vue2/es/src/components/StateResults.vue.js.map +1 -1
- package/vue2/es/src/components/Stats.vue.js +1 -1
- package/vue2/es/src/components/Stats.vue.js.map +1 -1
- package/vue2/es/src/components/ToggleRefinement.vue.js +1 -1
- package/vue2/es/src/components/ToggleRefinement.vue.js.map +1 -1
- package/vue2/es/src/components/VoiceSearch.vue.js +1 -1
- package/vue2/es/src/components/VoiceSearch.vue.js.map +1 -1
- package/vue2/es/src/connectors/connectStateResults.js.map +1 -1
- package/vue2/es/src/mixins/panel.js +1 -1
- package/vue2/es/src/mixins/panel.js.map +1 -1
- package/vue2/es/src/mixins/suit.js.map +1 -1
- package/vue2/es/src/mixins/widget.js +1 -1
- package/vue2/es/src/mixins/widget.js.map +1 -1
- package/vue2/es/src/plugin.js.map +1 -1
- package/vue2/es/src/util/createInstantSearchComponent.js +1 -1
- package/vue2/es/src/util/createInstantSearchComponent.js.map +1 -1
- package/vue2/es/src/util/createServerRootMixin.js +1 -1
- package/vue2/es/src/util/createServerRootMixin.js.map +1 -1
- package/vue2/es/src/util/parseAlgoliaHit.js +1 -1
- package/vue2/es/src/util/parseAlgoliaHit.js.map +1 -1
- package/vue2/es/src/util/polyfills.js.map +1 -1
- package/vue2/es/src/util/suit.js.map +1 -1
- package/vue2/es/src/util/unescape.js.map +1 -1
- package/vue2/es/src/util/vue-compat/{index-2.js → index-vue2.js} +1 -1
- package/vue2/es/src/util/vue-compat/index-vue2.js.map +1 -0
- package/vue2/umd/index.js +1 -1
- package/vue2/umd/index.js.map +1 -1
- package/vue3/cjs/index.js +1 -1
- package/vue3/cjs/index.js.map +1 -1
- package/vue3/cjs/package.json +1 -0
- package/vue3/es/index.js +1 -1
- package/vue3/es/package.json +1 -0
- package/vue3/es/package.json.js +1 -1
- package/vue3/es/src/components/Autocomplete.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/Autocomplete.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/Autocomplete.vue_vue&type=template&id=e7c95fd0&lang.js.map +1 -1
- package/vue3/es/src/components/Breadcrumb.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/Breadcrumb.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/Breadcrumb.vue_vue&type=template&id=6f46de9a&lang.js.map +1 -1
- package/vue3/es/src/components/ClearRefinements.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/ClearRefinements.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/ClearRefinements.vue_vue&type=template&id=410a3aaa&lang.js.map +1 -1
- package/vue3/es/src/components/Configure.js +1 -1
- package/vue3/es/src/components/Configure.js.map +1 -1
- package/vue3/es/src/components/ConfigureRelatedItems.js +1 -1
- package/vue3/es/src/components/ConfigureRelatedItems.js.map +1 -1
- package/vue3/es/src/components/CurrentRefinements.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/CurrentRefinements.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/CurrentRefinements.vue_vue&type=template&id=4f1917ff&lang.js.map +1 -1
- package/vue3/es/src/components/DynamicWidgets.js +1 -1
- package/vue3/es/src/components/DynamicWidgets.js.map +1 -1
- package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/HierarchicalMenu.vue_vue&type=template&id=4361a0b8&lang.js.map +1 -1
- package/vue3/es/src/components/HierarchicalMenuList.vue_vue&type=template&id=0435b314&lang.js.map +1 -1
- package/vue3/es/src/components/Highlight.vue_vue&type=template&id=300b0ab4&lang.js.map +1 -1
- package/vue3/es/src/components/Highlighter.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/Highlighter.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/Hits.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/Hits.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/Hits.vue_vue&type=template&id=ef242920&lang.js.map +1 -1
- package/vue3/es/src/components/HitsPerPage.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/HitsPerPage.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/HitsPerPage.vue_vue&type=template&id=74f3ac28&lang.js.map +1 -1
- package/vue3/es/src/components/Index.js +1 -1
- package/vue3/es/src/components/Index.js.map +1 -1
- package/vue3/es/src/components/InfiniteHits.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/InfiniteHits.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/InfiniteHits.vue_vue&type=template&id=dcfb64b8&lang.js.map +1 -1
- package/vue3/es/src/components/InstantSearch.js +1 -1
- package/vue3/es/src/components/InstantSearch.js.map +1 -1
- package/vue3/es/src/components/InstantSearchSsr.js +1 -1
- package/vue3/es/src/components/InstantSearchSsr.js.map +1 -1
- package/vue3/es/src/components/Menu.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/Menu.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/Menu.vue_vue&type=template&id=9bcc0be2&lang.js.map +1 -1
- package/vue3/es/src/components/MenuSelect.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/MenuSelect.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/MenuSelect.vue_vue&type=template&id=694477eb&lang.js.map +1 -1
- package/vue3/es/src/components/NumericMenu.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/NumericMenu.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/NumericMenu.vue_vue&type=template&id=160fae0c&lang.js.map +1 -1
- package/vue3/es/src/components/Pagination.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/Pagination.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/Pagination.vue_vue&type=template&id=849a166c&lang.js +1 -1
- package/vue3/es/src/components/Pagination.vue_vue&type=template&id=849a166c&lang.js.map +1 -1
- package/vue3/es/src/components/Panel.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/Panel.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/PoweredBy.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/PoweredBy.vue_vue&type=template&id=3e8d7a5b&lang.js.map +1 -1
- package/vue3/es/src/components/QueryRuleContext.js +1 -1
- package/vue3/es/src/components/QueryRuleContext.js.map +1 -1
- package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=template&id=e4da0782&lang.js.map +1 -1
- package/vue3/es/src/components/RangeInput.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/RangeInput.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/RangeInput.vue_vue&type=template&id=1e17783d&lang.js.map +1 -1
- package/vue3/es/src/components/RatingMenu.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/RatingMenu.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/RatingMenu.vue_vue&type=template&id=9254de68&lang.js.map +1 -1
- package/vue3/es/src/components/RefinementList.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/RefinementList.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/RefinementList.vue_vue&type=template&id=28927239&lang.js.map +1 -1
- package/vue3/es/src/components/RelevantSort.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/RelevantSort.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/RelevantSort.vue_vue&type=template&id=257b248b&lang.js.map +1 -1
- package/vue3/es/src/components/SearchBox.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/SearchBox.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/SearchBox.vue_vue&type=template&id=27029d83&lang.js +1 -1
- package/vue3/es/src/components/SearchBox.vue_vue&type=template&id=27029d83&lang.js.map +1 -1
- package/vue3/es/src/components/SearchInput.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/SearchInput.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/SearchInput.vue_vue&type=template&id=2eed8ffc&lang.js.map +1 -1
- package/vue3/es/src/components/Snippet.vue_vue&type=template&id=eb4966c6&lang.js.map +1 -1
- package/vue3/es/src/components/SortBy.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/SortBy.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/SortBy.vue_vue&type=template&id=b69b3b76&lang.js.map +1 -1
- package/vue3/es/src/components/StateResults.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/StateResults.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/StateResults.vue_vue&type=template&id=5992f3d5&lang.js.map +1 -1
- package/vue3/es/src/components/Stats.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/Stats.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/Stats.vue_vue&type=template&id=7337491f&lang.js.map +1 -1
- package/vue3/es/src/components/ToggleRefinement.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/ToggleRefinement.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/ToggleRefinement.vue_vue&type=template&id=14e4586f&lang.js.map +1 -1
- package/vue3/es/src/components/VoiceSearch.vue_vue&type=script&lang.js +1 -1
- package/vue3/es/src/components/VoiceSearch.vue_vue&type=script&lang.js.map +1 -1
- package/vue3/es/src/components/VoiceSearch.vue_vue&type=template&id=24b0f67a&lang.js.map +1 -1
- package/vue3/es/src/connectors/connectStateResults.js.map +1 -1
- package/vue3/es/src/mixins/panel.js +1 -1
- package/vue3/es/src/mixins/panel.js.map +1 -1
- package/vue3/es/src/mixins/suit.js.map +1 -1
- package/vue3/es/src/mixins/widget.js +1 -1
- package/vue3/es/src/mixins/widget.js.map +1 -1
- package/vue3/es/src/plugin.js.map +1 -1
- package/vue3/es/src/util/createInstantSearchComponent.js +1 -1
- package/vue3/es/src/util/createInstantSearchComponent.js.map +1 -1
- package/vue3/es/src/util/createServerRootMixin.js +1 -1
- package/vue3/es/src/util/createServerRootMixin.js.map +1 -1
- package/vue3/es/src/util/parseAlgoliaHit.js +1 -1
- package/vue3/es/src/util/parseAlgoliaHit.js.map +1 -1
- package/vue3/es/src/util/polyfills.js.map +1 -1
- package/vue3/es/src/util/suit.js.map +1 -1
- package/vue3/es/src/util/unescape.js.map +1 -1
- package/vue3/es/src/util/vue-compat/{index-3.js → index-vue3.js} +1 -1
- package/vue3/es/src/util/vue-compat/index-vue3.js.map +1 -0
- package/vue3/umd/index.js +1 -1
- package/vue3/umd/index.js.map +1 -1
- package/vue2/es/src/util/vue-compat/index-2.js.map +0 -1
- package/vue3/es/src/util/vue-compat/index-3.js.map +0 -1
package/vue3/es/src/components/QueryRuleCustomData.vue_vue&type=template&id=e4da0782&lang.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryRuleCustomData.vue_vue&type=template&id=e4da0782&lang.js","sources":["../../../../src/components/QueryRuleCustomData.vue?vue&type=template&id=e4da0782&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\n <slot :items=\"state.items\">\n <div\n v-for=\"(item, key) in state.items\"\n :key=\"key\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n >\n <pre>{{ item }}</pre>\n </slot>\n </div>\n </slot>\n </div>\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { connectQueryRules } from 'instantsearch.js/es/connectors';\n\nexport default {\n name: 'AisQueryRuleCustomData',\n mixins: [\n createSuitMixin({ name: 'QueryRuleCustomData' }),\n createWidgetMixin({\n
|
|
1
|
+
{"version":3,"file":"QueryRuleCustomData.vue_vue&type=template&id=e4da0782&lang.js","sources":["../../../../src/components/QueryRuleCustomData.vue?vue&type=template&id=e4da0782&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\n <slot :items=\"state.items\">\n <div\n v-for=\"(item, key) in state.items\"\n :key=\"key\"\n >\n <slot\n name=\"item\"\n :item=\"item\"\n >\n <pre>{{ item }}</pre>\n </slot>\n </div>\n </slot>\n </div>\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { connectQueryRules } from 'instantsearch.js/es/connectors';\n\nexport default {\n name: 'AisQueryRuleCustomData',\n mixins: [\n createSuitMixin({ name: 'QueryRuleCustomData' }),\n createWidgetMixin(\n {\n connector: connectQueryRules,\n },\n {\n $$widgetType: 'ais.queryRuleCustomData',\n }\n ),\n ],\n props: {\n transformItems: {\n type: Function,\n required: false,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n transformItems: this.transformItems,\n };\n },\n },\n};\n</script>\n"],"names":["_ctx","_createBlock","class","_renderSlot","items","item","key","_createVNode"],"mappings":"4LAEUA,aADRC,eAEGC,MAAOF,WAERG,sBAAOC,MAAOJ,QAAMI,gCAClBH,WACwBD,QAAMI,eAApBC,EAAMC,cADhBL,SAEGK,IAAKA,IAENH,mBAEGE,KAAMA,qBAEPE,eAAQF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createSuitMixin as t}from"../mixins/suit.js";import{createWidgetMixin as i}from"../mixins/widget.js";import{connectRange as n}from"instantsearch.js/es/connectors";import{createPanelConsumerMixin as e}from"../mixins/panel.js";var r=function(t){return t&&Boolean(t.range)&&t.range.min!==t.range.max};export default{name:"AisRangeInput",mixins:[t({name:"RangeInput"}),i({connector:n}),e({mapStateToCanRefine:r})],props:{attribute:{type:String,required:!0},min:{type:Number,required:!1,default:void 0},max:{type:Number,required:!1,default:void 0},precision:{type:Number,required:!1,default:0}},data:function(){return{minInput:void 0,maxInput:void 0}},updated:function(){this.minInput=void 0,this.maxInput=void 0},computed:{widgetParams:function(){return{attribute:this.attribute,min:this.min,max:this.max,precision:this.precision}},canRefine:function(){return r(this.state)},step:function(){return 1/Math.pow(10,this.precision)},values:function(){var t=this.state.start,i=t[0],n=t[1],e=this.state.range,r=e.min,a=e.max;return{min:i!==-1/0&&i!==r?i:void 0,max:n!==1/0&&n!==a?n:void 0}}},methods:{pick:function(t,i){return null!=t?t:i},refine:function(t){var i=t.min,n=t.max;this.state.refine([i,n])}}};
|
|
1
|
+
import{createSuitMixin as t}from"../mixins/suit.js";import{createWidgetMixin as i}from"../mixins/widget.js";import{connectRange as n}from"instantsearch.js/es/connectors/index.js";import{createPanelConsumerMixin as e}from"../mixins/panel.js";var r=function(t){return t&&Boolean(t.range)&&t.range.min!==t.range.max};export default{name:"AisRangeInput",mixins:[t({name:"RangeInput"}),i({connector:n},{$$widgetType:"ais.rangeInput"}),e({mapStateToCanRefine:r})],props:{attribute:{type:String,required:!0},min:{type:Number,required:!1,default:void 0},max:{type:Number,required:!1,default:void 0},precision:{type:Number,required:!1,default:0}},data:function(){return{minInput:void 0,maxInput:void 0}},updated:function(){this.minInput=void 0,this.maxInput=void 0},computed:{widgetParams:function(){return{attribute:this.attribute,min:this.min,max:this.max,precision:this.precision}},canRefine:function(){return r(this.state)},step:function(){return 1/Math.pow(10,this.precision)},values:function(){var t=this.state.start,i=t[0],n=t[1],e=this.state.range,r=e.min,a=e.max;return{min:i!==-1/0&&i!==r?i:void 0,max:n!==1/0&&n!==a?n:void 0}}},methods:{pick:function(t,i){return null!=t?t:i},refine:function(t){var i=t.min,n=t.max;this.state.refine([i,n])}}};
|
|
2
2
|
//# sourceMappingURL=RangeInput.vue_vue&type=script&lang.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RangeInput.vue_vue&type=script&lang.js","sources":["../../../../src/components/RangeInput.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"[suit(), !canRefine && suit('', 'noRefinement')]\"\n >\n <slot\n :current-refinement=\"values\"\n :refine=\"refine\"\n :can-refine=\"canRefine\"\n :range=\"state.range\"\n :send-event=\"state.sendEvent\"\n >\n <form\n :class=\"suit('form')\"\n @submit.prevent=\"refine({ min: pick(minInput, values.min), max: pick(maxInput, values.max) })\"\n >\n <label :class=\"suit('label')\">\n <slot name=\"minLabel\" />\n <input\n type=\"number\"\n :class=\"[suit('input'), suit('input', 'min')]\"\n :step=\"step\"\n :min=\"state.range.min\"\n :max=\"state.range.max\"\n :placeholder=\"state.range.min\"\n :value=\"values.min\"\n @change=\"minInput = $event.currentTarget.value\"\n >\n </label>\n <span :class=\"suit('separator')\">\n <slot name=\"separator\">to</slot>\n </span>\n <label :class=\"suit('label')\">\n <slot name=\"maxLabel\" />\n <input\n :class=\"[suit('input'), suit('input', 'max')]\"\n type=\"number\"\n :step=\"step\"\n :min=\"state.range.min\"\n :max=\"state.range.max\"\n :placeholder=\"state.range.max\"\n :value=\"values.max\"\n @change=\"maxInput = $event.currentTarget.value\"\n >\n </label>\n <button\n :class=\"suit('submit')\"\n type=\"submit\"\n >\n <slot name=\"submitLabel\">Go</slot>\n </button>\n </form>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRange } from 'instantsearch.js/es/connectors';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\n\nconst mapStateToCanRefine = state =>\n state && Boolean(state.range) && state.range.min !== state.range.max;\n\nexport default {\n name: 'AisRangeInput',\n mixins: [\n createSuitMixin({ name: 'RangeInput' }),\n createWidgetMixin({
|
|
1
|
+
{"version":3,"file":"RangeInput.vue_vue&type=script&lang.js","sources":["../../../../src/components/RangeInput.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"[suit(), !canRefine && suit('', 'noRefinement')]\"\n >\n <slot\n :current-refinement=\"values\"\n :refine=\"refine\"\n :can-refine=\"canRefine\"\n :range=\"state.range\"\n :send-event=\"state.sendEvent\"\n >\n <form\n :class=\"suit('form')\"\n @submit.prevent=\"refine({ min: pick(minInput, values.min), max: pick(maxInput, values.max) })\"\n >\n <label :class=\"suit('label')\">\n <slot name=\"minLabel\" />\n <input\n type=\"number\"\n :class=\"[suit('input'), suit('input', 'min')]\"\n :step=\"step\"\n :min=\"state.range.min\"\n :max=\"state.range.max\"\n :placeholder=\"state.range.min\"\n :value=\"values.min\"\n @change=\"minInput = $event.currentTarget.value\"\n >\n </label>\n <span :class=\"suit('separator')\">\n <slot name=\"separator\">to</slot>\n </span>\n <label :class=\"suit('label')\">\n <slot name=\"maxLabel\" />\n <input\n :class=\"[suit('input'), suit('input', 'max')]\"\n type=\"number\"\n :step=\"step\"\n :min=\"state.range.min\"\n :max=\"state.range.max\"\n :placeholder=\"state.range.max\"\n :value=\"values.max\"\n @change=\"maxInput = $event.currentTarget.value\"\n >\n </label>\n <button\n :class=\"suit('submit')\"\n type=\"submit\"\n >\n <slot name=\"submitLabel\">Go</slot>\n </button>\n </form>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRange } from 'instantsearch.js/es/connectors';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\n\nconst mapStateToCanRefine = state =>\n state && Boolean(state.range) && state.range.min !== state.range.max;\n\nexport default {\n name: 'AisRangeInput',\n mixins: [\n createSuitMixin({ name: 'RangeInput' }),\n createWidgetMixin(\n {\n connector: connectRange,\n },\n {\n $$widgetType: 'ais.rangeInput',\n }\n ),\n createPanelConsumerMixin({\n mapStateToCanRefine,\n }),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n min: {\n type: Number,\n required: false,\n default: undefined,\n },\n max: {\n type: Number,\n required: false,\n default: undefined,\n },\n precision: {\n type: Number,\n required: false,\n default: 0,\n },\n },\n data() {\n return {\n minInput: undefined,\n maxInput: undefined,\n };\n },\n updated() {\n this.minInput = undefined;\n this.maxInput = undefined;\n },\n computed: {\n widgetParams() {\n return {\n attribute: this.attribute,\n min: this.min,\n max: this.max,\n precision: this.precision,\n };\n },\n canRefine() {\n return mapStateToCanRefine(this.state);\n },\n step() {\n return 1 / Math.pow(10, this.precision);\n },\n values() {\n const [minValue, maxValue] = this.state.start;\n const { min: minRange, max: maxRange } = this.state.range;\n\n return {\n min:\n minValue !== -Infinity && minValue !== minRange\n ? minValue\n : undefined,\n max:\n maxValue !== Infinity && maxValue !== maxRange ? maxValue : undefined,\n };\n },\n },\n methods: {\n pick(first, second) {\n if (first !== null && first !== undefined) {\n return first;\n } else {\n return second;\n }\n },\n refine({ min, max }) {\n this.state.refine([min, max]);\n },\n },\n};\n</script>\n"],"names":["const","mapStateToCanRefine","state","Boolean","range","min","max","name","mixins","createSuitMixin","createWidgetMixin","connector","connectRange","$$widgetType","createPanelConsumerMixin","props","attribute","type","String","required","Number","default","undefined","precision","data","minInput","maxInput","updated","computed","widgetParams","this","canRefine","step","Math","pow","values","start","minValue","Infinity","minRange","maxValue","maxRange","methods","pick","first","second","refine","ref"],"mappings":"iPA8DAA,IAAMC,WAAsBC,UAC1BA,GAASC,QAAQD,EAAME,QAAUF,EAAME,MAAMC,MAAQH,EAAME,MAAME,mBAEpD,CACbC,KAAM,gBACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,eACxBG,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,mBAGlBC,EAAyB,qBACvBb,KAGJc,MAAO,CACLC,UAAW,CACTC,KAAMC,OACNC,UAAU,GAEZd,IAAK,CACHY,KAAMG,OACND,UAAU,EACVE,aAASC,GAEXhB,IAAK,CACHW,KAAMG,OACND,UAAU,EACVE,aAASC,GAEXC,UAAW,CACTN,KAAMG,OACND,UAAU,EACVE,QAAS,IAGbG,sBACS,CACLC,cAAUH,EACVI,cAAUJ,IAGdK,wBACOF,cAAWH,OACXI,cAAWJ,GAElBM,SAAU,CACRC,8BACS,CACLb,UAAWc,KAAKd,UAChBX,IAAKyB,KAAKzB,IACVC,IAAKwB,KAAKxB,IACViB,UAAWO,KAAKP,YAGpBQ,4BACS9B,EAAoB6B,KAAK5B,QAElC8B,uBACS,EAAIC,KAAKC,IAAI,GAAIJ,KAAKP,YAE/BY,wBAC+BL,KAAK5B,MAAMkC,sBACCN,KAAK5B,MAAME,4BAE7C,CACLC,IACEgC,KAAcC,EAAAA,GAAYD,IAAaE,EACnCF,OACAf,EACNhB,IACEkC,IAAaF,EAAAA,GAAYE,IAAaC,EAAWD,OAAWlB,KAIpEoB,QAAS,CACPC,cAAKC,EAAOC,UACND,MAAAA,EACKA,EAEAC,GAGXC,gBAAOC,4BACA7C,MAAM4C,OAAO,CAACzC,EAAKC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RangeInput.vue_vue&type=template&id=1e17783d&lang.js","sources":["../../../../src/components/RangeInput.vue?vue&type=template&id=1e17783d&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"[suit(), !canRefine && suit('', 'noRefinement')]\"\n >\n <slot\n :current-refinement=\"values\"\n :refine=\"refine\"\n :can-refine=\"canRefine\"\n :range=\"state.range\"\n :send-event=\"state.sendEvent\"\n >\n <form\n :class=\"suit('form')\"\n @submit.prevent=\"refine({ min: pick(minInput, values.min), max: pick(maxInput, values.max) })\"\n >\n <label :class=\"suit('label')\">\n <slot name=\"minLabel\" />\n <input\n type=\"number\"\n :class=\"[suit('input'), suit('input', 'min')]\"\n :step=\"step\"\n :min=\"state.range.min\"\n :max=\"state.range.max\"\n :placeholder=\"state.range.min\"\n :value=\"values.min\"\n @change=\"minInput = $event.currentTarget.value\"\n >\n </label>\n <span :class=\"suit('separator')\">\n <slot name=\"separator\">to</slot>\n </span>\n <label :class=\"suit('label')\">\n <slot name=\"maxLabel\" />\n <input\n :class=\"[suit('input'), suit('input', 'max')]\"\n type=\"number\"\n :step=\"step\"\n :min=\"state.range.min\"\n :max=\"state.range.max\"\n :placeholder=\"state.range.max\"\n :value=\"values.max\"\n @change=\"maxInput = $event.currentTarget.value\"\n >\n </label>\n <button\n :class=\"suit('submit')\"\n type=\"submit\"\n >\n <slot name=\"submitLabel\">Go</slot>\n </button>\n </form>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRange } from 'instantsearch.js/es/connectors';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\n\nconst mapStateToCanRefine = state =>\n state && Boolean(state.range) && state.range.min !== state.range.max;\n\nexport default {\n name: 'AisRangeInput',\n mixins: [\n createSuitMixin({ name: 'RangeInput' }),\n createWidgetMixin({
|
|
1
|
+
{"version":3,"file":"RangeInput.vue_vue&type=template&id=1e17783d&lang.js","sources":["../../../../src/components/RangeInput.vue?vue&type=template&id=1e17783d&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"[suit(), !canRefine && suit('', 'noRefinement')]\"\n >\n <slot\n :current-refinement=\"values\"\n :refine=\"refine\"\n :can-refine=\"canRefine\"\n :range=\"state.range\"\n :send-event=\"state.sendEvent\"\n >\n <form\n :class=\"suit('form')\"\n @submit.prevent=\"refine({ min: pick(minInput, values.min), max: pick(maxInput, values.max) })\"\n >\n <label :class=\"suit('label')\">\n <slot name=\"minLabel\" />\n <input\n type=\"number\"\n :class=\"[suit('input'), suit('input', 'min')]\"\n :step=\"step\"\n :min=\"state.range.min\"\n :max=\"state.range.max\"\n :placeholder=\"state.range.min\"\n :value=\"values.min\"\n @change=\"minInput = $event.currentTarget.value\"\n >\n </label>\n <span :class=\"suit('separator')\">\n <slot name=\"separator\">to</slot>\n </span>\n <label :class=\"suit('label')\">\n <slot name=\"maxLabel\" />\n <input\n :class=\"[suit('input'), suit('input', 'max')]\"\n type=\"number\"\n :step=\"step\"\n :min=\"state.range.min\"\n :max=\"state.range.max\"\n :placeholder=\"state.range.max\"\n :value=\"values.max\"\n @change=\"maxInput = $event.currentTarget.value\"\n >\n </label>\n <button\n :class=\"suit('submit')\"\n type=\"submit\"\n >\n <slot name=\"submitLabel\">Go</slot>\n </button>\n </form>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRange } from 'instantsearch.js/es/connectors';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createSuitMixin } from '../mixins/suit';\n\nconst mapStateToCanRefine = state =>\n state && Boolean(state.range) && state.range.min !== state.range.max;\n\nexport default {\n name: 'AisRangeInput',\n mixins: [\n createSuitMixin({ name: 'RangeInput' }),\n createWidgetMixin(\n {\n connector: connectRange,\n },\n {\n $$widgetType: 'ais.rangeInput',\n }\n ),\n createPanelConsumerMixin({\n mapStateToCanRefine,\n }),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n min: {\n type: Number,\n required: false,\n default: undefined,\n },\n max: {\n type: Number,\n required: false,\n default: undefined,\n },\n precision: {\n type: Number,\n required: false,\n default: 0,\n },\n },\n data() {\n return {\n minInput: undefined,\n maxInput: undefined,\n };\n },\n updated() {\n this.minInput = undefined;\n this.maxInput = undefined;\n },\n computed: {\n widgetParams() {\n return {\n attribute: this.attribute,\n min: this.min,\n max: this.max,\n precision: this.precision,\n };\n },\n canRefine() {\n return mapStateToCanRefine(this.state);\n },\n step() {\n return 1 / Math.pow(10, this.precision);\n },\n values() {\n const [minValue, maxValue] = this.state.start;\n const { min: minRange, max: maxRange } = this.state.range;\n\n return {\n min:\n minValue !== -Infinity && minValue !== minRange\n ? minValue\n : undefined,\n max:\n maxValue !== Infinity && maxValue !== maxRange ? maxValue : undefined,\n };\n },\n },\n methods: {\n pick(first, second) {\n if (first !== null && first !== undefined) {\n return first;\n } else {\n return second;\n }\n },\n refine({ min, max }) {\n this.state.refine([min, max]);\n },\n },\n};\n</script>\n"],"names":["_ctx","_createBlock","class","$options","_renderSlot","currentRefinement","refine","canRefine","range","sendEvent","_createVNode","onSubmit","$data","min","max","type","step","placeholder","value","onChange","$event","currentTarget"],"mappings":"0JA8BiC,UAmBE,qCA/CzBA,aADRC,eAEGC,OAAQF,UAASG,aAAaH,6BAE/BI,sBACGC,kBAAoBF,SACpBG,OAAQH,SACRI,UAAYJ,YACZK,MAAOR,QAAMQ,MACbC,UAAYT,QAAMS,6BAEnBC,UACGR,MAAOF,eACPW,0CAAgBR,cAAcA,OAAKS,WAAUT,SAAOU,SAAWV,OAAKS,WAAUT,SAAOW,wBAEtFJ,WAAQR,MAAOF,kBACbI,uBACAM,WACEK,KAAK,SACJb,OAAQF,gBAAeA,uBACvBgB,KAAMb,OACNU,IAAKb,QAAMQ,MAAMK,IACjBC,IAAKd,QAAMQ,MAAMM,IACjBG,YAAajB,QAAMQ,MAAMK,IACzBK,MAAOf,SAAOU,IACdM,wCAAQP,WAAWQ,EAAOC,cAAcH,iEAG7CR,UAAOR,MAAOF,sBACZI,qDAEFM,WAAQR,MAAOF,kBACbI,uBACAM,WACGR,OAAQF,gBAAeA,uBACxBe,KAAK,SACJC,KAAMb,OACNU,IAAKb,QAAMQ,MAAMK,IACjBC,IAAKd,QAAMQ,MAAMM,IACjBG,YAAajB,QAAMQ,MAAMM,IACzBI,MAAOf,SAAOW,IACdK,wCAAQP,WAAWQ,EAAOC,cAAcH,iEAG7CR,YACGR,MAAOF,iBACRe,KAAK,WAELX"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createSuitMixin as t}from"../mixins/suit.js";import{createWidgetMixin as i}from"../mixins/widget.js";import{connectRatingMenu as e}from"instantsearch.js/es/connectors";import{createPanelConsumerMixin as n}from"../mixins/panel.js";export default{name:"AisRatingMenu",mixins:[t({name:"RatingMenu"}),i({connector:e}),n({mapStateToCanRefine:function(t){return!1===t.hasNoResults}})],props:{attribute:{type:String,required:!0},max:{type:Number,default:void 0}},computed:{widgetParams:function(){return{attribute:this.attribute,max:this.max}}}};
|
|
1
|
+
import{createSuitMixin as t}from"../mixins/suit.js";import{createWidgetMixin as i}from"../mixins/widget.js";import{connectRatingMenu as e}from"instantsearch.js/es/connectors/index.js";import{createPanelConsumerMixin as n}from"../mixins/panel.js";export default{name:"AisRatingMenu",mixins:[t({name:"RatingMenu"}),i({connector:e},{$$widgetType:"ais.ratingMenu"}),n({mapStateToCanRefine:function(t){return!1===t.hasNoResults}})],props:{attribute:{type:String,required:!0},max:{type:Number,default:void 0}},computed:{widgetParams:function(){return{attribute:this.attribute,max:this.max}}}};
|
|
2
2
|
//# sourceMappingURL=RatingMenu.vue_vue&type=script&lang.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RatingMenu.vue_vue&type=script&lang.js","sources":["../../../../src/components/RatingMenu.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\n <slot\n :items=\"state.items\"\n :refine=\"state.refine\"\n :createURL=\"state.createURL\"\n :send-event=\"state.sendEvent\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"display: none;\"\n >\n <symbol\n id=\"ais-RatingMenu-starSymbol\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M12 .288l2.833 8.718h9.167l-7.417 5.389 2.833 8.718-7.416-5.388-7.417 5.388 2.833-8.718-7.416-5.389h9.167z\" />\n </symbol>\n <symbol\n id=\"ais-RatingMenu-starEmptySymbol\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M12 6.76l1.379 4.246h4.465l-3.612 2.625 1.379 4.246-3.611-2.625-3.612 2.625 1.379-4.246-3.612-2.625h4.465l1.38-4.246zm0-6.472l-2.833 8.718h-9.167l7.416 5.389-2.833 8.718 7.417-5.388 7.416 5.388-2.833-8.718 7.417-5.389h-9.167l-2.833-8.718z\" />\n </symbol>\n </svg>\n\n <ul :class=\"suit('list')\">\n <li\n v-for=\"(item, key) in state.items\"\n :key=\"key\"\n :class=\"[suit('item'), item.isRefined && suit('item', 'selected')]\"\n >\n <a\n :href=\"state.createURL(item.value)\"\n :aria-label=\"`${item.value} & Up`\"\n :class=\"suit('link')\"\n @click.prevent=\"state.refine(item.value)\"\n >\n <template v-for=\"(full, n) in item.stars\">\n <svg\n v-if=\"full\"\n aria-hidden=\"true\"\n width=\"24\"\n height=\"24\"\n :class=\"[suit('starIcon'), suit('starIcon--full')]\"\n :key=\"n + '-full'\"\n >\n <use xlink:href=\"#ais-RatingMenu-starSymbol\" />\n </svg>\n\n <svg\n v-else\n :class=\"[suit('starIcon'), suit('starIcon--empty')]\"\n aria-hidden=\"true\"\n width=\"24\"\n height=\"24\"\n :key=\"n + '-empty'\"\n >\n <use xlink:href=\"#ais-RatingMenu-starEmptySymbol\" />\n </svg>\n </template>\n\n <span\n :class=\"suit('label')\"\n aria-hidden=\"true\"\n >\n <slot name=\"andUp\">& Up</slot>\n </span>\n <span :class=\"suit('count')\">{{ item.count }}</span>\n </a>\n </li>\n </ul>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRatingMenu } from 'instantsearch.js/es/connectors';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'AisRatingMenu',\n mixins: [\n createSuitMixin({ name: 'RatingMenu' }),\n createWidgetMixin({
|
|
1
|
+
{"version":3,"file":"RatingMenu.vue_vue&type=script&lang.js","sources":["../../../../src/components/RatingMenu.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\n <slot\n :items=\"state.items\"\n :refine=\"state.refine\"\n :createURL=\"state.createURL\"\n :send-event=\"state.sendEvent\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"display: none;\"\n >\n <symbol\n id=\"ais-RatingMenu-starSymbol\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M12 .288l2.833 8.718h9.167l-7.417 5.389 2.833 8.718-7.416-5.388-7.417 5.388 2.833-8.718-7.416-5.389h9.167z\" />\n </symbol>\n <symbol\n id=\"ais-RatingMenu-starEmptySymbol\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M12 6.76l1.379 4.246h4.465l-3.612 2.625 1.379 4.246-3.611-2.625-3.612 2.625 1.379-4.246-3.612-2.625h4.465l1.38-4.246zm0-6.472l-2.833 8.718h-9.167l7.416 5.389-2.833 8.718 7.417-5.388 7.416 5.388-2.833-8.718 7.417-5.389h-9.167l-2.833-8.718z\" />\n </symbol>\n </svg>\n\n <ul :class=\"suit('list')\">\n <li\n v-for=\"(item, key) in state.items\"\n :key=\"key\"\n :class=\"[suit('item'), item.isRefined && suit('item', 'selected')]\"\n >\n <a\n :href=\"state.createURL(item.value)\"\n :aria-label=\"`${item.value} & Up`\"\n :class=\"suit('link')\"\n @click.prevent=\"state.refine(item.value)\"\n >\n <template v-for=\"(full, n) in item.stars\">\n <svg\n v-if=\"full\"\n aria-hidden=\"true\"\n width=\"24\"\n height=\"24\"\n :class=\"[suit('starIcon'), suit('starIcon--full')]\"\n :key=\"n + '-full'\"\n >\n <use xlink:href=\"#ais-RatingMenu-starSymbol\" />\n </svg>\n\n <svg\n v-else\n :class=\"[suit('starIcon'), suit('starIcon--empty')]\"\n aria-hidden=\"true\"\n width=\"24\"\n height=\"24\"\n :key=\"n + '-empty'\"\n >\n <use xlink:href=\"#ais-RatingMenu-starEmptySymbol\" />\n </svg>\n </template>\n\n <span\n :class=\"suit('label')\"\n aria-hidden=\"true\"\n >\n <slot name=\"andUp\">& Up</slot>\n </span>\n <span :class=\"suit('count')\">{{ item.count }}</span>\n </a>\n </li>\n </ul>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRatingMenu } from 'instantsearch.js/es/connectors';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'AisRatingMenu',\n mixins: [\n createSuitMixin({ name: 'RatingMenu' }),\n createWidgetMixin(\n {\n connector: connectRatingMenu,\n },\n {\n $$widgetType: 'ais.ratingMenu',\n }\n ),\n createPanelConsumerMixin({\n mapStateToCanRefine: state => state.hasNoResults === false,\n }),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n max: {\n type: Number,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n attribute: this.attribute,\n max: this.max,\n };\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","createWidgetMixin","connector","connectRatingMenu","$$widgetType","createPanelConsumerMixin","mapStateToCanRefine","state","hasNoResults","props","attribute","type","String","required","max","Number","default","undefined","computed","widgetParams","this"],"mappings":"oQAqFe,CACbA,KAAM,gBACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,eACxBG,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,mBAGlBC,EAAyB,CACvBC,6BAAqBC,UAAgC,IAAvBA,EAAMC,iBAGxCC,MAAO,CACLC,UAAW,CACTC,KAAMC,OACNC,UAAU,GAEZC,IAAK,CACHH,KAAMI,OACNC,aAASC,IAGbC,SAAU,CACRC,8BACS,CACLT,UAAWU,KAAKV,UAChBI,IAAKM,KAAKN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RatingMenu.vue_vue&type=template&id=9254de68&lang.js","sources":["../../../../src/components/RatingMenu.vue?vue&type=template&id=9254de68&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\n <slot\n :items=\"state.items\"\n :refine=\"state.refine\"\n :createURL=\"state.createURL\"\n :send-event=\"state.sendEvent\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"display: none;\"\n >\n <symbol\n id=\"ais-RatingMenu-starSymbol\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M12 .288l2.833 8.718h9.167l-7.417 5.389 2.833 8.718-7.416-5.388-7.417 5.388 2.833-8.718-7.416-5.389h9.167z\" />\n </symbol>\n <symbol\n id=\"ais-RatingMenu-starEmptySymbol\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M12 6.76l1.379 4.246h4.465l-3.612 2.625 1.379 4.246-3.611-2.625-3.612 2.625 1.379-4.246-3.612-2.625h4.465l1.38-4.246zm0-6.472l-2.833 8.718h-9.167l7.416 5.389-2.833 8.718 7.417-5.388 7.416 5.388-2.833-8.718 7.417-5.389h-9.167l-2.833-8.718z\" />\n </symbol>\n </svg>\n\n <ul :class=\"suit('list')\">\n <li\n v-for=\"(item, key) in state.items\"\n :key=\"key\"\n :class=\"[suit('item'), item.isRefined && suit('item', 'selected')]\"\n >\n <a\n :href=\"state.createURL(item.value)\"\n :aria-label=\"`${item.value} & Up`\"\n :class=\"suit('link')\"\n @click.prevent=\"state.refine(item.value)\"\n >\n <template v-for=\"(full, n) in item.stars\">\n <svg\n v-if=\"full\"\n aria-hidden=\"true\"\n width=\"24\"\n height=\"24\"\n :class=\"[suit('starIcon'), suit('starIcon--full')]\"\n :key=\"n + '-full'\"\n >\n <use xlink:href=\"#ais-RatingMenu-starSymbol\" />\n </svg>\n\n <svg\n v-else\n :class=\"[suit('starIcon'), suit('starIcon--empty')]\"\n aria-hidden=\"true\"\n width=\"24\"\n height=\"24\"\n :key=\"n + '-empty'\"\n >\n <use xlink:href=\"#ais-RatingMenu-starEmptySymbol\" />\n </svg>\n </template>\n\n <span\n :class=\"suit('label')\"\n aria-hidden=\"true\"\n >\n <slot name=\"andUp\">& Up</slot>\n </span>\n <span :class=\"suit('count')\">{{ item.count }}</span>\n </a>\n </li>\n </ul>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRatingMenu } from 'instantsearch.js/es/connectors';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'AisRatingMenu',\n mixins: [\n createSuitMixin({ name: 'RatingMenu' }),\n createWidgetMixin({
|
|
1
|
+
{"version":3,"file":"RatingMenu.vue_vue&type=template&id=9254de68&lang.js","sources":["../../../../src/components/RatingMenu.vue?vue&type=template&id=9254de68&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\n <slot\n :items=\"state.items\"\n :refine=\"state.refine\"\n :createURL=\"state.createURL\"\n :send-event=\"state.sendEvent\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n style=\"display: none;\"\n >\n <symbol\n id=\"ais-RatingMenu-starSymbol\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M12 .288l2.833 8.718h9.167l-7.417 5.389 2.833 8.718-7.416-5.388-7.417 5.388 2.833-8.718-7.416-5.389h9.167z\" />\n </symbol>\n <symbol\n id=\"ais-RatingMenu-starEmptySymbol\"\n viewBox=\"0 0 24 24\"\n >\n <path d=\"M12 6.76l1.379 4.246h4.465l-3.612 2.625 1.379 4.246-3.611-2.625-3.612 2.625 1.379-4.246-3.612-2.625h4.465l1.38-4.246zm0-6.472l-2.833 8.718h-9.167l7.416 5.389-2.833 8.718 7.417-5.388 7.416 5.388-2.833-8.718 7.417-5.389h-9.167l-2.833-8.718z\" />\n </symbol>\n </svg>\n\n <ul :class=\"suit('list')\">\n <li\n v-for=\"(item, key) in state.items\"\n :key=\"key\"\n :class=\"[suit('item'), item.isRefined && suit('item', 'selected')]\"\n >\n <a\n :href=\"state.createURL(item.value)\"\n :aria-label=\"`${item.value} & Up`\"\n :class=\"suit('link')\"\n @click.prevent=\"state.refine(item.value)\"\n >\n <template v-for=\"(full, n) in item.stars\">\n <svg\n v-if=\"full\"\n aria-hidden=\"true\"\n width=\"24\"\n height=\"24\"\n :class=\"[suit('starIcon'), suit('starIcon--full')]\"\n :key=\"n + '-full'\"\n >\n <use xlink:href=\"#ais-RatingMenu-starSymbol\" />\n </svg>\n\n <svg\n v-else\n :class=\"[suit('starIcon'), suit('starIcon--empty')]\"\n aria-hidden=\"true\"\n width=\"24\"\n height=\"24\"\n :key=\"n + '-empty'\"\n >\n <use xlink:href=\"#ais-RatingMenu-starEmptySymbol\" />\n </svg>\n </template>\n\n <span\n :class=\"suit('label')\"\n aria-hidden=\"true\"\n >\n <slot name=\"andUp\">& Up</slot>\n </span>\n <span :class=\"suit('count')\">{{ item.count }}</span>\n </a>\n </li>\n </ul>\n </slot>\n </div>\n</template>\n\n<script>\nimport { connectRatingMenu } from 'instantsearch.js/es/connectors';\nimport { createPanelConsumerMixin } from '../mixins/panel';\nimport { createWidgetMixin } from '../mixins/widget';\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'AisRatingMenu',\n mixins: [\n createSuitMixin({ name: 'RatingMenu' }),\n createWidgetMixin(\n {\n connector: connectRatingMenu,\n },\n {\n $$widgetType: 'ais.ratingMenu',\n }\n ),\n createPanelConsumerMixin({\n mapStateToCanRefine: state => state.hasNoResults === false,\n }),\n ],\n props: {\n attribute: {\n type: String,\n required: true,\n },\n max: {\n type: Number,\n default: undefined,\n },\n },\n computed: {\n widgetParams() {\n return {\n attribute: this.attribute,\n max: this.max,\n };\n },\n },\n};\n</script>\n"],"names":["_createVNode","xmlns","style","id","viewBox","d","_ctx","_createBlock","class","_renderSlot","items","refine","createURL","sendEvent","_hoisted_1","item","key","isRefined","href","value","onClick","stars","full","n","width","height","_hoisted_2","_hoisted_3","count"],"mappings":"2MAWMA,SACEC,MAAM,6BACNC,MAAA,mBAEAF,YACEG,GAAG,4BACHC,QAAQ,cAERJ,UAAMK,EAAE,iHAEVL,YACEG,GAAG,iCACHC,QAAQ,cAERJ,UAAMK,EAAE,4PAyBFL,sBAAgB,yCAWhBA,sBAAgB,gDAQC,uCAnEvBM,aADRC,eAEGC,MAAOF,WAERG,sBACGC,MAAOJ,QAAMI,MACbC,OAAQL,QAAMK,OACdC,UAAWN,QAAMM,UACjBC,UAAYP,QAAMO,6BAEnBC,EAkBAd,QAAKQ,MAAOF,wBACVC,WACwBD,QAAMI,eAApBK,EAAMC,cADhBT,QAEGS,IAAKA,EACLR,OAAQF,eAAcS,EAAKE,WAAaX,6BAEzCN,OACGkB,KAAMZ,QAAMM,UAAUG,EAAKI,oBACZJ,EAAKI,cACpBX,MAAOF,eACPc,6BAAed,QAAMK,OAAOI,EAAKI,8BAElCZ,WAA8BQ,EAAKM,eAAjBC,EAAMC,wBAEdD,OADRf,uBAEc,OACZiB,MAAM,KACNC,OAAO,KACNjB,OAAQF,mBAAkBA,0BAC1BU,IAAKO,YAENG,YAGFnB,SAEGC,OAAQF,mBAAkBA,yCACf,OACZkB,MAAM,KACNC,OAAO,KACNT,IAAKO,aAENI,oBAIJ3B,UACGQ,MAAOF,8BACI,SAEZG,iDAEFT,UAAOQ,MAAOF,mBAAkBS,EAAKa"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createSuitMixin as e}from"../mixins/suit.js";import{createWidgetMixin as t}from"../mixins/widget.js";import{connectRefinementList as r}from"instantsearch.js/es/connectors";import{createPanelConsumerMixin as i}from"../mixins/panel.js";import o from"./Highlight.vue.js";import s from"./SearchInput.vue.js";var a=function(){};export default{name:"AisRefinementList",components:{SearchInput:s,AisHighlight:o},mixins:[e({name:"RefinementList"}),t({connector:r}),i({mapStateToCanRefine:function(e){return Boolean(e.canRefine)}})],props:{attribute:{type:String,required:!0},searchable:{type:Boolean,default:void 0},searchablePlaceholder:{type:String,required:!1,default:"Search here…"},operator:{default:"or",validator:function(e){return"and"===e||"or"===e},required:!1},limit:{type:Number,required:!1,default:void 0},showMoreLimit:{type:Number,required:!1,default:void 0},showMore:{type:Boolean,required:!1,default:!1},sortBy:{type:[Array,Function],required:!1,default:void 0},transformItems:{type:Function,required:!1,default:void 0}},data:function(){return{searchForFacetValuesQuery:""}},computed:{searchForFacetValues:{get:function(){return this.searchForFacetValuesQuery},set:function(e){this.state.searchForItems(e),this.searchForFacetValuesQuery=e}},toggleShowMore:function(){return this.state.toggleShowMore||a},items:function(){return this.state.items.map(function(e){return Object.assign({},e,{_highlightResult:{item:{value:e.highlighted}}})})},widgetParams:function(){return{attribute:this.attribute,operator:this.operator,limit:this.limit,showMore:this.showMore,showMoreLimit:this.showMoreLimit,sortBy:this.sortBy,escapeFacetValues:!0,transformItems:this.transformItems}}},methods:{refine:function(e){this.state.refine(e),this.searchForFacetValuesQuery=""}}};
|
|
1
|
+
import{createSuitMixin as e}from"../mixins/suit.js";import{createWidgetMixin as t}from"../mixins/widget.js";import{connectRefinementList as r}from"instantsearch.js/es/connectors/index.js";import{createPanelConsumerMixin as i}from"../mixins/panel.js";import o from"./Highlight.vue.js";import s from"./SearchInput.vue.js";var a=function(){};export default{name:"AisRefinementList",components:{SearchInput:s,AisHighlight:o},mixins:[e({name:"RefinementList"}),t({connector:r},{$$widgetType:"ais.refinementList"}),i({mapStateToCanRefine:function(e){return Boolean(e.canRefine)}})],props:{attribute:{type:String,required:!0},searchable:{type:Boolean,default:void 0},searchablePlaceholder:{type:String,required:!1,default:"Search here…"},operator:{default:"or",validator:function(e){return"and"===e||"or"===e},required:!1},limit:{type:Number,required:!1,default:void 0},showMoreLimit:{type:Number,required:!1,default:void 0},showMore:{type:Boolean,required:!1,default:!1},sortBy:{type:[Array,Function],required:!1,default:void 0},transformItems:{type:Function,required:!1,default:void 0}},data:function(){return{searchForFacetValuesQuery:""}},computed:{searchForFacetValues:{get:function(){return this.searchForFacetValuesQuery},set:function(e){this.state.searchForItems(e),this.searchForFacetValuesQuery=e}},toggleShowMore:function(){return this.state.toggleShowMore||a},items:function(){return this.state.items.map(function(e){return Object.assign({},e,{_highlightResult:{item:{value:e.highlighted}}})})},widgetParams:function(){return{attribute:this.attribute,operator:this.operator,limit:this.limit,showMore:this.showMore,showMoreLimit:this.showMoreLimit,sortBy:this.sortBy,escapeFacetValues:!0,transformItems:this.transformItems}}},methods:{refine:function(e){this.state.refine(e),this.searchForFacetValuesQuery=""}}};
|
|
2
2
|
//# sourceMappingURL=RefinementList.vue_vue&type=script&lang.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefinementList.vue_vue&type=script&lang.js","sources":["../../../../src/components/RefinementList.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n suit(),\n !state.canRefine && suit('','noRefinement')\n ]\"\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\n :class=\"suit('searchBox')\"\n v-if=\"searchable\"\n >\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=\"[\n 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\n v-if=\"searchable\"\n :class=\"suit('labelText')\"\n >\n <ais-highlight\n attribute=\"item\"\n :hit=\"item\"\n />\n </span>\n <span\n v-else\n :class=\"suit('labelText')\"\n >{{ 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\n name=\"showMoreLabel\"\n :is-showing-more=\"state.isShowingMore\"\n >Show {{ state.isShowingMore ? 'less' : 'more' }}</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({
|
|
1
|
+
{"version":3,"file":"RefinementList.vue_vue&type=script&lang.js","sources":["../../../../src/components/RefinementList.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n suit(),\n !state.canRefine && suit('','noRefinement')\n ]\"\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\n :class=\"suit('searchBox')\"\n v-if=\"searchable\"\n >\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=\"[\n 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\n v-if=\"searchable\"\n :class=\"suit('labelText')\"\n >\n <ais-highlight\n attribute=\"item\"\n :hit=\"item\"\n />\n </span>\n <span\n v-else\n :class=\"suit('labelText')\"\n >{{ 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\n name=\"showMoreLabel\"\n :is-showing-more=\"state.isShowingMore\"\n >Show {{ state.isShowingMore ? 'less' : 'more' }}</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 mapStateToCanRefine: state => Boolean(state.canRefine),\n }),\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","mapStateToCanRefine","state","Boolean","canRefine","props","attribute","type","String","required","searchable","default","undefined","searchablePlaceholder","operator","validator","value","limit","Number","showMoreLimit","showMore","sortBy","Array","Function","transformItems","data","searchForFacetValuesQuery","computed","searchForFacetValues","get","this","set","searchForItems","toggleShowMore","items","map","item","Object","assign","_highlightResult","highlighted","widgetParams","escapeFacetValues","methods","refine"],"mappings":"gUAyGAA,IAAMC,6BAES,CACbC,KAAM,oBACNC,WAAY,aAAEC,eAAaC,GAC3BC,OAAQ,CACNC,EAAgB,CAAEL,KAAM,mBACxBM,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,uBAGlBC,EAAyB,CACvBC,6BAAqBC,UAASC,QAAQD,EAAME,eAGhDC,MAAO,CACLC,UAAW,CACTC,KAAMC,OACNC,UAAU,GAEZC,WAAY,CACVH,KAAMJ,QACNQ,aAASC,GAEXC,sBAAuB,CACrBN,KAAMC,OACNC,UAAU,EACVE,QAAS,gBAEXG,SAAU,CACRH,QAAS,KACTI,mBAAUC,SACS,QAAVA,GAA6B,OAAVA,GAE5BP,UAAU,GAEZQ,MAAO,CACLV,KAAMW,OACNT,UAAU,EACVE,aAASC,GAEXO,cAAe,CACbZ,KAAMW,OACNT,UAAU,EACVE,aAASC,GAEXQ,SAAU,CACRb,KAAMJ,QACNM,UAAU,EACVE,SAAS,GAEXU,OAAQ,CACNd,KAAM,CAACe,MAAOC,UACdd,UAAU,EACVE,aAASC,GAEXY,eAAgB,CACdjB,KAAMgB,SACNd,UAAU,EACVE,aAASC,IAGba,sBACS,CACLC,0BAA2B,KAG/BC,SAAU,CACRC,qBAAsB,CACpBC,sBACSC,KAAKJ,2BAEdK,aAAIf,QACGd,MAAM8B,eAAehB,QACrBU,0BAA4BV,IAGrCiB,iCACSH,KAAK5B,MAAM+B,gBAAkB5C,GAEtC6C,wBACSJ,KAAK5B,MAAMgC,MAAMC,aAAIC,UAC1BC,OAAOC,OAAO,GAAIF,EAAM,CACtBG,iBAAkB,CAChBH,KAAM,CACJpB,MAAOoB,EAAKI,mBAMtBC,8BACS,CACLnC,UAAWwB,KAAKxB,UAChBQ,SAAUgB,KAAKhB,SACfG,MAAOa,KAAKb,MACZG,SAAUU,KAAKV,SACfD,cAAeW,KAAKX,cACpBE,OAAQS,KAAKT,OACbqB,mBAAmB,EACnBlB,eAAgBM,KAAKN,kBAI3BmB,QAAS,CACPC,gBAAO5B,QACAd,MAAM0C,OAAO5B,QACbU,0BAA4B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefinementList.vue_vue&type=template&id=28927239&lang.js","sources":["../../../../src/components/RefinementList.vue?vue&type=template&id=28927239&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"[\n suit(),\n !state.canRefine && suit('','noRefinement')\n ]\"\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\n :class=\"suit('searchBox')\"\n v-if=\"searchable\"\n >\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=\"[\n 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\n v-if=\"searchable\"\n :class=\"suit('labelText')\"\n >\n <ais-highlight\n attribute=\"item\"\n :hit=\"item\"\n />\n </span>\n <span\n v-else\n :class=\"suit('labelText')\"\n >{{ 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\n name=\"showMoreLabel\"\n :is-showing-more=\"state.isShowingMore\"\n >Show {{ state.isShowingMore ? 'less' : 'more' }}</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({
|
|
1
|
+
{"version":3,"file":"RefinementList.vue_vue&type=template&id=28927239&lang.js","sources":["../../../../src/components/RefinementList.vue?vue&type=template&id=28927239&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"[\n suit(),\n !state.canRefine && suit('','noRefinement')\n ]\"\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\n :class=\"suit('searchBox')\"\n v-if=\"searchable\"\n >\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=\"[\n 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\n v-if=\"searchable\"\n :class=\"suit('labelText')\"\n >\n <ais-highlight\n attribute=\"item\"\n :hit=\"item\"\n />\n </span>\n <span\n v-else\n :class=\"suit('labelText')\"\n >{{ 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\n name=\"showMoreLabel\"\n :is-showing-more=\"state.isShowingMore\"\n >Show {{ state.isShowingMore ? 'less' : 'more' }}</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 mapStateToCanRefine: state => Boolean(state.canRefine),\n }),\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","_createBlock","class","_renderSlot","items","$options","refine","searchForItems","searchForItemsQuery","$data","toggleShowMore","canToggleShowMore","isShowingMore","createURL","isFromSearch","canRefine","sendEvent","$props","_createVNode","placeholder","length","query","item","key","value","type","checked","isRefined","onChange","attribute","hit","label","count","onClick","disabled"],"mappings":"oRAMUA,aALRC,eACGC,iEAMDC,sBACGC,MAAOC,QACPC,OAAQD,SACRE,eAAkBP,QAAMO,eACxBC,oBAAwBC,4BACxBC,eAAkBL,iBAClBM,kBAAsBX,QAAMW,kBAC5BC,cAAiBZ,QAAMY,cACvBC,UAAWb,QAAMa,UACjBC,aAAgBd,QAAMc,aACtBC,UAAYf,QAAMe,UAClBC,UAAYhB,QAAMgB,mCAIXC,kBAFRhB,eACGC,MAAOF,sBAGRkB,gBACWb,4EAAAA,2BACRc,YAAaF,sCACAjB,mFAMVA,QAAMc,kBAAgBT,QAAMe,OAHpCjB,8BAEGkB,MAAOhB,0CAGRa,SAAMhB,MAAOF,qBAAmB,iCAElCkB,QAAKhB,MAAOF,wBACVC,WAGiBI,iBAARiB,cAHTrB,QACGC,8DAGAqB,IAAKD,EAAKE,QAEXrB,mBAEGmB,KAAMA,EACNhB,OAAQD,SACRQ,UAAWb,QAAMa,6BAElBK,WAAQhB,MAAOF,kBACbkB,WACGhB,MAAOF,mBACRyB,KAAK,WACJD,MAAOF,EAAKE,MACZE,QAASJ,EAAKK,UACdC,4BAAQvB,SAAOiB,EAAKE,iDAGfP,kBADRhB,gBAEGC,MAAOF,sBAERkB,KACEW,UAAU,OACTC,IAAKR,6BAGVrB,gBAEGC,MAAOF,uBACNsB,EAAKS,WACTb,UAAOhB,MAAOF,mBAAkBsB,EAAKU,iCAarCf,gBARRhB,kBACGC,gGAMA+B,6FAAO5B,gDAEP6B,UAAWlC,QAAMW,oBAElBR,4BAEGS,cAAiBZ,QAAMY,mCACzB,UAAQZ,QAAMY"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createSuitMixin as
|
|
1
|
+
import{createSuitMixin as e}from"../mixins/suit.js";import{createWidgetMixin as t}from"../mixins/widget.js";import{connectRelevantSort as i}from"instantsearch.js/es/connectors/index.js";export default{name:"AisRelevantSort",mixins:[e({name:"RelevantSort"}),t({connector:i},{$$widgetType:"ais.relevantSort"})],methods:{refine:function(){this.state.isRelevantSorted?this.state.refine(0):this.state.refine(void 0)}}};
|
|
2
2
|
//# sourceMappingURL=RelevantSort.vue_vue&type=script&lang.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RelevantSort.vue_vue&type=script&lang.js","sources":["../../../../src/components/RelevantSort.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state && state.isVirtualReplica\"\n :class=\"suit()\"\n >\n <slot\n :is-relevant-sorted=\"state.isRelevantSorted\"\n :refine=\"state.refine\"\n >\n <div :class=\"suit('text')\">\n <slot\n name=\"text\"\n :is-relevant-sorted=\"state.isRelevantSorted\"\n />\n </div>\n <button\n type=\"button\"\n :class=\"suit('button')\"\n @click=\"refine()\"\n >\n <slot\n name=\"button\"\n :is-relevant-sorted=\"state.isRelevantSorted\"\n >{{ state.isRelevantSorted ? 'See all results' : 'See relevant results' }}</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({
|
|
1
|
+
{"version":3,"file":"RelevantSort.vue_vue&type=script&lang.js","sources":["../../../../src/components/RelevantSort.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state && state.isVirtualReplica\"\n :class=\"suit()\"\n >\n <slot\n :is-relevant-sorted=\"state.isRelevantSorted\"\n :refine=\"state.refine\"\n >\n <div :class=\"suit('text')\">\n <slot\n name=\"text\"\n :is-relevant-sorted=\"state.isRelevantSorted\"\n />\n </div>\n <button\n type=\"button\"\n :class=\"suit('button')\"\n @click=\"refine()\"\n >\n <slot\n name=\"button\"\n :is-relevant-sorted=\"state.isRelevantSorted\"\n >{{ state.isRelevantSorted ? 'See all results' : 'See relevant results' }}</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":"wMAkCe,CACbA,KAAM,kBACNC,OAAQ,CACNC,EAAgB,CAAEF,KAAM,iBACxBG,EACE,CACEC,UAAWC,GAEb,CACEC,aAAc,sBAIpBC,QAAS,CACPC,kBACMC,KAAKC,MAAMC,sBACRD,MAAMF,OAAO,QAEbE,MAAMF,YAAOI"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RelevantSort.vue_vue&type=template&id=257b248b&lang.js","sources":["../../../../src/components/RelevantSort.vue?vue&type=template&id=257b248b&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state && state.isVirtualReplica\"\n :class=\"suit()\"\n >\n <slot\n :is-relevant-sorted=\"state.isRelevantSorted\"\n :refine=\"state.refine\"\n >\n <div :class=\"suit('text')\">\n <slot\n name=\"text\"\n :is-relevant-sorted=\"state.isRelevantSorted\"\n />\n </div>\n <button\n type=\"button\"\n :class=\"suit('button')\"\n @click=\"refine()\"\n >\n <slot\n name=\"button\"\n :is-relevant-sorted=\"state.isRelevantSorted\"\n >{{ state.isRelevantSorted ? 'See all results' : 'See relevant results' }}</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({
|
|
1
|
+
{"version":3,"file":"RelevantSort.vue_vue&type=template&id=257b248b&lang.js","sources":["../../../../src/components/RelevantSort.vue?vue&type=template&id=257b248b&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state && state.isVirtualReplica\"\n :class=\"suit()\"\n >\n <slot\n :is-relevant-sorted=\"state.isRelevantSorted\"\n :refine=\"state.refine\"\n >\n <div :class=\"suit('text')\">\n <slot\n name=\"text\"\n :is-relevant-sorted=\"state.isRelevantSorted\"\n />\n </div>\n <button\n type=\"button\"\n :class=\"suit('button')\"\n @click=\"refine()\"\n >\n <slot\n name=\"button\"\n :is-relevant-sorted=\"state.isRelevantSorted\"\n >{{ state.isRelevantSorted ? 'See all results' : 'See relevant results' }}</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":["_ctx","isVirtualReplica","_createBlock","class","_renderSlot","isRelevantSorted","refine","_createVNode","type","onClick","$options"],"mappings":"mLAEUA,SAASA,QAAMC,sBADvBC,eAEGC,MAAOH,WAERI,sBACGC,iBAAoBL,QAAMK,iBAC1BC,OAAQN,QAAMM,0BAEfC,SAAMJ,MAAOH,iBACXI,mBAEGC,iBAAoBL,QAAMK,uBAG/BE,YACEC,KAAK,SACJL,MAAOH,iBACPS,uCAAOC,eAERN,qBAEGC,iBAAoBL,QAAMK,wCACzBL,QAAMK"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createSuitMixin as e}from"../mixins/suit.js";import
|
|
1
|
+
import{createSuitMixin as e}from"../mixins/suit.js";import{isVue2 as t,isVue3 as i}from"../util/vue-compat/index-vue3.js";import{createWidgetMixin as o}from"../mixins/widget.js";import{connectSearchBox as s}from"instantsearch.js/es/connectors/index.js";import l from"./SearchInput.vue.js";export default{name:"AisSearchBox",mixins:[o({connector:s},{$$widgetType:"ais.searchBox"}),e({name:"SearchBox"})],components:{SearchInput:l},props:{placeholder:{type:String,default:"Search here…"},autofocus:{type:Boolean,default:!1},showLoadingIndicator:{type:Boolean,default:!1},submitTitle:{type:String,default:"Search"},resetTitle:{type:String,default:"Clear"},value:{type:String,default:void 0},modelValue:{type:String,default:void 0}},data:function(){return{localValue:"",isVue2:t,isVue3:i}},computed:{isControlled:function(){return void 0!==this.value||void 0!==this.modelValue},model:function(){return this.value||this.modelValue},currentRefinement:{get:function(){this.isControlled&&this.model!==this.localValue&&(this.localValue=this.model,this.$emit("input",this.model),this.$emit("update:modelValue",this.model),this.state.refine(this.model));var e=this.$refs.searchInput;return e&&e.isFocused()?this.localValue:this.model||this.state.query||""},set:function(e){this.localValue=e,this.state.refine(e),this.isControlled&&(this.$emit("input",e),this.$emit("update:modelValue",e))}}}};
|
|
2
2
|
//# sourceMappingURL=SearchBox.vue_vue&type=script&lang.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchBox.vue_vue&type=script&lang.js","sources":["../../../../src/components/SearchBox.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\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 >\n <template\n v-slot:loading-indicator\n v-if=\"isVue3\"\n >\n <slot\n name=\"loading-indicator\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"loading-indicator\"\n slot=\"loading-indicator\"\n />\n\n <template\n v-slot:submit-icon\n v-if=\"isVue3\"\n >\n <slot\n name=\"submit-icon\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"submit-icon\"\n slot=\"submit-icon\"\n />\n\n <template\n v-slot:reset-icon\n v-if=\"isVue3\"\n >\n <slot\n name=\"reset-icon\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"reset-icon\"\n slot=\"reset-icon\"\n />\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({
|
|
1
|
+
{"version":3,"file":"SearchBox.vue_vue&type=script&lang.js","sources":["../../../../src/components/SearchBox.vue"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\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\n v-slot:loading-indicator\n v-if=\"isVue3\"\n >\n <slot\n name=\"loading-indicator\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"loading-indicator\"\n slot=\"loading-indicator\"\n />\n\n <template\n v-slot:submit-icon\n v-if=\"isVue3\"\n >\n <slot\n name=\"submit-icon\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"submit-icon\"\n slot=\"submit-icon\"\n />\n\n <template\n v-slot:reset-icon\n v-if=\"isVue3\"\n >\n <slot\n name=\"reset-icon\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"reset-icon\"\n slot=\"reset-icon\"\n />\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 },\n data() {\n return {\n localValue: '',\n isVue2,\n isVue3,\n };\n },\n computed: {\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","data","localValue","isVue2","isVue3","computed","isControlled","this","model","currentRefinement","get","$emit","state","refine","$refs","searchInput","isFocused","query","set","val"],"mappings":"+SA6Ee,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,IAGbE,sBACS,CACLC,WAAY,UACZC,SACAC,IAGJC,SAAU,CACRC,oCAE0B,IAAfC,KAAKT,YACe,IAApBS,KAAKP,YAGhBQ,wBACSD,KAAKT,OAASS,KAAKP,YAE5BS,kBAAmB,CACjBC,eAGMH,KAAKD,cAAgBC,KAAKC,QAAUD,KAAKL,kBAEtCA,WAAaK,KAAKC,WAClBG,MAAM,QAASJ,KAAKC,YACpBG,MAAM,oBAAqBJ,KAAKC,YAChCI,MAAMC,OAAON,KAAKC,cAKDD,KAAKO,yBACzBC,GAAeA,EAAYC,YACtBT,KAAKL,WAGPK,KAAKC,OAASD,KAAKK,MAAMK,OAAS,IAE3CC,aAAIC,QACGjB,WAAaiB,OACbP,MAAMC,OAAOM,GACdZ,KAAKD,oBACFK,MAAM,QAASQ,QACfR,MAAM,oBAAqBQ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{resolveComponent as e,openBlock as t,createBlock as i,renderSlot as n,createVNode as o,createSlots as s,withCtx as r,createCommentVNode as u}from"vue";function a(a,l,c,d,f,m){var h=e("search-input");return a.state?(t(),i("div",{key:0,class:a.suit()},[n(a.$slots,"default",{currentRefinement:m.currentRefinement,isSearchStalled:a.state.isSearchStalled,refine:a.state.refine},function(){return[o(h,{onFocus:l[1]||(l[1]=function(e){return a.$emit("focus",e)}),onBlur:l[2]||(l[2]=function(e){return a.$emit("blur",e)}),onReset:l[3]||(l[3]=function(e){return a.$emit("reset")}),placeholder:c.placeholder,autofocus:c.autofocus,"show-loading-indicator":c.showLoadingIndicator,"should-show-loading-indicator":a.state.isSearchStalled,"submit-title":c.submitTitle,"reset-title":c.resetTitle,"class-names":a.classNames,modelValue:m.currentRefinement,"onUpdate:modelValue":l[4]||(l[4]=function(e){return m.currentRefinement=e})},s({default:r(function(){return[f.isVue2?n(a.$slots,"loading-indicator",{key:0,slot:"loading-indicator"}):u("v-if",!0),f.isVue2?n(a.$slots,"submit-icon",{key:1,slot:"submit-icon"}):u("v-if",!0),f.isVue2?n(a.$slots,"reset-icon",{key:2,slot:"reset-icon"}):u("v-if",!0)]}),_:2},[f.isVue3?{name:"loading-indicator",fn:r(function(){return[n(a.$slots,"loading-indicator")]})}:void 0,f.isVue3?{name:"submit-icon",fn:r(function(){return[n(a.$slots,"submit-icon")]})}:void 0,f.isVue3?{name:"reset-icon",fn:r(function(){return[n(a.$slots,"reset-icon")]})}:void 0]),1032,["placeholder","autofocus","show-loading-indicator","should-show-loading-indicator","submit-title","reset-title","class-names","modelValue"])]})],2)):u("v-if",!0)}export{a as render};
|
|
1
|
+
import{resolveComponent as e,openBlock as t,createBlock as i,renderSlot as n,createVNode as o,createSlots as s,withCtx as r,createCommentVNode as u}from"vue";function a(a,l,c,d,f,m){var h=e("search-input");return a.state?(t(),i("div",{key:0,class:a.suit()},[n(a.$slots,"default",{currentRefinement:m.currentRefinement,isSearchStalled:a.state.isSearchStalled,refine:a.state.refine},function(){return[o(h,{onFocus:l[1]||(l[1]=function(e){return a.$emit("focus",e)}),onBlur:l[2]||(l[2]=function(e){return a.$emit("blur",e)}),onReset:l[3]||(l[3]=function(e){return a.$emit("reset")}),placeholder:c.placeholder,autofocus:c.autofocus,"show-loading-indicator":c.showLoadingIndicator,"should-show-loading-indicator":a.state.isSearchStalled,"submit-title":c.submitTitle,"reset-title":c.resetTitle,"class-names":a.classNames,modelValue:m.currentRefinement,"onUpdate:modelValue":l[4]||(l[4]=function(e){return m.currentRefinement=e}),ref:"searchInput"},s({default:r(function(){return[f.isVue2?n(a.$slots,"loading-indicator",{key:0,slot:"loading-indicator"}):u("v-if",!0),f.isVue2?n(a.$slots,"submit-icon",{key:1,slot:"submit-icon"}):u("v-if",!0),f.isVue2?n(a.$slots,"reset-icon",{key:2,slot:"reset-icon"}):u("v-if",!0)]}),_:2},[f.isVue3?{name:"loading-indicator",fn:r(function(){return[n(a.$slots,"loading-indicator")]})}:void 0,f.isVue3?{name:"submit-icon",fn:r(function(){return[n(a.$slots,"submit-icon")]})}:void 0,f.isVue3?{name:"reset-icon",fn:r(function(){return[n(a.$slots,"reset-icon")]})}:void 0]),1032,["placeholder","autofocus","show-loading-indicator","should-show-loading-indicator","submit-title","reset-title","class-names","modelValue"])]})],2)):u("v-if",!0)}export{a as render};
|
|
2
2
|
//# sourceMappingURL=SearchBox.vue_vue&type=template&id=27029d83&lang.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchBox.vue_vue&type=template&id=27029d83&lang.js","sources":["../../../../src/components/SearchBox.vue?vue&type=template&id=27029d83&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\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 >\n <template\n v-slot:loading-indicator\n v-if=\"isVue3\"\n >\n <slot\n name=\"loading-indicator\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"loading-indicator\"\n slot=\"loading-indicator\"\n />\n\n <template\n v-slot:submit-icon\n v-if=\"isVue3\"\n >\n <slot\n name=\"submit-icon\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"submit-icon\"\n slot=\"submit-icon\"\n />\n\n <template\n v-slot:reset-icon\n v-if=\"isVue3\"\n >\n <slot\n name=\"reset-icon\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"reset-icon\"\n slot=\"reset-icon\"\n />\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({
|
|
1
|
+
{"version":3,"file":"SearchBox.vue_vue&type=template&id=27029d83&lang.js","sources":["../../../../src/components/SearchBox.vue?vue&type=template&id=27029d83&lang.js"],"sourcesContent":["<template>\n <div\n v-if=\"state\"\n :class=\"suit()\"\n >\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\n v-slot:loading-indicator\n v-if=\"isVue3\"\n >\n <slot\n name=\"loading-indicator\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"loading-indicator\"\n slot=\"loading-indicator\"\n />\n\n <template\n v-slot:submit-icon\n v-if=\"isVue3\"\n >\n <slot\n name=\"submit-icon\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"submit-icon\"\n slot=\"submit-icon\"\n />\n\n <template\n v-slot:reset-icon\n v-if=\"isVue3\"\n >\n <slot\n name=\"reset-icon\"\n />\n </template>\n <slot\n v-if=\"isVue2\"\n name=\"reset-icon\"\n slot=\"reset-icon\"\n />\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 },\n data() {\n return {\n localValue: '',\n isVue2,\n isVue3,\n };\n },\n computed: {\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","_createBlock","class","_renderSlot","currentRefinement","$options","isSearchStalled","refine","_createVNode","onFocus","$event","onBlur","onReset","placeholder","$props","autofocus","ref","$data","slot"],"mappings":"qNAEUA,aADRC,eAEGC,MAAOF,WAERG,sBACGC,kBAAoBC,oBACpBC,gBAAmBN,QAAMM,gBACzBC,OAAQP,QAAMO,0BAEfC,KACGC,uCAAOT,gBAAeU,KACtBC,sCAAMX,eAAcU,KACpBE,uCAAOZ,mBACPa,YAAaC,cACbC,UAAWD,qCACaA,uDACOd,QAAMM,+BACvBQ,4BACDA,2BACAd,wBACLK,yEAAAA,wBACTW,IAAI,8CAWIC,SADRd,sCAGEe,KAAK,mCAYCD,SADRd,gCAGEe,KAAK,6BAYCD,SADRd,+BAGEe,KAAK,qCArCCD,eADC,2CAGPd,2CAYMc,eADC,qCAGPd,qCAYMc,eADC,oCAGPd"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createSuitMixin as e}from"../mixins/suit.js";export default{name:"SearchInput",mixins:[e({name:"SearchBox"})],props:{placeholder:{type:String,default:"Search here…"},autofocus:{type:Boolean,default:!1},showLoadingIndicator:{type:Boolean,default:!1},shouldShowLoadingIndicator:{type:Boolean,default:!1},submitTitle:{type:String,default:"Search"},resetTitle:{type:String,default:"Clear"},value:{type:String,required:!1,default:void 0},modelValue:{type:String,required:!1,default:void 0}},emits:["input","update:modelValue","blur","focus","reset"],data:function(){return{query:""}},methods:{onFormSubmit:function(){this.$refs.input.blur()},onFormReset:function(){this.$emit("input",""),this.$emit("update:modelValue",""),this.$emit("reset")}}};
|
|
1
|
+
import{createSuitMixin as e}from"../mixins/suit.js";export default{name:"SearchInput",mixins:[e({name:"SearchBox"})],props:{placeholder:{type:String,default:"Search here…"},autofocus:{type:Boolean,default:!1},showLoadingIndicator:{type:Boolean,default:!1},shouldShowLoadingIndicator:{type:Boolean,default:!1},submitTitle:{type:String,default:"Search"},resetTitle:{type:String,default:"Clear"},value:{type:String,required:!1,default:void 0},modelValue:{type:String,required:!1,default:void 0}},emits:["input","update:modelValue","blur","focus","reset"],data:function(){return{query:""}},methods:{isFocused:function(){return document.activeElement===this.$refs.input},onFormSubmit:function(){this.$refs.input.blur()},onFormReset:function(){this.$emit("input",""),this.$emit("update:modelValue",""),this.$emit("reset")}}};
|
|
2
2
|
//# sourceMappingURL=SearchInput.vue_vue&type=script&lang.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchInput.vue_vue&type=script&lang.js","sources":["../../../../src/components/SearchInput.vue"],"sourcesContent":["<template>\n <form\n action=\"\"\n role=\"search\"\n novalidate\n :class=\"suit('form')\"\n @submit.prevent=\"onFormSubmit\"\n @reset.prevent=\"onFormReset\"\n >\n <!-- :value/@input allows us to pass v-model to the component in v2 -->\n <!-- :modelValue/@update:modelValue allows us to pass v-model to the component in v3 -->\n <input\n type=\"search\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n autocomplete=\"off\"\n spellcheck=\"false\"\n required\n maxlength=\"512\"\n aria-label=\"Search\"\n :placeholder=\"placeholder\"\n :autofocus=\"autofocus\"\n :class=\"suit('input')\"\n :value=\"value || modelValue\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n @input=\"$emit('input', $event.target.value); $emit('update:modelValue', $event.target.value)\"\n ref=\"input\"\n >\n <button\n type=\"submit\"\n :title=\"submitTitle\"\n :class=\"suit('submit')\"\n :hidden=\"showLoadingIndicator && shouldShowLoadingIndicator\"\n >\n <slot name=\"submit-icon\">\n <svg\n role=\"img\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"10\"\n height=\"10\"\n viewBox=\"0 0 40 40\"\n :class=\"suit('submitIcon')\"\n >\n <path\n d=\"M26.804 29.01c-2.832 2.34-6.465 3.746-10.426 3.746C7.333 32.756 0 25.424 0 16.378 0 7.333 7.333 0 16.378 0c9.046 0 16.378 7.333 16.378 16.378 0 3.96-1.406 7.594-3.746 10.426l10.534 10.534c.607.607.61 1.59-.004 2.202-.61.61-1.597.61-2.202.004L26.804 29.01zm-10.426.627c7.323 0 13.26-5.936 13.26-13.26 0-7.32-5.937-13.257-13.26-13.257C9.056 3.12 3.12 9.056 3.12 16.378c0 7.323 5.936 13.26 13.258 13.26z\"\n fillRule=\"evenodd\"\n />\n </svg>\n </slot>\n </button>\n\n <button\n type=\"reset\"\n :title=\"resetTitle\"\n :class=\"suit('reset')\"\n :hidden=\"(!value && !modelValue) || (showLoadingIndicator && shouldShowLoadingIndicator)\"\n >\n <slot name=\"reset-icon\">\n <svg\n role=\"img\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 20 20\"\n :class=\"suit('resetIcon')\"\n >\n <path\n d=\"M8.114 10L.944 2.83 0 1.885 1.886 0l.943.943L10 8.113l7.17-7.17.944-.943L20 1.886l-.943.943-7.17 7.17 7.17 7.17.943.944L18.114 20l-.943-.943-7.17-7.17-7.17 7.17-.944.943L0 18.114l.943-.943L8.113 10z\"\n fillRule=\"evenodd\"\n />\n </svg>\n </slot>\n </button>\n\n <span\n v-if=\"showLoadingIndicator\"\n :hidden=\"!shouldShowLoadingIndicator\"\n :class=\"suit('loadingIndicator')\"\n >\n <slot name=\"loading-indicator\">\n <svg\n role=\"img\"\n aria-label=\"Results are loading\"\n width=\"16\"\n height=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke=\"#444\"\n viewBox=\"0 0 38 38\"\n :class=\"suit('loadingIcon')\"\n >\n <g\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n transform=\"translate(1 1)\"\n stroke-width=\"2\"\n >\n <circle\n stroke-opacity=\".5\"\n cx=\"18\"\n cy=\"18\"\n r=\"18\"\n />\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 18 18\"\n to=\"360 18 18\"\n dur=\"1s\"\n repeatCount=\"indefinite\"\n />\n </path>\n </g>\n </g>\n </svg>\n </slot>\n </span>\n </form>\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'SearchInput',\n mixins: [createSuitMixin({ name: 'SearchBox' })],\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 shouldShowLoadingIndicator: {\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 required: false,\n default: undefined,\n },\n modelValue: {\n type: String,\n required: false,\n default: undefined,\n },\n },\n emits: ['input', 'update:modelValue', 'blur', 'focus', 'reset'],\n data() {\n return {\n query: '',\n };\n },\n methods: {\n onFormSubmit() {\n const input = this.$refs.input;\n input.blur();\n },\n onFormReset() {\n this.$emit('input', '');\n this.$emit('update:modelValue', '');\n this.$emit('reset');\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","props","placeholder","type","String","default","autofocus","Boolean","showLoadingIndicator","shouldShowLoadingIndicator","submitTitle","resetTitle","value","required","undefined","modelValue","emits","data","query","methods","
|
|
1
|
+
{"version":3,"file":"SearchInput.vue_vue&type=script&lang.js","sources":["../../../../src/components/SearchInput.vue"],"sourcesContent":["<template>\n <form\n action=\"\"\n role=\"search\"\n novalidate\n :class=\"suit('form')\"\n @submit.prevent=\"onFormSubmit\"\n @reset.prevent=\"onFormReset\"\n >\n <!-- :value/@input allows us to pass v-model to the component in v2 -->\n <!-- :modelValue/@update:modelValue allows us to pass v-model to the component in v3 -->\n <input\n type=\"search\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n autocomplete=\"off\"\n spellcheck=\"false\"\n required\n maxlength=\"512\"\n aria-label=\"Search\"\n :placeholder=\"placeholder\"\n :autofocus=\"autofocus\"\n :class=\"suit('input')\"\n :value=\"value || modelValue\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n @input=\"$emit('input', $event.target.value); $emit('update:modelValue', $event.target.value)\"\n ref=\"input\"\n >\n <button\n type=\"submit\"\n :title=\"submitTitle\"\n :class=\"suit('submit')\"\n :hidden=\"showLoadingIndicator && shouldShowLoadingIndicator\"\n >\n <slot name=\"submit-icon\">\n <svg\n role=\"img\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"10\"\n height=\"10\"\n viewBox=\"0 0 40 40\"\n :class=\"suit('submitIcon')\"\n >\n <path\n d=\"M26.804 29.01c-2.832 2.34-6.465 3.746-10.426 3.746C7.333 32.756 0 25.424 0 16.378 0 7.333 7.333 0 16.378 0c9.046 0 16.378 7.333 16.378 16.378 0 3.96-1.406 7.594-3.746 10.426l10.534 10.534c.607.607.61 1.59-.004 2.202-.61.61-1.597.61-2.202.004L26.804 29.01zm-10.426.627c7.323 0 13.26-5.936 13.26-13.26 0-7.32-5.937-13.257-13.26-13.257C9.056 3.12 3.12 9.056 3.12 16.378c0 7.323 5.936 13.26 13.258 13.26z\"\n fillRule=\"evenodd\"\n />\n </svg>\n </slot>\n </button>\n\n <button\n type=\"reset\"\n :title=\"resetTitle\"\n :class=\"suit('reset')\"\n :hidden=\"(!value && !modelValue) || (showLoadingIndicator && shouldShowLoadingIndicator)\"\n >\n <slot name=\"reset-icon\">\n <svg\n role=\"img\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 20 20\"\n :class=\"suit('resetIcon')\"\n >\n <path\n d=\"M8.114 10L.944 2.83 0 1.885 1.886 0l.943.943L10 8.113l7.17-7.17.944-.943L20 1.886l-.943.943-7.17 7.17 7.17 7.17.943.944L18.114 20l-.943-.943-7.17-7.17-7.17 7.17-.944.943L0 18.114l.943-.943L8.113 10z\"\n fillRule=\"evenodd\"\n />\n </svg>\n </slot>\n </button>\n\n <span\n v-if=\"showLoadingIndicator\"\n :hidden=\"!shouldShowLoadingIndicator\"\n :class=\"suit('loadingIndicator')\"\n >\n <slot name=\"loading-indicator\">\n <svg\n role=\"img\"\n aria-label=\"Results are loading\"\n width=\"16\"\n height=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke=\"#444\"\n viewBox=\"0 0 38 38\"\n :class=\"suit('loadingIcon')\"\n >\n <g\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n transform=\"translate(1 1)\"\n stroke-width=\"2\"\n >\n <circle\n stroke-opacity=\".5\"\n cx=\"18\"\n cy=\"18\"\n r=\"18\"\n />\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 18 18\"\n to=\"360 18 18\"\n dur=\"1s\"\n repeatCount=\"indefinite\"\n />\n </path>\n </g>\n </g>\n </svg>\n </slot>\n </span>\n </form>\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'SearchInput',\n mixins: [createSuitMixin({ name: 'SearchBox' })],\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 shouldShowLoadingIndicator: {\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 required: false,\n default: undefined,\n },\n modelValue: {\n type: String,\n required: false,\n default: undefined,\n },\n },\n emits: ['input', 'update:modelValue', 'blur', 'focus', 'reset'],\n data() {\n return {\n query: '',\n };\n },\n methods: {\n isFocused() {\n return document.activeElement === this.$refs.input;\n },\n onFormSubmit() {\n const input = this.$refs.input;\n input.blur();\n },\n onFormReset() {\n this.$emit('input', '');\n this.$emit('update:modelValue', '');\n this.$emit('reset');\n },\n },\n};\n</script>\n"],"names":["name","mixins","createSuitMixin","props","placeholder","type","String","default","autofocus","Boolean","showLoadingIndicator","shouldShowLoadingIndicator","submitTitle","resetTitle","value","required","undefined","modelValue","emits","data","query","methods","isFocused","document","activeElement","this","$refs","input","onFormSubmit","blur","onFormReset","$emit"],"mappings":"kEA8He,CACbA,KAAM,cACNC,OAAQ,CAACC,EAAgB,CAAEF,KAAM,eACjCG,MAAO,CACLC,YAAa,CACXC,KAAMC,OACNC,QAAS,gBAEXC,UAAW,CACTH,KAAMI,QACNF,SAAS,GAEXG,qBAAsB,CACpBL,KAAMI,QACNF,SAAS,GAEXI,2BAA4B,CAC1BN,KAAMI,QACNF,SAAS,GAEXK,YAAa,CACXP,KAAMC,OACNC,QAAS,UAEXM,WAAY,CACVR,KAAMC,OACNC,QAAS,SAEXO,MAAO,CACLT,KAAMC,OACNS,UAAU,EACVR,aAASS,GAEXC,WAAY,CACVZ,KAAMC,OACNS,UAAU,EACVR,aAASS,IAGbE,MAAO,CAAC,QAAS,oBAAqB,OAAQ,QAAS,SACvDC,sBACS,CACLC,MAAO,KAGXC,QAAS,CACPC,4BACSC,SAASC,gBAAkBC,KAAKC,MAAMC,OAE/CC,wBACgBH,KAAKC,MAAMC,MACnBE,QAERC,4BACOC,MAAM,QAAS,SACfA,MAAM,oBAAqB,SAC3BA,MAAM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchInput.vue_vue&type=template&id=2eed8ffc&lang.js","sources":["../../../../src/components/SearchInput.vue?vue&type=template&id=2eed8ffc&lang.js"],"sourcesContent":["<template>\n <form\n action=\"\"\n role=\"search\"\n novalidate\n :class=\"suit('form')\"\n @submit.prevent=\"onFormSubmit\"\n @reset.prevent=\"onFormReset\"\n >\n <!-- :value/@input allows us to pass v-model to the component in v2 -->\n <!-- :modelValue/@update:modelValue allows us to pass v-model to the component in v3 -->\n <input\n type=\"search\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n autocomplete=\"off\"\n spellcheck=\"false\"\n required\n maxlength=\"512\"\n aria-label=\"Search\"\n :placeholder=\"placeholder\"\n :autofocus=\"autofocus\"\n :class=\"suit('input')\"\n :value=\"value || modelValue\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n @input=\"$emit('input', $event.target.value); $emit('update:modelValue', $event.target.value)\"\n ref=\"input\"\n >\n <button\n type=\"submit\"\n :title=\"submitTitle\"\n :class=\"suit('submit')\"\n :hidden=\"showLoadingIndicator && shouldShowLoadingIndicator\"\n >\n <slot name=\"submit-icon\">\n <svg\n role=\"img\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"10\"\n height=\"10\"\n viewBox=\"0 0 40 40\"\n :class=\"suit('submitIcon')\"\n >\n <path\n d=\"M26.804 29.01c-2.832 2.34-6.465 3.746-10.426 3.746C7.333 32.756 0 25.424 0 16.378 0 7.333 7.333 0 16.378 0c9.046 0 16.378 7.333 16.378 16.378 0 3.96-1.406 7.594-3.746 10.426l10.534 10.534c.607.607.61 1.59-.004 2.202-.61.61-1.597.61-2.202.004L26.804 29.01zm-10.426.627c7.323 0 13.26-5.936 13.26-13.26 0-7.32-5.937-13.257-13.26-13.257C9.056 3.12 3.12 9.056 3.12 16.378c0 7.323 5.936 13.26 13.258 13.26z\"\n fillRule=\"evenodd\"\n />\n </svg>\n </slot>\n </button>\n\n <button\n type=\"reset\"\n :title=\"resetTitle\"\n :class=\"suit('reset')\"\n :hidden=\"(!value && !modelValue) || (showLoadingIndicator && shouldShowLoadingIndicator)\"\n >\n <slot name=\"reset-icon\">\n <svg\n role=\"img\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 20 20\"\n :class=\"suit('resetIcon')\"\n >\n <path\n d=\"M8.114 10L.944 2.83 0 1.885 1.886 0l.943.943L10 8.113l7.17-7.17.944-.943L20 1.886l-.943.943-7.17 7.17 7.17 7.17.943.944L18.114 20l-.943-.943-7.17-7.17-7.17 7.17-.944.943L0 18.114l.943-.943L8.113 10z\"\n fillRule=\"evenodd\"\n />\n </svg>\n </slot>\n </button>\n\n <span\n v-if=\"showLoadingIndicator\"\n :hidden=\"!shouldShowLoadingIndicator\"\n :class=\"suit('loadingIndicator')\"\n >\n <slot name=\"loading-indicator\">\n <svg\n role=\"img\"\n aria-label=\"Results are loading\"\n width=\"16\"\n height=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke=\"#444\"\n viewBox=\"0 0 38 38\"\n :class=\"suit('loadingIcon')\"\n >\n <g\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n transform=\"translate(1 1)\"\n stroke-width=\"2\"\n >\n <circle\n stroke-opacity=\".5\"\n cx=\"18\"\n cy=\"18\"\n r=\"18\"\n />\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 18 18\"\n to=\"360 18 18\"\n dur=\"1s\"\n repeatCount=\"indefinite\"\n />\n </path>\n </g>\n </g>\n </svg>\n </slot>\n </span>\n </form>\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'SearchInput',\n mixins: [createSuitMixin({ name: 'SearchBox' })],\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 shouldShowLoadingIndicator: {\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 required: false,\n default: undefined,\n },\n modelValue: {\n type: String,\n required: false,\n default: undefined,\n },\n },\n emits: ['input', 'update:modelValue', 'blur', 'focus', 'reset'],\n data() {\n return {\n query: '',\n };\n },\n methods: {\n onFormSubmit() {\n const input = this.$refs.input;\n input.blur();\n },\n onFormReset() {\n this.$emit('input', '');\n this.$emit('update:modelValue', '');\n this.$emit('reset');\n },\n },\n};\n</script>\n"],"names":["_createVNode","d","fillRule","fill","
|
|
1
|
+
{"version":3,"file":"SearchInput.vue_vue&type=template&id=2eed8ffc&lang.js","sources":["../../../../src/components/SearchInput.vue?vue&type=template&id=2eed8ffc&lang.js"],"sourcesContent":["<template>\n <form\n action=\"\"\n role=\"search\"\n novalidate\n :class=\"suit('form')\"\n @submit.prevent=\"onFormSubmit\"\n @reset.prevent=\"onFormReset\"\n >\n <!-- :value/@input allows us to pass v-model to the component in v2 -->\n <!-- :modelValue/@update:modelValue allows us to pass v-model to the component in v3 -->\n <input\n type=\"search\"\n autocorrect=\"off\"\n autocapitalize=\"off\"\n autocomplete=\"off\"\n spellcheck=\"false\"\n required\n maxlength=\"512\"\n aria-label=\"Search\"\n :placeholder=\"placeholder\"\n :autofocus=\"autofocus\"\n :class=\"suit('input')\"\n :value=\"value || modelValue\"\n @focus=\"$emit('focus', $event)\"\n @blur=\"$emit('blur', $event)\"\n @input=\"$emit('input', $event.target.value); $emit('update:modelValue', $event.target.value)\"\n ref=\"input\"\n >\n <button\n type=\"submit\"\n :title=\"submitTitle\"\n :class=\"suit('submit')\"\n :hidden=\"showLoadingIndicator && shouldShowLoadingIndicator\"\n >\n <slot name=\"submit-icon\">\n <svg\n role=\"img\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"10\"\n height=\"10\"\n viewBox=\"0 0 40 40\"\n :class=\"suit('submitIcon')\"\n >\n <path\n d=\"M26.804 29.01c-2.832 2.34-6.465 3.746-10.426 3.746C7.333 32.756 0 25.424 0 16.378 0 7.333 7.333 0 16.378 0c9.046 0 16.378 7.333 16.378 16.378 0 3.96-1.406 7.594-3.746 10.426l10.534 10.534c.607.607.61 1.59-.004 2.202-.61.61-1.597.61-2.202.004L26.804 29.01zm-10.426.627c7.323 0 13.26-5.936 13.26-13.26 0-7.32-5.937-13.257-13.26-13.257C9.056 3.12 3.12 9.056 3.12 16.378c0 7.323 5.936 13.26 13.258 13.26z\"\n fillRule=\"evenodd\"\n />\n </svg>\n </slot>\n </button>\n\n <button\n type=\"reset\"\n :title=\"resetTitle\"\n :class=\"suit('reset')\"\n :hidden=\"(!value && !modelValue) || (showLoadingIndicator && shouldShowLoadingIndicator)\"\n >\n <slot name=\"reset-icon\">\n <svg\n role=\"img\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"1em\"\n height=\"1em\"\n viewBox=\"0 0 20 20\"\n :class=\"suit('resetIcon')\"\n >\n <path\n d=\"M8.114 10L.944 2.83 0 1.885 1.886 0l.943.943L10 8.113l7.17-7.17.944-.943L20 1.886l-.943.943-7.17 7.17 7.17 7.17.943.944L18.114 20l-.943-.943-7.17-7.17-7.17 7.17-.944.943L0 18.114l.943-.943L8.113 10z\"\n fillRule=\"evenodd\"\n />\n </svg>\n </slot>\n </button>\n\n <span\n v-if=\"showLoadingIndicator\"\n :hidden=\"!shouldShowLoadingIndicator\"\n :class=\"suit('loadingIndicator')\"\n >\n <slot name=\"loading-indicator\">\n <svg\n role=\"img\"\n aria-label=\"Results are loading\"\n width=\"16\"\n height=\"16\"\n xmlns=\"http://www.w3.org/2000/svg\"\n stroke=\"#444\"\n viewBox=\"0 0 38 38\"\n :class=\"suit('loadingIcon')\"\n >\n <g\n fill=\"none\"\n fill-rule=\"evenodd\"\n >\n <g\n transform=\"translate(1 1)\"\n stroke-width=\"2\"\n >\n <circle\n stroke-opacity=\".5\"\n cx=\"18\"\n cy=\"18\"\n r=\"18\"\n />\n <path d=\"M36 18c0-9.94-8.06-18-18-18\">\n <animateTransform\n attributeName=\"transform\"\n type=\"rotate\"\n from=\"0 18 18\"\n to=\"360 18 18\"\n dur=\"1s\"\n repeatCount=\"indefinite\"\n />\n </path>\n </g>\n </g>\n </svg>\n </slot>\n </span>\n </form>\n</template>\n\n<script>\nimport { createSuitMixin } from '../mixins/suit';\n\nexport default {\n name: 'SearchInput',\n mixins: [createSuitMixin({ name: 'SearchBox' })],\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 shouldShowLoadingIndicator: {\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 required: false,\n default: undefined,\n },\n modelValue: {\n type: String,\n required: false,\n default: undefined,\n },\n },\n emits: ['input', 'update:modelValue', 'blur', 'focus', 'reset'],\n data() {\n return {\n query: '',\n };\n },\n methods: {\n isFocused() {\n return document.activeElement === this.$refs.input;\n },\n onFormSubmit() {\n const input = this.$refs.input;\n input.blur();\n },\n onFormReset() {\n this.$emit('input', '');\n this.$emit('update:modelValue', '');\n this.$emit('reset');\n },\n },\n};\n</script>\n"],"names":["_createVNode","d","fillRule","fill","transform","cx","cy","r","attributeName","type","from","to","dur","repeatCount","_createBlock","action","role","novalidate","class","_ctx","onSubmit","$options","onReset","_createCommentVNode","autocorrect","autocapitalize","autocomplete","spellcheck","required","maxlength","placeholder","$props","autofocus","value","onFocus","$event","onBlur","onInput","target","ref","title","hidden","_renderSlot","xmlns","width","height","viewBox","_hoisted_1","_hoisted_2","stroke","_hoisted_3"],"mappings":"mIA4CUA,UACEC,EAAE,mZACFC,SAAS,sBAqBXF,UACEC,EAAE,yMACFC,SAAS,sBAsBXF,OACEG,KAAK,mBACK,YAEVH,OACEI,UAAU,gCACG,MAEbJ,6BACiB,KACfK,GAAG,KACHC,GAAG,KACHC,EAAE,OAEJP,UAAMC,EAAE,gCACND,sBACEQ,cAAc,YACdC,KAAK,SACLC,KAAK,UACLC,GAAG,YACHC,IAAI,KACJC,YAAY,2DA/G5BC,UACEC,OAAO,GACPC,KAAK,SACLC,WAAA,GACCC,MAAOC,eACPC,gGAAgBC,yDAChBC,+FAAeD,yDAEhBE,sEACAA,uFACAvB,WACES,KAAK,SACLe,YAAY,MACZC,eAAe,MACfC,aAAa,MACbC,WAAW,QACXC,SAAA,GACAC,UAAU,mBACC,SACVC,YAAaC,cACbC,UAAWD,YACXb,MAAOC,gBACPc,MAAOF,SAASA,aAChBG,uCAAOf,gBAAegB,KACtBC,sCAAMjB,eAAcgB,KACpBE,gCAAOlB,gBAAegB,EAAOG,OAAOL,OAAQd,4BAA2BgB,EAAOG,OAAOL,SACtFM,IAAI,sDAENvC,YACES,KAAK,SACJ+B,MAAOT,cACPb,MAAOC,iBACPsB,OAAQV,wBAAwBA,+BAEjCW,mDACE5B,SACEE,KAAK,MACL2B,MAAM,6BACNC,MAAM,KACNC,OAAO,KACPC,QAAQ,YACP5B,MAAOC,uBAER4B,kCAQN/C,YACES,KAAK,QACJ+B,MAAOT,aACPb,MAAOC,gBACPsB,QAAUV,UAAUA,cAAgBA,wBAAwBA,+BAE7DW,kDACE5B,SACEE,KAAK,MACL2B,MAAM,6BACNC,MAAM,MACNC,OAAO,MACPC,QAAQ,YACP5B,MAAOC,sBAER6B,kCASEjB,4BADRjB,gBAEG2B,QAASV,6BACTb,MAAOC,6BAERuB,yDACE5B,SACEE,KAAK,mBACM,sBACX4B,MAAM,KACNC,OAAO,KACPF,MAAM,6BACNM,OAAO,OACPH,QAAQ,YACP5B,MAAOC,wBAER+B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Snippet.vue_vue&type=template&id=eb4966c6&lang.js","sources":["../../../../src/components/Snippet.vue?vue&type=template&id=eb4966c6&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';\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","
|
|
1
|
+
{"version":3,"file":"Snippet.vue_vue&type=template&id=eb4966c6&lang.js","sources":["../../../../src/components/Snippet.vue?vue&type=template&id=eb4966c6&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';\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","suit","_ctx"],"mappings":"qIACEA,KACGC,IAAKC,MACLC,UAAWD,mCACWA,qBACtBE,KAAMC,4BACY,2BACX,oBACC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createSuitMixin as t}from"../mixins/suit.js";import{createWidgetMixin as
|
|
1
|
+
import{createSuitMixin as t}from"../mixins/suit.js";import{createWidgetMixin as s}from"../mixins/widget.js";import{connectSortBy as e}from"instantsearch.js/es/connectors/index.js";import{createPanelConsumerMixin as i}from"../mixins/panel.js";export default{name:"AisSortBy",mixins:[t({name:"SortBy"}),s({connector:e},{$$widgetType:"ais.sortBy"}),i({mapStateToCanRefine:function(t){return!1===t.hasNoResults}})],props:{items:{type:Array,required:!0},transformItems:{type:Function,default:void 0}},computed:{widgetParams:function(){return{items:this.items,transformItems:this.transformItems}}}};
|
|
2
2
|
//# sourceMappingURL=SortBy.vue_vue&type=script&lang.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SortBy.vue_vue&type=script&lang.js","sources":["../../../../src/components/SortBy.vue"],"sourcesContent":["<template>\n <div\n :class=\"suit()\"\n v-if=\"state\"\n >\n <slot\n :items=\"state.options\"\n :has-no-results=\"state.hasNoResults\"\n :refine=\"state.refine\"\n :current-refinement=\"state.currentRefinement\"\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 >{{ item.label }}</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({ connector: connectSortBy }),\n\n createPanelConsumerMixin({\n mapStateToCanRefine: state => state.hasNoResults === false,\n }),\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","createPanelConsumerMixin","mapStateToCanRefine","state","hasNoResults","props","items","type","Array","required","transformItems","Function","default","undefined","computed","widgetParams","this"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SortBy.vue_vue&type=script&lang.js","sources":["../../../../src/components/SortBy.vue"],"sourcesContent":["<template>\n <div\n :class=\"suit()\"\n v-if=\"state\"\n >\n <slot\n :items=\"state.options\"\n :has-no-results=\"state.hasNoResults\"\n :refine=\"state.refine\"\n :current-refinement=\"state.currentRefinement\"\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 >{{ item.label }}</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 mapStateToCanRefine: state => state.hasNoResults === false,\n }),\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","mapStateToCanRefine","state","hasNoResults","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,EAAyB,CACvBC,6BAAqBC,UAAgC,IAAvBA,EAAMC,iBAGxCC,MAAO,CACLC,MAAO,CACLC,KAAMC,MACNC,UAAU,GAEZC,eAAgB,CACdH,KAAMI,SACNC,aAASC,IAGbC,SAAU,CACRC,8BACS,CACLT,MAAOU,KAAKV,MACZI,eAAgBM,KAAKN"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SortBy.vue_vue&type=template&id=b69b3b76&lang.js","sources":["../../../../src/components/SortBy.vue?vue&type=template&id=b69b3b76&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"suit()\"\n v-if=\"state\"\n >\n <slot\n :items=\"state.options\"\n :has-no-results=\"state.hasNoResults\"\n :refine=\"state.refine\"\n :current-refinement=\"state.currentRefinement\"\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 >{{ item.label }}</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({ connector: connectSortBy }),\n\n createPanelConsumerMixin({\n mapStateToCanRefine: state => state.hasNoResults === false,\n }),\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","_createBlock","class","_renderSlot","items","options","hasNoResults","refine","currentRefinement","_createVNode","onChange","$event","currentTarget","value","item","key","selected","label"],"mappings":"4LAGUA,
|
|
1
|
+
{"version":3,"file":"SortBy.vue_vue&type=template&id=b69b3b76&lang.js","sources":["../../../../src/components/SortBy.vue?vue&type=template&id=b69b3b76&lang.js"],"sourcesContent":["<template>\n <div\n :class=\"suit()\"\n v-if=\"state\"\n >\n <slot\n :items=\"state.options\"\n :has-no-results=\"state.hasNoResults\"\n :refine=\"state.refine\"\n :current-refinement=\"state.currentRefinement\"\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 >{{ item.label }}</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 mapStateToCanRefine: state => state.hasNoResults === false,\n }),\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","_createBlock","class","_renderSlot","items","options","hasNoResults","refine","currentRefinement","_createVNode","onChange","$event","currentTarget","value","item","key","selected","label"],"mappings":"4LAGUA,aAFRC,eACGC,MAAOF,WAGRG,sBACGC,MAAOJ,QAAMK,QACbC,aAAgBN,QAAMM,aACtBC,OAAQP,QAAMO,OACdC,kBAAoBR,QAAMQ,qCAE3BC,YACGP,MAAOF,iBACPU,wCAAQV,QAAMO,OAAOI,EAAOC,cAAcC,kBAE3CZ,WACiBD,QAAMK,iBAAdS,cADTb,YAEGc,IAAKD,EAAKD,MACVX,MAAOF,iBACPa,MAAOC,EAAKD,MACZG,SAAUF,EAAKD,QAAUb,QAAMQ,qBAC9BM,EAAKG"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{createSuitMixin as t}from"../mixins/suit.js";import{
|
|
1
|
+
import{createSuitMixin as t}from"../mixins/suit.js";import{_objectSpread as s}from"../util/polyfills.js";import{createWidgetMixin as e}from"../mixins/widget.js";import i from"../connectors/connectStateResults.js";export default{name:"AisStateResults",mixins:[e({connector:i},{$$widgetType:"ais.stateResults"}),t({name:"StateResults"})],computed:{stateResults:function(){var t=this.state,e=t.state,i=t.results;return s({},i,{results:i,state:e})}}};
|
|
2
2
|
//# sourceMappingURL=StateResults.vue_vue&type=script&lang.js.map
|