@getlupa/client 0.5.1-alpha-12 → 0.5.1-alpha-13
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/dist/cjs/components/search-box/products/SearchBoxProduct.vue.d.ts +3 -1
- package/dist/cjs/components/search-results/SearchResults.vue.d.ts +4 -0
- package/dist/cjs/index.min.js +83 -58
- package/dist/cjs/store/modules/params.d.ts +4 -0
- package/dist/es/components/search-box/products/SearchBoxProduct.vue.d.ts +3 -1
- package/dist/es/components/search-results/SearchResults.vue.d.ts +4 -0
- package/dist/es/index.min.js +83 -58
- package/dist/es/store/modules/params.d.ts +4 -0
- package/dist/iife/components/search-box/products/SearchBoxProduct.vue.d.ts +3 -1
- package/dist/iife/components/search-results/SearchResults.vue.d.ts +4 -0
- package/dist/iife/index.min.js +1 -1
- package/dist/iife/store/modules/params.d.ts +4 -0
- package/package.json +1 -1
|
@@ -4,12 +4,14 @@ import { DocumentSearchBoxPanel } from "@/types/search-box/SearchBoxPanel";
|
|
|
4
4
|
import { SearchBoxOptionLabels } from "@/types/search-box/SearchBoxOptions";
|
|
5
5
|
import { DocumentElement } from "@/types/DocumentElement";
|
|
6
6
|
import { TrackableEventData } from "@/types/search-box/Common";
|
|
7
|
+
import { RoutingBehavior } from "@/types/search-results/RoutingBehavior";
|
|
7
8
|
export default class SearchBoxProduct extends Vue {
|
|
8
9
|
item: Document;
|
|
9
10
|
inputValue: string;
|
|
10
11
|
panelOptions: DocumentSearchBoxPanel;
|
|
11
12
|
labels?: SearchBoxOptionLabels;
|
|
12
13
|
highlighted?: boolean;
|
|
14
|
+
boxRoutingBehavior: RoutingBehavior;
|
|
13
15
|
trackClick: ({ queryKey, data, }: {
|
|
14
16
|
queryKey: string;
|
|
15
17
|
data: TrackableEventData;
|
|
@@ -21,5 +23,5 @@ export default class SearchBoxProduct extends Vue {
|
|
|
21
23
|
get imageElements(): DocumentElement[];
|
|
22
24
|
get detailElements(): DocumentElement[];
|
|
23
25
|
get id(): string;
|
|
24
|
-
handleClick(): void;
|
|
26
|
+
handleClick(event?: Event): void;
|
|
25
27
|
}
|
|
@@ -25,6 +25,10 @@ export default class SearchResults extends Vue {
|
|
|
25
25
|
setDefaultLimit: (defaultLimit: number) => {
|
|
26
26
|
defaultLimit: number;
|
|
27
27
|
};
|
|
28
|
+
handleNoResultsFlag: ({ resultCount, noResultsParam, }: {
|
|
29
|
+
resultCount: number;
|
|
30
|
+
noResultsParam?: string;
|
|
31
|
+
}) => void;
|
|
28
32
|
addParams: (params: QueryParams) => {
|
|
29
33
|
params: QueryParams;
|
|
30
34
|
};
|
package/dist/cjs/index.min.js
CHANGED
|
@@ -19712,8 +19712,36 @@ var linksMatch = function linksMatch(link1, link2) {
|
|
|
19712
19712
|
return link1 === link2 || getRelativePath(link1) === getRelativePath(link2);
|
|
19713
19713
|
};
|
|
19714
19714
|
|
|
19715
|
+
var emitRoutingEvent = function emitRoutingEvent(url) {
|
|
19716
|
+
var event = new CustomEvent(LUPA_ROUTING_EVENT, {
|
|
19717
|
+
detail: url
|
|
19718
|
+
});
|
|
19719
|
+
window.dispatchEvent(event);
|
|
19720
|
+
};
|
|
19721
|
+
var handleRoutingEvent = function handleRoutingEvent(link, event) {
|
|
19722
|
+
var hasEventRouting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
19723
|
+
|
|
19724
|
+
if (!hasEventRouting) {
|
|
19725
|
+
return;
|
|
19726
|
+
}
|
|
19727
|
+
|
|
19728
|
+
event === null || event === void 0 ? void 0 : event.preventDefault();
|
|
19729
|
+
emitRoutingEvent(link);
|
|
19730
|
+
};
|
|
19731
|
+
var redirectToResultsPage = function redirectToResultsPage(link, searchText, facet) {
|
|
19732
|
+
var routingBehavior = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "direct-link";
|
|
19733
|
+
var url = generateResultLink(link, searchText, facet);
|
|
19734
|
+
|
|
19735
|
+
if (routingBehavior === "event") {
|
|
19736
|
+
emitRoutingEvent(url);
|
|
19737
|
+
} else {
|
|
19738
|
+
window.location.assign(url);
|
|
19739
|
+
}
|
|
19740
|
+
};
|
|
19741
|
+
|
|
19715
19742
|
var history$3 = namespace("history");
|
|
19716
19743
|
var tracking$5 = namespace("tracking");
|
|
19744
|
+
var options$9 = namespace("options");
|
|
19717
19745
|
|
|
19718
19746
|
var SearchBoxProduct = /*#__PURE__*/function (_Vue) {
|
|
19719
19747
|
_inherits(SearchBoxProduct, _Vue);
|
|
@@ -19762,7 +19790,7 @@ var SearchBoxProduct = /*#__PURE__*/function (_Vue) {
|
|
|
19762
19790
|
}
|
|
19763
19791
|
}, {
|
|
19764
19792
|
key: "handleClick",
|
|
19765
|
-
value: function handleClick() {
|
|
19793
|
+
value: function handleClick(event) {
|
|
19766
19794
|
if (this.panelOptions.titleKey) {
|
|
19767
19795
|
this.addHistory({
|
|
19768
19796
|
item: this.item[this.panelOptions.titleKey] || ""
|
|
@@ -19785,6 +19813,12 @@ var SearchBoxProduct = /*#__PURE__*/function (_Vue) {
|
|
|
19785
19813
|
}
|
|
19786
19814
|
}
|
|
19787
19815
|
});
|
|
19816
|
+
|
|
19817
|
+
if (!this.link) {
|
|
19818
|
+
return;
|
|
19819
|
+
}
|
|
19820
|
+
|
|
19821
|
+
handleRoutingEvent(this.link, event, this.boxRoutingBehavior === "event");
|
|
19788
19822
|
}
|
|
19789
19823
|
}]);
|
|
19790
19824
|
|
|
@@ -19805,6 +19839,8 @@ __decorate([Prop({
|
|
|
19805
19839
|
default: false
|
|
19806
19840
|
})], SearchBoxProduct.prototype, "highlighted", void 0);
|
|
19807
19841
|
|
|
19842
|
+
__decorate([options$9.Getter("boxRoutingBehavior")], SearchBoxProduct.prototype, "boxRoutingBehavior", void 0);
|
|
19843
|
+
|
|
19808
19844
|
__decorate([tracking$5.Action("track")], SearchBoxProduct.prototype, "trackClick", void 0);
|
|
19809
19845
|
|
|
19810
19846
|
__decorate([history$3.Action("add")], SearchBoxProduct.prototype, "addHistory", void 0);
|
|
@@ -27438,33 +27474,6 @@ var __vue_component__$G = /*#__PURE__*/normalizeComponent({
|
|
|
27438
27474
|
staticRenderFns: __vue_staticRenderFns__$G
|
|
27439
27475
|
}, __vue_inject_styles__$G, __vue_script__$G, __vue_scope_id__$G, __vue_is_functional_template__$G, __vue_module_identifier__$G, false, undefined, undefined, undefined);
|
|
27440
27476
|
|
|
27441
|
-
var emitRoutingEvent = function emitRoutingEvent(url) {
|
|
27442
|
-
var event = new CustomEvent(LUPA_ROUTING_EVENT, {
|
|
27443
|
-
detail: url
|
|
27444
|
-
});
|
|
27445
|
-
window.dispatchEvent(event);
|
|
27446
|
-
};
|
|
27447
|
-
var handleRoutingEvent = function handleRoutingEvent(link, event) {
|
|
27448
|
-
var hasEventRouting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
27449
|
-
|
|
27450
|
-
if (!hasEventRouting) {
|
|
27451
|
-
return;
|
|
27452
|
-
}
|
|
27453
|
-
|
|
27454
|
-
event === null || event === void 0 ? void 0 : event.preventDefault();
|
|
27455
|
-
emitRoutingEvent(link);
|
|
27456
|
-
};
|
|
27457
|
-
var redirectToResultsPage = function redirectToResultsPage(link, searchText, facet) {
|
|
27458
|
-
var routingBehavior = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "direct-link";
|
|
27459
|
-
var url = generateResultLink(link, searchText, facet);
|
|
27460
|
-
|
|
27461
|
-
if (routingBehavior === "event") {
|
|
27462
|
-
emitRoutingEvent(url);
|
|
27463
|
-
} else {
|
|
27464
|
-
window.location.assign(url);
|
|
27465
|
-
}
|
|
27466
|
-
};
|
|
27467
|
-
|
|
27468
27477
|
var CategoryFilterItem = /*#__PURE__*/function (_Vue) {
|
|
27469
27478
|
_inherits(CategoryFilterItem, _Vue);
|
|
27470
27479
|
|
|
@@ -32477,30 +32486,17 @@ var SearchResults = /*#__PURE__*/function (_Vue) {
|
|
|
32477
32486
|
value: function handleResults(_ref) {
|
|
32478
32487
|
var queryKey = _ref.queryKey,
|
|
32479
32488
|
results = _ref.results;
|
|
32489
|
+
|
|
32490
|
+
var _a;
|
|
32491
|
+
|
|
32480
32492
|
this.trackResults({
|
|
32481
32493
|
queryKey: queryKey,
|
|
32482
32494
|
results: results
|
|
32483
32495
|
});
|
|
32484
|
-
|
|
32485
|
-
|
|
32486
|
-
|
|
32487
|
-
|
|
32488
|
-
}
|
|
32489
|
-
|
|
32490
|
-
if (results.total < 1) {
|
|
32491
|
-
this.appendParams({
|
|
32492
|
-
params: [{
|
|
32493
|
-
name: noResultsParam,
|
|
32494
|
-
value: "true"
|
|
32495
|
-
}],
|
|
32496
|
-
save: false
|
|
32497
|
-
});
|
|
32498
|
-
} else {
|
|
32499
|
-
this.removeParams({
|
|
32500
|
-
paramsToRemove: [noResultsParam],
|
|
32501
|
-
save: false
|
|
32502
|
-
});
|
|
32503
|
-
}
|
|
32496
|
+
this.handleNoResultsFlag({
|
|
32497
|
+
resultCount: (_a = results === null || results === void 0 ? void 0 : results.total) !== null && _a !== void 0 ? _a : 0,
|
|
32498
|
+
noResultsParam: this.options.noResultsQueryFlag
|
|
32499
|
+
});
|
|
32504
32500
|
}
|
|
32505
32501
|
}, {
|
|
32506
32502
|
key: "handleResize",
|
|
@@ -32543,6 +32539,8 @@ __decorate([params$1.State("searchString")], SearchResults.prototype, "searchStr
|
|
|
32543
32539
|
|
|
32544
32540
|
__decorate([params$1.Action("setDefaultLimit")], SearchResults.prototype, "setDefaultLimit", void 0);
|
|
32545
32541
|
|
|
32542
|
+
__decorate([params$1.Action("handleNoResultsFlag")], SearchResults.prototype, "handleNoResultsFlag", void 0);
|
|
32543
|
+
|
|
32546
32544
|
__decorate([params$1.Action("add")], SearchResults.prototype, "addParams", void 0);
|
|
32547
32545
|
|
|
32548
32546
|
__decorate([params$1.Action("removeParams")], SearchResults.prototype, "removeParams", void 0);
|
|
@@ -34345,11 +34343,36 @@ var ParamsModule = /*#__PURE__*/function (_VuexModule) {
|
|
|
34345
34343
|
searchString: url.search
|
|
34346
34344
|
} : {};
|
|
34347
34345
|
}
|
|
34346
|
+
}, {
|
|
34347
|
+
key: "handleNoResultsFlag",
|
|
34348
|
+
value: function handleNoResultsFlag(_ref3) {
|
|
34349
|
+
var resultCount = _ref3.resultCount,
|
|
34350
|
+
noResultsParam = _ref3.noResultsParam;
|
|
34351
|
+
|
|
34352
|
+
if (!noResultsParam || this.searchResultsLink && this.searchResultsLink !== window.location.pathname) {
|
|
34353
|
+
return;
|
|
34354
|
+
}
|
|
34355
|
+
|
|
34356
|
+
if (resultCount < 1) {
|
|
34357
|
+
this.context.dispatch("appendParams", {
|
|
34358
|
+
params: [{
|
|
34359
|
+
name: noResultsParam,
|
|
34360
|
+
value: "true"
|
|
34361
|
+
}],
|
|
34362
|
+
save: false
|
|
34363
|
+
});
|
|
34364
|
+
} else {
|
|
34365
|
+
this.context.dispatch("removeParams", {
|
|
34366
|
+
paramsToRemove: [noResultsParam],
|
|
34367
|
+
save: false
|
|
34368
|
+
});
|
|
34369
|
+
}
|
|
34370
|
+
}
|
|
34348
34371
|
}, {
|
|
34349
34372
|
key: "goToResults",
|
|
34350
|
-
value: function goToResults(
|
|
34351
|
-
var searchText =
|
|
34352
|
-
facet =
|
|
34373
|
+
value: function goToResults(_ref4) {
|
|
34374
|
+
var searchText = _ref4.searchText,
|
|
34375
|
+
facet = _ref4.facet;
|
|
34353
34376
|
|
|
34354
34377
|
var _a;
|
|
34355
34378
|
|
|
@@ -34380,13 +34403,13 @@ var ParamsModule = /*#__PURE__*/function (_VuexModule) {
|
|
|
34380
34403
|
}
|
|
34381
34404
|
}, {
|
|
34382
34405
|
key: "appendParams",
|
|
34383
|
-
value: function appendParams(
|
|
34384
|
-
var params =
|
|
34385
|
-
paramsToRemove =
|
|
34386
|
-
|
|
34387
|
-
encode =
|
|
34388
|
-
|
|
34389
|
-
save =
|
|
34406
|
+
value: function appendParams(_ref5) {
|
|
34407
|
+
var params = _ref5.params,
|
|
34408
|
+
paramsToRemove = _ref5.paramsToRemove,
|
|
34409
|
+
_ref5$encode = _ref5.encode,
|
|
34410
|
+
encode = _ref5$encode === void 0 ? true : _ref5$encode,
|
|
34411
|
+
_ref5$save = _ref5.save,
|
|
34412
|
+
save = _ref5$save === void 0 ? true : _ref5$save;
|
|
34390
34413
|
|
|
34391
34414
|
if (!(params === null || params === void 0 ? void 0 : params.length)) {
|
|
34392
34415
|
return {
|
|
@@ -34453,6 +34476,8 @@ __decorate([Action({
|
|
|
34453
34476
|
commit: "save"
|
|
34454
34477
|
})], ParamsModule.prototype, "removeParams", null);
|
|
34455
34478
|
|
|
34479
|
+
__decorate([Action({})], ParamsModule.prototype, "handleNoResultsFlag", null);
|
|
34480
|
+
|
|
34456
34481
|
__decorate([Action({})], ParamsModule.prototype, "goToResults", null);
|
|
34457
34482
|
|
|
34458
34483
|
__decorate([Action({
|
|
@@ -32,6 +32,10 @@ export default class ParamsModule extends VuexModule {
|
|
|
32
32
|
params?: QueryParams;
|
|
33
33
|
searchString?: string;
|
|
34
34
|
};
|
|
35
|
+
handleNoResultsFlag({ resultCount, noResultsParam, }: {
|
|
36
|
+
resultCount: number;
|
|
37
|
+
noResultsParam?: string;
|
|
38
|
+
}): void;
|
|
35
39
|
goToResults({ searchText, facet, }: {
|
|
36
40
|
searchText: string;
|
|
37
41
|
facet?: InputSuggestionFacet;
|
|
@@ -4,12 +4,14 @@ import { DocumentSearchBoxPanel } from "@/types/search-box/SearchBoxPanel";
|
|
|
4
4
|
import { SearchBoxOptionLabels } from "@/types/search-box/SearchBoxOptions";
|
|
5
5
|
import { DocumentElement } from "@/types/DocumentElement";
|
|
6
6
|
import { TrackableEventData } from "@/types/search-box/Common";
|
|
7
|
+
import { RoutingBehavior } from "@/types/search-results/RoutingBehavior";
|
|
7
8
|
export default class SearchBoxProduct extends Vue {
|
|
8
9
|
item: Document;
|
|
9
10
|
inputValue: string;
|
|
10
11
|
panelOptions: DocumentSearchBoxPanel;
|
|
11
12
|
labels?: SearchBoxOptionLabels;
|
|
12
13
|
highlighted?: boolean;
|
|
14
|
+
boxRoutingBehavior: RoutingBehavior;
|
|
13
15
|
trackClick: ({ queryKey, data, }: {
|
|
14
16
|
queryKey: string;
|
|
15
17
|
data: TrackableEventData;
|
|
@@ -21,5 +23,5 @@ export default class SearchBoxProduct extends Vue {
|
|
|
21
23
|
get imageElements(): DocumentElement[];
|
|
22
24
|
get detailElements(): DocumentElement[];
|
|
23
25
|
get id(): string;
|
|
24
|
-
handleClick(): void;
|
|
26
|
+
handleClick(event?: Event): void;
|
|
25
27
|
}
|
|
@@ -25,6 +25,10 @@ export default class SearchResults extends Vue {
|
|
|
25
25
|
setDefaultLimit: (defaultLimit: number) => {
|
|
26
26
|
defaultLimit: number;
|
|
27
27
|
};
|
|
28
|
+
handleNoResultsFlag: ({ resultCount, noResultsParam, }: {
|
|
29
|
+
resultCount: number;
|
|
30
|
+
noResultsParam?: string;
|
|
31
|
+
}) => void;
|
|
28
32
|
addParams: (params: QueryParams) => {
|
|
29
33
|
params: QueryParams;
|
|
30
34
|
};
|
package/dist/es/index.min.js
CHANGED
|
@@ -19708,8 +19708,36 @@ var linksMatch = function linksMatch(link1, link2) {
|
|
|
19708
19708
|
return link1 === link2 || getRelativePath(link1) === getRelativePath(link2);
|
|
19709
19709
|
};
|
|
19710
19710
|
|
|
19711
|
+
var emitRoutingEvent = function emitRoutingEvent(url) {
|
|
19712
|
+
var event = new CustomEvent(LUPA_ROUTING_EVENT, {
|
|
19713
|
+
detail: url
|
|
19714
|
+
});
|
|
19715
|
+
window.dispatchEvent(event);
|
|
19716
|
+
};
|
|
19717
|
+
var handleRoutingEvent = function handleRoutingEvent(link, event) {
|
|
19718
|
+
var hasEventRouting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
19719
|
+
|
|
19720
|
+
if (!hasEventRouting) {
|
|
19721
|
+
return;
|
|
19722
|
+
}
|
|
19723
|
+
|
|
19724
|
+
event === null || event === void 0 ? void 0 : event.preventDefault();
|
|
19725
|
+
emitRoutingEvent(link);
|
|
19726
|
+
};
|
|
19727
|
+
var redirectToResultsPage = function redirectToResultsPage(link, searchText, facet) {
|
|
19728
|
+
var routingBehavior = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "direct-link";
|
|
19729
|
+
var url = generateResultLink(link, searchText, facet);
|
|
19730
|
+
|
|
19731
|
+
if (routingBehavior === "event") {
|
|
19732
|
+
emitRoutingEvent(url);
|
|
19733
|
+
} else {
|
|
19734
|
+
window.location.assign(url);
|
|
19735
|
+
}
|
|
19736
|
+
};
|
|
19737
|
+
|
|
19711
19738
|
var history$3 = namespace("history");
|
|
19712
19739
|
var tracking$5 = namespace("tracking");
|
|
19740
|
+
var options$9 = namespace("options");
|
|
19713
19741
|
|
|
19714
19742
|
var SearchBoxProduct = /*#__PURE__*/function (_Vue) {
|
|
19715
19743
|
_inherits(SearchBoxProduct, _Vue);
|
|
@@ -19758,7 +19786,7 @@ var SearchBoxProduct = /*#__PURE__*/function (_Vue) {
|
|
|
19758
19786
|
}
|
|
19759
19787
|
}, {
|
|
19760
19788
|
key: "handleClick",
|
|
19761
|
-
value: function handleClick() {
|
|
19789
|
+
value: function handleClick(event) {
|
|
19762
19790
|
if (this.panelOptions.titleKey) {
|
|
19763
19791
|
this.addHistory({
|
|
19764
19792
|
item: this.item[this.panelOptions.titleKey] || ""
|
|
@@ -19781,6 +19809,12 @@ var SearchBoxProduct = /*#__PURE__*/function (_Vue) {
|
|
|
19781
19809
|
}
|
|
19782
19810
|
}
|
|
19783
19811
|
});
|
|
19812
|
+
|
|
19813
|
+
if (!this.link) {
|
|
19814
|
+
return;
|
|
19815
|
+
}
|
|
19816
|
+
|
|
19817
|
+
handleRoutingEvent(this.link, event, this.boxRoutingBehavior === "event");
|
|
19784
19818
|
}
|
|
19785
19819
|
}]);
|
|
19786
19820
|
|
|
@@ -19801,6 +19835,8 @@ __decorate([Prop({
|
|
|
19801
19835
|
default: false
|
|
19802
19836
|
})], SearchBoxProduct.prototype, "highlighted", void 0);
|
|
19803
19837
|
|
|
19838
|
+
__decorate([options$9.Getter("boxRoutingBehavior")], SearchBoxProduct.prototype, "boxRoutingBehavior", void 0);
|
|
19839
|
+
|
|
19804
19840
|
__decorate([tracking$5.Action("track")], SearchBoxProduct.prototype, "trackClick", void 0);
|
|
19805
19841
|
|
|
19806
19842
|
__decorate([history$3.Action("add")], SearchBoxProduct.prototype, "addHistory", void 0);
|
|
@@ -27434,33 +27470,6 @@ var __vue_component__$G = /*#__PURE__*/normalizeComponent({
|
|
|
27434
27470
|
staticRenderFns: __vue_staticRenderFns__$G
|
|
27435
27471
|
}, __vue_inject_styles__$G, __vue_script__$G, __vue_scope_id__$G, __vue_is_functional_template__$G, __vue_module_identifier__$G, false, undefined, undefined, undefined);
|
|
27436
27472
|
|
|
27437
|
-
var emitRoutingEvent = function emitRoutingEvent(url) {
|
|
27438
|
-
var event = new CustomEvent(LUPA_ROUTING_EVENT, {
|
|
27439
|
-
detail: url
|
|
27440
|
-
});
|
|
27441
|
-
window.dispatchEvent(event);
|
|
27442
|
-
};
|
|
27443
|
-
var handleRoutingEvent = function handleRoutingEvent(link, event) {
|
|
27444
|
-
var hasEventRouting = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
27445
|
-
|
|
27446
|
-
if (!hasEventRouting) {
|
|
27447
|
-
return;
|
|
27448
|
-
}
|
|
27449
|
-
|
|
27450
|
-
event === null || event === void 0 ? void 0 : event.preventDefault();
|
|
27451
|
-
emitRoutingEvent(link);
|
|
27452
|
-
};
|
|
27453
|
-
var redirectToResultsPage = function redirectToResultsPage(link, searchText, facet) {
|
|
27454
|
-
var routingBehavior = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "direct-link";
|
|
27455
|
-
var url = generateResultLink(link, searchText, facet);
|
|
27456
|
-
|
|
27457
|
-
if (routingBehavior === "event") {
|
|
27458
|
-
emitRoutingEvent(url);
|
|
27459
|
-
} else {
|
|
27460
|
-
window.location.assign(url);
|
|
27461
|
-
}
|
|
27462
|
-
};
|
|
27463
|
-
|
|
27464
27473
|
var CategoryFilterItem = /*#__PURE__*/function (_Vue) {
|
|
27465
27474
|
_inherits(CategoryFilterItem, _Vue);
|
|
27466
27475
|
|
|
@@ -32473,30 +32482,17 @@ var SearchResults = /*#__PURE__*/function (_Vue) {
|
|
|
32473
32482
|
value: function handleResults(_ref) {
|
|
32474
32483
|
var queryKey = _ref.queryKey,
|
|
32475
32484
|
results = _ref.results;
|
|
32485
|
+
|
|
32486
|
+
var _a;
|
|
32487
|
+
|
|
32476
32488
|
this.trackResults({
|
|
32477
32489
|
queryKey: queryKey,
|
|
32478
32490
|
results: results
|
|
32479
32491
|
});
|
|
32480
|
-
|
|
32481
|
-
|
|
32482
|
-
|
|
32483
|
-
|
|
32484
|
-
}
|
|
32485
|
-
|
|
32486
|
-
if (results.total < 1) {
|
|
32487
|
-
this.appendParams({
|
|
32488
|
-
params: [{
|
|
32489
|
-
name: noResultsParam,
|
|
32490
|
-
value: "true"
|
|
32491
|
-
}],
|
|
32492
|
-
save: false
|
|
32493
|
-
});
|
|
32494
|
-
} else {
|
|
32495
|
-
this.removeParams({
|
|
32496
|
-
paramsToRemove: [noResultsParam],
|
|
32497
|
-
save: false
|
|
32498
|
-
});
|
|
32499
|
-
}
|
|
32492
|
+
this.handleNoResultsFlag({
|
|
32493
|
+
resultCount: (_a = results === null || results === void 0 ? void 0 : results.total) !== null && _a !== void 0 ? _a : 0,
|
|
32494
|
+
noResultsParam: this.options.noResultsQueryFlag
|
|
32495
|
+
});
|
|
32500
32496
|
}
|
|
32501
32497
|
}, {
|
|
32502
32498
|
key: "handleResize",
|
|
@@ -32539,6 +32535,8 @@ __decorate([params$1.State("searchString")], SearchResults.prototype, "searchStr
|
|
|
32539
32535
|
|
|
32540
32536
|
__decorate([params$1.Action("setDefaultLimit")], SearchResults.prototype, "setDefaultLimit", void 0);
|
|
32541
32537
|
|
|
32538
|
+
__decorate([params$1.Action("handleNoResultsFlag")], SearchResults.prototype, "handleNoResultsFlag", void 0);
|
|
32539
|
+
|
|
32542
32540
|
__decorate([params$1.Action("add")], SearchResults.prototype, "addParams", void 0);
|
|
32543
32541
|
|
|
32544
32542
|
__decorate([params$1.Action("removeParams")], SearchResults.prototype, "removeParams", void 0);
|
|
@@ -34341,11 +34339,36 @@ var ParamsModule = /*#__PURE__*/function (_VuexModule) {
|
|
|
34341
34339
|
searchString: url.search
|
|
34342
34340
|
} : {};
|
|
34343
34341
|
}
|
|
34342
|
+
}, {
|
|
34343
|
+
key: "handleNoResultsFlag",
|
|
34344
|
+
value: function handleNoResultsFlag(_ref3) {
|
|
34345
|
+
var resultCount = _ref3.resultCount,
|
|
34346
|
+
noResultsParam = _ref3.noResultsParam;
|
|
34347
|
+
|
|
34348
|
+
if (!noResultsParam || this.searchResultsLink && this.searchResultsLink !== window.location.pathname) {
|
|
34349
|
+
return;
|
|
34350
|
+
}
|
|
34351
|
+
|
|
34352
|
+
if (resultCount < 1) {
|
|
34353
|
+
this.context.dispatch("appendParams", {
|
|
34354
|
+
params: [{
|
|
34355
|
+
name: noResultsParam,
|
|
34356
|
+
value: "true"
|
|
34357
|
+
}],
|
|
34358
|
+
save: false
|
|
34359
|
+
});
|
|
34360
|
+
} else {
|
|
34361
|
+
this.context.dispatch("removeParams", {
|
|
34362
|
+
paramsToRemove: [noResultsParam],
|
|
34363
|
+
save: false
|
|
34364
|
+
});
|
|
34365
|
+
}
|
|
34366
|
+
}
|
|
34344
34367
|
}, {
|
|
34345
34368
|
key: "goToResults",
|
|
34346
|
-
value: function goToResults(
|
|
34347
|
-
var searchText =
|
|
34348
|
-
facet =
|
|
34369
|
+
value: function goToResults(_ref4) {
|
|
34370
|
+
var searchText = _ref4.searchText,
|
|
34371
|
+
facet = _ref4.facet;
|
|
34349
34372
|
|
|
34350
34373
|
var _a;
|
|
34351
34374
|
|
|
@@ -34376,13 +34399,13 @@ var ParamsModule = /*#__PURE__*/function (_VuexModule) {
|
|
|
34376
34399
|
}
|
|
34377
34400
|
}, {
|
|
34378
34401
|
key: "appendParams",
|
|
34379
|
-
value: function appendParams(
|
|
34380
|
-
var params =
|
|
34381
|
-
paramsToRemove =
|
|
34382
|
-
|
|
34383
|
-
encode =
|
|
34384
|
-
|
|
34385
|
-
save =
|
|
34402
|
+
value: function appendParams(_ref5) {
|
|
34403
|
+
var params = _ref5.params,
|
|
34404
|
+
paramsToRemove = _ref5.paramsToRemove,
|
|
34405
|
+
_ref5$encode = _ref5.encode,
|
|
34406
|
+
encode = _ref5$encode === void 0 ? true : _ref5$encode,
|
|
34407
|
+
_ref5$save = _ref5.save,
|
|
34408
|
+
save = _ref5$save === void 0 ? true : _ref5$save;
|
|
34386
34409
|
|
|
34387
34410
|
if (!(params === null || params === void 0 ? void 0 : params.length)) {
|
|
34388
34411
|
return {
|
|
@@ -34449,6 +34472,8 @@ __decorate([Action({
|
|
|
34449
34472
|
commit: "save"
|
|
34450
34473
|
})], ParamsModule.prototype, "removeParams", null);
|
|
34451
34474
|
|
|
34475
|
+
__decorate([Action({})], ParamsModule.prototype, "handleNoResultsFlag", null);
|
|
34476
|
+
|
|
34452
34477
|
__decorate([Action({})], ParamsModule.prototype, "goToResults", null);
|
|
34453
34478
|
|
|
34454
34479
|
__decorate([Action({
|
|
@@ -32,6 +32,10 @@ export default class ParamsModule extends VuexModule {
|
|
|
32
32
|
params?: QueryParams;
|
|
33
33
|
searchString?: string;
|
|
34
34
|
};
|
|
35
|
+
handleNoResultsFlag({ resultCount, noResultsParam, }: {
|
|
36
|
+
resultCount: number;
|
|
37
|
+
noResultsParam?: string;
|
|
38
|
+
}): void;
|
|
35
39
|
goToResults({ searchText, facet, }: {
|
|
36
40
|
searchText: string;
|
|
37
41
|
facet?: InputSuggestionFacet;
|
|
@@ -4,12 +4,14 @@ import { DocumentSearchBoxPanel } from "@/types/search-box/SearchBoxPanel";
|
|
|
4
4
|
import { SearchBoxOptionLabels } from "@/types/search-box/SearchBoxOptions";
|
|
5
5
|
import { DocumentElement } from "@/types/DocumentElement";
|
|
6
6
|
import { TrackableEventData } from "@/types/search-box/Common";
|
|
7
|
+
import { RoutingBehavior } from "@/types/search-results/RoutingBehavior";
|
|
7
8
|
export default class SearchBoxProduct extends Vue {
|
|
8
9
|
item: Document;
|
|
9
10
|
inputValue: string;
|
|
10
11
|
panelOptions: DocumentSearchBoxPanel;
|
|
11
12
|
labels?: SearchBoxOptionLabels;
|
|
12
13
|
highlighted?: boolean;
|
|
14
|
+
boxRoutingBehavior: RoutingBehavior;
|
|
13
15
|
trackClick: ({ queryKey, data, }: {
|
|
14
16
|
queryKey: string;
|
|
15
17
|
data: TrackableEventData;
|
|
@@ -21,5 +23,5 @@ export default class SearchBoxProduct extends Vue {
|
|
|
21
23
|
get imageElements(): DocumentElement[];
|
|
22
24
|
get detailElements(): DocumentElement[];
|
|
23
25
|
get id(): string;
|
|
24
|
-
handleClick(): void;
|
|
26
|
+
handleClick(event?: Event): void;
|
|
25
27
|
}
|
|
@@ -25,6 +25,10 @@ export default class SearchResults extends Vue {
|
|
|
25
25
|
setDefaultLimit: (defaultLimit: number) => {
|
|
26
26
|
defaultLimit: number;
|
|
27
27
|
};
|
|
28
|
+
handleNoResultsFlag: ({ resultCount, noResultsParam, }: {
|
|
29
|
+
resultCount: number;
|
|
30
|
+
noResultsParam?: string;
|
|
31
|
+
}) => void;
|
|
28
32
|
addParams: (params: QueryParams) => {
|
|
29
33
|
params: QueryParams;
|
|
30
34
|
};
|