@internetarchive/collection-browser 1.7.1-alpha.0 → 1.9.0-alpha1

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