@bridgeline-digital/hawksearch-handlebars-ui 1.0.6 → 1.0.7

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 (121) hide show
  1. package/dist/components/autocomplete/autocomplete.component.js +100 -0
  2. package/dist/components/autocomplete/autocomplete.component.js.map +1 -0
  3. package/dist/components/base.component.js +92 -0
  4. package/dist/components/base.component.js.map +1 -0
  5. package/dist/components/content-types/base-content.component.js +8 -0
  6. package/dist/components/content-types/base-content.component.js.map +1 -0
  7. package/dist/components/content-types/custom-content/custom-content.component.js +18 -0
  8. package/dist/components/content-types/custom-content/custom-content.component.js.map +1 -0
  9. package/dist/components/content-types/featured-items-content/featured-items-content.component.js +25 -0
  10. package/dist/components/content-types/featured-items-content/featured-items-content.component.js.map +1 -0
  11. package/dist/components/content-types/featured-items-content-item/featured-items-content-item.component.js +81 -0
  12. package/dist/components/content-types/featured-items-content-item/featured-items-content-item.component.js.map +1 -0
  13. package/dist/components/content-types/image-content/image-content.component.js +27 -0
  14. package/dist/components/content-types/image-content/image-content.component.js.map +1 -0
  15. package/dist/components/content-types/index.js +6 -0
  16. package/dist/components/content-types/index.js.map +1 -0
  17. package/dist/components/content-types/popular-queries-content/popular-queries-content.component.js +32 -0
  18. package/dist/components/content-types/popular-queries-content/popular-queries-content.component.js.map +1 -0
  19. package/dist/components/content-zone/content-zone.component.js +67 -0
  20. package/dist/components/content-zone/content-zone.component.js.map +1 -0
  21. package/dist/components/date-picker/date-picker.component.js +211 -0
  22. package/dist/components/date-picker/date-picker.component.js.map +1 -0
  23. package/dist/components/facet-types/base-facet.component.js +93 -0
  24. package/dist/components/facet-types/base-facet.component.js.map +1 -0
  25. package/dist/components/facet-types/checkbox-list-facet/checkbox-list-facet.component.js +50 -0
  26. package/dist/components/facet-types/checkbox-list-facet/checkbox-list-facet.component.js.map +1 -0
  27. package/dist/components/facet-types/color-facet/color-facet.component.js +28 -0
  28. package/dist/components/facet-types/color-facet/color-facet.component.js.map +1 -0
  29. package/dist/components/facet-types/date-range-facet/date-range-facet.component.js +84 -0
  30. package/dist/components/facet-types/date-range-facet/date-range-facet.component.js.map +1 -0
  31. package/dist/components/facet-types/index.js +11 -0
  32. package/dist/components/facet-types/index.js.map +1 -0
  33. package/dist/components/facet-types/linked-list-facet/link-list-facet.component.js +28 -0
  34. package/dist/components/facet-types/linked-list-facet/link-list-facet.component.js.map +1 -0
  35. package/dist/components/facet-types/numeric-range-facet/numeric-range-facet.component.js +68 -0
  36. package/dist/components/facet-types/numeric-range-facet/numeric-range-facet.component.js.map +1 -0
  37. package/dist/components/facet-types/range-slider-facet/range-slider-facet.component.js +95 -0
  38. package/dist/components/facet-types/range-slider-facet/range-slider-facet.component.js.map +1 -0
  39. package/dist/components/facet-types/recent-searches-facet/recent-searches-facet.component.js +33 -0
  40. package/dist/components/facet-types/recent-searches-facet/recent-searches-facet.component.js.map +1 -0
  41. package/dist/components/facet-types/related-searches-facet/related-searches-facet.component.js +33 -0
  42. package/dist/components/facet-types/related-searches-facet/related-searches-facet.component.js.map +1 -0
  43. package/dist/components/facet-types/search-within-facet/search-within-facet.component.js +32 -0
  44. package/dist/components/facet-types/search-within-facet/search-within-facet.component.js.map +1 -0
  45. package/dist/components/facet-types/size-facet/size-facet.component.js +28 -0
  46. package/dist/components/facet-types/size-facet/size-facet.component.js.map +1 -0
  47. package/dist/components/facet-wrapper/facet-wrapper.component.js +51 -0
  48. package/dist/components/facet-wrapper/facet-wrapper.component.js.map +1 -0
  49. package/dist/components/facets-list/facets-list.component.js +83 -0
  50. package/dist/components/facets-list/facets-list.component.js.map +1 -0
  51. package/dist/components/icon/icon.component.js +36 -0
  52. package/dist/components/icon/icon.component.js.map +1 -0
  53. package/dist/components/index.js +22 -0
  54. package/dist/components/index.js.map +1 -0
  55. package/dist/components/modified-query/modified-query.component.js +35 -0
  56. package/dist/components/modified-query/modified-query.component.js.map +1 -0
  57. package/dist/components/page-size/page-size.component.js +33 -0
  58. package/dist/components/page-size/page-size.component.js.map +1 -0
  59. package/dist/components/pagination/pagination.component.js +100 -0
  60. package/dist/components/pagination/pagination.component.js.map +1 -0
  61. package/dist/components/query-suggestions/query-suggestions.component.js +54 -0
  62. package/dist/components/query-suggestions/query-suggestions.component.js.map +1 -0
  63. package/dist/components/range-slider/range-slider.component.js +153 -0
  64. package/dist/components/range-slider/range-slider.component.js.map +1 -0
  65. package/dist/components/search-field/search-field.component.js +73 -0
  66. package/dist/components/search-field/search-field.component.js.map +1 -0
  67. package/dist/components/search-results/search-results.component.js +15 -0
  68. package/dist/components/search-results/search-results.component.js.map +1 -0
  69. package/dist/components/search-results-item/search-results-item.component.js +37 -0
  70. package/dist/components/search-results-item/search-results-item.component.js.map +1 -0
  71. package/dist/components/search-results-list/search-results-list.component.js +28 -0
  72. package/dist/components/search-results-list/search-results-list.component.js.map +1 -0
  73. package/dist/components/selected-facets/selected-facets.component.js +96 -0
  74. package/dist/components/selected-facets/selected-facets.component.js.map +1 -0
  75. package/dist/components/sorting/sorting.component.js +31 -0
  76. package/dist/components/sorting/sorting.component.js.map +1 -0
  77. package/dist/components/tabs/tabs.component.js +31 -0
  78. package/dist/components/tabs/tabs.component.js.map +1 -0
  79. package/dist/components/tooltip/tooltip.component.js +43 -0
  80. package/dist/components/tooltip/tooltip.component.js.map +1 -0
  81. package/dist/{hawksearch.cb6eccf3f9c28df794a6503d139be086.css → hawksearch-handlebars-ui.f9b58807d6ad9185740abc54376c67da.css} +1 -1
  82. package/dist/hawksearch-handlebars-ui.js +1 -1
  83. package/dist/hawksearch-handlebars-ui.js.LICENSE.txt +0 -9
  84. package/dist/hawksearch-handlebars-ui.js.map +1 -1
  85. package/dist/helpers/dates.js +13 -0
  86. package/dist/helpers/dates.js.map +1 -0
  87. package/dist/helpers/formatters.js +34 -0
  88. package/dist/helpers/formatters.js.map +1 -0
  89. package/dist/helpers/index.js +3 -0
  90. package/dist/helpers/index.js.map +1 -0
  91. package/dist/index.js +130 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/models/autocomplete.models.js +2 -0
  94. package/dist/models/autocomplete.models.js.map +1 -0
  95. package/dist/models/component.models.js +2 -0
  96. package/dist/models/component.models.js.map +1 -0
  97. package/dist/models/content.models.js +2 -0
  98. package/dist/models/content.models.js.map +1 -0
  99. package/dist/models/global.models.js +2 -0
  100. package/dist/models/global.models.js.map +1 -0
  101. package/dist/models/index.js +9 -0
  102. package/dist/models/index.js.map +1 -0
  103. package/dist/models/raw-autocomplete.models.js +2 -0
  104. package/dist/models/raw-autocomplete.models.js.map +1 -0
  105. package/dist/models/raw-search.models.js +2 -0
  106. package/dist/models/raw-search.models.js.map +1 -0
  107. package/dist/models/search.models.js +2 -0
  108. package/dist/models/search.models.js.map +1 -0
  109. package/dist/models/tracking.models.js +35 -0
  110. package/dist/models/tracking.models.js.map +1 -0
  111. package/dist/services/autocomplete.service.js +103 -0
  112. package/dist/services/autocomplete.service.js.map +1 -0
  113. package/dist/services/base.service.js +86 -0
  114. package/dist/services/base.service.js.map +1 -0
  115. package/dist/services/index.js +4 -0
  116. package/dist/services/index.js.map +1 -0
  117. package/dist/services/search.service.js +837 -0
  118. package/dist/services/search.service.js.map +1 -0
  119. package/dist/services/tracking.service.js +115 -0
  120. package/dist/services/tracking.service.js.map +1 -0
  121. package/package.json +3 -2
