@searchstax-inc/searchstudio-ux-angular 2.0.0 → 4.1.0
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 +9 -1
- package/README.md +40 -5
- package/package.json +5 -2
- package/esm2022/lib/components/searchstax-input/searchstax-input.component.mjs +0 -81
- package/esm2022/lib/components/searchstax-results/searchstax-results.component.mjs +0 -85
- package/esm2022/lib/components/searchstax-search-answer/searchstax-search-answer.component.mjs +0 -47
- package/esm2022/lib/components/searchstax-search-external/searchstax-search-external.component.mjs +0 -41
- package/esm2022/lib/components/searchstax-search-facets/searchstax-search-facets.component.mjs +0 -114
- package/esm2022/lib/components/searchstax-search-location/searchstax-search-location.component.mjs +0 -92
- package/esm2022/lib/components/searchstax-search-overview/searchstax-search-overview.component.mjs +0 -42
- package/esm2022/lib/components/searchstax-search-pagination/searchstax-search-pagination.component.mjs +0 -64
- package/esm2022/lib/components/searchstax-search-related/searchstax-search-related.component.mjs +0 -45
- package/esm2022/lib/components/searchstax-search-sorting/searchstax-search-sorting.component.mjs +0 -46
- package/esm2022/lib/components/searchstax-wrapper.component.mjs +0 -93
- package/esm2022/lib/components/templates/SearchstaxLocationWidgetTemplateConfig.mjs +0 -91
- package/esm2022/lib/components/templates/searchstax-search-answer-template.mjs +0 -119
- package/esm2022/lib/components/templates/searchstax-search-external-template.mjs +0 -107
- package/esm2022/lib/components/templates/searchstax-search-facet-desktop-template.mjs +0 -207
- package/esm2022/lib/components/templates/searchstax-search-facet-mobile-template.mjs +0 -343
- package/esm2022/lib/components/templates/searchstax-search-input-template.mjs +0 -126
- package/esm2022/lib/components/templates/searchstax-search-location-template.mjs +0 -152
- package/esm2022/lib/components/templates/searchstax-search-no-results-template.mjs +0 -85
- package/esm2022/lib/components/templates/searchstax-search-overview-template.mjs +0 -87
- package/esm2022/lib/components/templates/searchstax-search-pagination-infinite-template.mjs +0 -60
- package/esm2022/lib/components/templates/searchstax-search-pagination-template.mjs +0 -96
- package/esm2022/lib/components/templates/searchstax-search-related-template.mjs +0 -81
- package/esm2022/lib/components/templates/searchstax-search-results-template.mjs +0 -171
- package/esm2022/lib/components/templates/searchstax-search-sorting-template.mjs +0 -76
- package/esm2022/lib/searchstudio-ux-angular.module.mjs +0 -138
- package/esm2022/lib/services/store-service.service.mjs +0 -17
- package/esm2022/public-api.mjs +0 -30
- package/esm2022/searchstax-inc-searchstudio-ux-angular.mjs +0 -5
- package/fesm2022/searchstax-inc-searchstudio-ux-angular.mjs +0 -2594
- package/fesm2022/searchstax-inc-searchstudio-ux-angular.mjs.map +0 -1
- package/index.d.ts +0 -5
- package/lib/components/searchstax-input/searchstax-input.component.d.ts +0 -37
- package/lib/components/searchstax-results/searchstax-results.component.d.ts +0 -26
- package/lib/components/searchstax-search-answer/searchstax-search-answer.component.d.ts +0 -19
- package/lib/components/searchstax-search-external/searchstax-search-external.component.d.ts +0 -17
- package/lib/components/searchstax-search-facets/searchstax-search-facets.component.d.ts +0 -37
- package/lib/components/searchstax-search-location/searchstax-search-location.component.d.ts +0 -33
- package/lib/components/searchstax-search-overview/searchstax-search-overview.component.d.ts +0 -17
- package/lib/components/searchstax-search-pagination/searchstax-search-pagination.component.d.ts +0 -21
- package/lib/components/searchstax-search-related/searchstax-search-related.component.d.ts +0 -19
- package/lib/components/searchstax-search-sorting/searchstax-search-sorting.component.d.ts +0 -18
- package/lib/components/searchstax-wrapper.component.d.ts +0 -31
- package/lib/components/templates/SearchstaxLocationWidgetTemplateConfig.d.ts +0 -13
- package/lib/components/templates/searchstax-search-answer-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-external-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-facet-desktop-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-facet-mobile-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-input-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-location-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-no-results-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-overview-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-pagination-infinite-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-pagination-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-related-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-results-template.d.ts +0 -7
- package/lib/components/templates/searchstax-search-sorting-template.d.ts +0 -7
- package/lib/searchstudio-ux-angular.module.d.ts +0 -32
- package/lib/services/store-service.service.d.ts +0 -8
- package/public-api.d.ts +0 -26
package/CHANGELOG.md
CHANGED
|
@@ -20,4 +20,12 @@ All notable changes to the "searchstudio-ux-angular" project will be documented
|
|
|
20
20
|
- Readme updated to give more information on how widgets work
|
|
21
21
|
### Bug Fixes
|
|
22
22
|
- NVDA facet groups now announce state
|
|
23
|
-
- NVDA added ability to jump from facets to results section
|
|
23
|
+
- NVDA added ability to jump from facets to results section
|
|
24
|
+
|
|
25
|
+
## [4.1.0]
|
|
26
|
+
### Bug Fixes
|
|
27
|
+
- stopped making unnecessary calls on blank search page load
|
|
28
|
+
- accessibility: template modified to only read result title for accessibility
|
|
29
|
+
- accessibility: leave feedback button state change is now announced
|
|
30
|
+
- accessibility: focus persistance added for feedback rating
|
|
31
|
+
- added support for react 19
|
package/README.md
CHANGED
|
@@ -160,12 +160,12 @@ The AppSearchstaxAnswer component for Angular provides an AI answer widget for y
|
|
|
160
160
|
**Usage**
|
|
161
161
|
|
|
162
162
|
```
|
|
163
|
-
<app-searchstax-answer [
|
|
163
|
+
<app-searchstax-answer [showMoreAfterWordCount]="100"></app-searchstax-answer>
|
|
164
164
|
```
|
|
165
165
|
|
|
166
166
|
**Props**
|
|
167
167
|
|
|
168
|
-
-
|
|
168
|
+
- showMoreAfterWordCount - number(default 100) determining after how many symbols UI will show “Read More” view.
|
|
169
169
|
- feedbackWidget – an optional object that configures thumbs-up and thumbs-down feedback functionality.
|
|
170
170
|
|
|
171
171
|
Example of feedbackWidget config:
|
|
@@ -191,7 +191,7 @@ It receives the following props:
|
|
|
191
191
|
**Example**
|
|
192
192
|
|
|
193
193
|
```
|
|
194
|
-
<app-searchstax-answer [
|
|
194
|
+
<app-searchstax-answer [showMoreAfterWordCount]="100" [templateOverride]="answerTemplate" [feedbackwidget]="feedbackConfig">
|
|
195
195
|
<ng-template
|
|
196
196
|
#answerTemplate
|
|
197
197
|
let-answerData="answerData"
|
|
@@ -263,12 +263,12 @@ The SearchstaxInputWidget component for Angular provides a search input with aut
|
|
|
263
263
|
- suggestAfterMinChars - default 3. Number of characters needed for autosuggest to start triggering
|
|
264
264
|
- beforeAutosuggest - callback function that gets called before firing autosuggest. autosuggestProps are being passed as a property and can be modified, if passed along further search will execute with modified properties, if null is returned then event gets canceled and search never fires.
|
|
265
265
|
- afterAutosuggest - callback function that gets called after autosuggest has values but before rendering. It needs to return same type of data but it can be modified.
|
|
266
|
-
-
|
|
266
|
+
- templateOverride - template override. look at examples below
|
|
267
267
|
|
|
268
268
|
|
|
269
269
|
**inputWidgetTemplate**
|
|
270
270
|
|
|
271
|
-
The
|
|
271
|
+
The templateOverride prop allows customizing the input UI.
|
|
272
272
|
|
|
273
273
|
It receives the following props:
|
|
274
274
|
|
|
@@ -453,6 +453,10 @@ const locationWidgetConfig = {
|
|
|
453
453
|
|
|
454
454
|
- locationDecode - callback function to override location decoding
|
|
455
455
|
- locationDecodeCoordinatesToAddress - callback function to override location decoding
|
|
456
|
+
- locationValuesOverride - location widget values
|
|
457
|
+
- locationSearchEnabled - boolean stating if locationSearch is locationSearchEnabled
|
|
458
|
+
- templateOverride - template override. look at examples below
|
|
459
|
+
|
|
456
460
|
|
|
457
461
|
**Template Override**
|
|
458
462
|
|
|
@@ -571,6 +575,7 @@ const locationWidgetConfig = {
|
|
|
571
575
|
[locationValuesOverride]="locationWidgetConfig.locationValuesOverride"
|
|
572
576
|
[locationSearchEnabled]="locationWidgetConfig.locationSearchEnabled"
|
|
573
577
|
[locationDecodeCoordinatesToAddress]="locationWidgetConfig.locationDecodeCoordinatesToAddress"
|
|
578
|
+
[templateOverride]="locationTemplate"
|
|
574
579
|
>
|
|
575
580
|
<ng-template
|
|
576
581
|
#locationTemplate
|
|
@@ -652,9 +657,20 @@ The SearchstaxResultsWidget for Angular component displays the search results.
|
|
|
652
657
|
```
|
|
653
658
|
<app-searchstax-results
|
|
654
659
|
[afterLinkClick]="afterLinkClick"
|
|
660
|
+
[renderMethod]="'“pagination”'"
|
|
661
|
+
[resultsPerPage]="10"
|
|
655
662
|
></app-searchstax-results>
|
|
656
663
|
```
|
|
657
664
|
|
|
665
|
+
**Props**
|
|
666
|
+
|
|
667
|
+
- renderMethod – either “pagination” or “infiniteScroll”.
|
|
668
|
+
- resultsPerPage – number of results on a page.
|
|
669
|
+
- afterLinkClick – Callback function invoked when a result link is clicked. Allows modifying the result object.
|
|
670
|
+
- noResultTemplate - template override for no results view
|
|
671
|
+
- resultsTemplate - template override for result item
|
|
672
|
+
|
|
673
|
+
|
|
658
674
|
**Result Template Override**
|
|
659
675
|
|
|
660
676
|
The resultsTemplate prop allows customizing the result UI.
|
|
@@ -699,6 +715,7 @@ It receives following props:
|
|
|
699
715
|
(click)="resultClicked(searchResult, $event, context)"
|
|
700
716
|
(keyup.enter)="resultClicked(searchResult, $event, context)"
|
|
701
717
|
(keyup.space)="resultClicked(searchResult, $event, context)"
|
|
718
|
+
[attr.aria-labelledby]="'title-' + searchResult.uniqueId"
|
|
702
719
|
tabindex="0"
|
|
703
720
|
class="searchstax-result-item-link searchstax-result-item-link-wrapping"
|
|
704
721
|
>
|
|
@@ -724,6 +741,7 @@ It receives following props:
|
|
|
724
741
|
<div class="searchstax-search-result-title-container">
|
|
725
742
|
<span
|
|
726
743
|
class="searchstax-search-result-title"
|
|
744
|
+
[id]="'title-' + searchResult.uniqueId"
|
|
727
745
|
[innerHTML]="searchResult.title"
|
|
728
746
|
></span>
|
|
729
747
|
</div>
|
|
@@ -817,6 +835,11 @@ The SearchstaxPaginationWidget for Angular displays pagination controls for sear
|
|
|
817
835
|
<app-searchstax-search-pagination></app-searchstax-search-pagination>
|
|
818
836
|
```
|
|
819
837
|
|
|
838
|
+
**Props**
|
|
839
|
+
|
|
840
|
+
- infiniteScrollTemplateOverride - template override for infinite scroll view pagination
|
|
841
|
+
- templateOverride - template override for standard view pagination
|
|
842
|
+
|
|
820
843
|
**Main Template Override**
|
|
821
844
|
|
|
822
845
|
Main template for the pagination controls.
|
|
@@ -969,6 +992,8 @@ Facet lists are configured and ordered on the Site Search [Faceting Tab](https:/
|
|
|
969
992
|
- specificFacets?: string[]; // optional array of facet names that if provided will only render those facets
|
|
970
993
|
- itemsPerPageDesktop: number; // default expanded facets for desktop
|
|
971
994
|
- itemsPerPageMobile: number; // default expanded facets for mobile
|
|
995
|
+
- templateOverrideMobile - template override for mobile view
|
|
996
|
+
- templateOverrideDesktop - template override for desktop view
|
|
972
997
|
|
|
973
998
|
|
|
974
999
|
**Main Template Desktop Override**
|
|
@@ -1284,6 +1309,10 @@ The SearchstaxFeedbackWidget for Angular displays search feedback and stats.
|
|
|
1284
1309
|
<app-searchstax-search-feedback></app-searchstax-search-feedback>
|
|
1285
1310
|
```
|
|
1286
1311
|
|
|
1312
|
+
**Props**
|
|
1313
|
+
|
|
1314
|
+
- templateOverride - template override for search feedback
|
|
1315
|
+
|
|
1287
1316
|
**Main Template Override**
|
|
1288
1317
|
|
|
1289
1318
|
Main template for the search feedback message.
|
|
@@ -1349,6 +1378,7 @@ The SearchstaxRelatedSearchesWidget displays related searches.
|
|
|
1349
1378
|
|
|
1350
1379
|
- relatedSearchesURL: API URL for fetching related searches
|
|
1351
1380
|
- relatedSearchesAPIKey?: API key for related searches API
|
|
1381
|
+
- templateOverride - template override for related search
|
|
1352
1382
|
|
|
1353
1383
|
**Main Template Override**
|
|
1354
1384
|
|
|
@@ -1412,6 +1442,10 @@ The SearchstaxExternalPromotionsWidget displays external promotions fetched from
|
|
|
1412
1442
|
<app-searchstax-external-promotions></app-searchstax-external-promotions>
|
|
1413
1443
|
```
|
|
1414
1444
|
|
|
1445
|
+
**Props**
|
|
1446
|
+
|
|
1447
|
+
- templateOverride - template override for external promotion
|
|
1448
|
+
|
|
1415
1449
|
**Main Template Override**
|
|
1416
1450
|
|
|
1417
1451
|
Main template for external promotions.
|
|
@@ -1492,6 +1526,7 @@ It receives following props:
|
|
|
1492
1526
|
- sortingData – Sorting data object
|
|
1493
1527
|
- orderChange – Handler for sorting change
|
|
1494
1528
|
- selectedSorting – Current selected sorting
|
|
1529
|
+
- templateOverride - template override for sorting widget
|
|
1495
1530
|
|
|
1496
1531
|
**Example**
|
|
1497
1532
|
|
package/package.json
CHANGED
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@searchstax-inc/searchstudio-ux-angular",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "4.1.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"peerDependencies": {
|
|
7
7
|
"@angular/common": "13 - 19",
|
|
8
8
|
"@angular/core": "13 - 19"
|
|
9
9
|
},
|
|
10
|
+
"files": [
|
|
11
|
+
"./CHANGELOG.md"
|
|
12
|
+
],
|
|
10
13
|
"dependencies": {
|
|
11
14
|
"tslib": "^2.3.0",
|
|
12
|
-
"@searchstax-inc/searchstudio-ux-js": "npm:@searchstax-inc/searchstudio-ux-js@^
|
|
15
|
+
"@searchstax-inc/searchstudio-ux-js": "npm:@searchstax-inc/searchstudio-ux-js@^4.1.0"
|
|
13
16
|
},
|
|
14
17
|
"module": "fesm2022/searchstax-inc-searchstudio-ux-angular.mjs",
|
|
15
18
|
"typings": "index.d.ts",
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from "@angular/core";
|
|
2
|
-
import { locationWidgetConfig } from "../templates/SearchstaxLocationWidgetTemplateConfig";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../services/store-service.service";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "../templates/searchstax-search-input-template";
|
|
7
|
-
export class SearchstaxInputWidget {
|
|
8
|
-
constructor(storeServiceService) {
|
|
9
|
-
this.storeServiceService = storeServiceService;
|
|
10
|
-
this.searchInputId = "";
|
|
11
|
-
this.hooks = {};
|
|
12
|
-
this.suggestions = [];
|
|
13
|
-
this.context = this;
|
|
14
|
-
this.templateData = null;
|
|
15
|
-
this.locationWidgetConfig = locationWidgetConfig;
|
|
16
|
-
}
|
|
17
|
-
ngOnInit() {
|
|
18
|
-
if (this.storeServiceService.searchstax) {
|
|
19
|
-
this.attachObservables();
|
|
20
|
-
// const hooks: { [key: string]: (prop: any) => any } = {}
|
|
21
|
-
if (this.afterAutosuggest) {
|
|
22
|
-
this.hooks["afterAutosuggest"] = this.afterAutosuggest;
|
|
23
|
-
}
|
|
24
|
-
if (this.beforeAutosuggest) {
|
|
25
|
-
this.hooks["beforeAutosuggest"] = this.beforeAutosuggest;
|
|
26
|
-
}
|
|
27
|
-
setTimeout(() => {
|
|
28
|
-
this.storeServiceService.searchstax.addSearchInputWidget("searchstax-input-container", {
|
|
29
|
-
suggestAfterMinChars: this.suggestAfterMinChars,
|
|
30
|
-
hooks: this.hooks,
|
|
31
|
-
templates: {
|
|
32
|
-
mainTemplate: {
|
|
33
|
-
template: ``,
|
|
34
|
-
searchInputId: this.searchInputId ?? "searchstax-search-input",
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
});
|
|
38
|
-
this.storeServiceService.searchstax.dataLayer.setInputTemplateRendered(true);
|
|
39
|
-
}, 100);
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
throw Error("Searchstax instance needs to be passed via props");
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
onMouseLeave(context) {
|
|
46
|
-
context.storeServiceService.searchstax.searchInputWidget?.resetAutosuggestSelection();
|
|
47
|
-
context.storeServiceService.searchstax.searchInputWidget?.markActiveAutosuggestItem();
|
|
48
|
-
}
|
|
49
|
-
onMouseOver(suggestion, context) {
|
|
50
|
-
context.storeServiceService.searchstax.searchInputWidget?.onSuggestionEnter(suggestion);
|
|
51
|
-
}
|
|
52
|
-
onMouseClick(e, context) {
|
|
53
|
-
e.stopImmediatePropagation();
|
|
54
|
-
context.storeServiceService.searchstax.searchInputWidget?.suggestionChosen();
|
|
55
|
-
}
|
|
56
|
-
attachObservables() {
|
|
57
|
-
this.storeServiceService.searchstax.dataLayer.$autosuggestResults.subscribe((suggestions) => {
|
|
58
|
-
this.suggestions = suggestions?.suggestions ?? [];
|
|
59
|
-
});
|
|
60
|
-
this.storeServiceService.searchstax.dataLayer.$inputWidgetTemplateData.subscribe((data) => {
|
|
61
|
-
this.templateData = data;
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchstaxInputWidget, deps: [{ token: i1.StoreServiceService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
65
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SearchstaxInputWidget, selector: "app-searchstax-input", inputs: { afterAutosuggest: "afterAutosuggest", beforeAutosuggest: "beforeAutosuggest", searchInputId: "searchInputId", suggestAfterMinChars: "suggestAfterMinChars", templateOverride: "templateOverride" }, ngImport: i0, template: "<div id=\"searchstax-input-container\">\n <div\n class=\"searchstax-search-input-container searchstax-search-input-container-new\"\n [class]=\"{\n 'searchstax-alternative-render': !!templateData?.locationEnabled\n }\"\n >\n <ng-container *ngIf=\"!templateOverride\">\n <app-input-template #ref></app-input-template>\n <ng-template\n *ngTemplateOutlet=\"ref.inputTemplate; context: context\"\n ></ng-template>\n </ng-container>\n <ng-container *ngIf=\"templateOverride\">\n <ng-container\n *ngTemplateOutlet=\"templateOverride; context: context\"\n ></ng-container>\n </ng-container>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.InputTemplateComponent, selector: "app-input-template" }] }); }
|
|
66
|
-
}
|
|
67
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchstaxInputWidget, decorators: [{
|
|
68
|
-
type: Component,
|
|
69
|
-
args: [{ selector: "app-searchstax-input", template: "<div id=\"searchstax-input-container\">\n <div\n class=\"searchstax-search-input-container searchstax-search-input-container-new\"\n [class]=\"{\n 'searchstax-alternative-render': !!templateData?.locationEnabled\n }\"\n >\n <ng-container *ngIf=\"!templateOverride\">\n <app-input-template #ref></app-input-template>\n <ng-template\n *ngTemplateOutlet=\"ref.inputTemplate; context: context\"\n ></ng-template>\n </ng-container>\n <ng-container *ngIf=\"templateOverride\">\n <ng-container\n *ngTemplateOutlet=\"templateOverride; context: context\"\n ></ng-container>\n </ng-container>\n </div>\n</div>\n" }]
|
|
70
|
-
}], ctorParameters: () => [{ type: i1.StoreServiceService }], propDecorators: { afterAutosuggest: [{
|
|
71
|
-
type: Input
|
|
72
|
-
}], beforeAutosuggest: [{
|
|
73
|
-
type: Input
|
|
74
|
-
}], searchInputId: [{
|
|
75
|
-
type: Input
|
|
76
|
-
}], suggestAfterMinChars: [{
|
|
77
|
-
type: Input
|
|
78
|
-
}], templateOverride: [{
|
|
79
|
-
type: Input
|
|
80
|
-
}] } });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZWFyY2hzdGF4LWluYy9zZWFyY2hzdHVkaW8tdXgtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvc2VhcmNoc3RheC1pbnB1dC9zZWFyY2hzdGF4LWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWFyY2hzdGF4LWlucHV0L3NlYXJjaHN0YXgtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBVXRFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDOzs7OztBQU8zRixNQUFNLE9BQU8scUJBQXFCO0lBaUJoQyxZQUFvQixtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQVZuRCxrQkFBYSxHQUFHLEVBQUUsQ0FBQztRQUk1QixVQUFLLEdBQTBDLEVBQUUsQ0FBQztRQUNsRCxnQkFBVyxHQUE0QixFQUFFLENBQUM7UUFDMUMsWUFBTyxHQUFHLElBQUksQ0FBQztRQUNmLGlCQUFZLEdBQTRDLElBQUksQ0FBQztRQUM3RCx5QkFBb0IsR0FBRyxvQkFBb0IsQ0FBQztJQUVtQixDQUFDO0lBRWhFLFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUU7WUFDdkMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDekIsMERBQTBEO1lBQzFELElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO2dCQUN6QixJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO2FBQ3hEO1lBQ0QsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7YUFDMUQ7WUFDRCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsb0JBQW9CLENBQ3RELDRCQUE0QixFQUM1QjtvQkFDRSxvQkFBb0IsRUFBRSxJQUFJLENBQUMsb0JBQW9CO29CQUMvQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7b0JBQ2pCLFNBQVMsRUFBRTt3QkFDVCxZQUFZLEVBQUU7NEJBQ1osUUFBUSxFQUFFLEVBQUU7NEJBQ1osYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLElBQUkseUJBQXlCO3lCQUMvRDtxQkFDRjtpQkFDRixDQUNGLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQ3BFLElBQUksQ0FDTCxDQUFDO1lBQ0osQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ1Q7YUFBTTtZQUNMLE1BQU0sS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7U0FDakU7SUFDSCxDQUFDO0lBR0QsWUFBWSxDQUFDLE9BQWE7UUFDeEIsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsRUFBRSx5QkFBeUIsRUFBRSxDQUFDO1FBQ3RGLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsaUJBQWlCLEVBQUUseUJBQXlCLEVBQUUsQ0FBQztJQUN4RixDQUFDO0lBRUQsV0FBVyxDQUFDLFVBQWlDLEVBQUUsT0FBYTtRQUMxRCxPQUFPLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLGlCQUFpQixFQUFFLGlCQUFpQixDQUN6RSxVQUFVLENBQ1gsQ0FBQztJQUNKLENBQUM7SUFFRCxZQUFZLENBQUMsQ0FBUSxFQUFFLE9BQWE7UUFDbEMsQ0FBQyxDQUFDLHdCQUF3QixFQUFFLENBQUM7UUFDN0IsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDO0lBQy9FLENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQ3pFLENBQUMsV0FBeUMsRUFBRSxFQUFFO1lBQzVDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxFQUFFLFdBQVcsSUFBSSxFQUFFLENBQUM7UUFDcEQsQ0FBQyxDQUNGLENBQUM7UUFFRixJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTLENBQzlFLENBQUMsSUFBNkMsRUFBRSxFQUFFO1lBQ2hELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQzNCLENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQzsrR0FqRlUscUJBQXFCO21HQUFyQixxQkFBcUIsMFFDakJsQywrcEJBb0JBOzs0RkRIYSxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0Usc0JBQXNCO3dGQUt2QixnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBR0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVGVtcGxhdGVSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgSVNlYXJjaHN0YXhMb2NhdGlvbixcbiAgSVNlYXJjaHN0YXhTRUFSQ0hURVJNLFxuICBJU2VhcmNoc3RheFNlYXJjaElucHV0UmVuZGVyRGF0YSxcbiAgSVNlYXJjaHN0YXhTdWdnZXN0UHJvcHMsXG4gIElTZWFyY2hzdGF4U3VnZ2VzdFJlc3BvbnNlLFxuICBJU2VhcmNoc3RheFN1Z2dlc3Rpb24sXG59IGZyb20gXCJAc2VhcmNoc3RheC1pbmMvc2VhcmNoc3R1ZGlvLXV4LWpzXCI7XG5pbXBvcnQgeyBTdG9yZVNlcnZpY2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3N0b3JlLXNlcnZpY2Uuc2VydmljZVwiO1xuaW1wb3J0IHsgbG9jYXRpb25XaWRnZXRDb25maWcgfSBmcm9tIFwiLi4vdGVtcGxhdGVzL1NlYXJjaHN0YXhMb2NhdGlvbldpZGdldFRlbXBsYXRlQ29uZmlnXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhcHAtc2VhcmNoc3RheC1pbnB1dFwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3NlYXJjaHN0YXgtaW5wdXQuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoc3RheElucHV0V2lkZ2V0IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgYWZ0ZXJBdXRvc3VnZ2VzdD86IChcbiAgICByZXN1bHQ6IElTZWFyY2hzdGF4U3VnZ2VzdFJlc3BvbnNlXG4gICkgPT4gSVNlYXJjaHN0YXhTdWdnZXN0UmVzcG9uc2U7XG4gIEBJbnB1dCgpIGJlZm9yZUF1dG9zdWdnZXN0PzogKFxuICAgIHByb3BzOiBJU2VhcmNoc3RheFN1Z2dlc3RQcm9wc1xuICApID0+IElTZWFyY2hzdGF4U3VnZ2VzdFByb3BzIHwgbnVsbDtcbiAgQElucHV0KCkgc2VhcmNoSW5wdXRJZCA9IFwiXCI7XG4gIEBJbnB1dCgpIHN1Z2dlc3RBZnRlck1pbkNoYXJzPzogbnVtYmVyO1xuICBASW5wdXQoKSB0ZW1wbGF0ZU92ZXJyaWRlPzogVGVtcGxhdGVSZWY8YW55PjtcblxuICBob29rczogeyBba2V5OiBzdHJpbmddOiAocHJvcDogYW55KSA9PiBhbnkgfSA9IHt9O1xuICBzdWdnZXN0aW9uczogSVNlYXJjaHN0YXhTdWdnZXN0aW9uW10gPSBbXTtcbiAgY29udGV4dCA9IHRoaXM7XG4gIHRlbXBsYXRlRGF0YTogbnVsbCB8IElTZWFyY2hzdGF4U2VhcmNoSW5wdXRSZW5kZXJEYXRhID0gbnVsbDtcbiAgbG9jYXRpb25XaWRnZXRDb25maWcgPSBsb2NhdGlvbldpZGdldENvbmZpZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlU2VydmljZVNlcnZpY2U6IFN0b3JlU2VydmljZVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4KSB7XG4gICAgICB0aGlzLmF0dGFjaE9ic2VydmFibGVzKCk7XG4gICAgICAvLyBjb25zdCBob29rczogeyBba2V5OiBzdHJpbmddOiAocHJvcDogYW55KSA9PiBhbnkgfSA9IHt9XG4gICAgICBpZiAodGhpcy5hZnRlckF1dG9zdWdnZXN0KSB7XG4gICAgICAgIHRoaXMuaG9va3NbXCJhZnRlckF1dG9zdWdnZXN0XCJdID0gdGhpcy5hZnRlckF1dG9zdWdnZXN0O1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuYmVmb3JlQXV0b3N1Z2dlc3QpIHtcbiAgICAgICAgdGhpcy5ob29rc1tcImJlZm9yZUF1dG9zdWdnZXN0XCJdID0gdGhpcy5iZWZvcmVBdXRvc3VnZ2VzdDtcbiAgICAgIH1cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5hZGRTZWFyY2hJbnB1dFdpZGdldChcbiAgICAgICAgICBcInNlYXJjaHN0YXgtaW5wdXQtY29udGFpbmVyXCIsXG4gICAgICAgICAge1xuICAgICAgICAgICAgc3VnZ2VzdEFmdGVyTWluQ2hhcnM6IHRoaXMuc3VnZ2VzdEFmdGVyTWluQ2hhcnMsXG4gICAgICAgICAgICBob29rczogdGhpcy5ob29rcyxcbiAgICAgICAgICAgIHRlbXBsYXRlczoge1xuICAgICAgICAgICAgICBtYWluVGVtcGxhdGU6IHtcbiAgICAgICAgICAgICAgICB0ZW1wbGF0ZTogYGAsXG4gICAgICAgICAgICAgICAgc2VhcmNoSW5wdXRJZDogdGhpcy5zZWFyY2hJbnB1dElkID8/IFwic2VhcmNoc3RheC1zZWFyY2gtaW5wdXRcIixcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgICB0aGlzLnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5kYXRhTGF5ZXIuc2V0SW5wdXRUZW1wbGF0ZVJlbmRlcmVkKFxuICAgICAgICAgIHRydWVcbiAgICAgICAgKTtcbiAgICAgIH0sIDEwMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IEVycm9yKFwiU2VhcmNoc3RheCBpbnN0YW5jZSBuZWVkcyB0byBiZSBwYXNzZWQgdmlhIHByb3BzXCIpO1xuICAgIH1cbiAgfVxuXG5cbiAgb25Nb3VzZUxlYXZlKGNvbnRleHQ6IHRoaXMpIHtcbiAgICBjb250ZXh0LnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5zZWFyY2hJbnB1dFdpZGdldD8ucmVzZXRBdXRvc3VnZ2VzdFNlbGVjdGlvbigpO1xuICAgIGNvbnRleHQuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4LnNlYXJjaElucHV0V2lkZ2V0Py5tYXJrQWN0aXZlQXV0b3N1Z2dlc3RJdGVtKCk7XG4gIH1cblxuICBvbk1vdXNlT3ZlcihzdWdnZXN0aW9uOiBJU2VhcmNoc3RheFN1Z2dlc3Rpb24sIGNvbnRleHQ6IHRoaXMpIHtcbiAgICBjb250ZXh0LnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5zZWFyY2hJbnB1dFdpZGdldD8ub25TdWdnZXN0aW9uRW50ZXIoXG4gICAgICBzdWdnZXN0aW9uXG4gICAgKTtcbiAgfVxuXG4gIG9uTW91c2VDbGljayhlOiBFdmVudCwgY29udGV4dDogdGhpcykge1xuICAgIGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgY29udGV4dC5zdG9yZVNlcnZpY2VTZXJ2aWNlLnNlYXJjaHN0YXguc2VhcmNoSW5wdXRXaWRnZXQ/LnN1Z2dlc3Rpb25DaG9zZW4oKTtcbiAgfVxuXG4gIGF0dGFjaE9ic2VydmFibGVzKCkge1xuICAgIHRoaXMuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4LmRhdGFMYXllci4kYXV0b3N1Z2dlc3RSZXN1bHRzLnN1YnNjcmliZShcbiAgICAgIChzdWdnZXN0aW9uczogbnVsbCB8IElTZWFyY2hzdGF4U0VBUkNIVEVSTSkgPT4ge1xuICAgICAgICB0aGlzLnN1Z2dlc3Rpb25zID0gc3VnZ2VzdGlvbnM/LnN1Z2dlc3Rpb25zID8/IFtdO1xuICAgICAgfVxuICAgICk7XG5cbiAgICB0aGlzLnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5kYXRhTGF5ZXIuJGlucHV0V2lkZ2V0VGVtcGxhdGVEYXRhLnN1YnNjcmliZShcbiAgICAgIChkYXRhOiBudWxsIHwgSVNlYXJjaHN0YXhTZWFyY2hJbnB1dFJlbmRlckRhdGEpID0+IHtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZURhdGEgPSBkYXRhO1xuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiIsIjxkaXYgaWQ9XCJzZWFyY2hzdGF4LWlucHV0LWNvbnRhaW5lclwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJzZWFyY2hzdGF4LXNlYXJjaC1pbnB1dC1jb250YWluZXIgc2VhcmNoc3RheC1zZWFyY2gtaW5wdXQtY29udGFpbmVyLW5ld1wiXG4gICAgW2NsYXNzXT1cIntcbiAgICAgICdzZWFyY2hzdGF4LWFsdGVybmF0aXZlLXJlbmRlcic6ICEhdGVtcGxhdGVEYXRhPy5sb2NhdGlvbkVuYWJsZWRcbiAgICB9XCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhdGVtcGxhdGVPdmVycmlkZVwiPlxuICAgICAgPGFwcC1pbnB1dC10ZW1wbGF0ZSAjcmVmPjwvYXBwLWlucHV0LXRlbXBsYXRlPlxuICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVmLmlucHV0VGVtcGxhdGU7IGNvbnRleHQ6IGNvbnRleHRcIlxuICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRlbXBsYXRlT3ZlcnJpZGVcIj5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZU92ZXJyaWRlOyBjb250ZXh0OiBjb250ZXh0XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../services/store-service.service";
|
|
4
|
-
import * as i2 from "@angular/common";
|
|
5
|
-
import * as i3 from "../templates/searchstax-search-results-template";
|
|
6
|
-
import * as i4 from "../templates/searchstax-search-no-results-template";
|
|
7
|
-
export class SearchstaxResultsWidget {
|
|
8
|
-
get hooks() {
|
|
9
|
-
const hooks = {};
|
|
10
|
-
if (this.afterLinkClick) {
|
|
11
|
-
hooks['afterLinkClick'] = this.afterLinkClick;
|
|
12
|
-
}
|
|
13
|
-
return hooks;
|
|
14
|
-
}
|
|
15
|
-
constructor(storeServiceService) {
|
|
16
|
-
this.storeServiceService = storeServiceService;
|
|
17
|
-
this.searchResults = null;
|
|
18
|
-
this.metadata = null;
|
|
19
|
-
this.searchTerm = '';
|
|
20
|
-
this.context = this;
|
|
21
|
-
}
|
|
22
|
-
ngOnInit() {
|
|
23
|
-
if (this.storeServiceService.searchstax) {
|
|
24
|
-
this.attachObservables();
|
|
25
|
-
setTimeout(() => {
|
|
26
|
-
this.storeServiceService.searchstax.addSearchResultsWidget('searchstax-results-container', {
|
|
27
|
-
templates: {},
|
|
28
|
-
hooks: this.hooks,
|
|
29
|
-
renderMethod: this.renderMethod ?? "pagination",
|
|
30
|
-
});
|
|
31
|
-
}, 0);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
throw Error('Searchstax instance needs to be passed via props');
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
executeSearch(term, event, context) {
|
|
38
|
-
event.preventDefault();
|
|
39
|
-
context.storeServiceService.searchstax.executeSearch(term);
|
|
40
|
-
}
|
|
41
|
-
attachObservables() {
|
|
42
|
-
this.storeServiceService.searchstax.dataLayer.$searchResults.subscribe((results) => {
|
|
43
|
-
const current = this.searchResults ? [...this.searchResults] : [];
|
|
44
|
-
const newResults = results ?? [];
|
|
45
|
-
const resultsCombined = this.renderMethod === "infiniteScroll"
|
|
46
|
-
? [...current, ...newResults]
|
|
47
|
-
: results;
|
|
48
|
-
if (this.storeServiceService.searchstax.dataLayer.$searchObject.value?.page === 1) {
|
|
49
|
-
this.searchResults = newResults;
|
|
50
|
-
}
|
|
51
|
-
else {
|
|
52
|
-
this.searchResults = resultsCombined;
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
this.storeServiceService.searchstax.dataLayer.$searchTermChange.subscribe((result) => {
|
|
56
|
-
this.searchTerm = result;
|
|
57
|
-
});
|
|
58
|
-
this.storeServiceService.searchstax.dataLayer.$searchResultsMetadata.subscribe((value) => {
|
|
59
|
-
this.metadata = value;
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
resultClicked(result, event, context) {
|
|
63
|
-
event.preventDefault();
|
|
64
|
-
event.stopPropagation();
|
|
65
|
-
context.storeServiceService.searchstax.executeLinkClick(result.uniqueId);
|
|
66
|
-
}
|
|
67
|
-
isImage(field) {
|
|
68
|
-
return field.isImage && typeof field.value === 'string';
|
|
69
|
-
}
|
|
70
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchstaxResultsWidget, deps: [{ token: i1.StoreServiceService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
71
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SearchstaxResultsWidget, selector: "app-searchstax-results", inputs: { afterLinkClick: "afterLinkClick", noResultsTemplate: "noResultsTemplate", resultsTemplate: "resultsTemplate", renderMethod: "renderMethod" }, ngImport: i0, template: "<div id=\"searchstax-results-container\">\n <section aria-label=\"search results container\" tabindex=\"0\">\n <div\n class=\"searchstax-search-results-container\"\n id=\"searchstax-search-results-container\"\n >\n <div id=\"searchstax-result-container\">\n <div\n *ngIf=\"\n searchResults?.length === 0 &&\n searchTerm !== '' &&\n searchTerm !== '*' &&\n storeServiceService.searchstax.dataLayer.parsedData\n .firstSearchHappened &&\n !noResultsTemplate\n \"\n >\n <app-no-results-template #ref></app-no-results-template>\n <ng-template\n *ngTemplateOutlet=\"ref.noResultsTemplate; context: context\"\n ></ng-template>\n </div>\n <div\n *ngIf=\"\n searchResults?.length === 0 &&\n searchTerm !== '' &&\n searchTerm !== '*' &&\n storeServiceService.searchstax.dataLayer.parsedData\n .firstSearchHappened &&\n noResultsTemplate\n \"\n >\n <ng-container\n *ngTemplateOutlet=\"noResultsTemplate; context: context\"\n ></ng-container>\n </div>\n\n <ng-container\n *ngIf=\"searchResults && searchResults.length && !resultsTemplate\"\n >\n <app-results-template #ref></app-results-template>\n <ng-template\n *ngTemplateOutlet=\"ref.resultsTemplate; context: context\"\n ></ng-template>\n </ng-container>\n\n <div *ngIf=\"searchResults && searchResults.length && resultsTemplate\">\n <ng-container\n *ngTemplateOutlet=\"resultsTemplate; context: context\"\n ></ng-container>\n </div>\n </div>\n </div>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.ResultsTemplateComponent, selector: "app-results-template" }, { kind: "component", type: i4.NoResultsTemplateComponent, selector: "app-no-results-template" }] }); }
|
|
72
|
-
}
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchstaxResultsWidget, decorators: [{
|
|
74
|
-
type: Component,
|
|
75
|
-
args: [{ selector: 'app-searchstax-results', template: "<div id=\"searchstax-results-container\">\n <section aria-label=\"search results container\" tabindex=\"0\">\n <div\n class=\"searchstax-search-results-container\"\n id=\"searchstax-search-results-container\"\n >\n <div id=\"searchstax-result-container\">\n <div\n *ngIf=\"\n searchResults?.length === 0 &&\n searchTerm !== '' &&\n searchTerm !== '*' &&\n storeServiceService.searchstax.dataLayer.parsedData\n .firstSearchHappened &&\n !noResultsTemplate\n \"\n >\n <app-no-results-template #ref></app-no-results-template>\n <ng-template\n *ngTemplateOutlet=\"ref.noResultsTemplate; context: context\"\n ></ng-template>\n </div>\n <div\n *ngIf=\"\n searchResults?.length === 0 &&\n searchTerm !== '' &&\n searchTerm !== '*' &&\n storeServiceService.searchstax.dataLayer.parsedData\n .firstSearchHappened &&\n noResultsTemplate\n \"\n >\n <ng-container\n *ngTemplateOutlet=\"noResultsTemplate; context: context\"\n ></ng-container>\n </div>\n\n <ng-container\n *ngIf=\"searchResults && searchResults.length && !resultsTemplate\"\n >\n <app-results-template #ref></app-results-template>\n <ng-template\n *ngTemplateOutlet=\"ref.resultsTemplate; context: context\"\n ></ng-template>\n </ng-container>\n\n <div *ngIf=\"searchResults && searchResults.length && resultsTemplate\">\n <ng-container\n *ngTemplateOutlet=\"resultsTemplate; context: context\"\n ></ng-container>\n </div>\n </div>\n </div>\n </section>\n</div>\n" }]
|
|
76
|
-
}], ctorParameters: () => [{ type: i1.StoreServiceService }], propDecorators: { afterLinkClick: [{
|
|
77
|
-
type: Input
|
|
78
|
-
}], noResultsTemplate: [{
|
|
79
|
-
type: Input
|
|
80
|
-
}], resultsTemplate: [{
|
|
81
|
-
type: Input
|
|
82
|
-
}], renderMethod: [{
|
|
83
|
-
type: Input
|
|
84
|
-
}] } });
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1yZXN1bHRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWFyY2hzdGF4LXJlc3VsdHMvc2VhcmNoc3RheC1yZXN1bHRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWFyY2hzdGF4LXJlc3VsdHMvc2VhcmNoc3RheC1yZXN1bHRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF1QixNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBWXRFLE1BQU0sT0FBTyx1QkFBdUI7SUFjbEMsSUFBSSxLQUFLO1FBQ1AsTUFBTSxLQUFLLEdBQTBDLEVBQUUsQ0FBQztRQUN4RCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztTQUMvQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFlBQW1CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBYjNELGtCQUFhLEdBQXFDLElBQUksQ0FBQztRQUN2RCxhQUFRLEdBQXFDLElBQUksQ0FBQztRQUNsRCxlQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLFlBQU8sR0FBRyxJQUFJLENBQUM7SUFVK0MsQ0FBQztJQUUvRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBRXpCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxzQkFBc0IsQ0FDeEQsOEJBQThCLEVBQzlCO29CQUNFLFNBQVMsRUFBRSxFQUFFO29CQUNiLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztvQkFDakIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLElBQUksWUFBWTtpQkFDaEQsQ0FDRixDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ1A7YUFBTTtZQUNMLE1BQU0sS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7U0FDakU7SUFDSCxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVksRUFBRSxLQUFZLEVBQUUsT0FBYTtRQUNyRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQ3BFLENBQUMsT0FBeUMsRUFBRSxFQUFFO1lBRTVDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNsRSxNQUFNLFVBQVUsR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1lBQ2pDLE1BQU0sZUFBZSxHQUNuQixJQUFJLENBQUMsWUFBWSxLQUFLLGdCQUFnQjtnQkFDcEMsQ0FBQyxDQUFDLENBQUMsR0FBRyxPQUFPLEVBQUUsR0FBRyxVQUFVLENBQUM7Z0JBQzdCLENBQUMsQ0FBQyxPQUFPLENBQUM7WUFDZCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxLQUFLLENBQUMsRUFBRTtnQkFDakYsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUM7YUFDakM7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGFBQWEsR0FBRyxlQUFlLENBQUM7YUFDdEM7UUFDSCxDQUFDLENBQ0YsQ0FBQztRQUNGLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FDdkUsQ0FBQyxNQUFjLEVBQUUsRUFBRTtZQUNqQixJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztRQUMzQixDQUFDLENBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FDNUUsQ0FBQyxLQUFnQyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDeEIsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsYUFBYSxDQUFDLE1BQStCLEVBQUUsS0FBWSxFQUFFLE9BQWE7UUFDeEUsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixPQUFPLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQVU7UUFDaEIsT0FBTyxLQUFLLENBQUMsT0FBTyxJQUFJLE9BQU8sS0FBSyxDQUFDLEtBQUssS0FBSyxRQUFRLENBQUE7SUFDekQsQ0FBQzsrR0F0RlUsdUJBQXVCO21HQUF2Qix1QkFBdUIsc05DWnBDLGt6REF1REE7OzRGRDNDYSx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0Usd0JBQXdCO3dGQUt6QixjQUFjO3NCQUF0QixLQUFLO2dCQUlHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZVNlcnZpY2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc3RvcmUtc2VydmljZS5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIElTZWFyY2hzdGF4UGFyc2VkUmVzdWx0LFxuICBJU2VhcmNoc3RheFNlYXJjaE1ldGFkYXRhLFxufSBmcm9tICdAc2VhcmNoc3RheC1pbmMvc2VhcmNoc3R1ZGlvLXV4LWpzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXNlYXJjaHN0YXgtcmVzdWx0cycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2hzdGF4LXJlc3VsdHMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZXM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hzdGF4UmVzdWx0c1dpZGdldCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGFmdGVyTGlua0NsaWNrPzogKFxuICAgIHJlc3VsdHM6IElTZWFyY2hzdGF4UGFyc2VkUmVzdWx0XG4gICkgPT4gSVNlYXJjaHN0YXhQYXJzZWRSZXN1bHQ7XG5cbiAgQElucHV0KCkgbm9SZXN1bHRzVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSByZXN1bHRzVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSByZW5kZXJNZXRob2Q/OiBcImluZmluaXRlU2Nyb2xsXCIgfCBcInBhZ2luYXRpb25cIjtcblxuICBzZWFyY2hSZXN1bHRzOiBJU2VhcmNoc3RheFBhcnNlZFJlc3VsdFtdIHwgbnVsbCA9IG51bGw7XG4gIG1ldGFkYXRhOiBJU2VhcmNoc3RheFNlYXJjaE1ldGFkYXRhIHwgbnVsbCA9IG51bGw7XG4gIHNlYXJjaFRlcm0gPSAnJztcbiAgY29udGV4dCA9IHRoaXM7XG5cbiAgZ2V0IGhvb2tzKCk6IHsgW2tleTogc3RyaW5nXTogKHByb3A6IGFueSkgPT4gYW55IH0ge1xuICAgIGNvbnN0IGhvb2tzOiB7IFtrZXk6IHN0cmluZ106IChwcm9wOiBhbnkpID0+IGFueSB9ID0ge307XG4gICAgaWYgKHRoaXMuYWZ0ZXJMaW5rQ2xpY2spIHtcbiAgICAgIGhvb2tzWydhZnRlckxpbmtDbGljayddID0gdGhpcy5hZnRlckxpbmtDbGljaztcbiAgICB9XG4gICAgcmV0dXJuIGhvb2tzO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIHN0b3JlU2VydmljZVNlcnZpY2U6IFN0b3JlU2VydmljZVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4KSB7XG4gICAgICB0aGlzLmF0dGFjaE9ic2VydmFibGVzKCk7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5hZGRTZWFyY2hSZXN1bHRzV2lkZ2V0KFxuICAgICAgICAgICdzZWFyY2hzdGF4LXJlc3VsdHMtY29udGFpbmVyJyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0ZW1wbGF0ZXM6IHt9LFxuICAgICAgICAgICAgaG9va3M6IHRoaXMuaG9va3MsXG4gICAgICAgICAgICByZW5kZXJNZXRob2Q6IHRoaXMucmVuZGVyTWV0aG9kID8/IFwicGFnaW5hdGlvblwiLFxuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgIH0sIDApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBFcnJvcignU2VhcmNoc3RheCBpbnN0YW5jZSBuZWVkcyB0byBiZSBwYXNzZWQgdmlhIHByb3BzJyk7XG4gICAgfVxuICB9XG5cbiAgZXhlY3V0ZVNlYXJjaCh0ZXJtOiBzdHJpbmcsIGV2ZW50OiBFdmVudCwgY29udGV4dDogdGhpcyk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgY29udGV4dC5zdG9yZVNlcnZpY2VTZXJ2aWNlLnNlYXJjaHN0YXguZXhlY3V0ZVNlYXJjaCh0ZXJtKTtcbiAgfVxuXG4gIGF0dGFjaE9ic2VydmFibGVzKCkge1xuICAgIHRoaXMuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4LmRhdGFMYXllci4kc2VhcmNoUmVzdWx0cy5zdWJzY3JpYmUoXG4gICAgICAocmVzdWx0czogSVNlYXJjaHN0YXhQYXJzZWRSZXN1bHRbXSB8IG51bGwpID0+IHtcblxuICAgICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5zZWFyY2hSZXN1bHRzID8gWy4uLnRoaXMuc2VhcmNoUmVzdWx0c10gOiBbXTtcbiAgICAgICAgY29uc3QgbmV3UmVzdWx0cyA9IHJlc3VsdHMgPz8gW107XG4gICAgICAgIGNvbnN0IHJlc3VsdHNDb21iaW5lZCA9XG4gICAgICAgICAgdGhpcy5yZW5kZXJNZXRob2QgPT09IFwiaW5maW5pdGVTY3JvbGxcIlxuICAgICAgICAgICAgPyBbLi4uY3VycmVudCwgLi4ubmV3UmVzdWx0c11cbiAgICAgICAgICAgIDogcmVzdWx0cztcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4LmRhdGFMYXllci4kc2VhcmNoT2JqZWN0LnZhbHVlPy5wYWdlID09PSAxKSB7XG4gICAgICAgICAgdGhpcy5zZWFyY2hSZXN1bHRzID0gbmV3UmVzdWx0cztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnNlYXJjaFJlc3VsdHMgPSByZXN1bHRzQ29tYmluZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICAgIHRoaXMuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4LmRhdGFMYXllci4kc2VhcmNoVGVybUNoYW5nZS5zdWJzY3JpYmUoXG4gICAgICAocmVzdWx0OiBzdHJpbmcpID0+IHtcbiAgICAgICAgdGhpcy5zZWFyY2hUZXJtID0gcmVzdWx0O1xuICAgICAgfVxuICAgICk7XG5cbiAgICB0aGlzLnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5kYXRhTGF5ZXIuJHNlYXJjaFJlc3VsdHNNZXRhZGF0YS5zdWJzY3JpYmUoXG4gICAgICAodmFsdWU6IElTZWFyY2hzdGF4U2VhcmNoTWV0YWRhdGEpID0+IHtcbiAgICAgICAgdGhpcy5tZXRhZGF0YSA9IHZhbHVlO1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICByZXN1bHRDbGlja2VkKHJlc3VsdDogSVNlYXJjaHN0YXhQYXJzZWRSZXN1bHQsIGV2ZW50OiBFdmVudCwgY29udGV4dDogdGhpcykge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgY29udGV4dC5zdG9yZVNlcnZpY2VTZXJ2aWNlLnNlYXJjaHN0YXguZXhlY3V0ZUxpbmtDbGljayhyZXN1bHQudW5pcXVlSWQpO1xuICB9XG5cbiAgaXNJbWFnZShmaWVsZDogYW55KXtcbiAgICByZXR1cm4gZmllbGQuaXNJbWFnZSAmJiB0eXBlb2YgZmllbGQudmFsdWUgPT09ICdzdHJpbmcnXG4gIH1cbn1cbiIsIjxkaXYgaWQ9XCJzZWFyY2hzdGF4LXJlc3VsdHMtY29udGFpbmVyXCI+XG4gIDxzZWN0aW9uIGFyaWEtbGFiZWw9XCJzZWFyY2ggcmVzdWx0cyBjb250YWluZXJcIiB0YWJpbmRleD1cIjBcIj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInNlYXJjaHN0YXgtc2VhcmNoLXJlc3VsdHMtY29udGFpbmVyXCJcbiAgICAgIGlkPVwic2VhcmNoc3RheC1zZWFyY2gtcmVzdWx0cy1jb250YWluZXJcIlxuICAgID5cbiAgICAgIDxkaXYgaWQ9XCJzZWFyY2hzdGF4LXJlc3VsdC1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBzZWFyY2hSZXN1bHRzPy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgICAgIHNlYXJjaFRlcm0gIT09ICcnICYmXG4gICAgICAgICAgICBzZWFyY2hUZXJtICE9PSAnKicgJiZcbiAgICAgICAgICAgIHN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5kYXRhTGF5ZXIucGFyc2VkRGF0YVxuICAgICAgICAgICAgICAuZmlyc3RTZWFyY2hIYXBwZW5lZCAmJlxuICAgICAgICAgICAgIW5vUmVzdWx0c1RlbXBsYXRlXG4gICAgICAgICAgXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxhcHAtbm8tcmVzdWx0cy10ZW1wbGF0ZSAjcmVmPjwvYXBwLW5vLXJlc3VsdHMtdGVtcGxhdGU+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInJlZi5ub1Jlc3VsdHNUZW1wbGF0ZTsgY29udGV4dDogY29udGV4dFwiXG4gICAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgIHNlYXJjaFJlc3VsdHM/Lmxlbmd0aCA9PT0gMCAmJlxuICAgICAgICAgICAgc2VhcmNoVGVybSAhPT0gJycgJiZcbiAgICAgICAgICAgIHNlYXJjaFRlcm0gIT09ICcqJyAmJlxuICAgICAgICAgICAgc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4LmRhdGFMYXllci5wYXJzZWREYXRhXG4gICAgICAgICAgICAgIC5maXJzdFNlYXJjaEhhcHBlbmVkICYmXG4gICAgICAgICAgICBub1Jlc3VsdHNUZW1wbGF0ZVxuICAgICAgICAgIFwiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIm5vUmVzdWx0c1RlbXBsYXRlOyBjb250ZXh0OiBjb250ZXh0XCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdJZj1cInNlYXJjaFJlc3VsdHMgJiYgc2VhcmNoUmVzdWx0cy5sZW5ndGggJiYgIXJlc3VsdHNUZW1wbGF0ZVwiXG4gICAgICAgID5cbiAgICAgICAgICA8YXBwLXJlc3VsdHMtdGVtcGxhdGUgI3JlZj48L2FwcC1yZXN1bHRzLXRlbXBsYXRlPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZWYucmVzdWx0c1RlbXBsYXRlOyBjb250ZXh0OiBjb250ZXh0XCJcbiAgICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cInNlYXJjaFJlc3VsdHMgJiYgc2VhcmNoUmVzdWx0cy5sZW5ndGggJiYgcmVzdWx0c1RlbXBsYXRlXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZXN1bHRzVGVtcGxhdGU7IGNvbnRleHQ6IGNvbnRleHRcIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9zZWN0aW9uPlxuPC9kaXY+XG4iXX0=
|
package/esm2022/lib/components/searchstax-search-answer/searchstax-search-answer.component.mjs
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../services/store-service.service";
|
|
4
|
-
import * as i2 from "@angular/common";
|
|
5
|
-
import * as i3 from "../templates/searchstax-search-answer-template";
|
|
6
|
-
export class SearchstaxSearchAnswerWidget {
|
|
7
|
-
constructor(storeServiceService) {
|
|
8
|
-
this.storeServiceService = storeServiceService;
|
|
9
|
-
this.answerData = null;
|
|
10
|
-
this.rand = Math.random();
|
|
11
|
-
this.context = this;
|
|
12
|
-
}
|
|
13
|
-
ngOnInit() {
|
|
14
|
-
if (this.storeServiceService.searchstax) {
|
|
15
|
-
this.attachObservables();
|
|
16
|
-
setTimeout(() => {
|
|
17
|
-
this.storeServiceService.searchstax.addAnswerWidget('searchstax-answer-container' + this.rand, { showShowMoreAfterWordCount: this.showShowMoreAfterWordCount, feedbackwidget: this.feedbackwidget });
|
|
18
|
-
}, 0);
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
throw Error("Searchstax instance needs to be passed via props");
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
showMore(event, context) {
|
|
25
|
-
if (context.storeServiceService.searchstax) {
|
|
26
|
-
context.storeServiceService.searchstax.answerWidget?.showMore(event);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
attachObservables() {
|
|
30
|
-
this.storeServiceService.searchstax.dataLayer.$answerData.subscribe((answerData) => {
|
|
31
|
-
this.answerData = answerData;
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchstaxSearchAnswerWidget, deps: [{ token: i1.StoreServiceService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
35
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SearchstaxSearchAnswerWidget, selector: "app-searchstax-answer", inputs: { templateOverride: "templateOverride", feedbackwidget: "feedbackwidget", showShowMoreAfterWordCount: "showShowMoreAfterWordCount" }, ngImport: i0, template: "<div [id]=\"'searchstax-answer-container' + rand\">\n <div\n *ngIf=\"\n answerData &&\n answerData?.searchExecuted &&\n answerData.shouldShowAnswer &&\n !templateOverride\n \"\n >\n <app-answer-template #ref></app-answer-template>\n <ng-template\n [ngTemplateOutlet]=\"ref.answerTemplate\"\n [ngTemplateOutletContext]=\"context\"\n ></ng-template>\n </div>\n <div\n *ngIf=\"\n answerData &&\n answerData?.searchExecuted &&\n answerData.shouldShowAnswer &&\n templateOverride\n \"\n >\n <ng-container\n *ngTemplateOutlet=\"templateOverride; context: context\"\n ></ng-container>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.AnswerTemplateComponent, selector: "app-answer-template" }] }); }
|
|
36
|
-
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchstaxSearchAnswerWidget, decorators: [{
|
|
38
|
-
type: Component,
|
|
39
|
-
args: [{ selector: "app-searchstax-answer", template: "<div [id]=\"'searchstax-answer-container' + rand\">\n <div\n *ngIf=\"\n answerData &&\n answerData?.searchExecuted &&\n answerData.shouldShowAnswer &&\n !templateOverride\n \"\n >\n <app-answer-template #ref></app-answer-template>\n <ng-template\n [ngTemplateOutlet]=\"ref.answerTemplate\"\n [ngTemplateOutletContext]=\"context\"\n ></ng-template>\n </div>\n <div\n *ngIf=\"\n answerData &&\n answerData?.searchExecuted &&\n answerData.shouldShowAnswer &&\n templateOverride\n \"\n >\n <ng-container\n *ngTemplateOutlet=\"templateOverride; context: context\"\n ></ng-container>\n </div>\n</div>\n" }]
|
|
40
|
-
}], ctorParameters: () => [{ type: i1.StoreServiceService }], propDecorators: { templateOverride: [{
|
|
41
|
-
type: Input
|
|
42
|
-
}], feedbackwidget: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], showShowMoreAfterWordCount: [{
|
|
45
|
-
type: Input
|
|
46
|
-
}] } });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1zZWFyY2gtYW5zd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWFyY2hzdGF4LXNlYXJjaC1hbnN3ZXIvc2VhcmNoc3RheC1zZWFyY2gtYW5zd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWFyY2hzdGF4LXNlYXJjaC1hbnN3ZXIvc2VhcmNoc3RheC1zZWFyY2gtYW5zd2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF1QixNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTdEUsTUFBTSxPQUFPLDRCQUE0QjtJQVF2QyxZQUFvQixtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUg1RCxlQUFVLEdBQWlDLElBQUksQ0FBQztRQUNoRCxTQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3JCLFlBQU8sR0FBRyxJQUFJLENBQUM7SUFDZ0QsQ0FBQztJQUVoRSxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsNkJBQTZCLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFDLDBCQUEwQixFQUFFLElBQUksQ0FBQywwQkFBMEIsRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBQyxDQUFDLENBQUM7WUFDck0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ1A7YUFBTTtZQUNMLE1BQU0sS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7U0FDakU7SUFDSCxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQVksRUFBRSxPQUFhO1FBQ2xDLElBQUksT0FBTyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsRUFBRTtZQUMxQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7U0FDckU7SUFDSCxDQUFDO0lBR0QsaUJBQWlCO1FBQ2YsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FDakUsQ0FBQyxVQUF3QyxFQUFFLEVBQUU7WUFDM0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDL0IsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDOytHQWxDVSw0QkFBNEI7bUdBQTVCLDRCQUE0QiwyTUNUekMsOHFCQTRCQTs7NEZEbkJhLDRCQUE0QjtrQkFMeEMsU0FBUzsrQkFDRSx1QkFBdUI7d0ZBS3hCLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLDBCQUEwQjtzQkFBbEMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVGVtcGxhdGVSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSUZlZWRiYWNrV2lkZ2V0UHJvcGVydGllcywgSVNlYXJjaHN0YXhBbnN3ZXJEYXRhIH0gZnJvbSBcIkBzZWFyY2hzdGF4LWluYy9zZWFyY2hzdHVkaW8tdXgtanNcIjtcbmltcG9ydCB7IFN0b3JlU2VydmljZVNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvc3RvcmUtc2VydmljZS5zZXJ2aWNlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhcHAtc2VhcmNoc3RheC1hbnN3ZXJcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9zZWFyY2hzdGF4LXNlYXJjaC1hbnN3ZXIuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoc3RheFNlYXJjaEFuc3dlcldpZGdldCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHRlbXBsYXRlT3ZlcnJpZGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBASW5wdXQoKSBmZWVkYmFja3dpZGdldD86IElGZWVkYmFja1dpZGdldFByb3BlcnRpZXM7XG4gIEBJbnB1dCgpIHNob3dTaG93TW9yZUFmdGVyV29yZENvdW50PzogbnVtYmVyO1xuXG4gIGFuc3dlckRhdGE6IG51bGwgfCBJU2VhcmNoc3RheEFuc3dlckRhdGEgPSBudWxsO1xuICByYW5kID0gTWF0aC5yYW5kb20oKTtcbiAgY29udGV4dCA9IHRoaXM7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmVTZXJ2aWNlU2VydmljZTogU3RvcmVTZXJ2aWNlU2VydmljZSkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zdG9yZVNlcnZpY2VTZXJ2aWNlLnNlYXJjaHN0YXgpIHtcbiAgICAgIHRoaXMuYXR0YWNoT2JzZXJ2YWJsZXMoKTtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5hZGRBbnN3ZXJXaWRnZXQoJ3NlYXJjaHN0YXgtYW5zd2VyLWNvbnRhaW5lcicgKyB0aGlzLnJhbmQsIHtzaG93U2hvd01vcmVBZnRlcldvcmRDb3VudDogdGhpcy5zaG93U2hvd01vcmVBZnRlcldvcmRDb3VudCwgZmVlZGJhY2t3aWRnZXQ6IHRoaXMuZmVlZGJhY2t3aWRnZXR9KTtcbiAgICAgIH0sIDApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBFcnJvcihcIlNlYXJjaHN0YXggaW5zdGFuY2UgbmVlZHMgdG8gYmUgcGFzc2VkIHZpYSBwcm9wc1wiKTtcbiAgICB9XG4gIH1cblxuICBzaG93TW9yZShldmVudDogRXZlbnQsIGNvbnRleHQ6IHRoaXMpIHtcbiAgICBpZiAoY29udGV4dC5zdG9yZVNlcnZpY2VTZXJ2aWNlLnNlYXJjaHN0YXgpIHtcbiAgICAgIGNvbnRleHQuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4LmFuc3dlcldpZGdldD8uc2hvd01vcmUoZXZlbnQpXG4gICAgfVxuICB9XG5cblxuICBhdHRhY2hPYnNlcnZhYmxlcygpIHtcbiAgICB0aGlzLnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5kYXRhTGF5ZXIuJGFuc3dlckRhdGEuc3Vic2NyaWJlKFxuICAgICAgKGFuc3dlckRhdGE6IG51bGwgfCBJU2VhcmNoc3RheEFuc3dlckRhdGEpID0+IHtcbiAgICAgICAgdGhpcy5hbnN3ZXJEYXRhID0gYW5zd2VyRGF0YTtcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IFtpZF09XCInc2VhcmNoc3RheC1hbnN3ZXItY29udGFpbmVyJyArIHJhbmRcIj5cbiAgPGRpdlxuICAgICpuZ0lmPVwiXG4gICAgICBhbnN3ZXJEYXRhICYmXG4gICAgICBhbnN3ZXJEYXRhPy5zZWFyY2hFeGVjdXRlZCAmJlxuICAgICAgYW5zd2VyRGF0YS5zaG91bGRTaG93QW5zd2VyICYmXG4gICAgICAhdGVtcGxhdGVPdmVycmlkZVxuICAgIFwiXG4gID5cbiAgICA8YXBwLWFuc3dlci10ZW1wbGF0ZSAjcmVmPjwvYXBwLWFuc3dlci10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJlZi5hbnN3ZXJUZW1wbGF0ZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwiY29udGV4dFwiXG4gICAgPjwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgKm5nSWY9XCJcbiAgICAgIGFuc3dlckRhdGEgJiZcbiAgICAgIGFuc3dlckRhdGE/LnNlYXJjaEV4ZWN1dGVkICYmXG4gICAgICBhbnN3ZXJEYXRhLnNob3VsZFNob3dBbnN3ZXIgJiZcbiAgICAgIHRlbXBsYXRlT3ZlcnJpZGVcbiAgICBcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ0ZW1wbGF0ZU92ZXJyaWRlOyBjb250ZXh0OiBjb250ZXh0XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
package/esm2022/lib/components/searchstax-search-external/searchstax-search-external.component.mjs
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "../../services/store-service.service";
|
|
4
|
-
import * as i2 from "@angular/common";
|
|
5
|
-
import * as i3 from "../templates/searchstax-search-external-template";
|
|
6
|
-
export class SearchstaxSearchExternalPromotionsWidget {
|
|
7
|
-
constructor(storeServiceService) {
|
|
8
|
-
this.storeServiceService = storeServiceService;
|
|
9
|
-
this.externalPromotionsData = null;
|
|
10
|
-
this.rand = Math.random();
|
|
11
|
-
this.context = this;
|
|
12
|
-
}
|
|
13
|
-
ngOnInit() {
|
|
14
|
-
if (this.storeServiceService.searchstax) {
|
|
15
|
-
this.attachObservables();
|
|
16
|
-
setTimeout(() => {
|
|
17
|
-
this.storeServiceService.searchstax.addExternalPromotionsWidget("searchstax-external-promotions-layout-container" + this.rand, {});
|
|
18
|
-
}, 0);
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
throw Error("Searchstax instance needs to be passed via props");
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
trackClick(externalPromotion, event, context) {
|
|
25
|
-
context.storeServiceService.searchstax.externalPromotionsWidget?.trackClick(externalPromotion, event);
|
|
26
|
-
}
|
|
27
|
-
attachObservables() {
|
|
28
|
-
this.storeServiceService.searchstax.dataLayer.$searchExternalPromotionsData.subscribe((externalPromotionsData) => {
|
|
29
|
-
this.externalPromotionsData = externalPromotionsData;
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchstaxSearchExternalPromotionsWidget, deps: [{ token: i1.StoreServiceService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SearchstaxSearchExternalPromotionsWidget, selector: "app-searchstax-external-promotions", inputs: { templateOverride: "templateOverride" }, ngImport: i0, template: "<div [id]=\"'searchstax-external-promotions-layout-container' + rand\">\n <ng-container\n *ngIf=\"\n externalPromotionsData &&\n externalPromotionsData?.searchExecuted &&\n externalPromotionsData?.hasExternalPromotions &&\n !templateOverride\n \"\n >\n <app-external-template #ref></app-external-template>\n <ng-template\n *ngTemplateOutlet=\"ref.externalPromotionsTemplate; context: context\"\n ></ng-template>\n </ng-container>\n <div\n *ngIf=\"\n externalPromotionsData &&\n externalPromotionsData?.searchExecuted &&\n externalPromotionsData?.hasExternalPromotions &&\n templateOverride\n \"\n >\n <ng-container\n *ngTemplateOutlet=\"templateOverride; context: context\"\n ></ng-container>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.ExternalPromotionsTemplateComponent, selector: "app-external-template" }] }); }
|
|
34
|
-
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SearchstaxSearchExternalPromotionsWidget, decorators: [{
|
|
36
|
-
type: Component,
|
|
37
|
-
args: [{ selector: "app-searchstax-external-promotions", template: "<div [id]=\"'searchstax-external-promotions-layout-container' + rand\">\n <ng-container\n *ngIf=\"\n externalPromotionsData &&\n externalPromotionsData?.searchExecuted &&\n externalPromotionsData?.hasExternalPromotions &&\n !templateOverride\n \"\n >\n <app-external-template #ref></app-external-template>\n <ng-template\n *ngTemplateOutlet=\"ref.externalPromotionsTemplate; context: context\"\n ></ng-template>\n </ng-container>\n <div\n *ngIf=\"\n externalPromotionsData &&\n externalPromotionsData?.searchExecuted &&\n externalPromotionsData?.hasExternalPromotions &&\n templateOverride\n \"\n >\n <ng-container\n *ngTemplateOutlet=\"templateOverride; context: context\"\n ></ng-container>\n </div>\n</div>\n" }]
|
|
38
|
-
}], ctorParameters: () => [{ type: i1.StoreServiceService }], propDecorators: { templateOverride: [{
|
|
39
|
-
type: Input
|
|
40
|
-
}] } });
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1zZWFyY2gtZXh0ZXJuYWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2VhcmNoc3RheC1pbmMvc2VhcmNoc3R1ZGlvLXV4LWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL3NlYXJjaHN0YXgtc2VhcmNoLWV4dGVybmFsL3NlYXJjaHN0YXgtc2VhcmNoLWV4dGVybmFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9zZWFyY2hzdGF4LXNlYXJjaC1leHRlcm5hbC9zZWFyY2hzdGF4LXNlYXJjaC1leHRlcm5hbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBdUIsTUFBTSxlQUFlLENBQUM7Ozs7O0FBU3RFLE1BQU0sT0FBTyx3Q0FBd0M7SUFNbkQsWUFBb0IsbUJBQXdDO1FBQXhDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFINUQsMkJBQXNCLEdBQTZDLElBQUksQ0FBQztRQUN4RSxTQUFJLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3JCLFlBQU8sR0FBRyxJQUFJLENBQUM7SUFDZ0QsQ0FBQztJQUVoRSxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3pCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQywyQkFBMkIsQ0FDN0QsaURBQWlELEdBQUcsSUFBSSxDQUFDLElBQUksRUFDN0QsRUFBRSxDQUNILENBQUM7WUFDSixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDUDthQUFNO1lBQ0wsTUFBTSxLQUFLLENBQUMsa0RBQWtELENBQUMsQ0FBQztTQUNqRTtJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsaUJBQXFDLEVBQUUsS0FBWSxFQUFFLE9BQWE7UUFDM0UsT0FBTyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyx3QkFBd0IsRUFBRSxVQUFVLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLDZCQUE2QixDQUFDLFNBQVMsQ0FDbkYsQ0FBQyxzQkFBZ0UsRUFBRSxFQUFFO1lBQ25FLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxzQkFBc0IsQ0FBQztRQUN2RCxDQUFDLENBQ0YsQ0FBQztJQUNKLENBQUM7K0dBaENVLHdDQUF3QzttR0FBeEMsd0NBQXdDLDRIQ1RyRCw0eEJBMkJBOzs0RkRsQmEsd0NBQXdDO2tCQUxwRCxTQUFTOytCQUNFLG9DQUFvQzt3RkFLckMsZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LCBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBJRXh0ZXJuYWxQcm9tb3Rpb24sIElTZWFyY2hzdGF4RXh0ZXJuYWxQcm9tb3Rpb25zRGF0YSB9IGZyb20gXCJAc2VhcmNoc3RheC1pbmMvc2VhcmNoc3R1ZGlvLXV4LWpzXCI7XG5pbXBvcnQgeyBTdG9yZVNlcnZpY2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3N0b3JlLXNlcnZpY2Uuc2VydmljZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYXBwLXNlYXJjaHN0YXgtZXh0ZXJuYWwtcHJvbW90aW9uc1wiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3NlYXJjaHN0YXgtc2VhcmNoLWV4dGVybmFsLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlczogW10sXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaHN0YXhTZWFyY2hFeHRlcm5hbFByb21vdGlvbnNXaWRnZXQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSB0ZW1wbGF0ZU92ZXJyaWRlPzogVGVtcGxhdGVSZWY8YW55PjtcblxuICBleHRlcm5hbFByb21vdGlvbnNEYXRhOiBudWxsIHwgSVNlYXJjaHN0YXhFeHRlcm5hbFByb21vdGlvbnNEYXRhID0gbnVsbDtcbiAgcmFuZCA9IE1hdGgucmFuZG9tKCk7XG4gIGNvbnRleHQgPSB0aGlzO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHN0b3JlU2VydmljZVNlcnZpY2U6IFN0b3JlU2VydmljZVNlcnZpY2UpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc3RvcmVTZXJ2aWNlU2VydmljZS5zZWFyY2hzdGF4KSB7XG4gICAgICB0aGlzLmF0dGFjaE9ic2VydmFibGVzKCk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZVNlcnZpY2VTZXJ2aWNlLnNlYXJjaHN0YXguYWRkRXh0ZXJuYWxQcm9tb3Rpb25zV2lkZ2V0KFxuICAgICAgICAgIFwic2VhcmNoc3RheC1leHRlcm5hbC1wcm9tb3Rpb25zLWxheW91dC1jb250YWluZXJcIiArIHRoaXMucmFuZCxcbiAgICAgICAgICB7fVxuICAgICAgICApO1xuICAgICAgfSwgMCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IEVycm9yKFwiU2VhcmNoc3RheCBpbnN0YW5jZSBuZWVkcyB0byBiZSBwYXNzZWQgdmlhIHByb3BzXCIpO1xuICAgIH1cbiAgfVxuXG4gIHRyYWNrQ2xpY2soZXh0ZXJuYWxQcm9tb3Rpb246IElFeHRlcm5hbFByb21vdGlvbiwgZXZlbnQ6IEV2ZW50LCBjb250ZXh0OiB0aGlzKSB7XG4gICAgY29udGV4dC5zdG9yZVNlcnZpY2VTZXJ2aWNlLnNlYXJjaHN0YXguZXh0ZXJuYWxQcm9tb3Rpb25zV2lkZ2V0Py50cmFja0NsaWNrKGV4dGVybmFsUHJvbW90aW9uLCBldmVudCk7XG4gIH1cblxuICBhdHRhY2hPYnNlcnZhYmxlcygpIHtcbiAgICB0aGlzLnN0b3JlU2VydmljZVNlcnZpY2Uuc2VhcmNoc3RheC5kYXRhTGF5ZXIuJHNlYXJjaEV4dGVybmFsUHJvbW90aW9uc0RhdGEuc3Vic2NyaWJlKFxuICAgICAgKGV4dGVybmFsUHJvbW90aW9uc0RhdGE6IG51bGwgfCBJU2VhcmNoc3RheEV4dGVybmFsUHJvbW90aW9uc0RhdGEpID0+IHtcbiAgICAgICAgdGhpcy5leHRlcm5hbFByb21vdGlvbnNEYXRhID0gZXh0ZXJuYWxQcm9tb3Rpb25zRGF0YTtcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IFtpZF09XCInc2VhcmNoc3RheC1leHRlcm5hbC1wcm9tb3Rpb25zLWxheW91dC1jb250YWluZXInICsgcmFuZFwiPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJcbiAgICAgIGV4dGVybmFsUHJvbW90aW9uc0RhdGEgJiZcbiAgICAgIGV4dGVybmFsUHJvbW90aW9uc0RhdGE/LnNlYXJjaEV4ZWN1dGVkICYmXG4gICAgICBleHRlcm5hbFByb21vdGlvbnNEYXRhPy5oYXNFeHRlcm5hbFByb21vdGlvbnMgJiZcbiAgICAgICF0ZW1wbGF0ZU92ZXJyaWRlXG4gICAgXCJcbiAgPlxuICAgIDxhcHAtZXh0ZXJuYWwtdGVtcGxhdGUgI3JlZj48L2FwcC1leHRlcm5hbC10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwicmVmLmV4dGVybmFsUHJvbW90aW9uc1RlbXBsYXRlOyBjb250ZXh0OiBjb250ZXh0XCJcbiAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXZcbiAgICAqbmdJZj1cIlxuICAgICAgZXh0ZXJuYWxQcm9tb3Rpb25zRGF0YSAmJlxuICAgICAgZXh0ZXJuYWxQcm9tb3Rpb25zRGF0YT8uc2VhcmNoRXhlY3V0ZWQgJiZcbiAgICAgIGV4dGVybmFsUHJvbW90aW9uc0RhdGE/Lmhhc0V4dGVybmFsUHJvbW90aW9ucyAmJlxuICAgICAgdGVtcGxhdGVPdmVycmlkZVxuICAgIFwiXG4gID5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdUZW1wbGF0ZU91dGxldD1cInRlbXBsYXRlT3ZlcnJpZGU7IGNvbnRleHQ6IGNvbnRleHRcIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|