@internetarchive/collection-browser 1.12.0 → 1.13.0-alpha2

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 (267) hide show
  1. package/.editorconfig +29 -29
  2. package/.github/workflows/ci.yml +26 -26
  3. package/.github/workflows/gh-pages-main.yml +39 -39
  4. package/.github/workflows/npm-publish.yml +39 -39
  5. package/.github/workflows/pr-preview.yml +38 -38
  6. package/.husky/pre-commit +4 -4
  7. package/LICENSE +661 -661
  8. package/README.md +83 -83
  9. package/dist/index.d.ts +9 -9
  10. package/dist/index.js +9 -9
  11. package/dist/src/app-root.d.ts +54 -54
  12. package/dist/src/app-root.js +293 -293
  13. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  14. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  15. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  16. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  17. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  18. package/dist/src/assets/img/icons/chevron.js +2 -2
  19. package/dist/src/assets/img/icons/contract.d.ts +2 -2
  20. package/dist/src/assets/img/icons/contract.js +2 -2
  21. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  22. package/dist/src/assets/img/icons/empty-query.js +2 -2
  23. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  24. package/dist/src/assets/img/icons/expand.js +2 -2
  25. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  26. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  27. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  28. package/dist/src/assets/img/icons/eye.js +2 -2
  29. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  30. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  31. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  32. package/dist/src/assets/img/icons/login-required.js +2 -2
  33. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  34. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  35. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  36. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  37. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  38. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  39. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  40. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  41. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  42. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  43. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  44. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  45. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  46. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  47. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  48. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  49. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  50. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  51. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  52. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  53. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  54. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  55. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  56. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  57. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  58. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  59. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  60. package/dist/src/assets/img/icons/null-result.js +2 -2
  61. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  62. package/dist/src/assets/img/icons/restricted.js +2 -2
  63. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  64. package/dist/src/assets/img/icons/reviews.js +2 -2
  65. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  66. package/dist/src/assets/img/icons/upload.js +2 -2
  67. package/dist/src/assets/img/icons/views.d.ts +1 -1
  68. package/dist/src/assets/img/icons/views.js +2 -2
  69. package/dist/src/circular-activity-indicator.d.ts +5 -5
  70. package/dist/src/circular-activity-indicator.js +17 -17
  71. package/dist/src/collection-browser.d.ts +473 -472
  72. package/dist/src/collection-browser.js +1696 -1686
  73. package/dist/src/collection-browser.js.map +1 -1
  74. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  75. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  76. package/dist/src/collection-facets/facets-template.d.ts +20 -20
  77. package/dist/src/collection-facets/facets-template.js +152 -152
  78. package/dist/src/collection-facets/more-facets-content.d.ts +77 -77
  79. package/dist/src/collection-facets/more-facets-content.js +359 -359
  80. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  81. package/dist/src/collection-facets/more-facets-pagination.js +196 -196
  82. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  83. package/dist/src/collection-facets/toggle-switch.js +94 -94
  84. package/dist/src/collection-facets.d.ts +103 -103
  85. package/dist/src/collection-facets.js +497 -497
  86. package/dist/src/empty-placeholder.d.ts +23 -21
  87. package/dist/src/empty-placeholder.js +83 -69
  88. package/dist/src/empty-placeholder.js.map +1 -1
  89. package/dist/src/expanded-date-picker.d.ts +43 -43
  90. package/dist/src/expanded-date-picker.js +109 -109
  91. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  92. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  93. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  94. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  95. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  96. package/dist/src/mediatype/mediatype-config.js +85 -85
  97. package/dist/src/models.d.ts +163 -163
  98. package/dist/src/models.js +269 -269
  99. package/dist/src/restoration-state-handler.d.ts +70 -70
  100. package/dist/src/restoration-state-handler.js +355 -355
  101. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  102. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  103. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  104. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  105. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  106. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  107. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  108. package/dist/src/sort-filter-bar/img/list.js +2 -2
  109. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  110. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  111. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  112. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  113. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  114. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  115. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  116. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  117. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  118. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  119. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +208 -208
  120. package/dist/src/sort-filter-bar/sort-filter-bar.js +637 -637
  121. package/dist/src/styles/item-image-styles.d.ts +8 -8
  122. package/dist/src/styles/item-image-styles.js +9 -9
  123. package/dist/src/styles/sr-only.d.ts +1 -1
  124. package/dist/src/styles/sr-only.js +2 -2
  125. package/dist/src/tiles/base-tile-component.d.ts +18 -18
  126. package/dist/src/tiles/base-tile-component.js +59 -59
  127. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  128. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  129. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  130. package/dist/src/tiles/grid/account-tile.js +72 -72
  131. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  132. package/dist/src/tiles/grid/collection-tile.js +80 -80
  133. package/dist/src/tiles/grid/item-tile.d.ts +27 -27
  134. package/dist/src/tiles/grid/item-tile.js +134 -134
  135. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  136. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  137. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  138. package/dist/src/tiles/grid/tile-stats.js +48 -48
  139. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  140. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  141. package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
  142. package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
  143. package/dist/src/tiles/image-block.d.ts +17 -17
  144. package/dist/src/tiles/image-block.js +72 -72
  145. package/dist/src/tiles/item-image.d.ts +35 -35
  146. package/dist/src/tiles/item-image.js +117 -117
  147. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  148. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  149. package/dist/src/tiles/list/tile-list-compact.d.ts +15 -15
  150. package/dist/src/tiles/list/tile-list-compact.js +114 -114
  151. package/dist/src/tiles/list/tile-list.d.ts +46 -46
  152. package/dist/src/tiles/list/tile-list.js +298 -298
  153. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  154. package/dist/src/tiles/mediatype-icon.js +47 -47
  155. package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
  156. package/dist/src/tiles/overlay/icon-overlay.js +40 -40
  157. package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
  158. package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
  159. package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
  160. package/dist/src/tiles/overlay/text-overlay.js +42 -42
  161. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  162. package/dist/src/tiles/text-snippet-block.js +73 -73
  163. package/dist/src/tiles/tile-dispatcher.d.ts +50 -50
  164. package/dist/src/tiles/tile-dispatcher.js +185 -185
  165. package/dist/src/tiles/tile-display-value-provider.d.ts +43 -43
  166. package/dist/src/tiles/tile-display-value-provider.js +80 -80
  167. package/dist/src/utils/analytics-events.d.ts +25 -25
  168. package/dist/src/utils/analytics-events.js +27 -27
  169. package/dist/src/utils/array-equals.d.ts +4 -4
  170. package/dist/src/utils/array-equals.js +10 -10
  171. package/dist/src/utils/format-count.d.ts +7 -7
  172. package/dist/src/utils/format-count.js +76 -76
  173. package/dist/src/utils/format-date.d.ts +2 -2
  174. package/dist/src/utils/format-date.js +25 -25
  175. package/dist/src/utils/format-unit-size.d.ts +2 -2
  176. package/dist/src/utils/format-unit-size.js +33 -33
  177. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  178. package/dist/src/utils/local-date-from-utc.js +15 -15
  179. package/dist/src/utils/sha1.d.ts +2 -2
  180. package/dist/src/utils/sha1.js +8 -8
  181. package/dist/test/collection-browser.test.d.ts +1 -1
  182. package/dist/test/collection-browser.test.js +981 -967
  183. package/dist/test/collection-browser.test.js.map +1 -1
  184. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  185. package/dist/test/collection-facets/facets-template.test.js +134 -134
  186. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  187. package/dist/test/collection-facets/more-facets-content.test.js +133 -133
  188. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  189. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  190. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  191. package/dist/test/collection-facets/toggle-switch.test.js +73 -73
  192. package/dist/test/collection-facets.test.d.ts +2 -2
  193. package/dist/test/collection-facets.test.js +682 -682
  194. package/dist/test/empty-placeholder.test.d.ts +1 -1
  195. package/dist/test/empty-placeholder.test.js +63 -56
  196. package/dist/test/empty-placeholder.test.js.map +1 -1
  197. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  198. package/dist/test/expanded-date-picker.test.js +95 -95
  199. package/dist/test/icon-overlay.test.d.ts +1 -1
  200. package/dist/test/icon-overlay.test.js +24 -24
  201. package/dist/test/image-block.test.d.ts +1 -1
  202. package/dist/test/image-block.test.js +48 -48
  203. package/dist/test/item-image.test.d.ts +1 -1
  204. package/dist/test/item-image.test.js +84 -84
  205. package/dist/test/mediatype-config.test.d.ts +1 -1
  206. package/dist/test/mediatype-config.test.js +16 -16
  207. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  208. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  209. package/dist/test/mocks/mock-collection-name-cache.d.ts +9 -9
  210. package/dist/test/mocks/mock-collection-name-cache.js +17 -17
  211. package/dist/test/mocks/mock-search-responses.d.ts +21 -21
  212. package/dist/test/mocks/mock-search-responses.js +707 -707
  213. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  214. package/dist/test/mocks/mock-search-service.js +50 -50
  215. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  216. package/dist/test/restoration-state-handler.test.js +270 -270
  217. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  218. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  219. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  220. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  221. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  222. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +378 -378
  223. package/dist/test/text-overlay.test.d.ts +1 -1
  224. package/dist/test/text-overlay.test.js +48 -48
  225. package/dist/test/text-snippet-block.test.d.ts +1 -1
  226. package/dist/test/text-snippet-block.test.js +57 -57
  227. package/dist/test/tile-stats.test.d.ts +1 -1
  228. package/dist/test/tile-stats.test.js +33 -33
  229. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  230. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  231. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  232. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  233. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  234. package/dist/test/tiles/grid/item-tile.test.js +254 -254
  235. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  236. package/dist/test/tiles/hover/hover-pane-controller.test.js +257 -257
  237. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  238. package/dist/test/tiles/hover/tile-hover-pane.test.js +13 -13
  239. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  240. package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
  241. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  242. package/dist/test/tiles/list/tile-list.test.js +242 -242
  243. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  244. package/dist/test/tiles/tile-dispatcher.test.js +67 -67
  245. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  246. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  247. package/dist/test/utils/array-equals.test.d.ts +1 -1
  248. package/dist/test/utils/array-equals.test.js +26 -26
  249. package/dist/test/utils/format-count.test.d.ts +1 -1
  250. package/dist/test/utils/format-count.test.js +23 -23
  251. package/dist/test/utils/format-date.test.d.ts +1 -1
  252. package/dist/test/utils/format-date.test.js +17 -17
  253. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  254. package/dist/test/utils/format-unit-size.test.js +17 -17
  255. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  256. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  257. package/local.archive.org.cert +86 -86
  258. package/local.archive.org.key +27 -27
  259. package/package.json +1 -1
  260. package/renovate.json +6 -6
  261. package/src/collection-browser.ts +15 -1
  262. package/src/empty-placeholder.ts +17 -0
  263. package/test/collection-browser.test.ts +23 -0
  264. package/test/empty-placeholder.test.ts +26 -19
  265. package/tsconfig.json +21 -21
  266. package/web-dev-server.config.mjs +30 -30
  267. package/web-test-runner.config.mjs +41 -41