@@ -0,0 +1,211 @@
1
+ import { debounce } from 'lodash-es';
2
+ import { datesEqual, formatDateIso, getMonth, getMonths } from '@helpers';
3
+ import { BaseComponent } from '../base.component';
4
+ import defaultHtml from './date-picker.component.hbs';
5
+ export class DatePickerComponent extends BaseComponent {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.bindEvent = undefined;
9
+ this.customTemplatePropertyName = 'datePicker';
10
+ this.defaultHtml = defaultHtml;
11
+ this.modalVisible = false;
12
+ this.modalDate = new Date();
13
+ this.monthSelectorVisible = false;
14
+ }
15
+ static get observedAttributes() {
16
+ return ['label', 'max', 'min', 'value'];
17
+ }
18
+ connectedCallback() {
19
+ super.connectedCallback();
20
+ this.documentClickEventHandler = (event) => {
21
+ if (!this.modalVisible || event.composedPath().includes(this)) {
22
+ return;
23
+ }
24
+ this.modalVisible = false;
25
+ setTimeout(() => this.renderContent());
26
+ };
27
+ document.addEventListener('click', this.documentClickEventHandler);
28
+ this.windowResizeEventHandler = debounce((event) => {
29
+ this.positionModal();
30
+ }, 100);
31
+ window.addEventListener('resize', this.windowResizeEventHandler);
32
+ }
33
+ disconnectedCallback() {
34
+ super.disconnectedCallback();
35
+ document.removeEventListener('click', this.documentClickEventHandler);
36
+ window.addEventListener('resize', this.windowResizeEventHandler);
37
+ }
38
+ attributeChangedCallback(name, oldValue, newValue) {
39
+ if (name === 'label') {
40
+ this.label = newValue || undefined;
41
+ }
42
+ else {
43
+ const date = newValue ? new Date(newValue) : undefined;
44
+ if (date) {
45
+ date.setHours(0, 0, 0, 0);
46
+ }
47
+ switch (name) {
48
+ case 'max':
49
+ this.maxDate = date;
50
+ break;
51
+ case 'min':
52
+ this.minDate = date;
53
+ break;
54
+ case 'value':
55
+ this.selectedDate = date;
56
+ break;
57
+ }
58
+ }
59
+ this.renderContent();
60
+ }
61
+ registerHelpers() {
62
+ super.registerHelpers();
63
+ this.handlebars.registerHelper('dayOfMonth', (date) => {
64
+ return date.getDate().toString().padStart(2, '0');
65
+ });
66
+ }
67
+ getContentHtml(template) {
68
+ var _a;
69
+ const html = template({
70
+ label: (_a = this.label) !== null && _a !== void 0 ? _a : 'Selected Date',
71
+ value: this.selectedDate ? formatDateIso(this.selectedDate) : '',
72
+ modalVisible: this.modalVisible,
73
+ monthSelectorVisible: this.monthSelectorVisible,
74
+ heading: `${getMonth(this.modalDate)} ${this.modalDate.getFullYear()}`,
75
+ years: this.getYears(),
76
+ months: getMonths(),
77
+ weeks: this.getWeeks(this.modalDate),
78
+ currentYear: this.modalDate.getFullYear(),
79
+ currentMonth: getMonth(this.modalDate)
80
+ });
81
+ return html;
82
+ }
83
+ bindChildElements() {
84
+ var _a, _b, _c, _d, _e, _f;
85
+ this.positionModal();
86
+ (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[hawksearch-input]').forEach((e) => {
87
+ e.addEventListener('click', (event) => {
88
+ this.modalVisible = true;
89
+ this.modalDate = this.selectedDate ? new Date(this.selectedDate) : new Date();
90
+ this.renderContent();
91
+ });
92
+ });
93
+ (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelectorAll('[hawksearch-previous]').forEach((e) => {
94
+ e.addEventListener('click', (event) => {
95
+ event.preventDefault();
96
+ this.modalDate.setDate(1);
97
+ this.modalDate.setMonth(this.modalDate.getMonth() - 1);
98
+ this.renderContent();
99
+ });
100
+ });
101
+ (_c = this.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelectorAll('[hawksearch-next]').forEach((e) => {
102
+ e.addEventListener('click', (event) => {
103
+ event.preventDefault();
104
+ this.modalDate.setDate(1);
105
+ this.modalDate.setMonth(this.modalDate.getMonth() + 1);
106
+ this.renderContent();
107
+ });
108
+ });
109
+ (_d = this.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelectorAll('[hawksearch-month-selector]').forEach((e) => {
110
+ e.addEventListener('click', (event) => {
111
+ event.preventDefault();
112
+ this.monthSelectorVisible = true;
113
+ this.renderContent();
114
+ });
115
+ });
116
+ (_e = this.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelectorAll('[hawksearch-select-month]').forEach((e) => {
117
+ e.addEventListener('click', (event) => {
118
+ var _a, _b, _c, _d;
119
+ event.preventDefault();
120
+ const month = (_b = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('[hawksearch-month]')) === null || _b === void 0 ? void 0 : _b.value;
121
+ const year = (_d = (_c = this.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('[hawksearch-year]')) === null || _d === void 0 ? void 0 : _d.value;
122
+ if (month === undefined) {
123
+ throw new Error('Unable to get month value');
124
+ }
125
+ if (year === undefined) {
126
+ throw new Error('Unable to get year value');
127
+ }
128
+ this.modalDate = new Date(parseInt(year), parseInt(month), 1);
129
+ this.monthSelectorVisible = false;
130
+ this.renderContent();
131
+ });
132
+ });
133
+ (_f = this.shadowRoot) === null || _f === void 0 ? void 0 : _f.querySelectorAll('[hawksearch-date]').forEach((e) => {
134
+ e.addEventListener('click', (event) => {
135
+ event.preventDefault();
136
+ const value = e.getAttribute('hawksearch-date') || undefined;
137
+ if (!value) {
138
+ return;
139
+ }
140
+ const date = new Date(value);
141
+ if (!((!this.minDate || date >= this.minDate) && (!this.maxDate || date <= this.maxDate))) {
142
+ return;
143
+ }
144
+ this.selectedDate = date;
145
+ this.modalVisible = false;
146
+ this.renderContent();
147
+ const newEvent = new CustomEvent('hawksearch:date-picker-changed', {
148
+ detail: date
149
+ });
150
+ this.dispatchEvent(newEvent);
151
+ });
152
+ });
153
+ }
154
+ positionModal() {
155
+ var _a;
156
+ const modal = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('[hawksearch-modal]');
157
+ if (!modal || !modal.offsetWidth || !this.modalVisible) {
158
+ return;
159
+ }
160
+ modal.style.left = '';
161
+ modal.style.right = '';
162
+ const windowWidth = window.innerWidth;
163
+ const modalBoundaries = modal.getBoundingClientRect();
164
+ if (modal.offsetWidth + modalBoundaries.x >= windowWidth && windowWidth >= modal.offsetWidth) {
165
+ modal.style.right = '0';
166
+ }
167
+ }
168
+ getYears() {
169
+ const years = [];
170
+ const currentYear = this.modalDate.getFullYear();
171
+ const minYear = currentYear < 1900 ? currentYear : 1900;
172
+ const maxYear = (currentYear > new Date().getFullYear() ? currentYear : new Date().getFullYear()) + 10;
173
+ for (let i = minYear; i <= maxYear; i++) {
174
+ years.push(i);
175
+ }
176
+ return years;
177
+ }
178
+ getWeeks(date) {
179
+ let startDate = new Date(date.getFullYear(), date.getMonth(), 1);
180
+ // Set date to first day of week containing first of month
181
+ startDate.setDate(startDate.getDate() - startDate.getDay());
182
+ const weeks = [];
183
+ do {
184
+ const week = this.getWeek(startDate);
185
+ weeks.push(week);
186
+ startDate = new Date(weeks[weeks.length - 1][6].date.getTime());
187
+ startDate.setDate(startDate.getDate() + 1);
188
+ } while (weeks.length < 6);
189
+ return weeks;
190
+ }
191
+ getWeek(startDate) {
192
+ const week = [];
193
+ const today = new Date();
194
+ today.setHours(0, 0, 0, 0);
195
+ for (let i = 0; i < 7; i++) {
196
+ const date = new Date(startDate.getTime());
197
+ date.setDate(date.getDate() + i);
198
+ date.setHours(0, 0, 0, 0);
199
+ const day = {
200
+ date: date,
201
+ value: date.toISOString(),
202
+ currentMonth: date.getMonth() === this.modalDate.getMonth(),
203
+ enabled: (!this.minDate || date >= this.minDate) && (!this.maxDate || date <= this.maxDate),
204
+ selected: this.selectedDate ? datesEqual(date, this.selectedDate) : false
205
+ };
206
+ week.push(day);
207
+ }
208
+ return week;
209
+ }
210
+ }
211
+ //# sourceMappingURL=date-picker.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-picker.component.js","sourceRoot":"","sources":["../../../src/components/date-picker/date-picker.component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ import { searchService } from '@services';
2
+ import { BaseComponent } from '../base.component';
3
+ export class BaseFacetComponent extends BaseComponent {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.bindEvent = undefined;
7
+ }
8
+ bindChildElements() {
9
+ var _a, _b, _c, _d, _e, _f;
10
+ (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('input[hawksearch-facet-value]').forEach((e) => {
11
+ e.addEventListener('change', (event) => {
12
+ event.stopPropagation();
13
+ const element = event.currentTarget;
14
+ const field = this.data.field;
15
+ const value = element.value;
16
+ if (element.checked) {
17
+ searchService.addFacetValue(field, value);
18
+ }
19
+ else {
20
+ searchService.removeFacetValue(field, value);
21
+ }
22
+ });
23
+ });
24
+ (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelectorAll('[hawksearch-facet-value]:not(input)').forEach((e) => {
25
+ e.addEventListener('click', (event) => {
26
+ var _a;
27
+ event.preventDefault();
28
+ event.stopPropagation();
29
+ const element = event.currentTarget;
30
+ const value = element.getAttribute('hawksearch-facet-value');
31
+ const facetValue = (_a = this.data.values) === null || _a === void 0 ? void 0 : _a.find((v) => v.value === value);
32
+ if (!facetValue) {
33
+ return;
34
+ }
35
+ if (facetValue.selected) {
36
+ searchService.removeFacetValue(this.data.field, value);
37
+ }
38
+ else {
39
+ searchService.addFacetValue(this.data.field, value);
40
+ }
41
+ });
42
+ });
43
+ (_c = this.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelectorAll('[hawksearch-facet-value-include]').forEach((e) => {
44
+ e.addEventListener('click', (event) => {
45
+ event.preventDefault();
46
+ event.stopPropagation();
47
+ const element = event.currentTarget;
48
+ const field = this.data.field;
49
+ let value = element.getAttribute('hawksearch-facet-value-include');
50
+ if (!value) {
51
+ return;
52
+ }
53
+ value = `@${value}`;
54
+ searchService.removeFacetValue(field, value);
55
+ });
56
+ });
57
+ (_d = this.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelectorAll('[hawksearch-facet-value-exclude]').forEach((e) => {
58
+ e.addEventListener('click', (event) => {
59
+ event.preventDefault();
60
+ event.stopPropagation();
61
+ const element = event.currentTarget;
62
+ const field = this.data.field;
63
+ const value = element.getAttribute('hawksearch-facet-value-exclude');
64
+ if (!value) {
65
+ return;
66
+ }
67
+ searchService.excludeFacetValue(field, value);
68
+ });
69
+ });
70
+ (_e = this.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelectorAll('[hawksearch-facet-value-toggle]').forEach((e) => {
71
+ e.addEventListener('click', (event) => {
72
+ event.preventDefault();
73
+ event.stopPropagation();
74
+ const element = event.currentTarget;
75
+ const value = element.getAttribute('hawksearch-facet-value-toggle');
76
+ if (!value) {
77
+ return;
78
+ }
79
+ this.state.values[value].toggled = !this.state.values[value].toggled;
80
+ this.renderContent();
81
+ });
82
+ });
83
+ (_f = this.shadowRoot) === null || _f === void 0 ? void 0 : _f.querySelectorAll('[hawksearch-facet-toggle]').forEach((e) => {
84
+ e.addEventListener('click', (event) => {
85
+ event.preventDefault();
86
+ event.stopPropagation();
87
+ this.state.toggled = !this.state.toggled;
88
+ this.renderContent();
89
+ });
90
+ });
91
+ }
92
+ }
93
+ //# sourceMappingURL=base-facet.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-facet.component.js","sourceRoot":"","sources":["../../../src/components/facet-types/base-facet.component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import { BaseFacetComponent } from '../base-facet.component';
2
+ import defaultHtml from './checkbox-list-facet.component.hbs';
3
+ import checkboxListPartialHtml from './checkbox-list.partial.hbs';
4
+ export class CheckboxListFacetComponent extends BaseFacetComponent {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.customTemplatePropertyName = 'checkboxListFacet';
8
+ this.defaultHtml = defaultHtml;
9
+ }
10
+ registerHelpers() {
11
+ super.registerHelpers();
12
+ this.handlebars.registerPartial('facet-checkbox-list', checkboxListPartialHtml);
13
+ }
14
+ getContentHtml(template) {
15
+ var _a, _b, _c;
16
+ if (!this.data || !((_a = this.data.values) === null || _a === void 0 ? void 0 : _a.length)) {
17
+ return '';
18
+ }
19
+ const filterRegex = this.state.filter ? new RegExp(this.state.filter, 'i') : undefined;
20
+ const filtered = (value) => {
21
+ if (!filterRegex) {
22
+ return false;
23
+ }
24
+ return filterRegex.test(value.title);
25
+ };
26
+ const containsFiltered = (value) => {
27
+ var _a;
28
+ return ((_a = value.children) === null || _a === void 0 ? void 0 : _a.some((v) => filtered(v))) || false;
29
+ };
30
+ const getValues = (values, parent) => {
31
+ return values === null || values === void 0 ? void 0 : values.map((v, i) => {
32
+ var _a, _b, _c, _d, _e;
33
+ const valueWithState = Object.assign(Object.assign({}, v), { visible: (!parent && !filterRegex && (this.state.toggled || !this.data.truncateThreshold || i < this.data.truncateThreshold)) ||
34
+ filtered(v) ||
35
+ containsFiltered(v) ||
36
+ (!filterRegex && !!(parent === null || parent === void 0 ? void 0 : parent.toggled)), hasChildren: !!((_a = v.children) === null || _a === void 0 ? void 0 : _a.length), children: undefined, toggled: (v.value && ((_b = v.children) === null || _b === void 0 ? void 0 : _b.length) ? (_e = (_d = (_c = this.state.values) === null || _c === void 0 ? void 0 : _c[v.value]) === null || _d === void 0 ? void 0 : _d.toggled) !== null && _e !== void 0 ? _e : false : false) || containsFiltered(v) });
37
+ valueWithState.children = getValues(v.children, valueWithState);
38
+ return valueWithState;
39
+ });
40
+ };
41
+ const html = template({
42
+ values: getValues(this.data.values, undefined),
43
+ showToggle: !!this.data.truncateThreshold && ((_c = (_b = this.data.values) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0) > this.data.truncateThreshold && !this.state.filter,
44
+ toggleText: this.state.toggled ? 'Show fewer' : 'Show more',
45
+ expanded: this.state.toggled
46
+ });
47
+ return html;
48
+ }
49
+ }
50
+ //# sourceMappingURL=checkbox-list-facet.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox-list-facet.component.js","sourceRoot":"","sources":["../../../../src/components/facet-types/checkbox-list-facet/checkbox-list-facet.component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { BaseFacetComponent } from '../base-facet.component';
2
+ import defaultHtml from './color-facet.component.hbs';
3
+ export class ColorFacetComponent extends BaseFacetComponent {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.customTemplatePropertyName = 'colorFacet';
7
+ this.defaultHtml = defaultHtml;
8
+ }
9
+ getContentHtml(template) {
10
+ var _a, _b, _c, _d;
11
+ if (!this.data) {
12
+ return '';
13
+ }
14
+ const filterRegex = this.state.filter ? new RegExp(this.state.filter, 'i') : undefined;
15
+ const html = template({
16
+ values: (_b = (_a = this.data.values) === null || _a === void 0 ? void 0 : _a.filter((c) => c.color).map((v, i) => {
17
+ var _a;
18
+ return (Object.assign(Object.assign({}, v), { visible: (!filterRegex && (this.state.toggled || !this.data.truncateThreshold || i < this.data.truncateThreshold)) ||
19
+ (!!filterRegex && filterRegex.test((_a = v.title) !== null && _a !== void 0 ? _a : '')) }));
20
+ })) !== null && _b !== void 0 ? _b : [],
21
+ showToggle: !!this.data.truncateThreshold && ((_d = (_c = this.data.values) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0) > this.data.truncateThreshold && !this.state.filter,
22
+ toggleText: this.state.toggled ? 'Show fewer' : 'Show more',
23
+ expanded: this.state.toggled
24
+ });
25
+ return html;
26
+ }
27
+ }
28
+ //# sourceMappingURL=color-facet.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color-facet.component.js","sourceRoot":"","sources":["../../../../src/components/facet-types/color-facet/color-facet.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,WAAW,MAAM,6BAA6B,CAAC;AAMtD,MAAM,OAAO,mBAAoB,SAAQ,kBAAkB;IAA3D;;QACuB,+BAA0B,GAAG,YAAY,CAAC;QAC1C,gBAAW,GAAG,WAAW,CAAC;IA4BjD,CAAC;IA1Ba,cAAc,CAAC,QAAoC;;QACzD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,OAAO,EAAE,CAAC;SACb;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEvF,MAAM,IAAI,GAAG,QAAQ,CAAC;YAClB,MAAM,EACF,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,0CACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,EACtB,GAAG,CACA,CAAC,CAAC,EAAE,CAAC,EAAmB,EAAE;;gBAAC,OAAA,iCACpB,CAAC,KACJ,OAAO,EACH,CAAC,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,iBAAiB,IAAI,CAAC,GAAG,IAAI,CAAC,IAAK,CAAC,iBAAkB,CAAC,CAAC;wBAC5G,CAAC,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,MAAA,CAAC,CAAC,KAAK,mCAAI,EAAE,CAAC,CAAC,IACxD,CAAA;aAAA,CACL,mCAAI,EAAE;YACf,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,MAAM,mCAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;YAChI,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW;YAC3D,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;SAC/B,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
@@ -0,0 +1,84 @@
1
+ import { datesEqual, formatDateIso } from '@helpers';
2
+ import { searchService } from '@services';
3
+ import { BaseFacetComponent } from '../base-facet.component';
4
+ import defaultHtml from './date-range-facet.component.hbs';
5
+ export class DateRangeFacetComponent extends BaseFacetComponent {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.customTemplatePropertyName = 'dateRangeFacet';
9
+ this.defaultHtml = defaultHtml;
10
+ }
11
+ get range() {
12
+ var _a, _b;
13
+ if (((_b = (_a = this.data) === null || _a === void 0 ? void 0 : _a.range) === null || _b === void 0 ? void 0 : _b.type) === 'date') {
14
+ return this.data.range;
15
+ }
16
+ return undefined;
17
+ }
18
+ getContentHtml(template) {
19
+ if (!this.data || !this.range) {
20
+ return '';
21
+ }
22
+ const html = template({
23
+ startValue: this.range.start.toISOString(),
24
+ endValue: this.range.end.toISOString(),
25
+ minValue: this.range.min.toISOString(),
26
+ maxValue: this.range.max.toISOString()
27
+ });
28
+ return html;
29
+ }
30
+ bindChildElements() {
31
+ var _a, _b;
32
+ (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[hawksearch-start]').forEach((e) => {
33
+ e.addEventListener('hawksearch:date-picker-changed', ((event) => {
34
+ let value = event.detail;
35
+ if (!value) {
36
+ value = this.range.min;
37
+ }
38
+ this.setFacetValue(value, this.range.end);
39
+ }));
40
+ });
41
+ (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelectorAll('[hawksearch-end]').forEach((e) => {
42
+ e.addEventListener('hawksearch:date-picker-changed', ((event) => {
43
+ let value = event.detail;
44
+ if (!value) {
45
+ value = this.range.max;
46
+ }
47
+ this.setFacetValue(this.range.start, value);
48
+ }));
49
+ });
50
+ }
51
+ updateInputElements(start, end) {
52
+ var _a, _b;
53
+ const startElement = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('[hawksearch-start]');
54
+ const endElement = (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('[hawksearch-end]');
55
+ if (startElement) {
56
+ startElement.value = start ? formatDateIso(start) : '';
57
+ }
58
+ if (endElement) {
59
+ endElement.value = end ? formatDateIso(end) : '';
60
+ }
61
+ }
62
+ setFacetValue(start, end) {
63
+ var _a, _b;
64
+ if (!!start && !!end && start > end) {
65
+ const tempValue = start;
66
+ start = end;
67
+ end = tempValue;
68
+ }
69
+ if (!start) {
70
+ start = this.range.start;
71
+ }
72
+ if (!end) {
73
+ end = this.range.end;
74
+ }
75
+ start.setHours(0, 0, 0, 0);
76
+ end.setHours(23, 59, 59, 999);
77
+ this.updateInputElements(start, end);
78
+ if (datesEqual(start, this.range.start) && datesEqual(end, this.range.end)) {
79
+ return;
80
+ }
81
+ searchService.setFacetValue(this.data.field, `${(_a = start === null || start === void 0 ? void 0 : start.toISOString()) !== null && _a !== void 0 ? _a : ''},${(_b = end === null || end === void 0 ? void 0 : end.toISOString()) !== null && _b !== void 0 ? _b : ''}`);
82
+ }
83
+ }
84
+ //# sourceMappingURL=date-range-facet.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-range-facet.component.js","sourceRoot":"","sources":["../../../../src/components/facet-types/date-range-facet/date-range-facet.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,WAAW,MAAM,kCAAkC,CAAC;AAE3D,MAAM,OAAO,uBAAwB,SAAQ,kBAAkB;IAA/D;;QACuB,+BAA0B,GAAG,gBAAgB,CAAC;QAC9C,gBAAW,GAAG,WAAW,CAAC;IA2FjD,CAAC;IAzFG,IAAY,KAAK;;QACb,IAAI,CAAA,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,KAAK,0CAAE,IAAI,MAAK,MAAM,EAAE;YACnC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;SAC1B;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAES,cAAc,CAAC,QAAoC;QACzD,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC3B,OAAO,EAAE,CAAC;SACb;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC;YAClB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;YAC1C,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE;YACtC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE;YACtC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE;SACzC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IAChB,CAAC;IAES,iBAAiB;;QACvB,MAAA,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClE,CAAC,CAAC,gBAAgB,CAAC,gCAAgC,EAAE,CAAC,CAAC,KAAkB,EAAE,EAAE;gBACzE,IAAI,KAAK,GAAqB,KAAK,CAAC,MAAM,CAAC;gBAE3C,IAAI,CAAC,KAAK,EAAE;oBACR,KAAK,GAAG,IAAI,CAAC,KAAM,CAAC,GAAG,CAAC;iBAC3B;gBAED,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,KAAM,CAAC,GAAG,CAAC,CAAC;YAC/C,CAAC,CAAkB,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,MAAA,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAChE,CAAC,CAAC,gBAAgB,CAAC,gCAAgC,EAAE,CAAC,CAAC,KAAkB,EAAE,EAAE;gBACzE,IAAI,KAAK,GAAqB,KAAK,CAAC,MAAM,CAAC;gBAE3C,IAAI,CAAC,KAAK,EAAE;oBACR,KAAK,GAAG,IAAI,CAAC,KAAM,CAAC,GAAG,CAAC;iBAC3B;gBAED,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACjD,CAAC,CAAkB,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,mBAAmB,CAAC,KAAuB,EAAE,GAAqB;;QACtE,MAAM,YAAY,GAAG,MAAA,IAAI,CAAC,UAAU,0CAAE,aAAa,CAAC,oBAAoB,CAA4B,CAAC;QACrG,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,0CAAE,aAAa,CAAC,kBAAkB,CAA4B,CAAC;QAEjG,IAAI,YAAY,EAAE;YACd,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1D;QAED,IAAI,UAAU,EAAE;YACZ,UAAU,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACpD;IACL,CAAC;IAEO,aAAa,CAAC,KAAuB,EAAE,GAAqB;;QAChE,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,EAAE;YACjC,MAAM,SAAS,GAAG,KAAK,CAAC;YAExB,KAAK,GAAG,GAAG,CAAC;YACZ,GAAG,GAAG,SAAS,CAAC;SACnB;QAED,IAAI,CAAC,KAAK,EAAE;YACR,KAAK,GAAG,IAAI,CAAC,KAAM,CAAC,KAAK,CAAC;SAC7B;QAED,IAAI,CAAC,GAAG,EAAE;YACN,GAAG,GAAG,IAAI,CAAC,KAAM,CAAC,GAAG,CAAC;SACzB;QAED,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAE9B,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAErC,IAAI,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,KAAM,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,KAAM,CAAC,GAAG,CAAC,EAAE;YAC1E,OAAO;SACV;QAED,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,IAAK,CAAC,KAAM,EAAE,GAAG,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,EAAE,mCAAI,EAAE,IAAI,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,WAAW,EAAE,mCAAI,EAAE,EAAE,CAAC,CAAC;IAChH,CAAC;CACJ"}
@@ -0,0 +1,11 @@
1
+ export * from './checkbox-list-facet/checkbox-list-facet.component';
2
+ export * from './color-facet/color-facet.component';
3
+ export * from './date-range-facet/date-range-facet.component';
4
+ export * from './linked-list-facet/link-list-facet.component';
5
+ export * from './numeric-range-facet/numeric-range-facet.component';
6
+ export * from './range-slider-facet/range-slider-facet.component';
7
+ export * from './recent-searches-facet/recent-searches-facet.component';
8
+ export * from './related-searches-facet/related-searches-facet.component';
9
+ export * from './search-within-facet/search-within-facet.component';
10
+ export * from './size-facet/size-facet.component';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/facet-types/index.ts"],"names":[],"mappings":"AAAA,cAAc,qDAAqD,CAAC;AACpE,cAAc,qCAAqC,CAAC;AACpD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,qDAAqD,CAAC;AACpE,cAAc,mDAAmD,CAAC;AAClE,cAAc,yDAAyD,CAAC;AACxE,cAAc,2DAA2D,CAAC;AAC1E,cAAc,qDAAqD,CAAC;AACpE,cAAc,mCAAmC,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { BaseFacetComponent } from '../base-facet.component';
2
+ import defaultHtml from './link-list-facet.component.hbs';
3
+ export class LinkListFacetComponent extends BaseFacetComponent {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.customTemplatePropertyName = 'linkListFacet';
7
+ this.defaultHtml = defaultHtml;
8
+ }
9
+ getContentHtml(template) {
10
+ var _a, _b, _c, _d, _e;
11
+ if (!this.data) {
12
+ return '';
13
+ }
14
+ const filterRegex = this.state.filter ? new RegExp((_a = this.state.filter) !== null && _a !== void 0 ? _a : '', 'i') : undefined;
15
+ const html = template({
16
+ values: (_c = (_b = this.data.values) === null || _b === void 0 ? void 0 : _b.map((v, i) => {
17
+ var _a;
18
+ return (Object.assign(Object.assign({}, v), { visible: (!filterRegex && (this.state.toggled || !this.data.truncateThreshold || i < this.data.truncateThreshold)) ||
19
+ (!!filterRegex && filterRegex.test((_a = v.title) !== null && _a !== void 0 ? _a : '')) }));
20
+ })) !== null && _c !== void 0 ? _c : [],
21
+ showToggle: !!this.data.truncateThreshold && ((_e = (_d = this.data.values) === null || _d === void 0 ? void 0 : _d.length) !== null && _e !== void 0 ? _e : 0) > this.data.truncateThreshold && !this.state.filter,
22
+ toggleText: this.state.toggled ? 'Show fewer' : 'Show more',
23
+ expanded: this.state.toggled
24
+ });
25
+ return html;
26
+ }
27
+ }
28
+ //# sourceMappingURL=link-list-facet.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-list-facet.component.js","sourceRoot":"","sources":["../../../../src/components/facet-types/linked-list-facet/link-list-facet.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,WAAW,MAAM,iCAAiC,CAAC;AAM1D,MAAM,OAAO,sBAAuB,SAAQ,kBAAkB;IAA9D;;QACuB,+BAA0B,GAAG,eAAe,CAAC;QAC7C,gBAAW,GAAG,WAAW,CAAC;IA0BjD,CAAC;IAxBa,cAAc,CAAC,QAAoC;;QACzD,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ,OAAO,EAAE,CAAC;SACb;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,MAAM,mCAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE7F,MAAM,IAAI,GAAG,QAAQ,CAAC;YAClB,MAAM,EACF,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,GAAG,CACjB,CAAC,CAAC,EAAE,CAAC,EAAsB,EAAE;;gBAAC,OAAA,iCACvB,CAAC,KACJ,OAAO,EACH,CAAC,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,iBAAiB,IAAI,CAAC,GAAG,IAAI,CAAC,IAAK,CAAC,iBAAkB,CAAC,CAAC;wBAC5G,CAAC,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,CAAC,MAAA,CAAC,CAAC,KAAK,mCAAI,EAAE,CAAC,CAAC,IACxD,CAAA;aAAA,CACL,mCAAI,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,MAAM,0CAAE,MAAM,mCAAI,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;YAChI,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW;YAC3D,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO;SAC/B,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
@@ -0,0 +1,68 @@
1
+ import { searchService } from '@services';
2
+ import { BaseFacetComponent } from '../base-facet.component';
3
+ import defaultHtml from './numeric-range-facet.component.hbs';
4
+ export class NumericRangeFacetComponent extends BaseFacetComponent {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.customTemplatePropertyName = 'numericRangeFacet';
8
+ this.defaultHtml = defaultHtml;
9
+ }
10
+ get range() {
11
+ var _a, _b;
12
+ if (((_b = (_a = this.data) === null || _a === void 0 ? void 0 : _a.range) === null || _b === void 0 ? void 0 : _b.type) === 'numeric') {
13
+ return this.data.range;
14
+ }
15
+ return undefined;
16
+ }
17
+ getContentHtml(template) {
18
+ if (!this.data || !this.range) {
19
+ return '';
20
+ }
21
+ const html = template({
22
+ startValue: Math.floor(this.range.start),
23
+ endValue: Math.ceil(this.range.end),
24
+ minValue: Math.floor(this.range.min),
25
+ maxValue: Math.floor(this.range.max)
26
+ });
27
+ return html;
28
+ }
29
+ bindChildElements() {
30
+ var _a, _b;
31
+ (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('[hawksearch-start]').forEach((e) => {
32
+ e.addEventListener('blur', (event) => {
33
+ const element = event.currentTarget;
34
+ let value = parseFloat(element.value);
35
+ if (isNaN(value)) {
36
+ value = Math.floor(this.range.min);
37
+ element.value = value.toString();
38
+ }
39
+ this.setFacetValue(value, this.range.end);
40
+ });
41
+ });
42
+ (_b = this.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelectorAll('[hawksearch-end]').forEach((e) => {
43
+ e.addEventListener('blur', (event) => {
44
+ const element = event.currentTarget;
45
+ let value = parseFloat(element.value);
46
+ if (isNaN(value)) {
47
+ value = Math.ceil(this.range.max);
48
+ element.value = value.toString();
49
+ }
50
+ this.setFacetValue(this.range.start, value);
51
+ });
52
+ });
53
+ }
54
+ setFacetValue(start, end) {
55
+ if (start > end) {
56
+ const tempValue = start;
57
+ start = end;
58
+ end = tempValue;
59
+ }
60
+ start = Math.floor(start);
61
+ end = Math.ceil(end);
62
+ if (start === Math.floor(this.range.start) && end === Math.ceil(this.range.end)) {
63
+ return;
64
+ }
65
+ searchService.setFacetValue(this.data.field, `${start},${end}`);
66
+ }
67
+ }
68
+ //# sourceMappingURL=numeric-range-facet.component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numeric-range-facet.component.js","sourceRoot":"","sources":["../../../../src/components/facet-types/numeric-range-facet/numeric-range-facet.component.ts"],"names":[],"mappings":"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"}