vue-instantsearch 4.10.10 → 4.10.11
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/README.md +4 -12
- package/package.json +5 -5
- package/src/__tests__/common-widgets.test.js +36 -0
- package/src/components/CurrentRefinements.vue +4 -6
- package/src/components/Pagination.vue +13 -10
- package/src/components/__tests__/CurrentRefinements.js +0 -210
- package/src/components/__tests__/InstantSearch.js +1 -1
- package/src/components/__tests__/__snapshots__/CurrentRefinements.js.snap +0 -165
- package/src/util/createInstantSearchComponent.js +2 -2
- package/vue2/cjs/index.js +1 -1
- package/vue2/cjs/index.js.map +1 -1
- package/vue2/es/package.json.js +1 -1
- package/vue2/es/src/components/CurrentRefinements.vue.js +1 -1
- package/vue2/es/src/components/Pagination.vue.js +1 -1
- package/vue2/es/src/util/createInstantSearchComponent.js +1 -1
- package/vue2/es/src/util/createInstantSearchComponent.js.map +1 -1
- 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/es/package.json.js +1 -1
- package/vue3/es/src/components/CurrentRefinements.vue.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=5584328f&lang.js +2 -0
- package/vue3/es/src/components/CurrentRefinements.vue_vue&type=template&id=5584328f&lang.js.map +1 -0
- package/vue3/es/src/components/Pagination.vue.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=36adea52&lang.js +2 -0
- package/vue3/es/src/components/Pagination.vue_vue&type=template&id=36adea52&lang.js.map +1 -0
- package/vue3/es/src/util/createInstantSearchComponent.js +1 -1
- package/vue3/es/src/util/createInstantSearchComponent.js.map +1 -1
- package/vue3/umd/index.js +1 -1
- package/vue3/umd/index.js.map +1 -1
- package/src/components/__tests__/Pagination.js +0 -225
- package/src/components/__tests__/__snapshots__/Pagination.js.snap +0 -282
- package/vue3/es/src/components/CurrentRefinements.vue_vue&type=template&id=3ffbec3c&lang.js +0 -2
- package/vue3/es/src/components/CurrentRefinements.vue_vue&type=template&id=3ffbec3c&lang.js.map +0 -1
- package/vue3/es/src/components/Pagination.vue_vue&type=template&id=5a680db4&lang.js +0 -2
- package/vue3/es/src/components/Pagination.vue_vue&type=template&id=5a680db4&lang.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
|
|
2
2
|
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
|
|
3
|
-
|
|
3
|
+
|
|
4
4
|
|
|
5
5
|
- [Vue InstantSearch](#vue-instantsearch)
|
|
6
6
|
- [Documentation](#documentation)
|
|
@@ -12,12 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
[![Vue InstantSearch logo][logo]][website]
|
|
14
14
|
|
|
15
|
-
InstantSearch projects: **Vue InstantSearch**
|
|
16
|
-
| [InstantSearch.js][instantsearch.js-github]
|
|
17
|
-
| [React InstantSearch][react-instantsearch-github]
|
|
18
|
-
| [Angular InstantSearch][angular-instantsearch-github]
|
|
19
|
-
| [InstantSearch Android][instantsearch-android-github]
|
|
20
|
-
| [InstantSearch iOS][instantsearch-ios-github].
|
|
15
|
+
InstantSearch projects: **Vue InstantSearch** | [InstantSearch.js][instantsearch-github] | [React InstantSearch][instantsearch-github] | [Angular InstantSearch][angular-instantsearch-github] | [InstantSearch Android][instantsearch-android-github] | [InstantSearch iOS][instantsearch-ios-github].
|
|
21
16
|
|
|
22
17
|
## Vue InstantSearch
|
|
23
18
|
|
|
@@ -51,16 +46,13 @@ Encountering an issue? Before reaching out to support, we recommend heading to o
|
|
|
51
46
|
|
|
52
47
|
## Contributing, dev, release
|
|
53
48
|
|
|
54
|
-
We welcome all contributors, from casual to regular. You are only
|
|
55
|
-
one command away to start the developer environment,
|
|
56
|
-
[read our CONTRIBUTING guide](CONTRIBUTING.md).
|
|
49
|
+
We welcome all contributors, from casual to regular. You are only one command away to start the developer environment, [read our CONTRIBUTING guide](CONTRIBUTING.md).
|
|
57
50
|
|
|
58
51
|
[logo]: vue-instantsearch-readme.png
|
|
59
52
|
[website]: https://www.algolia.com/doc/guides/building-search-ui/what-is-instantsearch/vue/
|
|
60
53
|
[getting-started-guide]: https://www.algolia.com/doc/guides/building-search-ui/getting-started/vue/
|
|
61
54
|
[algolia-website]: https://www.algolia.com/
|
|
62
|
-
[instantsearch
|
|
63
|
-
[react-instantsearch-github]: https://github.com/algolia/react-instantsearch
|
|
55
|
+
[instantsearch-github]: https://github.com/algolia/instantsearch
|
|
64
56
|
[instantsearch-android-github]: https://github.com/algolia/instantsearch-android
|
|
65
57
|
[instantsearch-ios-github]: https://github.com/algolia/instantsearch-ios
|
|
66
58
|
[angular-instantsearch-github]: https://github.com/algolia/angular-instantsearch
|
package/package.json
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"autocomplete"
|
|
17
17
|
],
|
|
18
18
|
"license": "MIT",
|
|
19
|
-
"version": "4.10.
|
|
19
|
+
"version": "4.10.11",
|
|
20
20
|
"files": [
|
|
21
21
|
"vue2",
|
|
22
22
|
"vue3",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"main": "vue2/cjs",
|
|
26
26
|
"module": "vue2/es",
|
|
27
27
|
"sideEffects": false,
|
|
28
|
-
"repository": "https://github.com/algolia/instantsearch
|
|
28
|
+
"repository": "https://github.com/algolia/instantsearch",
|
|
29
29
|
"scripts": {
|
|
30
30
|
"prebuild": "rm -rf vue2 vue3",
|
|
31
31
|
"build": "rollup -c",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"test:exports:vue3": "node ./test/module/vue3/is-es-module.mjs && node ./test/module/vue3/is-cjs-module.cjs"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"instantsearch.js": "4.56.
|
|
38
|
+
"instantsearch.js": "4.56.11",
|
|
39
39
|
"mitt": "^2.1.0"
|
|
40
40
|
},
|
|
41
41
|
"peerDependencies": {
|
|
@@ -60,7 +60,7 @@
|
|
|
60
60
|
"@vue/test-utils": "1.3.0",
|
|
61
61
|
"@vue/test-utils2": "npm:@vue/test-utils@2.0.0-rc.11",
|
|
62
62
|
"algoliasearch": "4.14.3",
|
|
63
|
-
"algoliasearch-helper": "3.14.
|
|
63
|
+
"algoliasearch-helper": "3.14.1",
|
|
64
64
|
"instantsearch.css": "8.0.0",
|
|
65
65
|
"rollup": "1.32.1",
|
|
66
66
|
"rollup-plugin-babel": "4.4.0",
|
|
@@ -87,5 +87,5 @@
|
|
|
87
87
|
"vuex": "3.5.1",
|
|
88
88
|
"vuex4": "npm:vuex@4.0.0"
|
|
89
89
|
},
|
|
90
|
-
"gitHead": "
|
|
90
|
+
"gitHead": "046ba8af4e49a0299d3297337965fc4e717550d6"
|
|
91
91
|
}
|
|
@@ -362,6 +362,41 @@ const testSetups = {
|
|
|
362
362
|
document.body.appendChild(document.createElement('div'))
|
|
363
363
|
);
|
|
364
364
|
|
|
365
|
+
await nextTick();
|
|
366
|
+
},
|
|
367
|
+
async createCurrentRefinementsWidgetTests({
|
|
368
|
+
instantSearchOptions,
|
|
369
|
+
widgetParams,
|
|
370
|
+
}) {
|
|
371
|
+
mountApp(
|
|
372
|
+
{
|
|
373
|
+
render: renderCompat((h) =>
|
|
374
|
+
h('form', {}, [
|
|
375
|
+
h(AisInstantSearch, { props: instantSearchOptions }, [
|
|
376
|
+
h(AisSearchBox),
|
|
377
|
+
h(AisRefinementList, { props: { attribute: 'brand' } }),
|
|
378
|
+
h(AisRefinementList, {
|
|
379
|
+
props: { operator: 'and', attribute: 'feature' },
|
|
380
|
+
}),
|
|
381
|
+
h(AisHierarchicalMenu, {
|
|
382
|
+
props: {
|
|
383
|
+
attributes: [
|
|
384
|
+
'hierarchicalCategories.lvl0',
|
|
385
|
+
'hierarchicalCategories.lvl1',
|
|
386
|
+
'hierarchicalCategories.lvl2',
|
|
387
|
+
],
|
|
388
|
+
},
|
|
389
|
+
}),
|
|
390
|
+
h(AisRangeInput, { props: { attribute: 'price' } }),
|
|
391
|
+
h(AisCurrentRefinements, { props: widgetParams }),
|
|
392
|
+
h(GlobalErrorSwallower),
|
|
393
|
+
]),
|
|
394
|
+
])
|
|
395
|
+
),
|
|
396
|
+
},
|
|
397
|
+
document.body.appendChild(document.createElement('div'))
|
|
398
|
+
);
|
|
399
|
+
|
|
365
400
|
await nextTick();
|
|
366
401
|
},
|
|
367
402
|
};
|
|
@@ -378,6 +413,7 @@ const testOptions = {
|
|
|
378
413
|
createInstantSearchWidgetTests: undefined,
|
|
379
414
|
createHitsPerPageWidgetTests: undefined,
|
|
380
415
|
createClearRefinementsWidgetTests: undefined,
|
|
416
|
+
createCurrentRefinementsWidgetTests: undefined,
|
|
381
417
|
};
|
|
382
418
|
|
|
383
419
|
describe('Common widget tests (Vue InstantSearch)', () => {
|
|
@@ -33,13 +33,11 @@
|
|
|
33
33
|
<q v-if="refinement.attribute === 'query'">{{
|
|
34
34
|
refinement.label
|
|
35
35
|
}}</q>
|
|
36
|
-
<template v-else>
|
|
37
|
-
|
|
38
|
-
</template>
|
|
39
|
-
</span>
|
|
40
|
-
<button
|
|
36
|
+
<template v-else>{{ refinement.label }}</template> </span
|
|
37
|
+
><button
|
|
41
38
|
:class="suit('delete')"
|
|
42
|
-
|
|
39
|
+
type="button"
|
|
40
|
+
@click.left.exact="item.refine(refinement)"
|
|
43
41
|
>
|
|
44
42
|
✕
|
|
45
43
|
</button>
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div
|
|
2
|
+
<div
|
|
3
|
+
v-if="state"
|
|
4
|
+
:class="{ [suit()]: true, [suit('', 'noRefinement')]: state.nbPages <= 1 }"
|
|
5
|
+
>
|
|
3
6
|
<slot
|
|
4
7
|
:refine="refine"
|
|
5
8
|
:createURL="state.createURL"
|
|
@@ -14,8 +17,8 @@
|
|
|
14
17
|
<li
|
|
15
18
|
:class="{
|
|
16
19
|
[suit('item')]: true,
|
|
17
|
-
[suit('item', 'firstPage')]: true,
|
|
18
20
|
[suit('item', 'disabled')]: state.isFirstPage,
|
|
21
|
+
[suit('item', 'firstPage')]: true,
|
|
19
22
|
}"
|
|
20
23
|
v-if="showFirst"
|
|
21
24
|
>
|
|
@@ -30,7 +33,7 @@
|
|
|
30
33
|
:class="suit('link')"
|
|
31
34
|
aria-label="First"
|
|
32
35
|
:href="state.createURL(0)"
|
|
33
|
-
@click.prevent="refine(0)"
|
|
36
|
+
@click.exact.left.prevent="refine(0)"
|
|
34
37
|
>‹‹</a
|
|
35
38
|
>
|
|
36
39
|
</template>
|
|
@@ -42,8 +45,8 @@
|
|
|
42
45
|
<li
|
|
43
46
|
:class="{
|
|
44
47
|
[suit('item')]: true,
|
|
45
|
-
[suit('item', 'previousPage')]: true,
|
|
46
48
|
[suit('item', 'disabled')]: state.isFirstPage,
|
|
49
|
+
[suit('item', 'previousPage')]: true,
|
|
47
50
|
}"
|
|
48
51
|
v-if="showPrevious"
|
|
49
52
|
>
|
|
@@ -58,7 +61,7 @@
|
|
|
58
61
|
:class="suit('link')"
|
|
59
62
|
aria-label="Previous"
|
|
60
63
|
:href="state.createURL(state.currentRefinement - 1)"
|
|
61
|
-
@click.prevent="refine(state.currentRefinement - 1)"
|
|
64
|
+
@click.exact.left.prevent="refine(state.currentRefinement - 1)"
|
|
62
65
|
>‹</a
|
|
63
66
|
>
|
|
64
67
|
</template>
|
|
@@ -89,7 +92,7 @@
|
|
|
89
92
|
:class="suit('link')"
|
|
90
93
|
:href="state.createURL(page)"
|
|
91
94
|
:aria-label="`Page ${page + 1}`"
|
|
92
|
-
@click.prevent="refine(page)"
|
|
95
|
+
@click.exact.left.prevent="refine(page)"
|
|
93
96
|
>{{ page + 1 }}</a
|
|
94
97
|
>
|
|
95
98
|
</slot>
|
|
@@ -98,8 +101,8 @@
|
|
|
98
101
|
<li
|
|
99
102
|
:class="{
|
|
100
103
|
[suit('item')]: true,
|
|
101
|
-
[suit('item', 'nextPage')]: true,
|
|
102
104
|
[suit('item', 'disabled')]: state.isLastPage,
|
|
105
|
+
[suit('item', 'nextPage')]: true,
|
|
103
106
|
}"
|
|
104
107
|
v-if="showNext"
|
|
105
108
|
>
|
|
@@ -114,7 +117,7 @@
|
|
|
114
117
|
:class="suit('link')"
|
|
115
118
|
aria-label="Next"
|
|
116
119
|
:href="state.createURL(state.currentRefinement + 1)"
|
|
117
|
-
@click.prevent="refine(state.currentRefinement + 1)"
|
|
120
|
+
@click.exact.left.prevent="refine(state.currentRefinement + 1)"
|
|
118
121
|
>›</a
|
|
119
122
|
>
|
|
120
123
|
</template>
|
|
@@ -126,8 +129,8 @@
|
|
|
126
129
|
<li
|
|
127
130
|
:class="{
|
|
128
131
|
[suit('item')]: true,
|
|
129
|
-
[suit('item', 'lastPage')]: true,
|
|
130
132
|
[suit('item', 'disabled')]: state.isLastPage,
|
|
133
|
+
[suit('item', 'lastPage')]: true,
|
|
131
134
|
}"
|
|
132
135
|
v-if="showLast"
|
|
133
136
|
>
|
|
@@ -142,7 +145,7 @@
|
|
|
142
145
|
:class="suit('link')"
|
|
143
146
|
aria-label="Last"
|
|
144
147
|
:href="state.createURL(state.nbPages - 1)"
|
|
145
|
-
@click.prevent="refine(state.nbPages - 1)"
|
|
148
|
+
@click.exact.left.prevent="refine(state.nbPages - 1)"
|
|
146
149
|
>››</a
|
|
147
150
|
>
|
|
148
151
|
</template>
|
|
@@ -10,216 +10,6 @@ import '../../../test/utils/sortedHtmlSerializer';
|
|
|
10
10
|
jest.mock('../../mixins/widget');
|
|
11
11
|
jest.mock('../../mixins/panel');
|
|
12
12
|
|
|
13
|
-
it('renders correctly (empty)', () => {
|
|
14
|
-
__setState({
|
|
15
|
-
items: [],
|
|
16
|
-
});
|
|
17
|
-
const wrapper = mount(CurrentRefinements);
|
|
18
|
-
expect(wrapper.html()).toMatchSnapshot();
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
describe.each([
|
|
22
|
-
[
|
|
23
|
-
'facet',
|
|
24
|
-
[
|
|
25
|
-
{
|
|
26
|
-
attribute: 'customFacet',
|
|
27
|
-
label: 'customFacet',
|
|
28
|
-
refinements: [
|
|
29
|
-
{
|
|
30
|
-
attribute: 'customFacet',
|
|
31
|
-
type: 'facet',
|
|
32
|
-
value: 'val1',
|
|
33
|
-
label: 'val1',
|
|
34
|
-
},
|
|
35
|
-
],
|
|
36
|
-
},
|
|
37
|
-
],
|
|
38
|
-
],
|
|
39
|
-
[
|
|
40
|
-
'facet exclude',
|
|
41
|
-
[
|
|
42
|
-
{
|
|
43
|
-
attribute: 'customExcludeFacet',
|
|
44
|
-
label: 'customExcludeFacet',
|
|
45
|
-
refinements: [
|
|
46
|
-
{
|
|
47
|
-
attribute: 'customExcludeFacet',
|
|
48
|
-
type: 'exclude',
|
|
49
|
-
value: 'val1',
|
|
50
|
-
label: 'val1',
|
|
51
|
-
exclude: true,
|
|
52
|
-
},
|
|
53
|
-
],
|
|
54
|
-
},
|
|
55
|
-
],
|
|
56
|
-
],
|
|
57
|
-
[
|
|
58
|
-
'disjunctive facet',
|
|
59
|
-
[
|
|
60
|
-
{
|
|
61
|
-
attribute: 'customDisjunctiveFacet',
|
|
62
|
-
label: 'customDisjunctiveFacet',
|
|
63
|
-
refinements: [
|
|
64
|
-
{
|
|
65
|
-
attribute: 'customDisjunctiveFacet',
|
|
66
|
-
type: 'disjunctive',
|
|
67
|
-
value: 'val1',
|
|
68
|
-
label: 'val1',
|
|
69
|
-
},
|
|
70
|
-
],
|
|
71
|
-
},
|
|
72
|
-
],
|
|
73
|
-
],
|
|
74
|
-
[
|
|
75
|
-
'hierarchical facet',
|
|
76
|
-
[
|
|
77
|
-
{
|
|
78
|
-
attribute: 'customHierarchicalFacet',
|
|
79
|
-
label: 'customHierarchicalFacet',
|
|
80
|
-
refinements: [
|
|
81
|
-
{
|
|
82
|
-
attribute: 'customHierarchicalFacet',
|
|
83
|
-
type: 'hierarchical',
|
|
84
|
-
value: 'val1',
|
|
85
|
-
label: 'val1',
|
|
86
|
-
},
|
|
87
|
-
],
|
|
88
|
-
},
|
|
89
|
-
],
|
|
90
|
-
],
|
|
91
|
-
[
|
|
92
|
-
'numeric filters',
|
|
93
|
-
[
|
|
94
|
-
{
|
|
95
|
-
attribute: 'customNumericFilter',
|
|
96
|
-
label: 'customNumericFilter',
|
|
97
|
-
refinements: [
|
|
98
|
-
{
|
|
99
|
-
attribute: 'customNumericFilter',
|
|
100
|
-
type: 'numeric',
|
|
101
|
-
operator: '=',
|
|
102
|
-
value: 'val1',
|
|
103
|
-
label: '= val1',
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
attribute: 'customNumericFilter',
|
|
107
|
-
type: 'numeric',
|
|
108
|
-
operator: '<=',
|
|
109
|
-
value: 'val2',
|
|
110
|
-
label: '≤ val2',
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
attribute: 'customNumericFilter',
|
|
114
|
-
type: 'numeric',
|
|
115
|
-
operator: '>=',
|
|
116
|
-
value: 'val3',
|
|
117
|
-
label: '≥ val3',
|
|
118
|
-
},
|
|
119
|
-
],
|
|
120
|
-
},
|
|
121
|
-
],
|
|
122
|
-
],
|
|
123
|
-
[
|
|
124
|
-
'tag',
|
|
125
|
-
[
|
|
126
|
-
{
|
|
127
|
-
attribute: '_tags',
|
|
128
|
-
label: '_tags',
|
|
129
|
-
refinements: [
|
|
130
|
-
{
|
|
131
|
-
attribute: '_tags',
|
|
132
|
-
type: 'tag',
|
|
133
|
-
value: 'tag1',
|
|
134
|
-
label: 'tag1',
|
|
135
|
-
},
|
|
136
|
-
],
|
|
137
|
-
},
|
|
138
|
-
],
|
|
139
|
-
],
|
|
140
|
-
[
|
|
141
|
-
'query',
|
|
142
|
-
[
|
|
143
|
-
{
|
|
144
|
-
attribute: 'query',
|
|
145
|
-
label: 'query',
|
|
146
|
-
refinements: [
|
|
147
|
-
{
|
|
148
|
-
attribute: 'query',
|
|
149
|
-
type: 'query',
|
|
150
|
-
value: 'search1',
|
|
151
|
-
label: 'search1',
|
|
152
|
-
},
|
|
153
|
-
],
|
|
154
|
-
},
|
|
155
|
-
],
|
|
156
|
-
],
|
|
157
|
-
])('%s', (name, items) => {
|
|
158
|
-
it('renders correct html', () => {
|
|
159
|
-
__setState({
|
|
160
|
-
items,
|
|
161
|
-
});
|
|
162
|
-
|
|
163
|
-
const wrapper = mount(CurrentRefinements);
|
|
164
|
-
|
|
165
|
-
if (name === 'query') {
|
|
166
|
-
// eslint-disable-next-line jest/no-conditional-expect
|
|
167
|
-
expect(
|
|
168
|
-
wrapper.find('.ais-CurrentRefinements-categoryLabel q').text()
|
|
169
|
-
).toEqual('search1');
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
expect(wrapper.html()).toMatchSnapshot();
|
|
173
|
-
});
|
|
174
|
-
});
|
|
175
|
-
|
|
176
|
-
it('calls `refine` with a refinement', async () => {
|
|
177
|
-
const spies = [jest.fn(), jest.fn()];
|
|
178
|
-
|
|
179
|
-
__setState({
|
|
180
|
-
items: [
|
|
181
|
-
{
|
|
182
|
-
attribute: 'brands',
|
|
183
|
-
label: 'brands',
|
|
184
|
-
refine: spies[0],
|
|
185
|
-
refinements: [
|
|
186
|
-
{
|
|
187
|
-
attribute: 'brands',
|
|
188
|
-
type: 'facet',
|
|
189
|
-
value: 'apple',
|
|
190
|
-
label: 'apple',
|
|
191
|
-
},
|
|
192
|
-
],
|
|
193
|
-
},
|
|
194
|
-
{
|
|
195
|
-
attribute: 'colors',
|
|
196
|
-
label: 'colors',
|
|
197
|
-
refine: spies[1],
|
|
198
|
-
refinements: [
|
|
199
|
-
{
|
|
200
|
-
attribute: 'colors',
|
|
201
|
-
type: 'facet',
|
|
202
|
-
value: 'green',
|
|
203
|
-
label: 'green',
|
|
204
|
-
},
|
|
205
|
-
],
|
|
206
|
-
},
|
|
207
|
-
],
|
|
208
|
-
});
|
|
209
|
-
|
|
210
|
-
const wrapper = mount(CurrentRefinements);
|
|
211
|
-
await wrapper.find('.ais-CurrentRefinements-delete').trigger('click');
|
|
212
|
-
|
|
213
|
-
expect(spies[0]).toHaveBeenLastCalledWith({
|
|
214
|
-
attribute: 'brands',
|
|
215
|
-
label: 'apple',
|
|
216
|
-
type: 'facet',
|
|
217
|
-
value: 'apple',
|
|
218
|
-
});
|
|
219
|
-
|
|
220
|
-
expect(spies[1]).not.toHaveBeenCalled();
|
|
221
|
-
});
|
|
222
|
-
|
|
223
13
|
describe('custom render', () => {
|
|
224
14
|
const defaultSlot = `
|
|
225
15
|
<template v-slot="{ refine, items, createURL }">
|
|
@@ -334,7 +334,7 @@ it.skip('Does not allow a change in `routing`', async () => {
|
|
|
334
334
|
).rejects.toMatchInlineSnapshot(`
|
|
335
335
|
[Error: routing configuration can not be changed dynamically at this point.
|
|
336
336
|
|
|
337
|
-
Please open a new issue: https://github.com/algolia/instantsearch
|
|
337
|
+
Please open a new issue: https://github.com/algolia/instantsearch/discussions/new?category=ideas&labels=triage%2cLibrary%3A+Vue+InstantSearch&title=Feature%20request%3A%20dynamic%20props]
|
|
338
338
|
`);
|
|
339
339
|
});
|
|
340
340
|
|
|
@@ -43,168 +43,3 @@ exports[`custom render item slot gives all relevant info to scoped slot 1`] = `
|
|
|
43
43
|
</ul>
|
|
44
44
|
</div>
|
|
45
45
|
`;
|
|
46
|
-
|
|
47
|
-
exports[`disjunctive facet renders correct html 1`] = `
|
|
48
|
-
<div class="ais-CurrentRefinements">
|
|
49
|
-
<ul class="ais-CurrentRefinements-list">
|
|
50
|
-
<li class="ais-CurrentRefinements-item">
|
|
51
|
-
<span class="ais-CurrentRefinements-label">
|
|
52
|
-
CustomDisjunctiveFacet:
|
|
53
|
-
</span>
|
|
54
|
-
<span class="ais-CurrentRefinements-category">
|
|
55
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
56
|
-
val1
|
|
57
|
-
</span>
|
|
58
|
-
<button class="ais-CurrentRefinements-delete">
|
|
59
|
-
✕
|
|
60
|
-
</button>
|
|
61
|
-
</span>
|
|
62
|
-
</li>
|
|
63
|
-
</ul>
|
|
64
|
-
</div>
|
|
65
|
-
`;
|
|
66
|
-
|
|
67
|
-
exports[`facet exclude renders correct html 1`] = `
|
|
68
|
-
<div class="ais-CurrentRefinements">
|
|
69
|
-
<ul class="ais-CurrentRefinements-list">
|
|
70
|
-
<li class="ais-CurrentRefinements-item">
|
|
71
|
-
<span class="ais-CurrentRefinements-label">
|
|
72
|
-
CustomExcludeFacet:
|
|
73
|
-
</span>
|
|
74
|
-
<span class="ais-CurrentRefinements-category">
|
|
75
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
76
|
-
val1
|
|
77
|
-
</span>
|
|
78
|
-
<button class="ais-CurrentRefinements-delete">
|
|
79
|
-
✕
|
|
80
|
-
</button>
|
|
81
|
-
</span>
|
|
82
|
-
</li>
|
|
83
|
-
</ul>
|
|
84
|
-
</div>
|
|
85
|
-
`;
|
|
86
|
-
|
|
87
|
-
exports[`facet renders correct html 1`] = `
|
|
88
|
-
<div class="ais-CurrentRefinements">
|
|
89
|
-
<ul class="ais-CurrentRefinements-list">
|
|
90
|
-
<li class="ais-CurrentRefinements-item">
|
|
91
|
-
<span class="ais-CurrentRefinements-label">
|
|
92
|
-
CustomFacet:
|
|
93
|
-
</span>
|
|
94
|
-
<span class="ais-CurrentRefinements-category">
|
|
95
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
96
|
-
val1
|
|
97
|
-
</span>
|
|
98
|
-
<button class="ais-CurrentRefinements-delete">
|
|
99
|
-
✕
|
|
100
|
-
</button>
|
|
101
|
-
</span>
|
|
102
|
-
</li>
|
|
103
|
-
</ul>
|
|
104
|
-
</div>
|
|
105
|
-
`;
|
|
106
|
-
|
|
107
|
-
exports[`hierarchical facet renders correct html 1`] = `
|
|
108
|
-
<div class="ais-CurrentRefinements">
|
|
109
|
-
<ul class="ais-CurrentRefinements-list">
|
|
110
|
-
<li class="ais-CurrentRefinements-item">
|
|
111
|
-
<span class="ais-CurrentRefinements-label">
|
|
112
|
-
CustomHierarchicalFacet:
|
|
113
|
-
</span>
|
|
114
|
-
<span class="ais-CurrentRefinements-category">
|
|
115
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
116
|
-
val1
|
|
117
|
-
</span>
|
|
118
|
-
<button class="ais-CurrentRefinements-delete">
|
|
119
|
-
✕
|
|
120
|
-
</button>
|
|
121
|
-
</span>
|
|
122
|
-
</li>
|
|
123
|
-
</ul>
|
|
124
|
-
</div>
|
|
125
|
-
`;
|
|
126
|
-
|
|
127
|
-
exports[`numeric filters renders correct html 1`] = `
|
|
128
|
-
<div class="ais-CurrentRefinements">
|
|
129
|
-
<ul class="ais-CurrentRefinements-list">
|
|
130
|
-
<li class="ais-CurrentRefinements-item">
|
|
131
|
-
<span class="ais-CurrentRefinements-label">
|
|
132
|
-
CustomNumericFilter:
|
|
133
|
-
</span>
|
|
134
|
-
<span class="ais-CurrentRefinements-category">
|
|
135
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
136
|
-
= val1
|
|
137
|
-
</span>
|
|
138
|
-
<button class="ais-CurrentRefinements-delete">
|
|
139
|
-
✕
|
|
140
|
-
</button>
|
|
141
|
-
</span>
|
|
142
|
-
<span class="ais-CurrentRefinements-category">
|
|
143
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
144
|
-
≤ val2
|
|
145
|
-
</span>
|
|
146
|
-
<button class="ais-CurrentRefinements-delete">
|
|
147
|
-
✕
|
|
148
|
-
</button>
|
|
149
|
-
</span>
|
|
150
|
-
<span class="ais-CurrentRefinements-category">
|
|
151
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
152
|
-
≥ val3
|
|
153
|
-
</span>
|
|
154
|
-
<button class="ais-CurrentRefinements-delete">
|
|
155
|
-
✕
|
|
156
|
-
</button>
|
|
157
|
-
</span>
|
|
158
|
-
</li>
|
|
159
|
-
</ul>
|
|
160
|
-
</div>
|
|
161
|
-
`;
|
|
162
|
-
|
|
163
|
-
exports[`query renders correct html 1`] = `
|
|
164
|
-
<div class="ais-CurrentRefinements">
|
|
165
|
-
<ul class="ais-CurrentRefinements-list">
|
|
166
|
-
<li class="ais-CurrentRefinements-item">
|
|
167
|
-
<span class="ais-CurrentRefinements-label">
|
|
168
|
-
Query:
|
|
169
|
-
</span>
|
|
170
|
-
<span class="ais-CurrentRefinements-category">
|
|
171
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
172
|
-
<q>
|
|
173
|
-
search1
|
|
174
|
-
</q>
|
|
175
|
-
</span>
|
|
176
|
-
<button class="ais-CurrentRefinements-delete">
|
|
177
|
-
✕
|
|
178
|
-
</button>
|
|
179
|
-
</span>
|
|
180
|
-
</li>
|
|
181
|
-
</ul>
|
|
182
|
-
</div>
|
|
183
|
-
`;
|
|
184
|
-
|
|
185
|
-
exports[`renders correctly (empty) 1`] = `
|
|
186
|
-
<div class="ais-CurrentRefinements ais-CurrentRefinements--noRefinement">
|
|
187
|
-
<ul class="ais-CurrentRefinements-list">
|
|
188
|
-
</ul>
|
|
189
|
-
</div>
|
|
190
|
-
`;
|
|
191
|
-
|
|
192
|
-
exports[`tag renders correct html 1`] = `
|
|
193
|
-
<div class="ais-CurrentRefinements">
|
|
194
|
-
<ul class="ais-CurrentRefinements-list">
|
|
195
|
-
<li class="ais-CurrentRefinements-item">
|
|
196
|
-
<span class="ais-CurrentRefinements-label">
|
|
197
|
-
_tags:
|
|
198
|
-
</span>
|
|
199
|
-
<span class="ais-CurrentRefinements-category">
|
|
200
|
-
<span class="ais-CurrentRefinements-categoryLabel">
|
|
201
|
-
tag1
|
|
202
|
-
</span>
|
|
203
|
-
<button class="ais-CurrentRefinements-delete">
|
|
204
|
-
✕
|
|
205
|
-
</button>
|
|
206
|
-
</span>
|
|
207
|
-
</li>
|
|
208
|
-
</ul>
|
|
209
|
-
</div>
|
|
210
|
-
`;
|
|
@@ -34,14 +34,14 @@ export const createInstantSearchComponent = (component) =>
|
|
|
34
34
|
throw new Error(
|
|
35
35
|
'routing configuration can not be changed dynamically at this point.' +
|
|
36
36
|
'\n\n' +
|
|
37
|
-
'Please open a new issue: https://github.com/algolia/instantsearch
|
|
37
|
+
'Please open a new issue: https://github.com/algolia/instantsearch/discussions/new?category=ideas&labels=triage%2cLibrary%3A+Vue+InstantSearch&title=Feature%20request%3A%20dynamic%20props'
|
|
38
38
|
);
|
|
39
39
|
},
|
|
40
40
|
onStateChange() {
|
|
41
41
|
throw new Error(
|
|
42
42
|
'onStateChange configuration can not be changed dynamically at this point.' +
|
|
43
43
|
'\n\n' +
|
|
44
|
-
'Please open a new issue: https://github.com/algolia/instantsearch
|
|
44
|
+
'Please open a new issue: https://github.com/algolia/instantsearch/discussions/new?category=ideas&labels=triage%2cLibrary%3A+Vue+InstantSearch&title=Feature%20request%3A%20dynamic%20props'
|
|
45
45
|
);
|
|
46
46
|
},
|
|
47
47
|
searchFunction(searchFunction) {
|