@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.
Files changed (63) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/README.md +40 -5
  3. package/package.json +5 -2
  4. package/esm2022/lib/components/searchstax-input/searchstax-input.component.mjs +0 -81
  5. package/esm2022/lib/components/searchstax-results/searchstax-results.component.mjs +0 -85
  6. package/esm2022/lib/components/searchstax-search-answer/searchstax-search-answer.component.mjs +0 -47
  7. package/esm2022/lib/components/searchstax-search-external/searchstax-search-external.component.mjs +0 -41
  8. package/esm2022/lib/components/searchstax-search-facets/searchstax-search-facets.component.mjs +0 -114
  9. package/esm2022/lib/components/searchstax-search-location/searchstax-search-location.component.mjs +0 -92
  10. package/esm2022/lib/components/searchstax-search-overview/searchstax-search-overview.component.mjs +0 -42
  11. package/esm2022/lib/components/searchstax-search-pagination/searchstax-search-pagination.component.mjs +0 -64
  12. package/esm2022/lib/components/searchstax-search-related/searchstax-search-related.component.mjs +0 -45
  13. package/esm2022/lib/components/searchstax-search-sorting/searchstax-search-sorting.component.mjs +0 -46
  14. package/esm2022/lib/components/searchstax-wrapper.component.mjs +0 -93
  15. package/esm2022/lib/components/templates/SearchstaxLocationWidgetTemplateConfig.mjs +0 -91
  16. package/esm2022/lib/components/templates/searchstax-search-answer-template.mjs +0 -119
  17. package/esm2022/lib/components/templates/searchstax-search-external-template.mjs +0 -107
  18. package/esm2022/lib/components/templates/searchstax-search-facet-desktop-template.mjs +0 -207
  19. package/esm2022/lib/components/templates/searchstax-search-facet-mobile-template.mjs +0 -343
  20. package/esm2022/lib/components/templates/searchstax-search-input-template.mjs +0 -126
  21. package/esm2022/lib/components/templates/searchstax-search-location-template.mjs +0 -152
  22. package/esm2022/lib/components/templates/searchstax-search-no-results-template.mjs +0 -85
  23. package/esm2022/lib/components/templates/searchstax-search-overview-template.mjs +0 -87
  24. package/esm2022/lib/components/templates/searchstax-search-pagination-infinite-template.mjs +0 -60
  25. package/esm2022/lib/components/templates/searchstax-search-pagination-template.mjs +0 -96
  26. package/esm2022/lib/components/templates/searchstax-search-related-template.mjs +0 -81
  27. package/esm2022/lib/components/templates/searchstax-search-results-template.mjs +0 -171
  28. package/esm2022/lib/components/templates/searchstax-search-sorting-template.mjs +0 -76
  29. package/esm2022/lib/searchstudio-ux-angular.module.mjs +0 -138
  30. package/esm2022/lib/services/store-service.service.mjs +0 -17
  31. package/esm2022/public-api.mjs +0 -30
  32. package/esm2022/searchstax-inc-searchstudio-ux-angular.mjs +0 -5
  33. package/fesm2022/searchstax-inc-searchstudio-ux-angular.mjs +0 -2594
  34. package/fesm2022/searchstax-inc-searchstudio-ux-angular.mjs.map +0 -1
  35. package/index.d.ts +0 -5
  36. package/lib/components/searchstax-input/searchstax-input.component.d.ts +0 -37
  37. package/lib/components/searchstax-results/searchstax-results.component.d.ts +0 -26
  38. package/lib/components/searchstax-search-answer/searchstax-search-answer.component.d.ts +0 -19
  39. package/lib/components/searchstax-search-external/searchstax-search-external.component.d.ts +0 -17
  40. package/lib/components/searchstax-search-facets/searchstax-search-facets.component.d.ts +0 -37
  41. package/lib/components/searchstax-search-location/searchstax-search-location.component.d.ts +0 -33
  42. package/lib/components/searchstax-search-overview/searchstax-search-overview.component.d.ts +0 -17
  43. package/lib/components/searchstax-search-pagination/searchstax-search-pagination.component.d.ts +0 -21
  44. package/lib/components/searchstax-search-related/searchstax-search-related.component.d.ts +0 -19
  45. package/lib/components/searchstax-search-sorting/searchstax-search-sorting.component.d.ts +0 -18
  46. package/lib/components/searchstax-wrapper.component.d.ts +0 -31
  47. package/lib/components/templates/SearchstaxLocationWidgetTemplateConfig.d.ts +0 -13
  48. package/lib/components/templates/searchstax-search-answer-template.d.ts +0 -7
  49. package/lib/components/templates/searchstax-search-external-template.d.ts +0 -7
  50. package/lib/components/templates/searchstax-search-facet-desktop-template.d.ts +0 -7
  51. package/lib/components/templates/searchstax-search-facet-mobile-template.d.ts +0 -7
  52. package/lib/components/templates/searchstax-search-input-template.d.ts +0 -7
  53. package/lib/components/templates/searchstax-search-location-template.d.ts +0 -7
  54. package/lib/components/templates/searchstax-search-no-results-template.d.ts +0 -7
  55. package/lib/components/templates/searchstax-search-overview-template.d.ts +0 -7
  56. package/lib/components/templates/searchstax-search-pagination-infinite-template.d.ts +0 -7
  57. package/lib/components/templates/searchstax-search-pagination-template.d.ts +0 -7
  58. package/lib/components/templates/searchstax-search-related-template.d.ts +0 -7
  59. package/lib/components/templates/searchstax-search-results-template.d.ts +0 -7
  60. package/lib/components/templates/searchstax-search-sorting-template.d.ts +0 -7
  61. package/lib/searchstudio-ux-angular.module.d.ts +0 -32
  62. package/lib/services/store-service.service.d.ts +0 -8
  63. package/public-api.d.ts +0 -26
