@internetarchive/collection-browser 2.7.12 → 2.7.13-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 (498) hide show
  1. package/.editorconfig +29 -29
  2. package/.github/workflows/ci.yml +3 -3
  3. package/.github/workflows/gh-pages-main.yml +2 -2
  4. package/.github/workflows/pr-preview.yml +2 -2
  5. package/.husky/pre-commit +4 -4
  6. package/.prettierignore +1 -0
  7. package/LICENSE +661 -661
  8. package/README.md +83 -83
  9. package/dist/index.d.ts +13 -13
  10. package/dist/index.js +11 -13
  11. package/dist/index.js.map +1 -1
  12. package/dist/src/app-root.d.ts +109 -107
  13. package/dist/src/app-root.js +541 -531
  14. package/dist/src/app-root.js.map +1 -1
  15. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  16. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  17. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  18. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  19. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  20. package/dist/src/assets/img/icons/chevron.js +2 -2
  21. package/dist/src/assets/img/icons/contract.d.ts +2 -2
  22. package/dist/src/assets/img/icons/contract.js +2 -2
  23. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  24. package/dist/src/assets/img/icons/empty-query.js +2 -2
  25. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  26. package/dist/src/assets/img/icons/expand.js +2 -2
  27. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  28. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  29. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  30. package/dist/src/assets/img/icons/eye.js +2 -2
  31. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  32. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  33. package/dist/src/assets/img/icons/favorite-unfilled.d.ts +1 -1
  34. package/dist/src/assets/img/icons/favorite-unfilled.js +2 -2
  35. package/dist/src/assets/img/icons/filter.d.ts +2 -2
  36. package/dist/src/assets/img/icons/filter.js +2 -2
  37. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  38. package/dist/src/assets/img/icons/login-required.js +2 -2
  39. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  40. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  41. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  42. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  43. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  44. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  45. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  46. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  47. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  48. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  49. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  50. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  51. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  52. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  53. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  54. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  55. package/dist/src/assets/img/icons/mediatype/search.d.ts +1 -1
  56. package/dist/src/assets/img/icons/mediatype/search.js +2 -2
  57. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  58. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  59. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  60. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  61. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  62. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  63. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  64. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  65. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  66. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  67. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  68. package/dist/src/assets/img/icons/null-result.js +2 -2
  69. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  70. package/dist/src/assets/img/icons/restricted.js +2 -2
  71. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  72. package/dist/src/assets/img/icons/reviews.js +2 -2
  73. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  74. package/dist/src/assets/img/icons/upload.js +2 -2
  75. package/dist/src/assets/img/icons/views.d.ts +1 -1
  76. package/dist/src/assets/img/icons/views.js +2 -2
  77. package/dist/src/circular-activity-indicator.d.ts +5 -5
  78. package/dist/src/circular-activity-indicator.js +17 -17
  79. package/dist/src/circular-activity-indicator.js.map +1 -1
  80. package/dist/src/collection-browser.d.ts +607 -606
  81. package/dist/src/collection-browser.js +1683 -1677
  82. package/dist/src/collection-browser.js.map +1 -1
  83. package/dist/src/collection-facets/facet-row.d.ts +30 -30
  84. package/dist/src/collection-facets/facet-row.js +118 -118
  85. package/dist/src/collection-facets/facet-row.js.map +1 -1
  86. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  87. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  88. package/dist/src/collection-facets/facet-tombstone-row.js.map +1 -1
  89. package/dist/src/collection-facets/facets-template.d.ts +13 -13
  90. package/dist/src/collection-facets/facets-template.js +49 -49
  91. package/dist/src/collection-facets/facets-template.js.map +1 -1
  92. package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
  93. package/dist/src/collection-facets/more-facets-content.js +406 -408
  94. package/dist/src/collection-facets/more-facets-content.js.map +1 -1
  95. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  96. package/dist/src/collection-facets/more-facets-pagination.js +197 -196
  97. package/dist/src/collection-facets/more-facets-pagination.js.map +1 -1
  98. package/dist/src/collection-facets/smart-facets/dedupe.d.ts +10 -10
  99. package/dist/src/collection-facets/smart-facets/dedupe.js +33 -33
  100. package/dist/src/collection-facets/smart-facets/dedupe.js.map +1 -1
  101. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.d.ts +5 -5
  102. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.js +23 -23
  103. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.d.ts +5 -5
  104. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js +44 -44
  105. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js.map +1 -1
  106. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.d.ts +5 -5
  107. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js +172 -172
  108. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js.map +1 -1
  109. package/dist/src/collection-facets/smart-facets/models.d.ts +26 -26
  110. package/dist/src/collection-facets/smart-facets/models.js +1 -1
  111. package/dist/src/collection-facets/smart-facets/smart-facet-bar.d.ts +31 -31
  112. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +237 -240
  113. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
  114. package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +11 -11
  115. package/dist/src/collection-facets/smart-facets/smart-facet-button.js +86 -86
  116. package/dist/src/collection-facets/smart-facets/smart-facet-button.js.map +1 -1
  117. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +16 -16
  118. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +100 -100
  119. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js.map +1 -1
  120. package/dist/src/collection-facets/smart-facets/smart-facet-equals.d.ts +2 -2
  121. package/dist/src/collection-facets/smart-facets/smart-facet-equals.js +12 -12
  122. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.d.ts +5 -5
  123. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js +15 -15
  124. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js.map +1 -1
  125. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  126. package/dist/src/collection-facets/toggle-switch.js +94 -94
  127. package/dist/src/collection-facets/toggle-switch.js.map +1 -1
  128. package/dist/src/collection-facets.d.ts +103 -103
  129. package/dist/src/collection-facets.js +521 -522
  130. package/dist/src/collection-facets.js.map +1 -1
  131. package/dist/src/data-source/collection-browser-data-source-interface.d.ts +245 -245
  132. package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
  133. package/dist/src/data-source/collection-browser-data-source-interface.js.map +1 -1
  134. package/dist/src/data-source/collection-browser-data-source.d.ts +377 -377
  135. package/dist/src/data-source/collection-browser-data-source.js +1003 -1001
  136. package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
  137. package/dist/src/data-source/collection-browser-query-state.d.ts +44 -44
  138. package/dist/src/data-source/collection-browser-query-state.js +1 -1
  139. package/dist/src/data-source/models.d.ts +28 -28
  140. package/dist/src/data-source/models.js +8 -8
  141. package/dist/src/empty-placeholder.d.ts +23 -23
  142. package/dist/src/empty-placeholder.js +87 -88
  143. package/dist/src/empty-placeholder.js.map +1 -1
  144. package/dist/src/expanded-date-picker.d.ts +43 -43
  145. package/dist/src/expanded-date-picker.js +109 -109
  146. package/dist/src/expanded-date-picker.js.map +1 -1
  147. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  148. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  149. package/dist/src/language-code-handler/language-code-handler.js.map +1 -1
  150. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  151. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  152. package/dist/src/language-code-handler/language-code-mapping.js.map +1 -1
  153. package/dist/src/manage/manage-bar.d.ts +58 -58
  154. package/dist/src/manage/manage-bar.js +175 -175
  155. package/dist/src/manage/manage-bar.js.map +1 -1
  156. package/dist/src/manage/remove-items-modal-content.d.ts +9 -9
  157. package/dist/src/manage/remove-items-modal-content.js +34 -34
  158. package/dist/src/manage/remove-items-modal-content.js.map +1 -1
  159. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  160. package/dist/src/mediatype/mediatype-config.js +92 -91
  161. package/dist/src/mediatype/mediatype-config.js.map +1 -1
  162. package/dist/src/models.d.ts +228 -228
  163. package/dist/src/models.js +401 -401
  164. package/dist/src/models.js.map +1 -1
  165. package/dist/src/restoration-state-handler.d.ts +70 -70
  166. package/dist/src/restoration-state-handler.js +362 -363
  167. package/dist/src/restoration-state-handler.js.map +1 -1
  168. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  169. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  170. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js.map +1 -1
  171. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  172. package/dist/src/sort-filter-bar/alpha-bar.js +136 -136
  173. package/dist/src/sort-filter-bar/alpha-bar.js.map +1 -1
  174. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  175. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  176. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  177. package/dist/src/sort-filter-bar/img/list.js +2 -2
  178. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  179. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  180. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  181. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  182. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  183. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  184. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  185. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  186. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  187. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  188. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +223 -223
  189. package/dist/src/sort-filter-bar/sort-filter-bar.js +696 -697
  190. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  191. package/dist/src/styles/ia-button.d.ts +2 -2
  192. package/dist/src/styles/ia-button.js +17 -17
  193. package/dist/src/styles/item-image-styles.d.ts +8 -8
  194. package/dist/src/styles/item-image-styles.js +9 -9
  195. package/dist/src/styles/sr-only.d.ts +1 -1
  196. package/dist/src/styles/sr-only.js +2 -2
  197. package/dist/src/tiles/base-tile-component.d.ts +19 -19
  198. package/dist/src/tiles/base-tile-component.js +64 -64
  199. package/dist/src/tiles/base-tile-component.js.map +1 -1
  200. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  201. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  202. package/dist/src/tiles/collection-browser-loading-tile.js.map +1 -1
  203. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  204. package/dist/src/tiles/grid/account-tile.js +72 -72
  205. package/dist/src/tiles/grid/account-tile.js.map +1 -1
  206. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  207. package/dist/src/tiles/grid/collection-tile.js +80 -80
  208. package/dist/src/tiles/grid/collection-tile.js.map +1 -1
  209. package/dist/src/tiles/grid/item-tile.d.ts +34 -34
  210. package/dist/src/tiles/grid/item-tile.js +159 -160
  211. package/dist/src/tiles/grid/item-tile.js.map +1 -1
  212. package/dist/src/tiles/grid/search-tile.d.ts +10 -10
  213. package/dist/src/tiles/grid/search-tile.js +51 -51
  214. package/dist/src/tiles/grid/search-tile.js.map +1 -1
  215. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  216. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  217. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  218. package/dist/src/tiles/grid/tile-stats.js +54 -54
  219. package/dist/src/tiles/grid/tile-stats.js.map +1 -1
  220. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  221. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  222. package/dist/src/tiles/hover/hover-pane-controller.js.map +1 -1
  223. package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
  224. package/dist/src/tiles/hover/tile-hover-pane.js +72 -70
  225. package/dist/src/tiles/hover/tile-hover-pane.js.map +1 -1
  226. package/dist/src/tiles/image-block.d.ts +18 -18
  227. package/dist/src/tiles/image-block.js +89 -89
  228. package/dist/src/tiles/image-block.js.map +1 -1
  229. package/dist/src/tiles/item-image.d.ts +39 -39
  230. package/dist/src/tiles/item-image.js +154 -154
  231. package/dist/src/tiles/item-image.js.map +1 -1
  232. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  233. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  234. package/dist/src/tiles/list/tile-list-compact-header.js.map +1 -1
  235. package/dist/src/tiles/list/tile-list-compact.d.ts +19 -19
  236. package/dist/src/tiles/list/tile-list-compact.js +122 -122
  237. package/dist/src/tiles/list/tile-list-compact.js.map +1 -1
  238. package/dist/src/tiles/list/tile-list.d.ts +54 -54
  239. package/dist/src/tiles/list/tile-list.js +324 -326
  240. package/dist/src/tiles/list/tile-list.js.map +1 -1
  241. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  242. package/dist/src/tiles/mediatype-icon.js +47 -47
  243. package/dist/src/tiles/mediatype-icon.js.map +1 -1
  244. package/dist/src/tiles/overlay/icon-overlay.d.ts +8 -8
  245. package/dist/src/tiles/overlay/icon-overlay.js +25 -25
  246. package/dist/src/tiles/overlay/icon-overlay.js.map +1 -1
  247. package/dist/src/tiles/overlay/text-overlay.d.ts +9 -9
  248. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  249. package/dist/src/tiles/overlay/text-overlay.js.map +1 -1
  250. package/dist/src/tiles/review-block.d.ts +12 -12
  251. package/dist/src/tiles/review-block.js +56 -56
  252. package/dist/src/tiles/review-block.js.map +1 -1
  253. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  254. package/dist/src/tiles/text-snippet-block.js +73 -73
  255. package/dist/src/tiles/text-snippet-block.js.map +1 -1
  256. package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
  257. package/dist/src/tiles/tile-dispatcher.js +230 -230
  258. package/dist/src/tiles/tile-dispatcher.js.map +1 -1
  259. package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
  260. package/dist/src/tiles/tile-display-value-provider.js +94 -94
  261. package/dist/src/tiles/tile-display-value-provider.js.map +1 -1
  262. package/dist/src/utils/analytics-events.d.ts +28 -28
  263. package/dist/src/utils/analytics-events.js +30 -30
  264. package/dist/src/utils/array-equals.d.ts +4 -4
  265. package/dist/src/utils/array-equals.js +10 -10
  266. package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
  267. package/dist/src/utils/collapse-repeated-quotes.js +13 -13
  268. package/dist/src/utils/facet-utils.d.ts +83 -83
  269. package/dist/src/utils/facet-utils.js +145 -145
  270. package/dist/src/utils/facet-utils.js.map +1 -1
  271. package/dist/src/utils/format-count.d.ts +7 -7
  272. package/dist/src/utils/format-count.js +75 -76
  273. package/dist/src/utils/format-count.js.map +1 -1
  274. package/dist/src/utils/format-date.d.ts +2 -2
  275. package/dist/src/utils/format-date.js +27 -27
  276. package/dist/src/utils/format-date.js.map +1 -1
  277. package/dist/src/utils/format-unit-size.d.ts +2 -2
  278. package/dist/src/utils/format-unit-size.js +33 -33
  279. package/dist/src/utils/format-unit-size.js.map +1 -1
  280. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  281. package/dist/src/utils/local-date-from-utc.js +15 -15
  282. package/dist/src/utils/log.d.ts +7 -7
  283. package/dist/src/utils/log.js +13 -15
  284. package/dist/src/utils/log.js.map +1 -1
  285. package/dist/src/utils/resolve-mediatype.d.ts +8 -8
  286. package/dist/src/utils/resolve-mediatype.js +23 -23
  287. package/dist/src/utils/resolve-mediatype.js.map +1 -1
  288. package/dist/src/utils/sha1.d.ts +2 -2
  289. package/dist/src/utils/sha1.js +8 -8
  290. package/dist/test/collection-browser.test.d.ts +1 -1
  291. package/dist/test/collection-browser.test.js +1309 -1308
  292. package/dist/test/collection-browser.test.js.map +1 -1
  293. package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
  294. package/dist/test/collection-facets/facet-row.test.js +230 -227
  295. package/dist/test/collection-facets/facet-row.test.js.map +1 -1
  296. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  297. package/dist/test/collection-facets/facets-template.test.js +91 -91
  298. package/dist/test/collection-facets/facets-template.test.js.map +1 -1
  299. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  300. package/dist/test/collection-facets/more-facets-content.test.js +140 -141
  301. package/dist/test/collection-facets/more-facets-content.test.js.map +1 -1
  302. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  303. package/dist/test/collection-facets/more-facets-pagination.test.js +116 -117
  304. package/dist/test/collection-facets/more-facets-pagination.test.js.map +1 -1
  305. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  306. package/dist/test/collection-facets/toggle-switch.test.js +82 -73
  307. package/dist/test/collection-facets/toggle-switch.test.js.map +1 -1
  308. package/dist/test/collection-facets.test.d.ts +2 -2
  309. package/dist/test/collection-facets.test.js +692 -692
  310. package/dist/test/collection-facets.test.js.map +1 -1
  311. package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
  312. package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
  313. package/dist/test/data-source/collection-browser-data-source.test.js.map +1 -1
  314. package/dist/test/empty-placeholder.test.d.ts +1 -1
  315. package/dist/test/empty-placeholder.test.js +62 -63
  316. package/dist/test/empty-placeholder.test.js.map +1 -1
  317. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  318. package/dist/test/expanded-date-picker.test.js +97 -96
  319. package/dist/test/expanded-date-picker.test.js.map +1 -1
  320. package/dist/test/icon-overlay.test.d.ts +1 -1
  321. package/dist/test/icon-overlay.test.js +23 -24
  322. package/dist/test/icon-overlay.test.js.map +1 -1
  323. package/dist/test/image-block.test.d.ts +1 -1
  324. package/dist/test/image-block.test.js +106 -107
  325. package/dist/test/image-block.test.js.map +1 -1
  326. package/dist/test/item-image.test.d.ts +1 -1
  327. package/dist/test/item-image.test.js +84 -85
  328. package/dist/test/item-image.test.js.map +1 -1
  329. package/dist/test/manage/manage-bar.test.d.ts +2 -2
  330. package/dist/test/manage/manage-bar.test.js +100 -101
  331. package/dist/test/manage/manage-bar.test.js.map +1 -1
  332. package/dist/test/manage/remove-items-modal-content.test.d.ts +1 -1
  333. package/dist/test/manage/remove-items-modal-content.test.js +44 -45
  334. package/dist/test/manage/remove-items-modal-content.test.js.map +1 -1
  335. package/dist/test/mediatype-config.test.d.ts +1 -1
  336. package/dist/test/mediatype-config.test.js +16 -16
  337. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  338. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  339. package/dist/test/mocks/mock-search-responses.d.ts +25 -25
  340. package/dist/test/mocks/mock-search-responses.js +942 -942
  341. package/dist/test/mocks/mock-search-responses.js.map +1 -1
  342. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  343. package/dist/test/mocks/mock-search-service.js +54 -54
  344. package/dist/test/mocks/mock-search-service.js.map +1 -1
  345. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  346. package/dist/test/restoration-state-handler.test.js +270 -270
  347. package/dist/test/restoration-state-handler.test.js.map +1 -1
  348. package/dist/test/review-block.test.d.ts +1 -1
  349. package/dist/test/review-block.test.js +43 -44
  350. package/dist/test/review-block.test.js.map +1 -1
  351. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  352. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  353. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js.map +1 -1
  354. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  355. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  356. package/dist/test/sort-filter-bar/alpha-bar.test.js.map +1 -1
  357. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  358. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +425 -426
  359. package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +1 -1
  360. package/dist/test/text-overlay.test.d.ts +1 -1
  361. package/dist/test/text-overlay.test.js +37 -38
  362. package/dist/test/text-overlay.test.js.map +1 -1
  363. package/dist/test/text-snippet-block.test.d.ts +1 -1
  364. package/dist/test/text-snippet-block.test.js +56 -57
  365. package/dist/test/text-snippet-block.test.js.map +1 -1
  366. package/dist/test/tile-stats.test.d.ts +1 -1
  367. package/dist/test/tile-stats.test.js +98 -99
  368. package/dist/test/tile-stats.test.js.map +1 -1
  369. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  370. package/dist/test/tiles/grid/account-tile.test.js +75 -76
  371. package/dist/test/tiles/grid/account-tile.test.js.map +1 -1
  372. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  373. package/dist/test/tiles/grid/collection-tile.test.js +72 -73
  374. package/dist/test/tiles/grid/collection-tile.test.js.map +1 -1
  375. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  376. package/dist/test/tiles/grid/item-tile.test.js +311 -312
  377. package/dist/test/tiles/grid/item-tile.test.js.map +1 -1
  378. package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
  379. package/dist/test/tiles/grid/search-tile.test.js +50 -51
  380. package/dist/test/tiles/grid/search-tile.test.js.map +1 -1
  381. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  382. package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
  383. package/dist/test/tiles/hover/hover-pane-controller.test.js.map +1 -1
  384. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  385. package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
  386. package/dist/test/tiles/hover/tile-hover-pane.test.js.map +1 -1
  387. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  388. package/dist/test/tiles/list/tile-list-compact.test.js +142 -143
  389. package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
  390. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  391. package/dist/test/tiles/list/tile-list.test.js +296 -297
  392. package/dist/test/tiles/list/tile-list.test.js.map +1 -1
  393. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  394. package/dist/test/tiles/tile-dispatcher.test.js +100 -100
  395. package/dist/test/tiles/tile-dispatcher.test.js.map +1 -1
  396. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  397. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  398. package/dist/test/utils/array-equals.test.d.ts +1 -1
  399. package/dist/test/utils/array-equals.test.js +26 -26
  400. package/dist/test/utils/format-count.test.d.ts +1 -1
  401. package/dist/test/utils/format-count.test.js +23 -23
  402. package/dist/test/utils/format-count.test.js.map +1 -1
  403. package/dist/test/utils/format-date.test.d.ts +1 -1
  404. package/dist/test/utils/format-date.test.js +30 -30
  405. package/dist/test/utils/format-date.test.js.map +1 -1
  406. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  407. package/dist/test/utils/format-unit-size.test.js +17 -17
  408. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  409. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  410. package/dist/test/utils/local-date-from-utc.test.js.map +1 -1
  411. package/eslint.config.mjs +53 -0
  412. package/index.html +0 -3
  413. package/local.archive.org.cert +86 -86
  414. package/local.archive.org.key +27 -27
  415. package/package.json +41 -39
  416. package/renovate.json +6 -6
  417. package/src/app-root.ts +33 -23
  418. package/src/collection-browser.ts +44 -42
  419. package/src/collection-facets/facets-template.ts +7 -6
  420. package/src/collection-facets/more-facets-content.ts +11 -13
  421. package/src/collection-facets/more-facets-pagination.ts +3 -2
  422. package/src/collection-facets/smart-facets/dedupe.ts +2 -2
  423. package/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.ts +1 -1
  424. package/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.ts +6 -6
  425. package/src/collection-facets/smart-facets/smart-facet-bar.ts +6 -8
  426. package/src/collection-facets/smart-facets/smart-facet-button.ts +5 -3
  427. package/src/collection-facets/smart-facets/smart-facet-dropdown.ts +4 -4
  428. package/src/collection-facets/smart-facets/smart-facet-heuristics.ts +1 -1
  429. package/src/collection-facets/toggle-switch.ts +2 -2
  430. package/src/collection-facets.ts +18 -19
  431. package/src/data-source/collection-browser-data-source-interface.ts +5 -1
  432. package/src/data-source/collection-browser-data-source.ts +42 -35
  433. package/src/empty-placeholder.ts +19 -16
  434. package/src/expanded-date-picker.ts +1 -1
  435. package/src/language-code-handler/language-code-handler.ts +1 -1
  436. package/src/manage/manage-bar.ts +23 -20
  437. package/src/manage/remove-items-modal-content.ts +2 -2
  438. package/src/mediatype/mediatype-config.ts +1 -0
  439. package/src/models.ts +3 -3
  440. package/src/restoration-state-handler.ts +14 -15
  441. package/src/sort-filter-bar/alpha-bar.ts +16 -17
  442. package/src/sort-filter-bar/sort-filter-bar.ts +14 -15
  443. package/src/tiles/grid/account-tile.ts +1 -1
  444. package/src/tiles/grid/collection-tile.ts +1 -1
  445. package/src/tiles/grid/item-tile.ts +9 -9
  446. package/src/tiles/grid/tile-stats.ts +4 -4
  447. package/src/tiles/hover/hover-pane-controller.ts +1 -1
  448. package/src/tiles/hover/tile-hover-pane.ts +4 -2
  449. package/src/tiles/item-image.ts +1 -1
  450. package/src/tiles/list/tile-list-compact.ts +2 -2
  451. package/src/tiles/list/tile-list.ts +22 -24
  452. package/src/tiles/tile-dispatcher.ts +5 -5
  453. package/src/tiles/tile-display-value-provider.ts +4 -4
  454. package/src/utils/facet-utils.ts +6 -6
  455. package/src/utils/format-count.ts +2 -3
  456. package/src/utils/format-date.ts +1 -1
  457. package/src/utils/format-unit-size.ts +1 -1
  458. package/src/utils/log.ts +1 -3
  459. package/test/collection-browser.test.ts +125 -124
  460. package/test/collection-facets/facet-row.test.ts +31 -28
  461. package/test/collection-facets/facets-template.test.ts +9 -9
  462. package/test/collection-facets/more-facets-content.test.ts +14 -15
  463. package/test/collection-facets/more-facets-pagination.test.ts +18 -19
  464. package/test/collection-facets/toggle-switch.test.ts +28 -18
  465. package/test/collection-facets.test.ts +46 -39
  466. package/test/data-source/collection-browser-data-source.test.ts +2 -2
  467. package/test/empty-placeholder.test.ts +6 -7
  468. package/test/expanded-date-picker.test.ts +25 -20
  469. package/test/icon-overlay.test.ts +0 -1
  470. package/test/image-block.test.ts +6 -7
  471. package/test/item-image.test.ts +0 -1
  472. package/test/manage/manage-bar.test.ts +19 -16
  473. package/test/manage/remove-items-modal-content.test.ts +4 -5
  474. package/test/mocks/mock-search-responses.ts +2 -1
  475. package/test/mocks/mock-search-service.ts +1 -1
  476. package/test/restoration-state-handler.test.ts +12 -12
  477. package/test/review-block.test.ts +1 -2
  478. package/test/sort-filter-bar/alpha-bar-tooltip.test.ts +1 -1
  479. package/test/sort-filter-bar/alpha-bar.test.ts +5 -5
  480. package/test/sort-filter-bar/sort-filter-bar.test.ts +38 -39
  481. package/test/text-overlay.test.ts +0 -1
  482. package/test/text-snippet-block.test.ts +5 -6
  483. package/test/tile-stats.test.ts +26 -35
  484. package/test/tiles/grid/account-tile.test.ts +2 -3
  485. package/test/tiles/grid/collection-tile.test.ts +3 -4
  486. package/test/tiles/grid/item-tile.test.ts +13 -14
  487. package/test/tiles/grid/search-tile.test.ts +1 -2
  488. package/test/tiles/hover/hover-pane-controller.test.ts +15 -15
  489. package/test/tiles/hover/tile-hover-pane.test.ts +5 -5
  490. package/test/tiles/list/tile-list-compact.test.ts +1 -2
  491. package/test/tiles/list/tile-list.test.ts +10 -11
  492. package/test/tiles/tile-dispatcher.test.ts +5 -5
  493. package/test/utils/format-count.test.ts +1 -1
  494. package/test/utils/format-date.test.ts +1 -1
  495. package/test/utils/local-date-from-utc.test.ts +1 -1
  496. package/tsconfig.json +0 -1
  497. package/web-dev-server.config.mjs +30 -30
  498. package/web-test-runner.config.mjs +41 -41