@@ -1,261 +1,261 @@
1
- import { __decorate } from "tslib";
2
- /* eslint-disable dot-notation */
3
- /* eslint-disable lit-a11y/click-events-have-key-events */
4
- import { css, html, LitElement, nothing, } from 'lit';
5
- import { customElement, property, state } from 'lit/decorators.js';
6
- import { AggregationSortType, } from '@internetarchive/search-service';
7
- import { facetTitles, suppressedCollections, valueFacetSort, defaultFacetSort, } from '../models';
8
- import '@internetarchive/ia-activity-indicator/ia-activity-indicator';
9
- import './more-facets-pagination';
10
- import './facets-template';
11
- import { analyticsActions, analyticsCategories, } from '../utils/analytics-events';
12
- import './toggle-switch';
13
- import { srOnlyStyle } from '../styles/sr-only';
14
- let MoreFacetsContent = class MoreFacetsContent extends LitElement {
15
- constructor() {
16
- super(...arguments);
17
- this.sortedBy = AggregationSortType.COUNT;
18
- this.facetGroup = [];
19
- this.facetGroupTitle = '';
20
- this.pageNumber = 1;
21
- /**
22
- * Facets are loading on popup
23
- */
24
- this.facetsLoading = true;
25
- this.paginationSize = 0;
26
- this.facetsType = 'modal';
27
- this.facetsPerPage = 35;
28
- }
29
- updated(changed) {
30
- if (changed.has('facetKey') ||
31
- changed.has('facetAggregationKey') ||
32
- changed.has('query') ||
33
- changed.has('searchType') ||
34
- changed.has('filterMap')) {
35
- this.facetsLoading = true;
36
- this.pageNumber = 1;
37
- this.updateSpecificFacets();
38
- }
39
- if (changed.has('pageNumber')) {
40
- this.facetGroup = this.aggregationFacetGroups;
41
- }
42
- }
43
- firstUpdated() {
44
- this.setupEscapeListeners();
45
- }
46
- /**
47
- * Close more facets modal on Escape click
48
- */
49
- setupEscapeListeners() {
50
- if (this.modalManager) {
51
- document.addEventListener('keydown', (e) => {
52
- var _a;
53
- if (e.key === 'Escape') {
54
- (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
55
- }
56
- });
57
- }
58
- else {
59
- document.removeEventListener('keydown', () => { });
60
- }
61
- }
62
- /**
63
- * Get specific facets data from search-service API based of currently query params
64
- * - this.aggregations - hold result of search service and being used for further processing.
65
- */
66
- async updateSpecificFacets() {
67
- var _a, _b, _c;
68
- const trimmedQuery = (_a = this.query) === null || _a === void 0 ? void 0 : _a.trim();
69
- if (!trimmedQuery && !this.withinCollection)
70
- return;
71
- const aggregations = {
72
- simpleParams: [this.facetAggregationKey],
73
- };
74
- const aggregationsSize = 65535; // todo - do we want to have all the records at once?
75
- const collectionParams = this.withinCollection
76
- ? { pageType: 'collection_details', pageTarget: this.withinCollection }
77
- : null;
78
- const params = {
79
- ...collectionParams,
80
- query: trimmedQuery || '',
81
- filters: this.filterMap,
82
- aggregations,
83
- aggregationsSize,
84
- rows: 0, // todo - do we want server-side pagination with offset/page/limit flag?
85
- };
86
- const results = await ((_b = this.searchService) === null || _b === void 0 ? void 0 : _b.search(params, this.searchType));
87
- this.aggregations = (_c = results === null || results === void 0 ? void 0 : results.success) === null || _c === void 0 ? void 0 : _c.response.aggregations;
88
- this.facetGroup = this.aggregationFacetGroups;
89
- this.facetsLoading = false;
90
- }
91
- pageNumberClicked(e) {
92
- var _a, _b;
93
- const page = (_a = e === null || e === void 0 ? void 0 : e.detail) === null || _a === void 0 ? void 0 : _a.page;
94
- if (page) {
95
- this.pageNumber = Number(page);
96
- }
97
- (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
98
- category: analyticsCategories.default,
99
- action: analyticsActions.moreFacetsPageChange,
100
- label: `${this.pageNumber}`,
101
- });
102
- }
103
- /**
104
- * Combines the selected facets with the aggregations to create a single list of facets
105
- */
106
- get mergedFacets() {
107
- var _a;
108
- const facetGroups = [];
109
- const selectedFacetGroup = this.selectedFacetGroups.find(group => group.key === this.facetKey);
110
- const aggregateFacetGroup = this.aggregationFacetGroups.find(group => group.key === this.facetKey);
111
- // if the user selected a facet, but it's not in the aggregation, we add it as-is
112
- if (selectedFacetGroup && !aggregateFacetGroup) {
113
- facetGroups.push(selectedFacetGroup);
114
- return facetGroups;
115
- }
116
- // if we don't have an aggregate facet group, don't add this to the list
117
- if (!aggregateFacetGroup)
118
- return facetGroups;
119
- // start with either the selected group if we have one, or the aggregate group
120
- const facetGroup = selectedFacetGroup !== null && selectedFacetGroup !== void 0 ? selectedFacetGroup : aggregateFacetGroup;
121
- // attach the counts to the selected buckets
122
- const bucketsWithCount = (_a = selectedFacetGroup === null || selectedFacetGroup === void 0 ? void 0 : selectedFacetGroup.buckets.map(bucket => {
123
- const selectedBucket = aggregateFacetGroup.buckets.find(b => b.key === bucket.key);
124
- return selectedBucket
125
- ? {
126
- ...bucket,
127
- count: selectedBucket.count,
128
- }
129
- : bucket;
130
- })) !== null && _a !== void 0 ? _a : [];
131
- // append any additional buckets that were not selected
132
- aggregateFacetGroup.buckets.forEach(bucket => {
133
- const existingBucket = bucketsWithCount.find(b => b.key === bucket.key);
134
- if (existingBucket)
135
- return;
136
- bucketsWithCount.push(bucket);
137
- });
138
- facetGroup.buckets = bucketsWithCount;
139
- facetGroups.push(facetGroup);
140
- return facetGroups;
141
- }
142
- /**
143
- * Converts the selected facets to a `FacetGroup` array,
144
- * which is easier to work with
145
- */
146
- get selectedFacetGroups() {
147
- if (!this.selectedFacets)
148
- return [];
149
- const facetGroups = Object.entries(this.selectedFacets).map(([key, selectedFacets]) => {
150
- const option = key;
151
- const title = facetTitles[option];
152
- const buckets = Object.entries(selectedFacets).map(([value, data]) => {
153
- const displayText = value;
154
- return {
155
- displayText,
156
- key: value,
157
- count: data === null || data === void 0 ? void 0 : data.count,
158
- state: data === null || data === void 0 ? void 0 : data.state,
159
- };
160
- });
161
- return {
162
- title,
163
- key: option,
164
- buckets,
165
- };
166
- });
167
- return facetGroups;
168
- }
169
- /**
170
- * Converts the raw `aggregations` to `FacetGroups`, which are easier to use
171
- */
172
- get aggregationFacetGroups() {
173
- var _a;
174
- const facetGroups = [];
175
- Object.entries((_a = this.aggregations) !== null && _a !== void 0 ? _a : []).forEach(([key, aggregation]) => {
176
- // the year_histogram data is in a different format so can't be handled here
177
- if (key === 'year_histogram')
178
- return;
179
- const option = key;
180
- this.facetGroupTitle = facetTitles[option];
181
- // sort facets in specific order
182
- let castedBuckets = aggregation.getSortedBuckets(this.sortedBy);
183
- if (option === 'collection') {
184
- // we are not showing fav- collections or certain deemphasized collections in facets
185
- castedBuckets = castedBuckets === null || castedBuckets === void 0 ? void 0 : castedBuckets.filter(bucket => {
186
- var _a;
187
- const bucketKey = (_a = bucket === null || bucket === void 0 ? void 0 : bucket.key) === null || _a === void 0 ? void 0 : _a.toString();
188
- return (!suppressedCollections[bucketKey] && !(bucketKey === null || bucketKey === void 0 ? void 0 : bucketKey.startsWith('fav-')));
189
- });
190
- // asynchronously load the collection name
191
- this.preloadCollectionNames(castedBuckets);
192
- }
193
- // find length and pagination size for modal pagination
194
- const { length } = Object.keys(castedBuckets);
195
- this.paginationSize = Math.ceil(length / this.facetsPerPage);
196
- // render only items which will be visible as per this.facetsPerPage
197
- const bucketsMaxSix = castedBuckets === null || castedBuckets === void 0 ? void 0 : castedBuckets.slice((this.pageNumber - 1) * this.facetsPerPage, this.pageNumber * this.facetsPerPage);
198
- const facetBucket = bucketsMaxSix.map(bucket => {
199
- const bucketKey = bucket.key;
200
- return {
201
- displayText: `${bucket.key}`,
202
- key: `${bucketKey}`,
203
- count: bucket.doc_count,
204
- state: 'none',
205
- };
206
- });
207
- const group = {
208
- title: this.facetGroupTitle,
209
- key: option,
210
- buckets: facetBucket,
211
- };
212
- facetGroups.push(group);
213
- });
214
- return facetGroups;
215
- }
216
- /**
217
- * for collections, we need to asynchronously load the collection name
218
- * so we use the `async-collection-name` widget and for the rest, we have a static value to use
219
- *
220
- * @param castedBuckets
221
- */
222
- preloadCollectionNames(castedBuckets) {
223
- var _a;
224
- const collectionIds = castedBuckets === null || castedBuckets === void 0 ? void 0 : castedBuckets.map(option => option.key);
225
- const collectionIdsArray = Array.from(new Set(collectionIds));
226
- (_a = this.collectionNameCache) === null || _a === void 0 ? void 0 : _a.preloadIdentifiers(collectionIdsArray);
227
- }
228
- get getMoreFacetsTemplate() {
229
- var _a;
1
+ import { __decorate } from "tslib";
2
+ /* eslint-disable dot-notation */
3
+ /* eslint-disable lit-a11y/click-events-have-key-events */
4
+ import { css, html, LitElement, nothing, } from 'lit';
5
+ import { customElement, property, state } from 'lit/decorators.js';
6
+ import { AggregationSortType, } from '@internetarchive/search-service';
7
+ import { facetTitles, suppressedCollections, valueFacetSort, defaultFacetSort, } from '../models';
8
+ import '@internetarchive/ia-activity-indicator/ia-activity-indicator';
9
+ import './more-facets-pagination';
10
+ import './facets-template';
11
+ import { analyticsActions, analyticsCategories, } from '../utils/analytics-events';
12
+ import './toggle-switch';
13
+ import { srOnlyStyle } from '../styles/sr-only';
14
+ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.sortedBy = AggregationSortType.COUNT;
18
+ this.facetGroup = [];
19
+ this.facetGroupTitle = '';
20
+ this.pageNumber = 1;
21
+ /**
22
+ * Facets are loading on popup
23
+ */
24
+ this.facetsLoading = true;
25
+ this.paginationSize = 0;
26
+ this.facetsType = 'modal';
27
+ this.facetsPerPage = 35;
28
+ }
29
+ updated(changed) {
30
+ if (changed.has('facetKey') ||
31
+ changed.has('facetAggregationKey') ||
32
+ changed.has('query') ||
33
+ changed.has('searchType') ||
34
+ changed.has('filterMap')) {
35
+ this.facetsLoading = true;
36
+ this.pageNumber = 1;
37
+ this.updateSpecificFacets();
38
+ }
39
+ if (changed.has('pageNumber')) {
40
+ this.facetGroup = this.aggregationFacetGroups;
41
+ }
42
+ }
43
+ firstUpdated() {
44
+ this.setupEscapeListeners();
45
+ }
46
+ /**
47
+ * Close more facets modal on Escape click
48
+ */
49
+ setupEscapeListeners() {
50
+ if (this.modalManager) {
51
+ document.addEventListener('keydown', (e) => {
52
+ var _a;
53
+ if (e.key === 'Escape') {
54
+ (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
55
+ }
56
+ });
57
+ }
58
+ else {
59
+ document.removeEventListener('keydown', () => { });
60
+ }
61
+ }
62
+ /**
63
+ * Get specific facets data from search-service API based of currently query params
64
+ * - this.aggregations - hold result of search service and being used for further processing.
65
+ */
66
+ async updateSpecificFacets() {
67
+ var _a, _b, _c;
68
+ const trimmedQuery = (_a = this.query) === null || _a === void 0 ? void 0 : _a.trim();
69
+ if (!trimmedQuery && !this.withinCollection)
70
+ return;
71
+ const aggregations = {
72
+ simpleParams: [this.facetAggregationKey],
73
+ };
74
+ const aggregationsSize = 65535; // todo - do we want to have all the records at once?
75
+ const collectionParams = this.withinCollection
76
+ ? { pageType: 'collection_details', pageTarget: this.withinCollection }
77
+ : null;
78
+ const params = {
79
+ ...collectionParams,
80
+ query: trimmedQuery || '',
81
+ filters: this.filterMap,
82
+ aggregations,
83
+ aggregationsSize,
84
+ rows: 0, // todo - do we want server-side pagination with offset/page/limit flag?
85
+ };
86
+ const results = await ((_b = this.searchService) === null || _b === void 0 ? void 0 : _b.search(params, this.searchType));
87
+ this.aggregations = (_c = results === null || results === void 0 ? void 0 : results.success) === null || _c === void 0 ? void 0 : _c.response.aggregations;
88
+ this.facetGroup = this.aggregationFacetGroups;
89
+ this.facetsLoading = false;
90
+ }
91
+ pageNumberClicked(e) {
92
+ var _a, _b;
93
+ const page = (_a = e === null || e === void 0 ? void 0 : e.detail) === null || _a === void 0 ? void 0 : _a.page;
94
+ if (page) {
95
+ this.pageNumber = Number(page);
96
+ }
97
+ (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
98
+ category: analyticsCategories.default,
99
+ action: analyticsActions.moreFacetsPageChange,
100
+ label: `${this.pageNumber}`,
101
+ });
102
+ }
103
+ /**
104
+ * Combines the selected facets with the aggregations to create a single list of facets
105
+ */
106
+ get mergedFacets() {
107
+ var _a;
108
+ const facetGroups = [];
109
+ const selectedFacetGroup = this.selectedFacetGroups.find(group => group.key === this.facetKey);
110
+ const aggregateFacetGroup = this.aggregationFacetGroups.find(group => group.key === this.facetKey);
111
+ // if the user selected a facet, but it's not in the aggregation, we add it as-is
112
+ if (selectedFacetGroup && !aggregateFacetGroup) {
113
+ facetGroups.push(selectedFacetGroup);
114
+ return facetGroups;
115
+ }
116
+ // if we don't have an aggregate facet group, don't add this to the list
117
+ if (!aggregateFacetGroup)
118
+ return facetGroups;
119
+ // start with either the selected group if we have one, or the aggregate group
120
+ const facetGroup = selectedFacetGroup !== null && selectedFacetGroup !== void 0 ? selectedFacetGroup : aggregateFacetGroup;
121
+ // attach the counts to the selected buckets
122
+ const bucketsWithCount = (_a = selectedFacetGroup === null || selectedFacetGroup === void 0 ? void 0 : selectedFacetGroup.buckets.map(bucket => {
123
+ const selectedBucket = aggregateFacetGroup.buckets.find(b => b.key === bucket.key);
124
+ return selectedBucket
125
+ ? {
126
+ ...bucket,
127
+ count: selectedBucket.count,
128
+ }
129
+ : bucket;
130
+ })) !== null && _a !== void 0 ? _a : [];
131
+ // append any additional buckets that were not selected
132
+ aggregateFacetGroup.buckets.forEach(bucket => {
133
+ const existingBucket = bucketsWithCount.find(b => b.key === bucket.key);
134
+ if (existingBucket)
135
+ return;
136
+ bucketsWithCount.push(bucket);
137
+ });
138
+ facetGroup.buckets = bucketsWithCount;
139
+ facetGroups.push(facetGroup);
140
+ return facetGroups;
141
+ }
142
+ /**
143
+ * Converts the selected facets to a `FacetGroup` array,
144
+ * which is easier to work with
145
+ */
146
+ get selectedFacetGroups() {
147
+ if (!this.selectedFacets)
148
+ return [];
149
+ const facetGroups = Object.entries(this.selectedFacets).map(([key, selectedFacets]) => {
150
+ const option = key;
151
+ const title = facetTitles[option];
152
+ const buckets = Object.entries(selectedFacets).map(([value, data]) => {
153
+ const displayText = value;
154
+ return {
155
+ displayText,
156
+ key: value,
157
+ count: data === null || data === void 0 ? void 0 : data.count,
158
+ state: data === null || data === void 0 ? void 0 : data.state,
159
+ };
160
+ });
161
+ return {
162
+ title,
163
+ key: option,
164
+ buckets,
165
+ };
166
+ });
167
+ return facetGroups;
168
+ }
169
+ /**
170
+ * Converts the raw `aggregations` to `FacetGroups`, which are easier to use
171
+ */
172
+ get aggregationFacetGroups() {
173
+ var _a;
174
+ const facetGroups = [];
175
+ Object.entries((_a = this.aggregations) !== null && _a !== void 0 ? _a : []).forEach(([key, aggregation]) => {
176
+ // the year_histogram data is in a different format so can't be handled here
177
+ if (key === 'year_histogram')
178
+ return;
179
+ const option = key;
180
+ this.facetGroupTitle = facetTitles[option];
181
+ // sort facets in specific order
182
+ let castedBuckets = aggregation.getSortedBuckets(this.sortedBy);
183
+ if (option === 'collection') {
184
+ // we are not showing fav- collections or certain deemphasized collections in facets
185
+ castedBuckets = castedBuckets === null || castedBuckets === void 0 ? void 0 : castedBuckets.filter(bucket => {
186
+ var _a;
187
+ const bucketKey = (_a = bucket === null || bucket === void 0 ? void 0 : bucket.key) === null || _a === void 0 ? void 0 : _a.toString();
188
+ return (!suppressedCollections[bucketKey] && !(bucketKey === null || bucketKey === void 0 ? void 0 : bucketKey.startsWith('fav-')));
189
+ });
190
+ // asynchronously load the collection name
191
+ this.preloadCollectionNames(castedBuckets);
192
+ }
193
+ // find length and pagination size for modal pagination
194
+ const { length } = Object.keys(castedBuckets);
195
+ this.paginationSize = Math.ceil(length / this.facetsPerPage);
196
+ // render only items which will be visible as per this.facetsPerPage
197
+ const bucketsMaxSix = castedBuckets === null || castedBuckets === void 0 ? void 0 : castedBuckets.slice((this.pageNumber - 1) * this.facetsPerPage, this.pageNumber * this.facetsPerPage);
198
+ const facetBucket = bucketsMaxSix.map(bucket => {
199
+ const bucketKey = bucket.key;
200
+ return {
201
+ displayText: `${bucket.key}`,
202
+ key: `${bucketKey}`,
203
+ count: bucket.doc_count,
204
+ state: 'none',
205
+ };
206
+ });
207
+ const group = {
208
+ title: this.facetGroupTitle,
209
+ key: option,
210
+ buckets: facetBucket,
211
+ };
212
+ facetGroups.push(group);
213
+ });
214
+ return facetGroups;
215
+ }
216
+ /**
217
+ * for collections, we need to asynchronously load the collection name
218
+ * so we use the `async-collection-name` widget and for the rest, we have a static value to use
219
+ *
220
+ * @param castedBuckets
221
+ */
222
+ preloadCollectionNames(castedBuckets) {
223
+ var _a;
224
+ const collectionIds = castedBuckets === null || castedBuckets === void 0 ? void 0 : castedBuckets.map(option => option.key);
225
+ const collectionIdsArray = Array.from(new Set(collectionIds));
226
+ (_a = this.collectionNameCache) === null || _a === void 0 ? void 0 : _a.preloadIdentifiers(collectionIdsArray);
227
+ }
228
+ get getMoreFacetsTemplate() {
229
+ var _a;
230
230
  return html `
231
231
  <facets-template
232
232
  .facetGroup=${(_a = this.mergedFacets) === null || _a === void 0 ? void 0 : _a.shift()}
233
233
  .selectedFacets=${this.selectedFacets}
234
234
  .renderOn=${'modal'}
235
235
  .collectionNameCache=${this.collectionNameCache}
236
- @selectedFacetsChanged=${(e) => {
237
- this.selectedFacets = e.detail;
236
+ @selectedFacetsChanged=${(e) => {
237
+ this.selectedFacets = e.detail;
238
238
  }}
239
239
  ></facets-template>
240
- `;
241
- }
242
- get loaderTemplate() {
240
+ `;
241
+ }
242
+ get loaderTemplate() {
243
243
  return html `<div class="facets-loader">
244
244
  <ia-activity-indicator .mode=${'processing'}></ia-activity-indicator>
245
- </div> `;
246
- }
247
- // render pagination if more then 1 page
248
- get facetsPaginationTemplate() {
249
- return this.paginationSize > 1
245
+ </div> `;
246
+ }
247
+ // render pagination if more then 1 page
248
+ get facetsPaginationTemplate() {
249
+ return this.paginationSize > 1
250
250
  ? html `<more-facets-pagination
251
251
  .size=${this.paginationSize}
252
252
  .currentPage=${1}
253
253
  @pageNumberClicked=${this.pageNumberClicked}
254
- ></more-facets-pagination>`
255
- : nothing;
256
- }
257
- get footerTemplate() {
258
- if (this.paginationSize > 0) {
254
+ ></more-facets-pagination>`
255
+ : nothing;
256
+ }
257
+ get footerTemplate() {
258
+ if (this.paginationSize > 0) {
259
259
  return html `${this.facetsPaginationTemplate}
260
260
  <div class="footer">
261
261
  <button
@@ -272,23 +272,23 @@ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
272
272
  >
273
273
  Apply filters
274
274
  </button>
275
- </div> `;
276
- }
277
- return nothing;
278
- }
279
- sortFacetAggregation(facetSortType) {
280
- this.sortedBy = facetSortType;
281
- this.dispatchEvent(new CustomEvent('sortedFacets', { detail: this.sortedBy }));
282
- }
283
- get getModalHeaderTemplate() {
284
- const facetSort = defaultFacetSort[this.facetKey];
285
- const defaultSwitchSide = facetSort === AggregationSortType.COUNT ? 'left' : 'right';
275
+ </div> `;
276
+ }
277
+ return nothing;
278
+ }
279
+ sortFacetAggregation(facetSortType) {
280
+ this.sortedBy = facetSortType;
281
+ this.dispatchEvent(new CustomEvent('sortedFacets', { detail: this.sortedBy }));
282
+ }
283
+ get getModalHeaderTemplate() {
284
+ const facetSort = defaultFacetSort[this.facetKey];
285
+ const defaultSwitchSide = facetSort === AggregationSortType.COUNT ? 'left' : 'right';
286
286
  return html `<span class="sr-only">More facets for:</span>
287
287
  <span class="title">
288
288
  ${this.facetGroupTitle}
289
289
 
290
290
  <label class="sort-label">Sort by:</label>
291
- ${this.facetKey
291
+ ${this.facetKey
292
292
  ? html `<toggle-switch
293
293
  class="sort-toggle"
294
294
  leftValue=${AggregationSortType.COUNT}
@@ -296,17 +296,17 @@ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
296
296
  rightValue=${valueFacetSort[this.facetKey]}
297
297
  rightLabel=${this.facetGroupTitle}
298
298
  side=${defaultSwitchSide}
299
- @change=${(e) => {
300
- this.sortFacetAggregation(Number(e.detail));
299
+ @change=${(e) => {
300
+ this.sortFacetAggregation(Number(e.detail));
301
301
  }}
302
- ></toggle-switch>`
302
+ ></toggle-switch>`
303
303
  : nothing}
304
- </span>`;
305
- }
306
- render() {
304
+ </span>`;
305
+ }
306
+ render() {
307
307
  return html `
308
- ${this.facetsLoading
309
- ? this.loaderTemplate
308
+ ${this.facetsLoading
309
+ ? this.loaderTemplate
310
310
  : html `
311
311
  <section id="more-facets">
312
312
  <div class="header-content">${this.getModalHeaderTemplate}</div>
@@ -314,36 +314,36 @@ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
314
314
  ${this.footerTemplate}
315
315
  </section>
316
316
  `}
317
- `;
318
- }
319
- applySearchFacetsClicked() {
320
- var _a, _b;
321
- const event = new CustomEvent('facetsChanged', {
322
- detail: this.selectedFacets,
323
- bubbles: true,
324
- composed: true,
325
- });
326
- this.dispatchEvent(event);
327
- (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
328
- (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
329
- category: analyticsCategories.default,
330
- action: `${analyticsActions.applyMoreFacetsModal}`,
331
- label: `${this.facetKey}`,
332
- });
333
- }
334
- cancelClick() {
335
- var _a, _b;
336
- (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
337
- (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
338
- category: analyticsCategories.default,
339
- action: analyticsActions.closeMoreFacetsModal,
340
- label: `${this.facetKey}`,
341
- });
342
- }
343
- static get styles() {
344
- const modalSubmitButton = css `var(--primaryButtonBGColor, #194880)`;
345
- return [
346
- srOnlyStyle,
317
+ `;
318
+ }
319
+ applySearchFacetsClicked() {
320
+ var _a, _b;
321
+ const event = new CustomEvent('facetsChanged', {
322
+ detail: this.selectedFacets,
323
+ bubbles: true,
324
+ composed: true,
325
+ });
326
+ this.dispatchEvent(event);
327
+ (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
328
+ (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
329
+ category: analyticsCategories.default,
330
+ action: `${analyticsActions.applyMoreFacetsModal}`,
331
+ label: `${this.facetKey}`,
332
+ });
333
+ }
334
+ cancelClick() {
335
+ var _a, _b;
336
+ (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
337
+ (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
338
+ category: analyticsCategories.default,
339
+ action: analyticsActions.closeMoreFacetsModal,
340
+ label: `${this.facetKey}`,
341
+ });
342
+ }
343
+ static get styles() {
344
+ const modalSubmitButton = css `var(--primaryButtonBGColor, #194880)`;
345
+ return [
346
+ srOnlyStyle,
347
347
  css `
348
348
  @media (max-width: 560px) {
349
349
  section#more-facets {
@@ -408,69 +408,69 @@ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
408
408
  text-align: center;
409
409
  margin-top: 10px;
410
410
  }
411
- `,
412
- ];
413
- }
414
- };
415
- __decorate([
416
- property({ type: String })
417
- ], MoreFacetsContent.prototype, "facetKey", void 0);
418
- __decorate([
419
- property({ type: String })
420
- ], MoreFacetsContent.prototype, "facetAggregationKey", void 0);
421
- __decorate([
422
- property({ type: String })
423
- ], MoreFacetsContent.prototype, "query", void 0);
424
- __decorate([
425
- property({ type: Object })
426
- ], MoreFacetsContent.prototype, "filterMap", void 0);
427
- __decorate([
428
- property({ type: Object })
429
- ], MoreFacetsContent.prototype, "modalManager", void 0);
430
- __decorate([
431
- property({ type: Object })
432
- ], MoreFacetsContent.prototype, "searchService", void 0);
433
- __decorate([
434
- property({ type: String })
435
- ], MoreFacetsContent.prototype, "searchType", void 0);
436
- __decorate([
437
- property({ type: String })
438
- ], MoreFacetsContent.prototype, "withinCollection", void 0);
439
- __decorate([
440
- property({ type: Object })
441
- ], MoreFacetsContent.prototype, "collectionNameCache", void 0);
442
- __decorate([
443
- property({ type: Object })
444
- ], MoreFacetsContent.prototype, "selectedFacets", void 0);
445
- __decorate([
446
- property({ type: String })
447
- ], MoreFacetsContent.prototype, "sortedBy", void 0);
448
- __decorate([
449
- property({ type: Object, attribute: false })
450
- ], MoreFacetsContent.prototype, "analyticsHandler", void 0);
451
- __decorate([
452
- state()
453
- ], MoreFacetsContent.prototype, "aggregations", void 0);
454
- __decorate([
455
- state()
456
- ], MoreFacetsContent.prototype, "facetGroup", void 0);
457
- __decorate([
458
- state()
459
- ], MoreFacetsContent.prototype, "facetGroupTitle", void 0);
460
- __decorate([
461
- state()
462
- ], MoreFacetsContent.prototype, "pageNumber", void 0);
463
- __decorate([
464
- state()
465
- ], MoreFacetsContent.prototype, "facetsLoading", void 0);
466
- __decorate([
467
- state()
468
- ], MoreFacetsContent.prototype, "paginationSize", void 0);
469
- __decorate([
470
- state()
471
- ], MoreFacetsContent.prototype, "facetsType", void 0);
472
- MoreFacetsContent = __decorate([
473
- customElement('more-facets-content')
474
- ], MoreFacetsContent);
475
- export { MoreFacetsContent };
411
+ `,
412
+ ];
413
+ }
414
+ };
415
+ __decorate([
416
+ property({ type: String })
417
+ ], MoreFacetsContent.prototype, "facetKey", void 0);
418
+ __decorate([
419
+ property({ type: String })
420
+ ], MoreFacetsContent.prototype, "facetAggregationKey", void 0);
421
+ __decorate([
422
+ property({ type: String })
423
+ ], MoreFacetsContent.prototype, "query", void 0);
424
+ __decorate([
425
+ property({ type: Object })
426
+ ], MoreFacetsContent.prototype, "filterMap", void 0);
427
+ __decorate([
428
+ property({ type: Object })
429
+ ], MoreFacetsContent.prototype, "modalManager", void 0);
430
+ __decorate([
431
+ property({ type: Object })
432
+ ], MoreFacetsContent.prototype, "searchService", void 0);
433
+ __decorate([
434
+ property({ type: String })
435
+ ], MoreFacetsContent.prototype, "searchType", void 0);
436
+ __decorate([
437
+ property({ type: String })
438
+ ], MoreFacetsContent.prototype, "withinCollection", void 0);
439
+ __decorate([
440
+ property({ type: Object })
441
+ ], MoreFacetsContent.prototype, "collectionNameCache", void 0);
442
+ __decorate([
443
+ property({ type: Object })
444
+ ], MoreFacetsContent.prototype, "selectedFacets", void 0);
445
+ __decorate([
446
+ property({ type: String })
447
+ ], MoreFacetsContent.prototype, "sortedBy", void 0);
448
+ __decorate([
449
+ property({ type: Object, attribute: false })
450
+ ], MoreFacetsContent.prototype, "analyticsHandler", void 0);
451
+ __decorate([
452
+ state()
453
+ ], MoreFacetsContent.prototype, "aggregations", void 0);
454
+ __decorate([
455
+ state()
456
+ ], MoreFacetsContent.prototype, "facetGroup", void 0);
457
+ __decorate([
458
+ state()
459
+ ], MoreFacetsContent.prototype, "facetGroupTitle", void 0);
460
+ __decorate([
461
+ state()
462
+ ], MoreFacetsContent.prototype, "pageNumber", void 0);
463
+ __decorate([
464
+ state()
465
+ ], MoreFacetsContent.prototype, "facetsLoading", void 0);
466
+ __decorate([
467
+ state()
468
+ ], MoreFacetsContent.prototype, "paginationSize", void 0);
469
+ __decorate([
470
+ state()
471
+ ], MoreFacetsContent.prototype, "facetsType", void 0);
472
+ MoreFacetsContent = __decorate([
473
+ customElement('more-facets-content')
474
+ ], MoreFacetsContent);
475
+ export { MoreFacetsContent };
476
476
  //# sourceMappingURL=more-facets-content.js.map