@@ -1,126 +0,0 @@
1
- // reusable-template.component.ts
2
- import { Component, ViewChild } from "@angular/core";
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "../searchstax-search-location/searchstax-search-location.component";
6
- export class InputTemplateComponent {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: InputTemplateComponent, selector: "app-input-template", viewQueries: [{ propertyName: "inputTemplate", first: true, predicate: ["inputTemplate"], descendants: true }], ngImport: i0, template: `
9
- <ng-template
10
- #inputTemplate
11
- let-suggestions="suggestions"
12
- let-onMouseLeave="onMouseLeave"
13
- let-onMouseOver="onMouseOver"
14
- let-onMouseClick="onMouseClick"
15
- let-context="context"
16
- let-locationWidgetConfig="locationWidgetConfig"
17
- >
18
- <div class="searchstax-search-input-wrapper">
19
- <input
20
- type="text"
21
- id="searchstax-search-input"
22
- class="searchstax-search-input"
23
- placeholder="SEARCH FOR..."
24
- aria-label="search"
25
- />
26
- <div
27
- class="searchstax-autosuggest-container"
28
- [ngClass]="{ hidden: suggestions.length === 0 }"
29
- (mouseleave)="onMouseLeave(context)"
30
- >
31
- <div
32
- class="searchstax-autosuggest-item"
33
- *ngFor="let suggestion of suggestions"
34
- >
35
- <div
36
- class="searchstax-autosuggest-item-term-container"
37
- [innerHtml]="suggestion.term"
38
- (mouseover)="onMouseOver(suggestion, context)"
39
- tabindex="0"
40
- (click)="onMouseClick($event, context)"
41
- ></div>
42
- </div>
43
- </div>
44
- </div>
45
- <app-searchstax-search-location
46
- [locationDecode]="locationWidgetConfig.locationDecode"
47
- [locationDecodeCoordinatesToAddress]="
48
- locationWidgetConfig.locationDecodeCoordinatesToAddress
49
- "
50
- [locationSearchEnabled]="locationWidgetConfig.locationSearchEnabled"
51
- [locationValuesOverride]="locationWidgetConfig.locationValuesOverride"
52
- >
53
- </app-searchstax-search-location>
54
- <button
55
- class="searchstax-spinner-icon"
56
- id="searchstax-search-input-action-button"
57
- role="button"
58
- aria-label="search"
59
- ></button>
60
- </ng-template>
61
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2.SearchstaxSearchLocationWidget, selector: "app-searchstax-search-location", inputs: ["templateOverride", "locationSearchEnabled", "locationValuesOverride", "locationDecode", "locationDecodeCoordinatesToAddress"] }] }); }
62
- }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: InputTemplateComponent, decorators: [{
64
- type: Component,
65
- args: [{
66
- selector: "app-input-template",
67
- template: `
68
- <ng-template
69
- #inputTemplate
70
- let-suggestions="suggestions"
71
- let-onMouseLeave="onMouseLeave"
72
- let-onMouseOver="onMouseOver"
73
- let-onMouseClick="onMouseClick"
74
- let-context="context"
75
- let-locationWidgetConfig="locationWidgetConfig"
76
- >
77
- <div class="searchstax-search-input-wrapper">
78
- <input
79
- type="text"
80
- id="searchstax-search-input"
81
- class="searchstax-search-input"
82
- placeholder="SEARCH FOR..."
83
- aria-label="search"
84
- />
85
- <div
86
- class="searchstax-autosuggest-container"
87
- [ngClass]="{ hidden: suggestions.length === 0 }"
88
- (mouseleave)="onMouseLeave(context)"
89
- >
90
- <div
91
- class="searchstax-autosuggest-item"
92
- *ngFor="let suggestion of suggestions"
93
- >
94
- <div
95
- class="searchstax-autosuggest-item-term-container"
96
- [innerHtml]="suggestion.term"
97
- (mouseover)="onMouseOver(suggestion, context)"
98
- tabindex="0"
99
- (click)="onMouseClick($event, context)"
100
- ></div>
101
- </div>
102
- </div>
103
- </div>
104
- <app-searchstax-search-location
105
- [locationDecode]="locationWidgetConfig.locationDecode"
106
- [locationDecodeCoordinatesToAddress]="
107
- locationWidgetConfig.locationDecodeCoordinatesToAddress
108
- "
109
- [locationSearchEnabled]="locationWidgetConfig.locationSearchEnabled"
110
- [locationValuesOverride]="locationWidgetConfig.locationValuesOverride"
111
- >
112
- </app-searchstax-search-location>
113
- <button
114
- class="searchstax-spinner-icon"
115
- id="searchstax-search-input-action-button"
116
- role="button"
117
- aria-label="search"
118
- ></button>
119
- </ng-template>
120
- `,
121
- }]
122
- }], propDecorators: { inputTemplate: [{
123
- type: ViewChild,
124
- args: ["inputTemplate"]
125
- }] } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1zZWFyY2gtaW5wdXQtdGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZWFyY2hzdGF4LWluYy9zZWFyY2hzdHVkaW8tdXgtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3NlYXJjaHN0YXgtc2VhcmNoLWlucHV0LXRlbXBsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlDQUFpQztBQUNqQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBZSxNQUFNLGVBQWUsQ0FBQzs7OztBQTJEbEUsTUFBTSxPQUFPLHNCQUFzQjsrR0FBdEIsc0JBQXNCO21HQUF0QixzQkFBc0IsMEtBdkR2Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxRFQ7OzRGQUVVLHNCQUFzQjtrQkF6RGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFEVDtpQkFDRjs4QkFFNkIsYUFBYTtzQkFBeEMsU0FBUzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiLy8gcmV1c2FibGUtdGVtcGxhdGUuY29tcG9uZW50LnRzXG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCwgVGVtcGxhdGVSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYXBwLWlucHV0LXRlbXBsYXRlXCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAjaW5wdXRUZW1wbGF0ZVxuICAgICAgbGV0LXN1Z2dlc3Rpb25zPVwic3VnZ2VzdGlvbnNcIlxuICAgICAgbGV0LW9uTW91c2VMZWF2ZT1cIm9uTW91c2VMZWF2ZVwiXG4gICAgICBsZXQtb25Nb3VzZU92ZXI9XCJvbk1vdXNlT3ZlclwiXG4gICAgICBsZXQtb25Nb3VzZUNsaWNrPVwib25Nb3VzZUNsaWNrXCJcbiAgICAgIGxldC1jb250ZXh0PVwiY29udGV4dFwiXG4gICAgICBsZXQtbG9jYXRpb25XaWRnZXRDb25maWc9XCJsb2NhdGlvbldpZGdldENvbmZpZ1wiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaHN0YXgtc2VhcmNoLWlucHV0LXdyYXBwZXJcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgIGlkPVwic2VhcmNoc3RheC1zZWFyY2gtaW5wdXRcIlxuICAgICAgICAgIGNsYXNzPVwic2VhcmNoc3RheC1zZWFyY2gtaW5wdXRcIlxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU0VBUkNIIEZPUi4uLlwiXG4gICAgICAgICAgYXJpYS1sYWJlbD1cInNlYXJjaFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cInNlYXJjaHN0YXgtYXV0b3N1Z2dlc3QtY29udGFpbmVyXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7IGhpZGRlbjogc3VnZ2VzdGlvbnMubGVuZ3RoID09PSAwIH1cIlxuICAgICAgICAgIChtb3VzZWxlYXZlKT1cIm9uTW91c2VMZWF2ZShjb250ZXh0KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInNlYXJjaHN0YXgtYXV0b3N1Z2dlc3QtaXRlbVwiXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgc3VnZ2VzdGlvbiBvZiBzdWdnZXN0aW9uc1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cInNlYXJjaHN0YXgtYXV0b3N1Z2dlc3QtaXRlbS10ZXJtLWNvbnRhaW5lclwiXG4gICAgICAgICAgICAgIFtpbm5lckh0bWxdPVwic3VnZ2VzdGlvbi50ZXJtXCJcbiAgICAgICAgICAgICAgKG1vdXNlb3Zlcik9XCJvbk1vdXNlT3ZlcihzdWdnZXN0aW9uLCBjb250ZXh0KVwiXG4gICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJvbk1vdXNlQ2xpY2soJGV2ZW50LCBjb250ZXh0KVwiXG4gICAgICAgICAgICA+PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8YXBwLXNlYXJjaHN0YXgtc2VhcmNoLWxvY2F0aW9uXG4gICAgICAgIFtsb2NhdGlvbkRlY29kZV09XCJsb2NhdGlvbldpZGdldENvbmZpZy5sb2NhdGlvbkRlY29kZVwiXG4gICAgICAgIFtsb2NhdGlvbkRlY29kZUNvb3JkaW5hdGVzVG9BZGRyZXNzXT1cIlxuICAgICAgICAgIGxvY2F0aW9uV2lkZ2V0Q29uZmlnLmxvY2F0aW9uRGVjb2RlQ29vcmRpbmF0ZXNUb0FkZHJlc3NcbiAgICAgICAgXCJcbiAgICAgICAgW2xvY2F0aW9uU2VhcmNoRW5hYmxlZF09XCJsb2NhdGlvbldpZGdldENvbmZpZy5sb2NhdGlvblNlYXJjaEVuYWJsZWRcIlxuICAgICAgICBbbG9jYXRpb25WYWx1ZXNPdmVycmlkZV09XCJsb2NhdGlvbldpZGdldENvbmZpZy5sb2NhdGlvblZhbHVlc092ZXJyaWRlXCJcbiAgICAgID5cbiAgICAgIDwvYXBwLXNlYXJjaHN0YXgtc2VhcmNoLWxvY2F0aW9uPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cInNlYXJjaHN0YXgtc3Bpbm5lci1pY29uXCJcbiAgICAgICAgaWQ9XCJzZWFyY2hzdGF4LXNlYXJjaC1pbnB1dC1hY3Rpb24tYnV0dG9uXCJcbiAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgIGFyaWEtbGFiZWw9XCJzZWFyY2hcIlxuICAgICAgPjwvYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIElucHV0VGVtcGxhdGVDb21wb25lbnQge1xuICBAVmlld0NoaWxkKFwiaW5wdXRUZW1wbGF0ZVwiKSBpbnB1dFRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55Pjtcbn1cbiJdfQ==
@@ -1,152 +0,0 @@
1
- // reusable-template.component.ts
2
- import { Component, ViewChild } from "@angular/core";
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "@angular/forms";
6
- export class LocationTemplateComponent {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LocationTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LocationTemplateComponent, selector: "app-location-template", viewQueries: [{ propertyName: "locationTemplate", first: true, predicate: ["locationTemplate"], descendants: true }], ngImport: i0, template: `
9
- <ng-template
10
- #locationTemplate
11
- let-context="context"
12
- let-locationData="locationData"
13
- let-inputValue="inputValue"
14
- let-selectValue="selectValue"
15
- let-radiusChange="radiusChange"
16
- let-inputChange="inputChange"
17
- let-locationBlur="locationBlur"
18
- let-locationError="locationError"
19
- let-getCurrentLocation="getCurrentLocation"
20
- >
21
- <div
22
- class="searchstax-location-input-container"
23
- data-test-id="searchstax-location-input-container"
24
- *ngIf="locationData"
25
- >
26
- <div class="searchstax-location-input-wrapper">
27
- <span class="searchstax-location-input-label">NEAR</span>
28
- <div class="searchstax-location-input-wrapper-inner">
29
- <input
30
- type="text"
31
- id="searchstax-location-input"
32
- class="searchstax-location-input"
33
- [ngClass]="{
34
- 'searchstax-input-location-error': locationError
35
- }"
36
- placeholder="Zip, Postal Code or City..."
37
- aria-label="Search Location Input"
38
- data-test-id="searchstax-location-input"
39
- [value]="inputValue"
40
- (change)="inputChange($event, context)"
41
- (blur)="locationBlur(context)"
42
- />
43
- <button
44
- (click)="getCurrentLocation(context)"
45
- class="searchstax-get-current-location-button"
46
- >
47
- Use my current location
48
- </button>
49
- </div>
50
- <span
51
- *ngIf="locationData.shouldShowLocationDistanceDropdown"
52
- class="searchstax-location-input-label"
53
- >WITHIN</span
54
- >
55
- <select
56
- *ngIf="locationData.shouldShowLocationDistanceDropdown"
57
- id="searchstax-location-radius-select"
58
- class="searchstax-location-radius-select"
59
- aria-label="Search Location Radius Select"
60
- data-test-id="searchstax-location-radius-select"
61
- (change)="radiusChange($event, context)"
62
- [(ngModel)]="context.selectValue"
63
- >
64
- <option
65
- *ngFor="let value of locationData.locationSearchDistanceValues"
66
- [value]="value.value"
67
- >
68
- {{ value.label }}
69
- </option>
70
- </select>
71
- </div>
72
- </div>
73
- </ng-template>
74
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i2.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
75
- }
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LocationTemplateComponent, decorators: [{
77
- type: Component,
78
- args: [{
79
- selector: "app-location-template",
80
- template: `
81
- <ng-template
82
- #locationTemplate
83
- let-context="context"
84
- let-locationData="locationData"
85
- let-inputValue="inputValue"
86
- let-selectValue="selectValue"
87
- let-radiusChange="radiusChange"
88
- let-inputChange="inputChange"
89
- let-locationBlur="locationBlur"
90
- let-locationError="locationError"
91
- let-getCurrentLocation="getCurrentLocation"
92
- >
93
- <div
94
- class="searchstax-location-input-container"
95
- data-test-id="searchstax-location-input-container"
96
- *ngIf="locationData"
97
- >
98
- <div class="searchstax-location-input-wrapper">
99
- <span class="searchstax-location-input-label">NEAR</span>
100
- <div class="searchstax-location-input-wrapper-inner">
101
- <input
102
- type="text"
103
- id="searchstax-location-input"
104
- class="searchstax-location-input"
105
- [ngClass]="{
106
- 'searchstax-input-location-error': locationError
107
- }"
108
- placeholder="Zip, Postal Code or City..."
109
- aria-label="Search Location Input"
110
- data-test-id="searchstax-location-input"
111
- [value]="inputValue"
112
- (change)="inputChange($event, context)"
113
- (blur)="locationBlur(context)"
114
- />
115
- <button
116
- (click)="getCurrentLocation(context)"
117
- class="searchstax-get-current-location-button"
118
- >
119
- Use my current location
120
- </button>
121
- </div>
122
- <span
123
- *ngIf="locationData.shouldShowLocationDistanceDropdown"
124
- class="searchstax-location-input-label"
125
- >WITHIN</span
126
- >
127
- <select
128
- *ngIf="locationData.shouldShowLocationDistanceDropdown"
129
- id="searchstax-location-radius-select"
130
- class="searchstax-location-radius-select"
131
- aria-label="Search Location Radius Select"
132
- data-test-id="searchstax-location-radius-select"
133
- (change)="radiusChange($event, context)"
134
- [(ngModel)]="context.selectValue"
135
- >
136
- <option
137
- *ngFor="let value of locationData.locationSearchDistanceValues"
138
- [value]="value.value"
139
- >
140
- {{ value.label }}
141
- </option>
142
- </select>
143
- </div>
144
- </div>
145
- </ng-template>
146
- `,
147
- }]
148
- }], propDecorators: { locationTemplate: [{
149
- type: ViewChild,
150
- args: ["locationTemplate"]
151
- }] } });
152
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1zZWFyY2gtbG9jYXRpb24tdGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZWFyY2hzdGF4LWluYy9zZWFyY2hzdHVkaW8tdXgtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3NlYXJjaHN0YXgtc2VhcmNoLWxvY2F0aW9uLXRlbXBsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlDQUFpQztBQUNqQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBZSxNQUFNLGVBQWUsQ0FBQzs7OztBQXdFbEUsTUFBTSxPQUFPLHlCQUF5QjsrR0FBekIseUJBQXlCO21HQUF6Qix5QkFBeUIsbUxBcEUxQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0VUOzs0RkFFVSx5QkFBeUI7a0JBdEVyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0VUO2lCQUNGOzhCQUVnQyxnQkFBZ0I7c0JBQTlDLFNBQVM7dUJBQUMsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gcmV1c2FibGUtdGVtcGxhdGUuY29tcG9uZW50LnRzXG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCwgVGVtcGxhdGVSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYXBwLWxvY2F0aW9uLXRlbXBsYXRlXCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAjbG9jYXRpb25UZW1wbGF0ZVxuICAgICAgbGV0LWNvbnRleHQ9XCJjb250ZXh0XCJcbiAgICAgIGxldC1sb2NhdGlvbkRhdGE9XCJsb2NhdGlvbkRhdGFcIlxuICAgICAgbGV0LWlucHV0VmFsdWU9XCJpbnB1dFZhbHVlXCJcbiAgICAgIGxldC1zZWxlY3RWYWx1ZT1cInNlbGVjdFZhbHVlXCJcbiAgICAgIGxldC1yYWRpdXNDaGFuZ2U9XCJyYWRpdXNDaGFuZ2VcIlxuICAgICAgbGV0LWlucHV0Q2hhbmdlPVwiaW5wdXRDaGFuZ2VcIlxuICAgICAgbGV0LWxvY2F0aW9uQmx1cj1cImxvY2F0aW9uQmx1clwiXG4gICAgICBsZXQtbG9jYXRpb25FcnJvcj1cImxvY2F0aW9uRXJyb3JcIlxuICAgICAgbGV0LWdldEN1cnJlbnRMb2NhdGlvbj1cImdldEN1cnJlbnRMb2NhdGlvblwiXG4gICAgPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInNlYXJjaHN0YXgtbG9jYXRpb24taW5wdXQtY29udGFpbmVyXCJcbiAgICAgICAgZGF0YS10ZXN0LWlkPVwic2VhcmNoc3RheC1sb2NhdGlvbi1pbnB1dC1jb250YWluZXJcIlxuICAgICAgICAqbmdJZj1cImxvY2F0aW9uRGF0YVwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2hzdGF4LWxvY2F0aW9uLWlucHV0LXdyYXBwZXJcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInNlYXJjaHN0YXgtbG9jYXRpb24taW5wdXQtbGFiZWxcIj5ORUFSPC9zcGFuPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2hzdGF4LWxvY2F0aW9uLWlucHV0LXdyYXBwZXItaW5uZXJcIj5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgIGlkPVwic2VhcmNoc3RheC1sb2NhdGlvbi1pbnB1dFwiXG4gICAgICAgICAgICAgIGNsYXNzPVwic2VhcmNoc3RheC1sb2NhdGlvbi1pbnB1dFwiXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgICAnc2VhcmNoc3RheC1pbnB1dC1sb2NhdGlvbi1lcnJvcic6IGxvY2F0aW9uRXJyb3JcbiAgICAgICAgICAgICAgfVwiXG4gICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiWmlwLCBQb3N0YWwgQ29kZSBvciBDaXR5Li4uXCJcbiAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIlNlYXJjaCBMb2NhdGlvbiBJbnB1dFwiXG4gICAgICAgICAgICAgIGRhdGEtdGVzdC1pZD1cInNlYXJjaHN0YXgtbG9jYXRpb24taW5wdXRcIlxuICAgICAgICAgICAgICBbdmFsdWVdPVwiaW5wdXRWYWx1ZVwiXG4gICAgICAgICAgICAgIChjaGFuZ2UpPVwiaW5wdXRDaGFuZ2UoJGV2ZW50LCBjb250ZXh0KVwiXG4gICAgICAgICAgICAgIChibHVyKT1cImxvY2F0aW9uQmx1cihjb250ZXh0KVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAoY2xpY2spPVwiZ2V0Q3VycmVudExvY2F0aW9uKGNvbnRleHQpXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJzZWFyY2hzdGF4LWdldC1jdXJyZW50LWxvY2F0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIFVzZSBteSBjdXJyZW50IGxvY2F0aW9uXG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgKm5nSWY9XCJsb2NhdGlvbkRhdGEuc2hvdWxkU2hvd0xvY2F0aW9uRGlzdGFuY2VEcm9wZG93blwiXG4gICAgICAgICAgICBjbGFzcz1cInNlYXJjaHN0YXgtbG9jYXRpb24taW5wdXQtbGFiZWxcIlxuICAgICAgICAgICAgPldJVEhJTjwvc3BhblxuICAgICAgICAgID5cbiAgICAgICAgICA8c2VsZWN0XG4gICAgICAgICAgICAqbmdJZj1cImxvY2F0aW9uRGF0YS5zaG91bGRTaG93TG9jYXRpb25EaXN0YW5jZURyb3Bkb3duXCJcbiAgICAgICAgICAgIGlkPVwic2VhcmNoc3RheC1sb2NhdGlvbi1yYWRpdXMtc2VsZWN0XCJcbiAgICAgICAgICAgIGNsYXNzPVwic2VhcmNoc3RheC1sb2NhdGlvbi1yYWRpdXMtc2VsZWN0XCJcbiAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJTZWFyY2ggTG9jYXRpb24gUmFkaXVzIFNlbGVjdFwiXG4gICAgICAgICAgICBkYXRhLXRlc3QtaWQ9XCJzZWFyY2hzdGF4LWxvY2F0aW9uLXJhZGl1cy1zZWxlY3RcIlxuICAgICAgICAgICAgKGNoYW5nZSk9XCJyYWRpdXNDaGFuZ2UoJGV2ZW50LCBjb250ZXh0KVwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cImNvbnRleHQuc2VsZWN0VmFsdWVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxvcHRpb25cbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IHZhbHVlIG9mIGxvY2F0aW9uRGF0YS5sb2NhdGlvblNlYXJjaERpc3RhbmNlVmFsdWVzXCJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cInZhbHVlLnZhbHVlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge3sgdmFsdWUubGFiZWwgfX1cbiAgICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICAgIDwvc2VsZWN0PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIExvY2F0aW9uVGVtcGxhdGVDb21wb25lbnQge1xuICBAVmlld0NoaWxkKFwibG9jYXRpb25UZW1wbGF0ZVwiKSBsb2NhdGlvblRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55Pjtcbn1cbiJdfQ==
@@ -1,85 +0,0 @@
1
- // reusable-template.component.ts
2
- import { Component, ViewChild } from "@angular/core";
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- export class NoResultsTemplateComponent {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NoResultsTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: NoResultsTemplateComponent, selector: "app-no-results-template", viewQueries: [{ propertyName: "noResultsTemplate", first: true, predicate: ["noResultsTemplate"], descendants: true }], ngImport: i0, template: `
8
- <ng-template
9
- #noResultsTemplate
10
- let-metadata="metadata"
11
- let-searchTerm="searchTerm"
12
- let-executeSearch="executeSearch"
13
- let-context="context"
14
- >
15
- <div class="searchstax-no-results">
16
- Showing <strong>no results</strong> for
17
- <strong>"{{ searchTerm }}"</strong>
18
- <br />
19
- <span *ngIf="metadata?.spellingSuggestion"
20
- >&nbsp;Did you mean
21
- <a
22
- href="#"
23
- [attr.aria-label]="'did you mean: ' + metadata?.spellingSuggestion"
24
- class="searchstax-suggestion-term"
25
- (click)="
26
- executeSearch(metadata?.spellingSuggestion ?? '', $event, context)
27
- "
28
- >{{ metadata?.spellingSuggestion }}</a
29
- >?</span
30
- >
31
- </div>
32
- <ul>
33
- <li>
34
- Try searching for search related terms or topics. We offer a wide
35
- variety of content to help you get the information you need.
36
- </li>
37
- <li>Lost? Click on the ‘X” in the Search Box to reset your search.</li>
38
- </ul>
39
- </ng-template>
40
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
41
- }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: NoResultsTemplateComponent, decorators: [{
43
- type: Component,
44
- args: [{
45
- selector: "app-no-results-template",
46
- template: `
47
- <ng-template
48
- #noResultsTemplate
49
- let-metadata="metadata"
50
- let-searchTerm="searchTerm"
51
- let-executeSearch="executeSearch"
52
- let-context="context"
53
- >
54
- <div class="searchstax-no-results">
55
- Showing <strong>no results</strong> for
56
- <strong>"{{ searchTerm }}"</strong>
57
- <br />
58
- <span *ngIf="metadata?.spellingSuggestion"
59
- >&nbsp;Did you mean
60
- <a
61
- href="#"
62
- [attr.aria-label]="'did you mean: ' + metadata?.spellingSuggestion"
63
- class="searchstax-suggestion-term"
64
- (click)="
65
- executeSearch(metadata?.spellingSuggestion ?? '', $event, context)
66
- "
67
- >{{ metadata?.spellingSuggestion }}</a
68
- >?</span
69
- >
70
- </div>
71
- <ul>
72
- <li>
73
- Try searching for search related terms or topics. We offer a wide
74
- variety of content to help you get the information you need.
75
- </li>
76
- <li>Lost? Click on the ‘X” in the Search Box to reset your search.</li>
77
- </ul>
78
- </ng-template>
79
- `,
80
- }]
81
- }], propDecorators: { noResultsTemplate: [{
82
- type: ViewChild,
83
- args: ["noResultsTemplate"]
84
- }] } });
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1zZWFyY2gtbm8tcmVzdWx0cy10ZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvc2VhcmNoc3RheC1zZWFyY2gtbm8tcmVzdWx0cy10ZW1wbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQ0FBaUM7QUFDakMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWUsTUFBTSxlQUFlLENBQUM7OztBQXVDbEUsTUFBTSxPQUFPLDBCQUEwQjsrR0FBMUIsMEJBQTBCO21HQUExQiwwQkFBMEIsdUxBbkMzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUNUOzs0RkFFVSwwQkFBMEI7a0JBckN0QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx5QkFBeUI7b0JBQ25DLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUNUO2lCQUNGOzhCQUVpQyxpQkFBaUI7c0JBQWhELFNBQVM7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gcmV1c2FibGUtdGVtcGxhdGUuY29tcG9uZW50LnRzXG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCwgVGVtcGxhdGVSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYXBwLW5vLXJlc3VsdHMtdGVtcGxhdGVcIixcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICNub1Jlc3VsdHNUZW1wbGF0ZVxuICAgICAgbGV0LW1ldGFkYXRhPVwibWV0YWRhdGFcIlxuICAgICAgbGV0LXNlYXJjaFRlcm09XCJzZWFyY2hUZXJtXCJcbiAgICAgIGxldC1leGVjdXRlU2VhcmNoPVwiZXhlY3V0ZVNlYXJjaFwiXG4gICAgICBsZXQtY29udGV4dD1cImNvbnRleHRcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2hzdGF4LW5vLXJlc3VsdHNcIj5cbiAgICAgICAgU2hvd2luZyA8c3Ryb25nPm5vIHJlc3VsdHM8L3N0cm9uZz4gZm9yXG4gICAgICAgIDxzdHJvbmc+XCJ7eyBzZWFyY2hUZXJtIH19XCI8L3N0cm9uZz5cbiAgICAgICAgPGJyIC8+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwibWV0YWRhdGE/LnNwZWxsaW5nU3VnZ2VzdGlvblwiXG4gICAgICAgICAgPiZuYnNwO0RpZCB5b3UgbWVhblxuICAgICAgICAgIDxhXG4gICAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidkaWQgeW91IG1lYW46ICcgKyBtZXRhZGF0YT8uc3BlbGxpbmdTdWdnZXN0aW9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwic2VhcmNoc3RheC1zdWdnZXN0aW9uLXRlcm1cIlxuICAgICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgICBleGVjdXRlU2VhcmNoKG1ldGFkYXRhPy5zcGVsbGluZ1N1Z2dlc3Rpb24gPz8gJycsICRldmVudCwgY29udGV4dClcbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+e3sgbWV0YWRhdGE/LnNwZWxsaW5nU3VnZ2VzdGlvbiB9fTwvYVxuICAgICAgICAgID4/PC9zcGFuXG4gICAgICAgID5cbiAgICAgIDwvZGl2PlxuICAgICAgPHVsPlxuICAgICAgICA8bGk+XG4gICAgICAgICAgVHJ5IHNlYXJjaGluZyBmb3Igc2VhcmNoIHJlbGF0ZWQgdGVybXMgb3IgdG9waWNzLiBXZSBvZmZlciBhIHdpZGVcbiAgICAgICAgICB2YXJpZXR5IG9mIGNvbnRlbnQgdG8gaGVscCB5b3UgZ2V0IHRoZSBpbmZvcm1hdGlvbiB5b3UgbmVlZC5cbiAgICAgICAgPC9saT5cbiAgICAgICAgPGxpPkxvc3Q/IENsaWNrIG9uIHRoZSDigJhY4oCdIGluIHRoZSBTZWFyY2ggQm94IHRvIHJlc2V0IHlvdXIgc2VhcmNoLjwvbGk+XG4gICAgICA8L3VsPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIE5vUmVzdWx0c1RlbXBsYXRlQ29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZChcIm5vUmVzdWx0c1RlbXBsYXRlXCIpIG5vUmVzdWx0c1RlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55Pjtcbn1cbiJdfQ==
@@ -1,87 +0,0 @@
1
- // reusable-template.component.ts
2
- import { Component, ViewChild } from "@angular/core";
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- export class OverviewTemplateComponent {
6
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OverviewTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: OverviewTemplateComponent, selector: "app-overview-template", viewQueries: [{ propertyName: "overviewTemplate", first: true, predicate: ["feedbackTemplate"], descendants: true }], ngImport: i0, template: `
8
- <ng-template
9
- #feedbackTemplate
10
- let-searchFeedbackData="searchFeedbackData"
11
- let-onOriginalQueryClick="onOriginalQueryClick"
12
- let-context="context"
13
- >
14
- <h2 class="searchstax-feedback-container">
15
- Showing
16
- <b
17
- >{{ searchFeedbackData!.startResultIndex }} -
18
- {{ searchFeedbackData!.endResultIndex }}</b
19
- >
20
- of <b>{{ searchFeedbackData!.totalResults }}</b> results
21
- <span *ngIf="searchFeedbackData.searchTerm"
22
- >for "<b>{{ searchFeedbackData!.searchTerm }}</b
23
- >"
24
- </span>
25
- <div class="searchstax-feedback-container-suggested">
26
- <div *ngIf="searchFeedbackData.autoCorrectedQuery">
27
- Search instead for
28
- <a
29
- href="#"
30
- (click)="onOriginalQueryClick($event, context)"
31
- class="searchstax-feedback-original-query"
32
- [attr.aria-label]="
33
- 'Search instead for: ' + searchFeedbackData!.originalQuery
34
- "
35
- >{{ searchFeedbackData!.originalQuery }}</a
36
- >
37
- </div>
38
- </div>
39
- </h2>
40
- </ng-template>
41
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
42
- }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: OverviewTemplateComponent, decorators: [{
44
- type: Component,
45
- args: [{
46
- selector: "app-overview-template",
47
- template: `
48
- <ng-template
49
- #feedbackTemplate
50
- let-searchFeedbackData="searchFeedbackData"
51
- let-onOriginalQueryClick="onOriginalQueryClick"
52
- let-context="context"
53
- >
54
- <h2 class="searchstax-feedback-container">
55
- Showing
56
- <b
57
- >{{ searchFeedbackData!.startResultIndex }} -
58
- {{ searchFeedbackData!.endResultIndex }}</b
59
- >
60
- of <b>{{ searchFeedbackData!.totalResults }}</b> results
61
- <span *ngIf="searchFeedbackData.searchTerm"
62
- >for "<b>{{ searchFeedbackData!.searchTerm }}</b
63
- >"
64
- </span>
65
- <div class="searchstax-feedback-container-suggested">
66
- <div *ngIf="searchFeedbackData.autoCorrectedQuery">
67
- Search instead for
68
- <a
69
- href="#"
70
- (click)="onOriginalQueryClick($event, context)"
71
- class="searchstax-feedback-original-query"
72
- [attr.aria-label]="
73
- 'Search instead for: ' + searchFeedbackData!.originalQuery
74
- "
75
- >{{ searchFeedbackData!.originalQuery }}</a
76
- >
77
- </div>
78
- </div>
79
- </h2>
80
- </ng-template>
81
- `,
82
- }]
83
- }], propDecorators: { overviewTemplate: [{
84
- type: ViewChild,
85
- args: ["feedbackTemplate"]
86
- }] } });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1zZWFyY2gtb3ZlcnZpZXctdGVtcGxhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZWFyY2hzdGF4LWluYy9zZWFyY2hzdHVkaW8tdXgtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvdGVtcGxhdGVzL3NlYXJjaHN0YXgtc2VhcmNoLW92ZXJ2aWV3LXRlbXBsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlDQUFpQztBQUNqQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBZSxNQUFNLGVBQWUsQ0FBQzs7O0FBd0NsRSxNQUFNLE9BQU8seUJBQXlCOytHQUF6Qix5QkFBeUI7bUdBQXpCLHlCQUF5QixtTEFwQzFCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0NUOzs0RkFFVSx5QkFBeUI7a0JBdENyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtDVDtpQkFDRjs4QkFFZ0MsZ0JBQWdCO3NCQUE5QyxTQUFTO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIHJldXNhYmxlLXRlbXBsYXRlLmNvbXBvbmVudC50c1xuaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIFRlbXBsYXRlUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImFwcC1vdmVydmlldy10ZW1wbGF0ZVwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgI2ZlZWRiYWNrVGVtcGxhdGVcbiAgICAgIGxldC1zZWFyY2hGZWVkYmFja0RhdGE9XCJzZWFyY2hGZWVkYmFja0RhdGFcIlxuICAgICAgbGV0LW9uT3JpZ2luYWxRdWVyeUNsaWNrPVwib25PcmlnaW5hbFF1ZXJ5Q2xpY2tcIlxuICAgICAgbGV0LWNvbnRleHQ9XCJjb250ZXh0XCJcbiAgICA+XG4gICAgICA8aDIgY2xhc3M9XCJzZWFyY2hzdGF4LWZlZWRiYWNrLWNvbnRhaW5lclwiPlxuICAgICAgICBTaG93aW5nXG4gICAgICAgIDxiXG4gICAgICAgICAgPnt7IHNlYXJjaEZlZWRiYWNrRGF0YSEuc3RhcnRSZXN1bHRJbmRleCB9fSAtXG4gICAgICAgICAge3sgc2VhcmNoRmVlZGJhY2tEYXRhIS5lbmRSZXN1bHRJbmRleCB9fTwvYlxuICAgICAgICA+XG4gICAgICAgIG9mIDxiPnt7IHNlYXJjaEZlZWRiYWNrRGF0YSEudG90YWxSZXN1bHRzIH19PC9iPiByZXN1bHRzXG4gICAgICAgIDxzcGFuICpuZ0lmPVwic2VhcmNoRmVlZGJhY2tEYXRhLnNlYXJjaFRlcm1cIlxuICAgICAgICAgID5mb3IgXCI8Yj57eyBzZWFyY2hGZWVkYmFja0RhdGEhLnNlYXJjaFRlcm0gfX08L2JcbiAgICAgICAgICA+XCJcbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VhcmNoc3RheC1mZWVkYmFjay1jb250YWluZXItc3VnZ2VzdGVkXCI+XG4gICAgICAgICAgPGRpdiAqbmdJZj1cInNlYXJjaEZlZWRiYWNrRGF0YS5hdXRvQ29ycmVjdGVkUXVlcnlcIj5cbiAgICAgICAgICAgIFNlYXJjaCBpbnN0ZWFkIGZvclxuICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgaHJlZj1cIiNcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwib25PcmlnaW5hbFF1ZXJ5Q2xpY2soJGV2ZW50LCBjb250ZXh0KVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwic2VhcmNoc3RheC1mZWVkYmFjay1vcmlnaW5hbC1xdWVyeVwiXG4gICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiXG4gICAgICAgICAgICAgICAgJ1NlYXJjaCBpbnN0ZWFkIGZvcjogJyArIHNlYXJjaEZlZWRiYWNrRGF0YSEub3JpZ2luYWxRdWVyeVxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICA+e3sgc2VhcmNoRmVlZGJhY2tEYXRhIS5vcmlnaW5hbFF1ZXJ5IH19PC9hXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9oMj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBPdmVydmlld1RlbXBsYXRlQ29tcG9uZW50IHtcbiAgQFZpZXdDaGlsZChcImZlZWRiYWNrVGVtcGxhdGVcIikgb3ZlcnZpZXdUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG59XG4iXX0=
@@ -1,60 +0,0 @@
1
- // reusable-template.component.ts
2
- import { Component, ViewChild } from "@angular/core";
3
- import * as i0 from "@angular/core";
4
- export class PaginationInfiniteTemplateComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PaginationInfiniteTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: PaginationInfiniteTemplateComponent, selector: "app-pagination-infinite-template", viewQueries: [{ propertyName: "infiniteScrollTemplate", first: true, predicate: ["infiniteScrollTemplate"], descendants: true }], ngImport: i0, template: `
7
- <ng-template
8
- #infiniteScrollTemplate
9
- let-paginationData="paginationData"
10
- let-nextPage="nextPage"
11
- let-context="context"
12
- >
13
- <div class="searchstax-pagination-container">
14
- <div class="searchstax-pagination-content">
15
- <a
16
- class="searchstax-pagination-load-more"
17
- (click)="nextPage($event, context)"
18
- (keyup.enter)="nextPage($event, context)"
19
- (keyup.space)="nextPage($event, context)"
20
- tabindex="0"
21
- >
22
- Load More
23
- </a>
24
- </div>
25
- </div>
26
- </ng-template>
27
- `, isInline: true }); }
28
- }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PaginationInfiniteTemplateComponent, decorators: [{
30
- type: Component,
31
- args: [{
32
- selector: "app-pagination-infinite-template",
33
- template: `
34
- <ng-template
35
- #infiniteScrollTemplate
36
- let-paginationData="paginationData"
37
- let-nextPage="nextPage"
38
- let-context="context"
39
- >
40
- <div class="searchstax-pagination-container">
41
- <div class="searchstax-pagination-content">
42
- <a
43
- class="searchstax-pagination-load-more"
44
- (click)="nextPage($event, context)"
45
- (keyup.enter)="nextPage($event, context)"
46
- (keyup.space)="nextPage($event, context)"
47
- tabindex="0"
48
- >
49
- Load More
50
- </a>
51
- </div>
52
- </div>
53
- </ng-template>
54
- `,
55
- }]
56
- }], propDecorators: { infiniteScrollTemplate: [{
57
- type: ViewChild,
58
- args: ["infiniteScrollTemplate"]
59
- }] } });
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1zZWFyY2gtcGFnaW5hdGlvbi1pbmZpbml0ZS10ZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvc2VhcmNoc3RheC1zZWFyY2gtcGFnaW5hdGlvbi1pbmZpbml0ZS10ZW1wbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQ0FBaUM7QUFDakMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWUsTUFBTSxlQUFlLENBQUM7O0FBMkJsRSxNQUFNLE9BQU8sbUNBQW1DOytHQUFuQyxtQ0FBbUM7bUdBQW5DLG1DQUFtQywwTUF2QnBDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQlQ7OzRGQUVVLG1DQUFtQztrQkF6Qi9DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtDQUFrQztvQkFDNUMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FxQlQ7aUJBQ0Y7OEJBRXNDLHNCQUFzQjtzQkFBMUQsU0FBUzt1QkFBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyIvLyByZXVzYWJsZS10ZW1wbGF0ZS5jb21wb25lbnQudHNcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkLCBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhcHAtcGFnaW5hdGlvbi1pbmZpbml0ZS10ZW1wbGF0ZVwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgI2luZmluaXRlU2Nyb2xsVGVtcGxhdGVcbiAgICAgIGxldC1wYWdpbmF0aW9uRGF0YT1cInBhZ2luYXRpb25EYXRhXCJcbiAgICAgIGxldC1uZXh0UGFnZT1cIm5leHRQYWdlXCJcbiAgICAgIGxldC1jb250ZXh0PVwiY29udGV4dFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaHN0YXgtcGFnaW5hdGlvbi1jb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNlYXJjaHN0YXgtcGFnaW5hdGlvbi1jb250ZW50XCI+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIGNsYXNzPVwic2VhcmNoc3RheC1wYWdpbmF0aW9uLWxvYWQtbW9yZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwibmV4dFBhZ2UoJGV2ZW50LCBjb250ZXh0KVwiXG4gICAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwibmV4dFBhZ2UoJGV2ZW50LCBjb250ZXh0KVwiXG4gICAgICAgICAgICAoa2V5dXAuc3BhY2UpPVwibmV4dFBhZ2UoJGV2ZW50LCBjb250ZXh0KVwiXG4gICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIExvYWQgTW9yZVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uSW5maW5pdGVUZW1wbGF0ZUNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoXCJpbmZpbml0ZVNjcm9sbFRlbXBsYXRlXCIpIGluZmluaXRlU2Nyb2xsVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+O1xufVxuIl19
@@ -1,96 +0,0 @@
1
- // reusable-template.component.ts
2
- import { Component, ViewChild } from "@angular/core";
3
- import * as i0 from "@angular/core";
4
- export class PaginationTemplateComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PaginationTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: PaginationTemplateComponent, selector: "app-pagination-template", viewQueries: [{ propertyName: "paginationTemplate", first: true, predicate: ["paginationTemplate"], descendants: true }], ngImport: i0, template: `
7
- <ng-template
8
- #paginationTemplate
9
- let-paginationData="paginationData"
10
- let-previousPage="previousPage"
11
- let-nextPage="nextPage"
12
- let-context="context"
13
- >
14
- <div class="searchstax-pagination-container">
15
- <div class="searchstax-pagination-content">
16
- <a
17
- class="searchstax-pagination-previous"
18
- [class]="paginationData.isFirstPage ? 'disabled' : ''"
19
- (click)="previousPage($event, context)"
20
- (keyup.enter)="previousPage($event, context)"
21
- (keyup.space)="previousPage($event, context)"
22
- tabindex="0"
23
- id="searchstax-pagination-previous"
24
- >
25
- &lt; Previous
26
- </a>
27
- <div class="searchstax-pagination-details">
28
- {{ paginationData?.startResultIndex }} -
29
- {{ paginationData?.endResultIndex }} of
30
- {{ paginationData?.totalResults }}
31
- </div>
32
- <a
33
- class="searchstax-pagination-next"
34
- [class]="paginationData.isLastPage ? 'disabled' : ''"
35
- (click)="nextPage($event, context)"
36
- (keyup.enter)="nextPage($event, context)"
37
- (keyup.space)="nextPage($event, context)"
38
- tabindex="0"
39
- id="searchstax-pagination-next"
40
- >Next ></a
41
- >
42
- </div>
43
- </div>
44
- </ng-template>
45
- `, isInline: true }); }
46
- }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PaginationTemplateComponent, decorators: [{
48
- type: Component,
49
- args: [{
50
- selector: "app-pagination-template",
51
- template: `
52
- <ng-template
53
- #paginationTemplate
54
- let-paginationData="paginationData"
55
- let-previousPage="previousPage"
56
- let-nextPage="nextPage"
57
- let-context="context"
58
- >
59
- <div class="searchstax-pagination-container">
60
- <div class="searchstax-pagination-content">
61
- <a
62
- class="searchstax-pagination-previous"
63
- [class]="paginationData.isFirstPage ? 'disabled' : ''"
64
- (click)="previousPage($event, context)"
65
- (keyup.enter)="previousPage($event, context)"
66
- (keyup.space)="previousPage($event, context)"
67
- tabindex="0"
68
- id="searchstax-pagination-previous"
69
- >
70
- &lt; Previous
71
- </a>
72
- <div class="searchstax-pagination-details">
73
- {{ paginationData?.startResultIndex }} -
74
- {{ paginationData?.endResultIndex }} of
75
- {{ paginationData?.totalResults }}
76
- </div>
77
- <a
78
- class="searchstax-pagination-next"
79
- [class]="paginationData.isLastPage ? 'disabled' : ''"
80
- (click)="nextPage($event, context)"
81
- (keyup.enter)="nextPage($event, context)"
82
- (keyup.space)="nextPage($event, context)"
83
- tabindex="0"
84
- id="searchstax-pagination-next"
85
- >Next ></a
86
- >
87
- </div>
88
- </div>
89
- </ng-template>
90
- `,
91
- }]
92
- }], propDecorators: { paginationTemplate: [{
93
- type: ViewChild,
94
- args: ["paginationTemplate"]
95
- }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoc3RheC1zZWFyY2gtcGFnaW5hdGlvbi10ZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NlYXJjaHN0YXgtaW5jL3NlYXJjaHN0dWRpby11eC1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy90ZW1wbGF0ZXMvc2VhcmNoc3RheC1zZWFyY2gtcGFnaW5hdGlvbi10ZW1wbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQ0FBaUM7QUFDakMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWUsTUFBTSxlQUFlLENBQUM7O0FBNkNsRSxNQUFNLE9BQU8sMkJBQTJCOytHQUEzQiwyQkFBMkI7bUdBQTNCLDJCQUEyQix5TEF6QzVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1Q1Q7OzRGQUVVLDJCQUEyQjtrQkEzQ3ZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1Q1Q7aUJBQ0Y7OEJBRWtDLGtCQUFrQjtzQkFBbEQsU0FBUzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyIvLyByZXVzYWJsZS10ZW1wbGF0ZS5jb21wb25lbnQudHNcbmltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkLCBUZW1wbGF0ZVJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhcHAtcGFnaW5hdGlvbi10ZW1wbGF0ZVwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgI3BhZ2luYXRpb25UZW1wbGF0ZVxuICAgICAgbGV0LXBhZ2luYXRpb25EYXRhPVwicGFnaW5hdGlvbkRhdGFcIlxuICAgICAgbGV0LXByZXZpb3VzUGFnZT1cInByZXZpb3VzUGFnZVwiXG4gICAgICBsZXQtbmV4dFBhZ2U9XCJuZXh0UGFnZVwiXG4gICAgICBsZXQtY29udGV4dD1cImNvbnRleHRcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2hzdGF4LXBhZ2luYXRpb24tY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2hzdGF4LXBhZ2luYXRpb24tY29udGVudFwiPlxuICAgICAgICAgIDxhXG4gICAgICAgICAgICBjbGFzcz1cInNlYXJjaHN0YXgtcGFnaW5hdGlvbi1wcmV2aW91c1wiXG4gICAgICAgICAgICBbY2xhc3NdPVwicGFnaW5hdGlvbkRhdGEuaXNGaXJzdFBhZ2UgPyAnZGlzYWJsZWQnIDogJydcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInByZXZpb3VzUGFnZSgkZXZlbnQsIGNvbnRleHQpXCJcbiAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJwcmV2aW91c1BhZ2UoJGV2ZW50LCBjb250ZXh0KVwiXG4gICAgICAgICAgICAoa2V5dXAuc3BhY2UpPVwicHJldmlvdXNQYWdlKCRldmVudCwgY29udGV4dClcIlxuICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgIGlkPVwic2VhcmNoc3RheC1wYWdpbmF0aW9uLXByZXZpb3VzXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICAmbHQ7IFByZXZpb3VzXG4gICAgICAgICAgPC9hPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzZWFyY2hzdGF4LXBhZ2luYXRpb24tZGV0YWlsc1wiPlxuICAgICAgICAgICAge3sgcGFnaW5hdGlvbkRhdGE/LnN0YXJ0UmVzdWx0SW5kZXggfX0gLVxuICAgICAgICAgICAge3sgcGFnaW5hdGlvbkRhdGE/LmVuZFJlc3VsdEluZGV4IH19IG9mXG4gICAgICAgICAgICB7eyBwYWdpbmF0aW9uRGF0YT8udG90YWxSZXN1bHRzIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIGNsYXNzPVwic2VhcmNoc3RheC1wYWdpbmF0aW9uLW5leHRcIlxuICAgICAgICAgICAgW2NsYXNzXT1cInBhZ2luYXRpb25EYXRhLmlzTGFzdFBhZ2UgPyAnZGlzYWJsZWQnIDogJydcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm5leHRQYWdlKCRldmVudCwgY29udGV4dClcIlxuICAgICAgICAgICAgKGtleXVwLmVudGVyKT1cIm5leHRQYWdlKCRldmVudCwgY29udGV4dClcIlxuICAgICAgICAgICAgKGtleXVwLnNwYWNlKT1cIm5leHRQYWdlKCRldmVudCwgY29udGV4dClcIlxuICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgIGlkPVwic2VhcmNoc3RheC1wYWdpbmF0aW9uLW5leHRcIlxuICAgICAgICAgICAgPk5leHQgPjwvYVxuICAgICAgICAgID5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uVGVtcGxhdGVDb21wb25lbnQge1xuICBAVmlld0NoaWxkKFwicGFnaW5hdGlvblRlbXBsYXRlXCIpIHBhZ2luYXRpb25UZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG59XG4iXX0=