@@ -1,308 +1,306 @@
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 { msg } from '@lit/localize';
8
- import { facetTitles, suppressedCollections, valueFacetSort, defaultFacetSort, getDefaultSelectedFacets, } from '../models';
9
- import '@internetarchive/ia-activity-indicator/ia-activity-indicator';
10
- import './more-facets-pagination';
11
- import './facets-template';
12
- import { analyticsActions, analyticsCategories, } from '../utils/analytics-events';
13
- import './toggle-switch';
14
- import { srOnlyStyle } from '../styles/sr-only';
15
- import { mergeSelectedFacets, sortBucketsBySelectionState, updateSelectedFacetBucket, } from '../utils/facet-utils';
16
- let MoreFacetsContent = class MoreFacetsContent extends LitElement {
17
- constructor() {
18
- super(...arguments);
19
- /**
20
- * Maximum number of facets to show per page within the modal.
21
- */
22
- this.facetsPerPage = 35;
23
- /**
24
- * Whether we are waiting for facet data to load.
25
- * We begin with this set to true so that we show an initial loading indicator.
26
- */
27
- this.facetsLoading = true;
28
- this.sortedBy = AggregationSortType.COUNT;
29
- /**
30
- * An object holding any changes the patron has made to their facet selections
31
- * within the modal dialog but which they have not yet applied. These are
32
- * eventually merged into the existing `selectedFacets` when the patron applies
33
- * their changes, or discarded if they cancel/close the dialog.
34
- */
35
- this.unappliedFacetChanges = getDefaultSelectedFacets();
36
- /**
37
- * Which page of facets we are showing.
38
- */
39
- this.pageNumber = 1;
40
- }
41
- willUpdate(changed) {
42
- if (changed.has('aggregations') ||
43
- changed.has('facetsPerPage') ||
44
- changed.has('sortedBy') ||
45
- changed.has('selectedFacets') ||
46
- changed.has('unappliedFacetChanges')) {
47
- // Convert the merged selected facets & aggregations into a facet group, and
48
- // store it for reuse across pages.
49
- this.facetGroup = this.mergedFacets;
50
- }
51
- }
52
- updated(changed) {
53
- // If any of the search properties change, it triggers a facet fetch
54
- if (changed.has('facetKey') ||
55
- changed.has('query') ||
56
- changed.has('searchType') ||
57
- changed.has('filterMap')) {
58
- this.facetsLoading = true;
59
- this.pageNumber = 1;
60
- this.sortedBy = defaultFacetSort[this.facetKey];
61
- this.updateSpecificFacets();
62
- }
63
- }
64
- firstUpdated() {
65
- this.setupEscapeListeners();
66
- }
67
- /**
68
- * Close more facets modal on Escape click
69
- */
70
- setupEscapeListeners() {
71
- if (this.modalManager) {
72
- document.addEventListener('keydown', (e) => {
73
- var _a;
74
- if (e.key === 'Escape') {
75
- (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
76
- }
77
- });
78
- }
79
- else {
80
- document.removeEventListener('keydown', () => { });
81
- }
82
- }
83
- /**
84
- * Whether facet requests are for the search_results page type (either defaulted or explicitly).
85
- */
86
- get isSearchResultsPage() {
87
- var _a;
88
- // Default page type is search_results when none is specified, so we check
89
- // for undefined as well.
90
- const pageType = (_a = this.pageSpecifierParams) === null || _a === void 0 ? void 0 : _a.pageType;
91
- return pageType === undefined || pageType === 'search_results';
92
- }
93
- /**
94
- * Get specific facets data from search-service API based of currently query params
95
- * - this.aggregations - hold result of search service and being used for further processing.
96
- */
97
- async updateSpecificFacets() {
98
- var _a, _b, _c, _d, _e, _f;
99
- if (!this.facetKey)
100
- return; // Can't fetch facets if we don't know what type of facets we need!
101
- const trimmedQuery = (_a = this.query) === null || _a === void 0 ? void 0 : _a.trim();
102
- if (!trimmedQuery && this.isSearchResultsPage)
103
- return; // The search page _requires_ a query
104
- const aggregations = {
105
- simpleParams: [this.facetKey],
106
- };
107
- const aggregationsSize = 65535; // todo - do we want to have all the records at once?
108
- const params = {
109
- ...this.pageSpecifierParams,
110
- query: trimmedQuery || '',
111
- filters: this.filterMap,
112
- aggregations,
113
- aggregationsSize,
114
- rows: 0, // todo - do we want server-side pagination with offset/page/limit flag?
115
- };
116
- const results = await ((_b = this.searchService) === null || _b === void 0 ? void 0 : _b.search(params, this.searchType));
117
- this.aggregations = (_c = results === null || results === void 0 ? void 0 : results.success) === null || _c === void 0 ? void 0 : _c.response.aggregations;
118
- this.facetsLoading = false;
119
- const collectionTitles = (_e = (_d = results === null || results === void 0 ? void 0 : results.success) === null || _d === void 0 ? void 0 : _d.response) === null || _e === void 0 ? void 0 : _e.collectionTitles;
120
- if (collectionTitles) {
121
- for (const [id, title] of Object.entries(collectionTitles)) {
122
- (_f = this.collectionTitles) === null || _f === void 0 ? void 0 : _f.set(id, title);
123
- }
124
- }
125
- }
126
- /**
127
- * Handler for page number changes from the pagination widget.
128
- */
129
- pageNumberClicked(e) {
130
- var _a, _b;
131
- const page = (_a = e === null || e === void 0 ? void 0 : e.detail) === null || _a === void 0 ? void 0 : _a.page;
132
- if (page) {
133
- this.pageNumber = Number(page);
134
- }
135
- (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
136
- category: analyticsCategories.default,
137
- action: analyticsActions.moreFacetsPageChange,
138
- label: `${this.pageNumber}`,
139
- });
140
- }
141
- /**
142
- * Combines the selected facets with the aggregations to create a single list of facets
143
- */
144
- get mergedFacets() {
145
- var _a;
146
- if (!this.facetKey || !this.selectedFacets)
147
- return undefined;
148
- const { selectedFacetGroup, aggregationFacetGroup } = this;
149
- // If we don't have any aggregations, then there is nothing to show yet
150
- if (!aggregationFacetGroup)
151
- return undefined;
152
- // Start with either the selected group if we have one, or the aggregate group otherwise
153
- const facetGroup = { ...(selectedFacetGroup !== null && selectedFacetGroup !== void 0 ? selectedFacetGroup : aggregationFacetGroup) };
154
- // Attach the counts to the selected buckets
155
- const bucketsWithCount = (_a = selectedFacetGroup === null || selectedFacetGroup === void 0 ? void 0 : selectedFacetGroup.buckets.map(bucket => {
156
- const selectedBucket = aggregationFacetGroup.buckets.find(b => b.key === bucket.key);
157
- return selectedBucket
158
- ? {
159
- ...bucket,
160
- count: selectedBucket.count,
161
- }
162
- : bucket;
163
- })) !== null && _a !== void 0 ? _a : [];
164
- // Sort the buckets by selection state
165
- // We do this *prior* to considering unapplied selections, because we want the facets
166
- // to remain in position when they are selected/unselected, rather than re-sort themselves.
167
- sortBucketsBySelectionState(bucketsWithCount, this.sortedBy);
168
- // Append any additional buckets that were not selected
169
- aggregationFacetGroup.buckets.forEach(bucket => {
170
- const existingBucket = selectedFacetGroup === null || selectedFacetGroup === void 0 ? void 0 : selectedFacetGroup.buckets.find(b => b.key === bucket.key);
171
- if (existingBucket)
172
- return;
173
- bucketsWithCount.push(bucket);
174
- });
175
- // Apply any unapplied selections that appear on this page
176
- const unappliedBuckets = this.unappliedFacetChanges[this.facetKey];
177
- for (const [index, bucket] of bucketsWithCount.entries()) {
178
- const unappliedBucket = unappliedBuckets[bucket.key];
179
- if (unappliedBucket) {
180
- bucketsWithCount[index] = { ...unappliedBucket };
181
- }
182
- }
183
- facetGroup.buckets = bucketsWithCount;
184
- return facetGroup;
185
- }
186
- /**
187
- * Converts the selected facets for the current facet key to a `FacetGroup`,
188
- * which is easier to work with.
189
- */
190
- get selectedFacetGroup() {
191
- if (!this.selectedFacets || !this.facetKey)
192
- return undefined;
193
- const selectedFacetsForKey = this.selectedFacets[this.facetKey];
194
- if (!selectedFacetsForKey)
195
- return undefined;
196
- const facetGroupTitle = facetTitles[this.facetKey];
197
- const buckets = Object.entries(selectedFacetsForKey).map(([value, data]) => {
198
- const displayText = value;
199
- return {
200
- displayText,
201
- key: value,
202
- count: data === null || data === void 0 ? void 0 : data.count,
203
- state: data === null || data === void 0 ? void 0 : data.state,
204
- };
205
- });
206
- return {
207
- title: facetGroupTitle,
208
- key: this.facetKey,
209
- buckets,
210
- };
211
- }
212
- /**
213
- * Converts the raw `aggregations` for the current facet key to a `FacetGroup`,
214
- * which is easier to work with.
215
- */
216
- get aggregationFacetGroup() {
217
- if (!this.aggregations || !this.facetKey)
218
- return undefined;
219
- const currentAggregation = this.aggregations[this.facetKey];
220
- if (!currentAggregation)
221
- return undefined;
222
- const facetGroupTitle = facetTitles[this.facetKey];
223
- // Order the facets according to the current sort option
224
- let sortedBuckets = currentAggregation.getSortedBuckets(this.sortedBy);
225
- if (this.facetKey === 'collection') {
226
- // we are not showing fav- collections or certain deemphasized collections in facets
227
- sortedBuckets = sortedBuckets === null || sortedBuckets === void 0 ? void 0 : sortedBuckets.filter(bucket => {
228
- var _a;
229
- const bucketKey = (_a = bucket === null || bucket === void 0 ? void 0 : bucket.key) === null || _a === void 0 ? void 0 : _a.toString();
230
- return (!suppressedCollections[bucketKey] && !(bucketKey === null || bucketKey === void 0 ? void 0 : bucketKey.startsWith('fav-')));
231
- });
232
- }
233
- // Construct the array of facet buckets from the aggregation buckets
234
- const facetBuckets = sortedBuckets.map(bucket => {
235
- const bucketKeyStr = `${bucket.key}`;
236
- return {
237
- displayText: `${bucketKeyStr}`,
238
- key: `${bucketKeyStr}`,
239
- count: bucket.doc_count,
240
- state: 'none',
241
- };
242
- });
243
- return {
244
- title: facetGroupTitle,
245
- key: this.facetKey,
246
- buckets: facetBuckets,
247
- };
248
- }
249
- /**
250
- * Returns a FacetGroup representing only the current page of facet buckets to show.
251
- */
252
- get facetGroupForCurrentPage() {
253
- const { facetGroup } = this;
254
- if (!facetGroup)
255
- return undefined;
256
- // Slice out only the current page of facet buckets
257
- const firstBucketIndexOnPage = (this.pageNumber - 1) * this.facetsPerPage;
258
- const truncatedBuckets = facetGroup.buckets.slice(firstBucketIndexOnPage, firstBucketIndexOnPage + this.facetsPerPage);
259
- return {
260
- ...facetGroup,
261
- buckets: truncatedBuckets,
262
- };
263
- }
264
- get moreFacetsTemplate() {
1
+ import { __decorate } from "tslib";
2
+ import { css, html, LitElement, nothing, } from 'lit';
3
+ import { customElement, property, state } from 'lit/decorators.js';
4
+ import { AggregationSortType, } from '@internetarchive/search-service';
5
+ import { msg } from '@lit/localize';
6
+ import { facetTitles, suppressedCollections, valueFacetSort, defaultFacetSort, getDefaultSelectedFacets, } from '../models';
7
+ import '@internetarchive/ia-activity-indicator';
8
+ import './more-facets-pagination';
9
+ import './facets-template';
10
+ import { analyticsActions, analyticsCategories, } from '../utils/analytics-events';
11
+ import './toggle-switch';
12
+ import { srOnlyStyle } from '../styles/sr-only';
13
+ import { mergeSelectedFacets, sortBucketsBySelectionState, updateSelectedFacetBucket, } from '../utils/facet-utils';
14
+ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
15
+ constructor() {
16
+ super(...arguments);
17
+ /**
18
+ * Maximum number of facets to show per page within the modal.
19
+ */
20
+ this.facetsPerPage = 35;
21
+ /**
22
+ * Whether we are waiting for facet data to load.
23
+ * We begin with this set to true so that we show an initial loading indicator.
24
+ */
25
+ this.facetsLoading = true;
26
+ this.sortedBy = AggregationSortType.COUNT;
27
+ /**
28
+ * An object holding any changes the patron has made to their facet selections
29
+ * within the modal dialog but which they have not yet applied. These are
30
+ * eventually merged into the existing `selectedFacets` when the patron applies
31
+ * their changes, or discarded if they cancel/close the dialog.
32
+ */
33
+ this.unappliedFacetChanges = getDefaultSelectedFacets();
34
+ /**
35
+ * Which page of facets we are showing.
36
+ */
37
+ this.pageNumber = 1;
38
+ }
39
+ willUpdate(changed) {
40
+ if (changed.has('aggregations') ||
41
+ changed.has('facetsPerPage') ||
42
+ changed.has('sortedBy') ||
43
+ changed.has('selectedFacets') ||
44
+ changed.has('unappliedFacetChanges')) {
45
+ // Convert the merged selected facets & aggregations into a facet group, and
46
+ // store it for reuse across pages.
47
+ this.facetGroup = this.mergedFacets;
48
+ }
49
+ }
50
+ updated(changed) {
51
+ // If any of the search properties change, it triggers a facet fetch
52
+ if (changed.has('facetKey') ||
53
+ changed.has('query') ||
54
+ changed.has('searchType') ||
55
+ changed.has('filterMap')) {
56
+ this.facetsLoading = true;
57
+ this.pageNumber = 1;
58
+ this.sortedBy = defaultFacetSort[this.facetKey];
59
+ this.updateSpecificFacets();
60
+ }
61
+ }
62
+ firstUpdated() {
63
+ this.setupEscapeListeners();
64
+ }
65
+ /**
66
+ * Close more facets modal on Escape click
67
+ */
68
+ setupEscapeListeners() {
69
+ if (this.modalManager) {
70
+ document.addEventListener('keydown', (e) => {
71
+ var _a;
72
+ if (e.key === 'Escape') {
73
+ (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
74
+ }
75
+ });
76
+ }
77
+ else {
78
+ document.removeEventListener('keydown', () => { });
79
+ }
80
+ }
81
+ /**
82
+ * Whether facet requests are for the search_results page type (either defaulted or explicitly).
83
+ */
84
+ get isSearchResultsPage() {
85
+ var _a;
86
+ // Default page type is search_results when none is specified, so we check
87
+ // for undefined as well.
88
+ const pageType = (_a = this.pageSpecifierParams) === null || _a === void 0 ? void 0 : _a.pageType;
89
+ return pageType === undefined || pageType === 'search_results';
90
+ }
91
+ /**
92
+ * Get specific facets data from search-service API based of currently query params
93
+ * - this.aggregations - hold result of search service and being used for further processing.
94
+ */
95
+ async updateSpecificFacets() {
96
+ var _a, _b, _c, _d, _e, _f;
97
+ if (!this.facetKey)
98
+ return; // Can't fetch facets if we don't know what type of facets we need!
99
+ const trimmedQuery = (_a = this.query) === null || _a === void 0 ? void 0 : _a.trim();
100
+ if (!trimmedQuery && this.isSearchResultsPage)
101
+ return; // The search page _requires_ a query
102
+ const aggregations = {
103
+ simpleParams: [this.facetKey],
104
+ };
105
+ const aggregationsSize = 65535; // todo - do we want to have all the records at once?
106
+ const params = {
107
+ ...this.pageSpecifierParams,
108
+ query: trimmedQuery || '',
109
+ filters: this.filterMap,
110
+ aggregations,
111
+ aggregationsSize,
112
+ rows: 0, // todo - do we want server-side pagination with offset/page/limit flag?
113
+ };
114
+ const results = await ((_b = this.searchService) === null || _b === void 0 ? void 0 : _b.search(params, this.searchType));
115
+ this.aggregations = (_c = results === null || results === void 0 ? void 0 : results.success) === null || _c === void 0 ? void 0 : _c.response.aggregations;
116
+ this.facetsLoading = false;
117
+ const collectionTitles = (_e = (_d = results === null || results === void 0 ? void 0 : results.success) === null || _d === void 0 ? void 0 : _d.response) === null || _e === void 0 ? void 0 : _e.collectionTitles;
118
+ if (collectionTitles) {
119
+ for (const [id, title] of Object.entries(collectionTitles)) {
120
+ (_f = this.collectionTitles) === null || _f === void 0 ? void 0 : _f.set(id, title);
121
+ }
122
+ }
123
+ }
124
+ /**
125
+ * Handler for page number changes from the pagination widget.
126
+ */
127
+ pageNumberClicked(e) {
128
+ var _a, _b;
129
+ const page = (_a = e === null || e === void 0 ? void 0 : e.detail) === null || _a === void 0 ? void 0 : _a.page;
130
+ if (page) {
131
+ this.pageNumber = Number(page);
132
+ }
133
+ (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
134
+ category: analyticsCategories.default,
135
+ action: analyticsActions.moreFacetsPageChange,
136
+ label: `${this.pageNumber}`,
137
+ });
138
+ }
139
+ /**
140
+ * Combines the selected facets with the aggregations to create a single list of facets
141
+ */
142
+ get mergedFacets() {
143
+ var _a;
144
+ if (!this.facetKey || !this.selectedFacets)
145
+ return undefined;
146
+ const { selectedFacetGroup, aggregationFacetGroup } = this;
147
+ // If we don't have any aggregations, then there is nothing to show yet
148
+ if (!aggregationFacetGroup)
149
+ return undefined;
150
+ // Start with either the selected group if we have one, or the aggregate group otherwise
151
+ const facetGroup = { ...(selectedFacetGroup !== null && selectedFacetGroup !== void 0 ? selectedFacetGroup : aggregationFacetGroup) };
152
+ // Attach the counts to the selected buckets
153
+ const bucketsWithCount = (_a = selectedFacetGroup === null || selectedFacetGroup === void 0 ? void 0 : selectedFacetGroup.buckets.map(bucket => {
154
+ const selectedBucket = aggregationFacetGroup.buckets.find(b => b.key === bucket.key);
155
+ return selectedBucket
156
+ ? {
157
+ ...bucket,
158
+ count: selectedBucket.count,
159
+ }
160
+ : bucket;
161
+ })) !== null && _a !== void 0 ? _a : [];
162
+ // Sort the buckets by selection state
163
+ // We do this *prior* to considering unapplied selections, because we want the facets
164
+ // to remain in position when they are selected/unselected, rather than re-sort themselves.
165
+ sortBucketsBySelectionState(bucketsWithCount, this.sortedBy);
166
+ // Append any additional buckets that were not selected
167
+ aggregationFacetGroup.buckets.forEach(bucket => {
168
+ const existingBucket = selectedFacetGroup === null || selectedFacetGroup === void 0 ? void 0 : selectedFacetGroup.buckets.find(b => b.key === bucket.key);
169
+ if (existingBucket)
170
+ return;
171
+ bucketsWithCount.push(bucket);
172
+ });
173
+ // Apply any unapplied selections that appear on this page
174
+ const unappliedBuckets = this.unappliedFacetChanges[this.facetKey];
175
+ for (const [index, bucket] of bucketsWithCount.entries()) {
176
+ const unappliedBucket = unappliedBuckets[bucket.key];
177
+ if (unappliedBucket) {
178
+ bucketsWithCount[index] = { ...unappliedBucket };
179
+ }
180
+ }
181
+ facetGroup.buckets = bucketsWithCount;
182
+ return facetGroup;
183
+ }
184
+ /**
185
+ * Converts the selected facets for the current facet key to a `FacetGroup`,
186
+ * which is easier to work with.
187
+ */
188
+ get selectedFacetGroup() {
189
+ if (!this.selectedFacets || !this.facetKey)
190
+ return undefined;
191
+ const selectedFacetsForKey = this.selectedFacets[this.facetKey];
192
+ if (!selectedFacetsForKey)
193
+ return undefined;
194
+ const facetGroupTitle = facetTitles[this.facetKey];
195
+ const buckets = Object.entries(selectedFacetsForKey).map(([value, data]) => {
196
+ const displayText = value;
197
+ return {
198
+ displayText,
199
+ key: value,
200
+ count: data === null || data === void 0 ? void 0 : data.count,
201
+ state: data === null || data === void 0 ? void 0 : data.state,
202
+ };
203
+ });
204
+ return {
205
+ title: facetGroupTitle,
206
+ key: this.facetKey,
207
+ buckets,
208
+ };
209
+ }
210
+ /**
211
+ * Converts the raw `aggregations` for the current facet key to a `FacetGroup`,
212
+ * which is easier to work with.
213
+ */
214
+ get aggregationFacetGroup() {
215
+ if (!this.aggregations || !this.facetKey)
216
+ return undefined;
217
+ const currentAggregation = this.aggregations[this.facetKey];
218
+ if (!currentAggregation)
219
+ return undefined;
220
+ const facetGroupTitle = facetTitles[this.facetKey];
221
+ // Order the facets according to the current sort option
222
+ let sortedBuckets = currentAggregation.getSortedBuckets(this.sortedBy);
223
+ if (this.facetKey === 'collection') {
224
+ // we are not showing fav- collections or certain deemphasized collections in facets
225
+ sortedBuckets = sortedBuckets === null || sortedBuckets === void 0 ? void 0 : sortedBuckets.filter(bucket => {
226
+ var _a;
227
+ const bucketKey = (_a = bucket === null || bucket === void 0 ? void 0 : bucket.key) === null || _a === void 0 ? void 0 : _a.toString();
228
+ return (!suppressedCollections[bucketKey] && !(bucketKey === null || bucketKey === void 0 ? void 0 : bucketKey.startsWith('fav-')));
229
+ });
230
+ }
231
+ // Construct the array of facet buckets from the aggregation buckets
232
+ const facetBuckets = sortedBuckets.map(bucket => {
233
+ const bucketKeyStr = `${bucket.key}`;
234
+ return {
235
+ displayText: `${bucketKeyStr}`,
236
+ key: `${bucketKeyStr}`,
237
+ count: bucket.doc_count,
238
+ state: 'none',
239
+ };
240
+ });
241
+ return {
242
+ title: facetGroupTitle,
243
+ key: this.facetKey,
244
+ buckets: facetBuckets,
245
+ };
246
+ }
247
+ /**
248
+ * Returns a FacetGroup representing only the current page of facet buckets to show.
249
+ */
250
+ get facetGroupForCurrentPage() {
251
+ const { facetGroup } = this;
252
+ if (!facetGroup)
253
+ return undefined;
254
+ // Slice out only the current page of facet buckets
255
+ const firstBucketIndexOnPage = (this.pageNumber - 1) * this.facetsPerPage;
256
+ const truncatedBuckets = facetGroup.buckets.slice(firstBucketIndexOnPage, firstBucketIndexOnPage + this.facetsPerPage);
257
+ return {
258
+ ...facetGroup,
259
+ buckets: truncatedBuckets,
260
+ };
261
+ }
262
+ get moreFacetsTemplate() {
265
263
  return html `
266
264
  <facets-template
267
265
  .facetGroup=${this.facetGroupForCurrentPage}
268
266
  .selectedFacets=${this.selectedFacets}
269
267
  .collectionTitles=${this.collectionTitles}
270
- @facetClick=${(e) => {
271
- if (this.facetKey) {
272
- this.unappliedFacetChanges = updateSelectedFacetBucket(this.unappliedFacetChanges, this.facetKey, e.detail.bucket);
273
- }
268
+ @facetClick=${(e) => {
269
+ if (this.facetKey) {
270
+ this.unappliedFacetChanges = updateSelectedFacetBucket(this.unappliedFacetChanges, this.facetKey, e.detail.bucket);
271
+ }
274
272
  }}
275
273
  ></facets-template>
276
- `;
277
- }
278
- get loaderTemplate() {
274
+ `;
275
+ }
276
+ get loaderTemplate() {
279
277
  return html `<div class="facets-loader">
280
278
  <ia-activity-indicator .mode=${'processing'}></ia-activity-indicator>
281
- </div> `;
282
- }
283
- /**
284
- * How many pages of facets to show in the modal pagination widget
285
- */
286
- get paginationSize() {
287
- var _a;
288
- if (!this.aggregations || !this.facetKey)
289
- return 0;
290
- // Calculate the appropriate number of pages to show in the modal pagination widget
291
- const length = (_a = this.aggregations[this.facetKey]) === null || _a === void 0 ? void 0 : _a.buckets.length;
292
- return Math.ceil(length / this.facetsPerPage);
293
- }
294
- // render pagination if more then 1 page
295
- get facetsPaginationTemplate() {
296
- return this.paginationSize > 1
279
+ </div> `;
280
+ }
281
+ /**
282
+ * How many pages of facets to show in the modal pagination widget
283
+ */
284
+ get paginationSize() {
285
+ var _a;
286
+ if (!this.aggregations || !this.facetKey)
287
+ return 0;
288
+ // Calculate the appropriate number of pages to show in the modal pagination widget
289
+ const length = (_a = this.aggregations[this.facetKey]) === null || _a === void 0 ? void 0 : _a.buckets.length;
290
+ return Math.ceil(length / this.facetsPerPage);
291
+ }
292
+ // render pagination if more then 1 page
293
+ get facetsPaginationTemplate() {
294
+ return this.paginationSize > 1
297
295
  ? html `<more-facets-pagination
298
296
  .size=${this.paginationSize}
299
297
  .currentPage=${1}
300
298
  @pageNumberClicked=${this.pageNumberClicked}
301
- ></more-facets-pagination>`
302
- : nothing;
303
- }
304
- get footerTemplate() {
305
- if (this.paginationSize > 0) {
299
+ ></more-facets-pagination>`
300
+ : nothing;
301
+ }
302
+ get footerTemplate() {
303
+ if (this.paginationSize > 0) {
306
304
  return html `${this.facetsPaginationTemplate}
307
305
  <div class="footer">
308
306
  <button
@@ -319,42 +317,42 @@ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
319
317
  >
320
318
  Apply filters
321
319
  </button>
322
- </div> `;
323
- }
324
- return nothing;
325
- }
326
- sortFacetAggregation(facetSortType) {
327
- this.sortedBy = facetSortType;
328
- this.dispatchEvent(new CustomEvent('sortedFacets', { detail: this.sortedBy }));
329
- }
330
- get modalHeaderTemplate() {
331
- var _a, _b, _c;
332
- const facetSort = (_a = this.sortedBy) !== null && _a !== void 0 ? _a : defaultFacetSort[this.facetKey];
333
- const defaultSwitchSide = facetSort === AggregationSortType.COUNT ? 'left' : 'right';
320
+ </div> `;
321
+ }
322
+ return nothing;
323
+ }
324
+ sortFacetAggregation(facetSortType) {
325
+ this.sortedBy = facetSortType;
326
+ this.dispatchEvent(new CustomEvent('sortedFacets', { detail: this.sortedBy }));
327
+ }
328
+ get modalHeaderTemplate() {
329
+ var _a, _b, _c;
330
+ const facetSort = (_a = this.sortedBy) !== null && _a !== void 0 ? _a : defaultFacetSort[this.facetKey];
331
+ const defaultSwitchSide = facetSort === AggregationSortType.COUNT ? 'left' : 'right';
334
332
  return html `<span class="sr-only">${msg('More facets for:')}</span>
335
333
  <span class="title">
336
334
  ${(_b = this.facetGroup) === null || _b === void 0 ? void 0 : _b.title}
337
335
 
338
336
  <label class="sort-label">${msg('Sort by:')}</label>
339
- ${this.facetKey
337
+ ${this.facetKey
340
338
  ? html `<toggle-switch
341
339
  class="sort-toggle"
342
340
  leftValue=${AggregationSortType.COUNT}
343
341
  leftLabel="Count"
344
342
  rightValue=${valueFacetSort[this.facetKey]}
345
- rightLabel=${(_c = this.facetGroup) === null || _c === void 0 ? void 0 : _c.title}
343
+ .rightLabel=${(_c = this.facetGroup) === null || _c === void 0 ? void 0 : _c.title}
346
344
  side=${defaultSwitchSide}
347
- @change=${(e) => {
348
- this.sortFacetAggregation(Number(e.detail));
345
+ @change=${(e) => {
346
+ this.sortFacetAggregation(Number(e.detail));
349
347
  }}
350
- ></toggle-switch>`
348
+ ></toggle-switch>`
351
349
  : nothing}
352
- </span>`;
353
- }
354
- render() {
350
+ </span>`;
351
+ }
352
+ render() {
355
353
  return html `
356
- ${this.facetsLoading
357
- ? this.loaderTemplate
354
+ ${this.facetsLoading
355
+ ? this.loaderTemplate
358
356
  : html `
359
357
  <section id="more-facets">
360
358
  <div class="header-content">${this.modalHeaderTemplate}</div>
@@ -362,41 +360,41 @@ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
362
360
  ${this.footerTemplate}
363
361
  </section>
364
362
  `}
365
- `;
366
- }
367
- applySearchFacetsClicked() {
368
- var _a, _b;
369
- const mergedSelections = mergeSelectedFacets(this.selectedFacets, this.unappliedFacetChanges);
370
- const event = new CustomEvent('facetsChanged', {
371
- detail: mergedSelections,
372
- bubbles: true,
373
- composed: true,
374
- });
375
- this.dispatchEvent(event);
376
- // Reset the unapplied changes back to default, now that they have been applied
377
- this.unappliedFacetChanges = getDefaultSelectedFacets();
378
- (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
379
- (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
380
- category: analyticsCategories.default,
381
- action: `${analyticsActions.applyMoreFacetsModal}`,
382
- label: `${this.facetKey}`,
383
- });
384
- }
385
- cancelClick() {
386
- var _a, _b;
387
- // Reset the unapplied changes back to default
388
- this.unappliedFacetChanges = getDefaultSelectedFacets();
389
- (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
390
- (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
391
- category: analyticsCategories.default,
392
- action: analyticsActions.closeMoreFacetsModal,
393
- label: `${this.facetKey}`,
394
- });
395
- }
396
- static get styles() {
397
- const modalSubmitButton = css `var(--primaryButtonBGColor, #194880)`;
398
- return [
399
- srOnlyStyle,
363
+ `;
364
+ }
365
+ applySearchFacetsClicked() {
366
+ var _a, _b;
367
+ const mergedSelections = mergeSelectedFacets(this.selectedFacets, this.unappliedFacetChanges);
368
+ const event = new CustomEvent('facetsChanged', {
369
+ detail: mergedSelections,
370
+ bubbles: true,
371
+ composed: true,
372
+ });
373
+ this.dispatchEvent(event);
374
+ // Reset the unapplied changes back to default, now that they have been applied
375
+ this.unappliedFacetChanges = getDefaultSelectedFacets();
376
+ (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
377
+ (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
378
+ category: analyticsCategories.default,
379
+ action: `${analyticsActions.applyMoreFacetsModal}`,
380
+ label: `${this.facetKey}`,
381
+ });
382
+ }
383
+ cancelClick() {
384
+ var _a, _b;
385
+ // Reset the unapplied changes back to default
386
+ this.unappliedFacetChanges = getDefaultSelectedFacets();
387
+ (_a = this.modalManager) === null || _a === void 0 ? void 0 : _a.closeModal();
388
+ (_b = this.analyticsHandler) === null || _b === void 0 ? void 0 : _b.sendEvent({
389
+ category: analyticsCategories.default,
390
+ action: analyticsActions.closeMoreFacetsModal,
391
+ label: `${this.facetKey}`,
392
+ });
393
+ }
394
+ static get styles() {
395
+ const modalSubmitButton = css `var(--primaryButtonBGColor, #194880)`;
396
+ return [
397
+ srOnlyStyle,
400
398
  css `
401
399
  section#more-facets {
402
400
  overflow: auto;
@@ -464,63 +462,63 @@ let MoreFacetsContent = class MoreFacetsContent extends LitElement {
464
462
  height: 300px;
465
463
  }
466
464
  }
467
- `,
468
- ];
469
- }
470
- };
471
- __decorate([
472
- property({ type: String })
473
- ], MoreFacetsContent.prototype, "facetKey", void 0);
474
- __decorate([
475
- property({ type: String })
476
- ], MoreFacetsContent.prototype, "query", void 0);
477
- __decorate([
478
- property({ type: Object })
479
- ], MoreFacetsContent.prototype, "filterMap", void 0);
480
- __decorate([
481
- property({ type: String })
482
- ], MoreFacetsContent.prototype, "searchType", void 0);
483
- __decorate([
484
- property({ type: Object })
485
- ], MoreFacetsContent.prototype, "pageSpecifierParams", void 0);
486
- __decorate([
487
- property({ type: Object })
488
- ], MoreFacetsContent.prototype, "collectionTitles", void 0);
489
- __decorate([
490
- property({ type: Number })
491
- ], MoreFacetsContent.prototype, "facetsPerPage", void 0);
492
- __decorate([
493
- property({ type: Boolean })
494
- ], MoreFacetsContent.prototype, "facetsLoading", void 0);
495
- __decorate([
496
- property({ type: Object })
497
- ], MoreFacetsContent.prototype, "selectedFacets", void 0);
498
- __decorate([
499
- property({ type: String })
500
- ], MoreFacetsContent.prototype, "sortedBy", void 0);
501
- __decorate([
502
- property({ type: Object })
503
- ], MoreFacetsContent.prototype, "modalManager", void 0);
504
- __decorate([
505
- property({ type: Object })
506
- ], MoreFacetsContent.prototype, "searchService", void 0);
507
- __decorate([
508
- property({ type: Object, attribute: false })
509
- ], MoreFacetsContent.prototype, "analyticsHandler", void 0);
510
- __decorate([
511
- state()
512
- ], MoreFacetsContent.prototype, "aggregations", void 0);
513
- __decorate([
514
- state()
515
- ], MoreFacetsContent.prototype, "facetGroup", void 0);
516
- __decorate([
517
- state()
518
- ], MoreFacetsContent.prototype, "unappliedFacetChanges", void 0);
519
- __decorate([
520
- state()
521
- ], MoreFacetsContent.prototype, "pageNumber", void 0);
522
- MoreFacetsContent = __decorate([
523
- customElement('more-facets-content')
524
- ], MoreFacetsContent);
525
- export { MoreFacetsContent };
465
+ `,
466
+ ];
467
+ }
468
+ };
469
+ __decorate([
470
+ property({ type: String })
471
+ ], MoreFacetsContent.prototype, "facetKey", void 0);
472
+ __decorate([
473
+ property({ type: String })
474
+ ], MoreFacetsContent.prototype, "query", void 0);
475
+ __decorate([
476
+ property({ type: Object })
477
+ ], MoreFacetsContent.prototype, "filterMap", void 0);
478
+ __decorate([
479
+ property({ type: String })
480
+ ], MoreFacetsContent.prototype, "searchType", void 0);
481
+ __decorate([
482
+ property({ type: Object })
483
+ ], MoreFacetsContent.prototype, "pageSpecifierParams", void 0);
484
+ __decorate([
485
+ property({ type: Object })
486
+ ], MoreFacetsContent.prototype, "collectionTitles", void 0);
487
+ __decorate([
488
+ property({ type: Number })
489
+ ], MoreFacetsContent.prototype, "facetsPerPage", void 0);
490
+ __decorate([
491
+ property({ type: Boolean })
492
+ ], MoreFacetsContent.prototype, "facetsLoading", void 0);
493
+ __decorate([
494
+ property({ type: Object })
495
+ ], MoreFacetsContent.prototype, "selectedFacets", void 0);
496
+ __decorate([
497
+ property({ type: String })
498
+ ], MoreFacetsContent.prototype, "sortedBy", void 0);
499
+ __decorate([
500
+ property({ type: Object })
501
+ ], MoreFacetsContent.prototype, "modalManager", void 0);
502
+ __decorate([
503
+ property({ type: Object })
504
+ ], MoreFacetsContent.prototype, "searchService", void 0);
505
+ __decorate([
506
+ property({ type: Object, attribute: false })
507
+ ], MoreFacetsContent.prototype, "analyticsHandler", void 0);
508
+ __decorate([
509
+ state()
510
+ ], MoreFacetsContent.prototype, "aggregations", void 0);
511
+ __decorate([
512
+ state()
513
+ ], MoreFacetsContent.prototype, "facetGroup", void 0);
514
+ __decorate([
515
+ state()
516
+ ], MoreFacetsContent.prototype, "unappliedFacetChanges", void 0);
517
+ __decorate([
518
+ state()
519
+ ], MoreFacetsContent.prototype, "pageNumber", void 0);
520
+ MoreFacetsContent = __decorate([
521
+ customElement('more-facets-content')
522
+ ], MoreFacetsContent);
523
+ export { MoreFacetsContent };
526
524
  //# sourceMappingURL=more-facets-content.js.map