@internetarchive/collection-browser 2.7.7-alpha.2 → 2.7.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/.editorconfig +29 -29
  2. package/.github/workflows/ci.yml +3 -3
  3. package/.husky/pre-commit +4 -4
  4. package/LICENSE +661 -661
  5. package/README.md +83 -83
  6. package/dist/index.d.ts +13 -13
  7. package/dist/index.js +13 -11
  8. package/dist/index.js.map +1 -1
  9. package/dist/src/app-root.d.ts +99 -99
  10. package/dist/src/app-root.js +503 -503
  11. package/dist/src/app-root.js.map +1 -1
  12. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  13. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  14. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  15. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  16. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  17. package/dist/src/assets/img/icons/chevron.js +2 -2
  18. package/dist/src/assets/img/icons/contract.d.ts +2 -2
  19. package/dist/src/assets/img/icons/contract.js +2 -2
  20. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  21. package/dist/src/assets/img/icons/empty-query.js +2 -2
  22. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  23. package/dist/src/assets/img/icons/expand.js +2 -2
  24. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  25. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  26. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  27. package/dist/src/assets/img/icons/eye.js +2 -2
  28. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  29. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  30. package/dist/src/assets/img/icons/favorite-unfilled.d.ts +1 -1
  31. package/dist/src/assets/img/icons/favorite-unfilled.js +2 -2
  32. package/dist/src/assets/img/icons/filter.d.ts +2 -2
  33. package/dist/src/assets/img/icons/filter.js +2 -2
  34. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  35. package/dist/src/assets/img/icons/login-required.js +2 -2
  36. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  37. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  38. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  39. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  40. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  41. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  42. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  43. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  44. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  45. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  46. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  47. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  48. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  49. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  50. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  51. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  52. package/dist/src/assets/img/icons/mediatype/search.d.ts +1 -1
  53. package/dist/src/assets/img/icons/mediatype/search.js +2 -2
  54. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  55. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  56. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  57. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  58. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  59. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  60. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  61. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  62. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  63. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  64. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  65. package/dist/src/assets/img/icons/null-result.js +2 -2
  66. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  67. package/dist/src/assets/img/icons/restricted.js +2 -2
  68. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  69. package/dist/src/assets/img/icons/reviews.js +2 -2
  70. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  71. package/dist/src/assets/img/icons/upload.js +2 -2
  72. package/dist/src/assets/img/icons/views.d.ts +1 -1
  73. package/dist/src/assets/img/icons/views.js +2 -2
  74. package/dist/src/circular-activity-indicator.d.ts +5 -5
  75. package/dist/src/circular-activity-indicator.js +17 -17
  76. package/dist/src/circular-activity-indicator.js.map +1 -1
  77. package/dist/src/collection-browser.d.ts +582 -582
  78. package/dist/src/collection-browser.js +1627 -1626
  79. package/dist/src/collection-browser.js.map +1 -1
  80. package/dist/src/collection-facets/facet-row.d.ts +30 -30
  81. package/dist/src/collection-facets/facet-row.js +118 -118
  82. package/dist/src/collection-facets/facet-row.js.map +1 -1
  83. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  84. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  85. package/dist/src/collection-facets/facet-tombstone-row.js.map +1 -1
  86. package/dist/src/collection-facets/facets-template.d.ts +13 -13
  87. package/dist/src/collection-facets/facets-template.js +49 -49
  88. package/dist/src/collection-facets/facets-template.js.map +1 -1
  89. package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
  90. package/dist/src/collection-facets/more-facets-content.js +408 -406
  91. package/dist/src/collection-facets/more-facets-content.js.map +1 -1
  92. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  93. package/dist/src/collection-facets/more-facets-pagination.js +196 -197
  94. package/dist/src/collection-facets/more-facets-pagination.js.map +1 -1
  95. package/dist/src/collection-facets/smart-facets/dedupe.d.ts +10 -10
  96. package/dist/src/collection-facets/smart-facets/dedupe.js +33 -33
  97. package/dist/src/collection-facets/smart-facets/dedupe.js.map +1 -1
  98. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.d.ts +5 -5
  99. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.js +23 -23
  100. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.d.ts +5 -5
  101. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js +44 -44
  102. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js.map +1 -1
  103. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.d.ts +5 -5
  104. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js +172 -172
  105. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js.map +1 -1
  106. package/dist/src/collection-facets/smart-facets/models.d.ts +26 -26
  107. package/dist/src/collection-facets/smart-facets/models.js +1 -1
  108. package/dist/src/collection-facets/smart-facets/smart-facet-bar.d.ts +31 -31
  109. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +240 -237
  110. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
  111. package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +11 -11
  112. package/dist/src/collection-facets/smart-facets/smart-facet-button.js +86 -86
  113. package/dist/src/collection-facets/smart-facets/smart-facet-button.js.map +1 -1
  114. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +16 -16
  115. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +100 -100
  116. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js.map +1 -1
  117. package/dist/src/collection-facets/smart-facets/smart-facet-equals.d.ts +2 -2
  118. package/dist/src/collection-facets/smart-facets/smart-facet-equals.js +12 -12
  119. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.d.ts +5 -5
  120. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js +15 -15
  121. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js.map +1 -1
  122. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  123. package/dist/src/collection-facets/toggle-switch.js +94 -94
  124. package/dist/src/collection-facets/toggle-switch.js.map +1 -1
  125. package/dist/src/collection-facets.d.ts +103 -103
  126. package/dist/src/collection-facets.js +522 -521
  127. package/dist/src/collection-facets.js.map +1 -1
  128. package/dist/src/data-source/collection-browser-data-source-interface.d.ts +241 -241
  129. package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
  130. package/dist/src/data-source/collection-browser-data-source-interface.js.map +1 -1
  131. package/dist/src/data-source/collection-browser-data-source.d.ts +373 -373
  132. package/dist/src/data-source/collection-browser-data-source.js +982 -981
  133. package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
  134. package/dist/src/data-source/collection-browser-query-state.d.ts +43 -43
  135. package/dist/src/data-source/collection-browser-query-state.js +1 -1
  136. package/dist/src/data-source/models.d.ts +28 -28
  137. package/dist/src/data-source/models.js +8 -8
  138. package/dist/src/empty-placeholder.d.ts +23 -23
  139. package/dist/src/empty-placeholder.js +88 -87
  140. package/dist/src/empty-placeholder.js.map +1 -1
  141. package/dist/src/expanded-date-picker.d.ts +43 -43
  142. package/dist/src/expanded-date-picker.js +109 -109
  143. package/dist/src/expanded-date-picker.js.map +1 -1
  144. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  145. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  146. package/dist/src/language-code-handler/language-code-handler.js.map +1 -1
  147. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  148. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  149. package/dist/src/language-code-handler/language-code-mapping.js.map +1 -1
  150. package/dist/src/manage/manage-bar.d.ts +35 -35
  151. package/dist/src/manage/manage-bar.js +79 -79
  152. package/dist/src/manage/manage-bar.js.map +1 -1
  153. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  154. package/dist/src/mediatype/mediatype-config.js +91 -92
  155. package/dist/src/mediatype/mediatype-config.js.map +1 -1
  156. package/dist/src/models.d.ts +219 -219
  157. package/dist/src/models.js +401 -401
  158. package/dist/src/models.js.map +1 -1
  159. package/dist/src/restoration-state-handler.d.ts +70 -70
  160. package/dist/src/restoration-state-handler.js +363 -362
  161. package/dist/src/restoration-state-handler.js.map +1 -1
  162. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  163. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  164. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js.map +1 -1
  165. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  166. package/dist/src/sort-filter-bar/alpha-bar.js +136 -136
  167. package/dist/src/sort-filter-bar/alpha-bar.js.map +1 -1
  168. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  169. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  170. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  171. package/dist/src/sort-filter-bar/img/list.js +2 -2
  172. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  173. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  174. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  175. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  176. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  177. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  178. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  179. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  180. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  181. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  182. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +223 -223
  183. package/dist/src/sort-filter-bar/sort-filter-bar.js +697 -696
  184. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  185. package/dist/src/styles/ia-button.d.ts +2 -2
  186. package/dist/src/styles/ia-button.js +17 -17
  187. package/dist/src/styles/item-image-styles.d.ts +8 -8
  188. package/dist/src/styles/item-image-styles.js +9 -9
  189. package/dist/src/styles/sr-only.d.ts +1 -1
  190. package/dist/src/styles/sr-only.js +2 -2
  191. package/dist/src/tiles/base-tile-component.d.ts +19 -19
  192. package/dist/src/tiles/base-tile-component.js +64 -64
  193. package/dist/src/tiles/base-tile-component.js.map +1 -1
  194. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  195. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  196. package/dist/src/tiles/collection-browser-loading-tile.js.map +1 -1
  197. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  198. package/dist/src/tiles/grid/account-tile.js +72 -72
  199. package/dist/src/tiles/grid/account-tile.js.map +1 -1
  200. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  201. package/dist/src/tiles/grid/collection-tile.js +80 -80
  202. package/dist/src/tiles/grid/collection-tile.js.map +1 -1
  203. package/dist/src/tiles/grid/item-tile.d.ts +34 -34
  204. package/dist/src/tiles/grid/item-tile.js +160 -159
  205. package/dist/src/tiles/grid/item-tile.js.map +1 -1
  206. package/dist/src/tiles/grid/search-tile.d.ts +10 -10
  207. package/dist/src/tiles/grid/search-tile.js +51 -51
  208. package/dist/src/tiles/grid/search-tile.js.map +1 -1
  209. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  210. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  211. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  212. package/dist/src/tiles/grid/tile-stats.js +54 -54
  213. package/dist/src/tiles/grid/tile-stats.js.map +1 -1
  214. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  215. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  216. package/dist/src/tiles/hover/hover-pane-controller.js.map +1 -1
  217. package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
  218. package/dist/src/tiles/hover/tile-hover-pane.js +70 -72
  219. package/dist/src/tiles/hover/tile-hover-pane.js.map +1 -1
  220. package/dist/src/tiles/image-block.d.ts +18 -18
  221. package/dist/src/tiles/image-block.js +89 -89
  222. package/dist/src/tiles/image-block.js.map +1 -1
  223. package/dist/src/tiles/item-image.d.ts +39 -39
  224. package/dist/src/tiles/item-image.js +154 -154
  225. package/dist/src/tiles/item-image.js.map +1 -1
  226. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  227. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  228. package/dist/src/tiles/list/tile-list-compact-header.js.map +1 -1
  229. package/dist/src/tiles/list/tile-list-compact.d.ts +19 -19
  230. package/dist/src/tiles/list/tile-list-compact.js +122 -122
  231. package/dist/src/tiles/list/tile-list-compact.js.map +1 -1
  232. package/dist/src/tiles/list/tile-list.d.ts +54 -54
  233. package/dist/src/tiles/list/tile-list.js +326 -324
  234. package/dist/src/tiles/list/tile-list.js.map +1 -1
  235. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  236. package/dist/src/tiles/mediatype-icon.js +47 -47
  237. package/dist/src/tiles/mediatype-icon.js.map +1 -1
  238. package/dist/src/tiles/overlay/icon-overlay.d.ts +8 -8
  239. package/dist/src/tiles/overlay/icon-overlay.js +25 -25
  240. package/dist/src/tiles/overlay/icon-overlay.js.map +1 -1
  241. package/dist/src/tiles/overlay/text-overlay.d.ts +9 -9
  242. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  243. package/dist/src/tiles/overlay/text-overlay.js.map +1 -1
  244. package/dist/src/tiles/review-block.d.ts +12 -12
  245. package/dist/src/tiles/review-block.js +56 -56
  246. package/dist/src/tiles/review-block.js.map +1 -1
  247. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  248. package/dist/src/tiles/text-snippet-block.js +73 -73
  249. package/dist/src/tiles/text-snippet-block.js.map +1 -1
  250. package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
  251. package/dist/src/tiles/tile-dispatcher.js +230 -230
  252. package/dist/src/tiles/tile-dispatcher.js.map +1 -1
  253. package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
  254. package/dist/src/tiles/tile-display-value-provider.js +94 -94
  255. package/dist/src/tiles/tile-display-value-provider.js.map +1 -1
  256. package/dist/src/utils/analytics-events.d.ts +28 -28
  257. package/dist/src/utils/analytics-events.js +30 -30
  258. package/dist/src/utils/array-equals.d.ts +4 -4
  259. package/dist/src/utils/array-equals.js +10 -10
  260. package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
  261. package/dist/src/utils/collapse-repeated-quotes.js +13 -13
  262. package/dist/src/utils/facet-utils.d.ts +83 -83
  263. package/dist/src/utils/facet-utils.js +145 -145
  264. package/dist/src/utils/facet-utils.js.map +1 -1
  265. package/dist/src/utils/format-count.d.ts +7 -7
  266. package/dist/src/utils/format-count.js +76 -75
  267. package/dist/src/utils/format-count.js.map +1 -1
  268. package/dist/src/utils/format-date.d.ts +2 -2
  269. package/dist/src/utils/format-date.js +27 -27
  270. package/dist/src/utils/format-date.js.map +1 -1
  271. package/dist/src/utils/format-unit-size.d.ts +2 -2
  272. package/dist/src/utils/format-unit-size.js +33 -33
  273. package/dist/src/utils/format-unit-size.js.map +1 -1
  274. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  275. package/dist/src/utils/local-date-from-utc.js +15 -15
  276. package/dist/src/utils/log.d.ts +7 -7
  277. package/dist/src/utils/log.js +15 -13
  278. package/dist/src/utils/log.js.map +1 -1
  279. package/dist/src/utils/resolve-mediatype.d.ts +8 -8
  280. package/dist/src/utils/resolve-mediatype.js +23 -23
  281. package/dist/src/utils/resolve-mediatype.js.map +1 -1
  282. package/dist/src/utils/sha1.d.ts +2 -2
  283. package/dist/src/utils/sha1.js +8 -8
  284. package/dist/test/collection-browser.test.d.ts +1 -1
  285. package/dist/test/collection-browser.test.js +1293 -1294
  286. package/dist/test/collection-browser.test.js.map +1 -1
  287. package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
  288. package/dist/test/collection-facets/facet-row.test.js +227 -230
  289. package/dist/test/collection-facets/facet-row.test.js.map +1 -1
  290. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  291. package/dist/test/collection-facets/facets-template.test.js +91 -91
  292. package/dist/test/collection-facets/facets-template.test.js.map +1 -1
  293. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  294. package/dist/test/collection-facets/more-facets-content.test.js +141 -140
  295. package/dist/test/collection-facets/more-facets-content.test.js.map +1 -1
  296. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  297. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -116
  298. package/dist/test/collection-facets/more-facets-pagination.test.js.map +1 -1
  299. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  300. package/dist/test/collection-facets/toggle-switch.test.js +73 -82
  301. package/dist/test/collection-facets/toggle-switch.test.js.map +1 -1
  302. package/dist/test/collection-facets.test.d.ts +2 -2
  303. package/dist/test/collection-facets.test.js +690 -689
  304. package/dist/test/collection-facets.test.js.map +1 -1
  305. package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
  306. package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
  307. package/dist/test/data-source/collection-browser-data-source.test.js.map +1 -1
  308. package/dist/test/empty-placeholder.test.d.ts +1 -1
  309. package/dist/test/empty-placeholder.test.js +63 -62
  310. package/dist/test/empty-placeholder.test.js.map +1 -1
  311. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  312. package/dist/test/expanded-date-picker.test.js +95 -95
  313. package/dist/test/expanded-date-picker.test.js.map +1 -1
  314. package/dist/test/icon-overlay.test.d.ts +1 -1
  315. package/dist/test/icon-overlay.test.js +24 -23
  316. package/dist/test/icon-overlay.test.js.map +1 -1
  317. package/dist/test/image-block.test.d.ts +1 -1
  318. package/dist/test/image-block.test.js +107 -106
  319. package/dist/test/image-block.test.js.map +1 -1
  320. package/dist/test/item-image.test.d.ts +1 -1
  321. package/dist/test/item-image.test.js +85 -84
  322. package/dist/test/item-image.test.js.map +1 -1
  323. package/dist/test/manage/manage-bar.test.d.ts +1 -1
  324. package/dist/test/manage/manage-bar.test.js +91 -90
  325. package/dist/test/manage/manage-bar.test.js.map +1 -1
  326. package/dist/test/mediatype-config.test.d.ts +1 -1
  327. package/dist/test/mediatype-config.test.js +16 -16
  328. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  329. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  330. package/dist/test/mocks/mock-search-responses.d.ts +25 -25
  331. package/dist/test/mocks/mock-search-responses.js +942 -942
  332. package/dist/test/mocks/mock-search-responses.js.map +1 -1
  333. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  334. package/dist/test/mocks/mock-search-service.js +54 -54
  335. package/dist/test/mocks/mock-search-service.js.map +1 -1
  336. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  337. package/dist/test/restoration-state-handler.test.js +270 -270
  338. package/dist/test/restoration-state-handler.test.js.map +1 -1
  339. package/dist/test/review-block.test.d.ts +1 -1
  340. package/dist/test/review-block.test.js +44 -43
  341. package/dist/test/review-block.test.js.map +1 -1
  342. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  343. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  344. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js.map +1 -1
  345. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  346. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  347. package/dist/test/sort-filter-bar/alpha-bar.test.js.map +1 -1
  348. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  349. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +426 -425
  350. package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +1 -1
  351. package/dist/test/text-overlay.test.d.ts +1 -1
  352. package/dist/test/text-overlay.test.js +38 -37
  353. package/dist/test/text-overlay.test.js.map +1 -1
  354. package/dist/test/text-snippet-block.test.d.ts +1 -1
  355. package/dist/test/text-snippet-block.test.js +57 -56
  356. package/dist/test/text-snippet-block.test.js.map +1 -1
  357. package/dist/test/tile-stats.test.d.ts +1 -1
  358. package/dist/test/tile-stats.test.js +99 -98
  359. package/dist/test/tile-stats.test.js.map +1 -1
  360. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  361. package/dist/test/tiles/grid/account-tile.test.js +76 -75
  362. package/dist/test/tiles/grid/account-tile.test.js.map +1 -1
  363. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  364. package/dist/test/tiles/grid/collection-tile.test.js +73 -72
  365. package/dist/test/tiles/grid/collection-tile.test.js.map +1 -1
  366. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  367. package/dist/test/tiles/grid/item-tile.test.js +312 -311
  368. package/dist/test/tiles/grid/item-tile.test.js.map +1 -1
  369. package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
  370. package/dist/test/tiles/grid/search-tile.test.js +51 -50
  371. package/dist/test/tiles/grid/search-tile.test.js.map +1 -1
  372. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  373. package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
  374. package/dist/test/tiles/hover/hover-pane-controller.test.js.map +1 -1
  375. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  376. package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
  377. package/dist/test/tiles/hover/tile-hover-pane.test.js.map +1 -1
  378. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  379. package/dist/test/tiles/list/tile-list-compact.test.js +143 -142
  380. package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
  381. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  382. package/dist/test/tiles/list/tile-list.test.js +297 -296
  383. package/dist/test/tiles/list/tile-list.test.js.map +1 -1
  384. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  385. package/dist/test/tiles/tile-dispatcher.test.js +100 -100
  386. package/dist/test/tiles/tile-dispatcher.test.js.map +1 -1
  387. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  388. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  389. package/dist/test/utils/array-equals.test.d.ts +1 -1
  390. package/dist/test/utils/array-equals.test.js +26 -26
  391. package/dist/test/utils/format-count.test.d.ts +1 -1
  392. package/dist/test/utils/format-count.test.js +23 -23
  393. package/dist/test/utils/format-count.test.js.map +1 -1
  394. package/dist/test/utils/format-date.test.d.ts +1 -1
  395. package/dist/test/utils/format-date.test.js +30 -30
  396. package/dist/test/utils/format-date.test.js.map +1 -1
  397. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  398. package/dist/test/utils/format-unit-size.test.js +17 -17
  399. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  400. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  401. package/dist/test/utils/local-date-from-utc.test.js.map +1 -1
  402. package/index.html +3 -0
  403. package/local.archive.org.cert +86 -86
  404. package/local.archive.org.key +27 -27
  405. package/package.json +38 -40
  406. package/renovate.json +6 -6
  407. package/src/app-root.ts +22 -21
  408. package/src/collection-browser.ts +35 -33
  409. package/src/collection-facets/facets-template.ts +6 -7
  410. package/src/collection-facets/more-facets-content.ts +13 -11
  411. package/src/collection-facets/more-facets-pagination.ts +2 -3
  412. package/src/collection-facets/smart-facets/dedupe.ts +2 -2
  413. package/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.ts +1 -1
  414. package/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.ts +6 -6
  415. package/src/collection-facets/smart-facets/smart-facet-bar.ts +8 -6
  416. package/src/collection-facets/smart-facets/smart-facet-button.ts +3 -5
  417. package/src/collection-facets/smart-facets/smart-facet-dropdown.ts +4 -4
  418. package/src/collection-facets/smart-facets/smart-facet-heuristics.ts +1 -1
  419. package/src/collection-facets/toggle-switch.ts +2 -2
  420. package/src/collection-facets.ts +19 -18
  421. package/src/data-source/collection-browser-data-source-interface.ts +1 -5
  422. package/src/data-source/collection-browser-data-source.ts +34 -37
  423. package/src/empty-placeholder.ts +16 -19
  424. package/src/expanded-date-picker.ts +1 -1
  425. package/src/language-code-handler/language-code-handler.ts +1 -1
  426. package/src/manage/manage-bar.ts +12 -14
  427. package/src/mediatype/mediatype-config.ts +0 -1
  428. package/src/models.ts +3 -3
  429. package/src/restoration-state-handler.ts +15 -14
  430. package/src/sort-filter-bar/alpha-bar.ts +17 -16
  431. package/src/sort-filter-bar/sort-filter-bar.ts +15 -14
  432. package/src/tiles/grid/account-tile.ts +1 -1
  433. package/src/tiles/grid/collection-tile.ts +1 -1
  434. package/src/tiles/grid/item-tile.ts +9 -9
  435. package/src/tiles/grid/tile-stats.ts +4 -4
  436. package/src/tiles/hover/hover-pane-controller.ts +1 -1
  437. package/src/tiles/hover/tile-hover-pane.ts +2 -4
  438. package/src/tiles/item-image.ts +1 -1
  439. package/src/tiles/list/tile-list-compact.ts +2 -2
  440. package/src/tiles/list/tile-list.ts +24 -22
  441. package/src/tiles/tile-dispatcher.ts +5 -5
  442. package/src/tiles/tile-display-value-provider.ts +4 -4
  443. package/src/utils/facet-utils.ts +6 -6
  444. package/src/utils/format-count.ts +3 -2
  445. package/src/utils/format-date.ts +1 -1
  446. package/src/utils/format-unit-size.ts +1 -1
  447. package/src/utils/log.ts +3 -1
  448. package/test/collection-browser.test.ts +122 -123
  449. package/test/collection-facets/facet-row.test.ts +28 -31
  450. package/test/collection-facets/facets-template.test.ts +9 -9
  451. package/test/collection-facets/more-facets-content.test.ts +15 -14
  452. package/test/collection-facets/more-facets-pagination.test.ts +19 -18
  453. package/test/collection-facets/toggle-switch.test.ts +18 -28
  454. package/test/collection-facets.test.ts +37 -36
  455. package/test/data-source/collection-browser-data-source.test.ts +2 -2
  456. package/test/empty-placeholder.test.ts +7 -6
  457. package/test/expanded-date-picker.test.ts +18 -17
  458. package/test/icon-overlay.test.ts +1 -0
  459. package/test/image-block.test.ts +7 -6
  460. package/test/item-image.test.ts +1 -0
  461. package/test/manage/manage-bar.test.ts +14 -13
  462. package/test/mocks/mock-search-responses.ts +1 -2
  463. package/test/mocks/mock-search-service.ts +1 -1
  464. package/test/restoration-state-handler.test.ts +12 -12
  465. package/test/review-block.test.ts +2 -1
  466. package/test/sort-filter-bar/alpha-bar-tooltip.test.ts +1 -1
  467. package/test/sort-filter-bar/alpha-bar.test.ts +5 -5
  468. package/test/sort-filter-bar/sort-filter-bar.test.ts +39 -38
  469. package/test/text-overlay.test.ts +1 -0
  470. package/test/text-snippet-block.test.ts +6 -5
  471. package/test/tile-stats.test.ts +35 -26
  472. package/test/tiles/grid/account-tile.test.ts +3 -2
  473. package/test/tiles/grid/collection-tile.test.ts +4 -3
  474. package/test/tiles/grid/item-tile.test.ts +14 -13
  475. package/test/tiles/grid/search-tile.test.ts +2 -1
  476. package/test/tiles/hover/hover-pane-controller.test.ts +15 -15
  477. package/test/tiles/hover/tile-hover-pane.test.ts +5 -5
  478. package/test/tiles/list/tile-list-compact.test.ts +2 -1
  479. package/test/tiles/list/tile-list.test.ts +11 -10
  480. package/test/tiles/tile-dispatcher.test.ts +5 -5
  481. package/test/utils/format-count.test.ts +1 -1
  482. package/test/utils/format-date.test.ts +1 -1
  483. package/test/utils/local-date-from-utc.test.ts +1 -1
  484. package/tsconfig.json +1 -0
  485. package/web-dev-server.config.mjs +30 -30
  486. package/web-test-runner.config.mjs +41 -41
  487. package/.prettierignore +0 -1
  488. package/eslint.config.mjs +0 -53
@@ -1,3 +1,4 @@
1
+ /* eslint-disable import/no-duplicates */
1
2
  import {
2
3
  css,
3
4
  html,
@@ -170,7 +171,7 @@ export class CollectionFacets extends LitElement {
170
171
  : nothing}
171
172
  ${this.collectionPartOfTemplate}
172
173
  ${this.mergedFacets.map(facetGroup =>
173
- this.getFacetGroupTemplate(facetGroup),
174
+ this.getFacetGroupTemplate(facetGroup)
174
175
  )}
175
176
  </div>
176
177
  `;
@@ -348,7 +349,7 @@ export class CollectionFacets extends LitElement {
348
349
  e: CustomEvent<{
349
350
  minDate: string;
350
351
  maxDate: string;
351
- }>,
352
+ }>
352
353
  ): void => {
353
354
  const { minDate, maxDate } = e.detail;
354
355
  const event = new CustomEvent('histogramDateRangeUpdated', {
@@ -365,10 +366,10 @@ export class CollectionFacets extends LitElement {
365
366
 
366
367
  facetDisplayOrder.forEach(facetKey => {
367
368
  const selectedFacetGroup = this.selectedFacetGroups.find(
368
- group => group.key === facetKey,
369
+ group => group.key === facetKey
369
370
  );
370
371
  const aggregateFacetGroup = this.aggregationFacetGroups.find(
371
- group => group.key === facetKey,
372
+ group => group.key === facetKey
372
373
  );
373
374
 
374
375
  // if the user selected a facet, but it's not in the aggregation, we add it as-is
@@ -387,7 +388,7 @@ export class CollectionFacets extends LitElement {
387
388
  let bucketsWithCount =
388
389
  selectedFacetGroup?.buckets.map(bucket => {
389
390
  const selectedBucket = aggregateFacetGroup.buckets.find(
390
- b => b.key === bucket.key,
391
+ b => b.key === bucket.key
391
392
  );
392
393
  return selectedBucket
393
394
  ? {
@@ -411,7 +412,7 @@ export class CollectionFacets extends LitElement {
411
412
  * - additionally want to show all items (selected/suppressed) in page facet area
412
413
  */
413
414
  let allowedFacetCount = Object.keys(
414
- (selectedFacetGroup?.buckets as []) || [],
415
+ (selectedFacetGroup?.buckets as []) || []
415
416
  )?.length;
416
417
  if (allowedFacetCount < this.allowedFacetCount) {
417
418
  allowedFacetCount = this.allowedFacetCount; // splice start index from 0th
@@ -420,7 +421,7 @@ export class CollectionFacets extends LitElement {
420
421
  // For lending facets, only include a specific subset of buckets
421
422
  if (facetKey === 'lending') {
422
423
  bucketsWithCount = bucketsWithCount.filter(
423
- bucket => lendingFacetKeysVisibility[bucket.key as LendingFacetKey],
424
+ bucket => lendingFacetKeysVisibility[bucket.key as LendingFacetKey]
424
425
  );
425
426
  }
426
427
 
@@ -430,13 +431,13 @@ export class CollectionFacets extends LitElement {
430
431
  // For mediatype facets, ensure the collection bucket is always shown if present
431
432
  if (facetKey === 'mediatype') {
432
433
  const collectionIndex = bucketsWithCount.findIndex(
433
- bucket => bucket.key === 'collection',
434
+ bucket => bucket.key === 'collection'
434
435
  );
435
436
 
436
437
  if (collectionIndex >= allowedFacetCount) {
437
438
  const [collectionBucket] = bucketsWithCount.splice(
438
439
  collectionIndex,
439
- 1,
440
+ 1
440
441
  );
441
442
 
442
443
  // If we're showing lots of selected facets, ensure we're not cutting off the last one
@@ -483,7 +484,7 @@ export class CollectionFacets extends LitElement {
483
484
  count: facetData.count,
484
485
  state: facetData.state,
485
486
  };
486
- },
487
+ }
487
488
  );
488
489
 
489
490
  return {
@@ -491,7 +492,7 @@ export class CollectionFacets extends LitElement {
491
492
  key: option,
492
493
  buckets,
493
494
  };
494
- },
495
+ }
495
496
  );
496
497
 
497
498
  return facetGroups;
@@ -511,7 +512,7 @@ export class CollectionFacets extends LitElement {
511
512
  if (!title) return;
512
513
 
513
514
  let castedBuckets = aggregation.getSortedBuckets(
514
- defaultFacetSort[option],
515
+ defaultFacetSort[option]
515
516
  ) as Bucket[];
516
517
 
517
518
  if (option === 'collection') {
@@ -555,7 +556,7 @@ export class CollectionFacets extends LitElement {
555
556
  * chevron for the mobile view
556
557
  */
557
558
  private getFacetGroupTemplate(
558
- facetGroup: FacetGroup,
559
+ facetGroup: FacetGroup
559
560
  ): TemplateResult | typeof nothing {
560
561
  if (!this.facetsLoading && facetGroup.buckets.length === 0) return nothing;
561
562
 
@@ -610,7 +611,7 @@ export class CollectionFacets extends LitElement {
610
611
  return html`
611
612
  ${map(
612
613
  Array(5).fill(null),
613
- () => html`<facet-tombstone-row></facet-tombstone-row>`,
614
+ () => html`<facet-tombstone-row></facet-tombstone-row>`
614
615
  )}
615
616
  `;
616
617
  }
@@ -621,7 +622,7 @@ export class CollectionFacets extends LitElement {
621
622
  * TODO: want to fire analytics?
622
623
  */
623
624
  private searchMoreFacetsLink(
624
- facetGroup: FacetGroup,
625
+ facetGroup: FacetGroup
625
626
  ): TemplateResult | typeof nothing {
626
627
  // Don't render More... links for FTS searches
627
628
  if (!this.moreLinksVisible) {
@@ -653,7 +654,7 @@ export class CollectionFacets extends LitElement {
653
654
  label: facetGroup.key,
654
655
  });
655
656
  this.dispatchEvent(
656
- new CustomEvent('showMoreFacets', { detail: facetGroup.key }),
657
+ new CustomEvent('showMoreFacets', { detail: facetGroup.key })
657
658
  );
658
659
  }}
659
660
  data-testid="more-link-btn"
@@ -664,7 +665,7 @@ export class CollectionFacets extends LitElement {
664
665
 
665
666
  async showMoreFacetsModal(
666
667
  facetGroup: FacetGroup,
667
- sortedBy: AggregationSortType,
668
+ sortedBy: AggregationSortType
668
669
  ): Promise<void> {
669
670
  const customModalContent = html`
670
671
  <more-facets-content
@@ -723,7 +724,7 @@ export class CollectionFacets extends LitElement {
723
724
  this.selectedFacets,
724
725
  facetGroup.key,
725
726
  e.detail.bucket,
726
- true,
727
+ true
727
728
  );
728
729
 
729
730
  const event = new CustomEvent<SelectedFacets>('facetsChanged', {
@@ -280,11 +280,7 @@ export interface CollectionBrowserDataSourceInterface
280
280
  * @param callback A callback function to apply on each tile model, as with Array.map
281
281
  */
282
282
  map(
283
- callback: (
284
- model: TileModel,
285
- index: number,
286
- array: TileModel[],
287
- ) => TileModel,
283
+ callback: (model: TileModel, index: number, array: TileModel[]) => TileModel
288
284
  ): void;
289
285
 
290
286
  /**
@@ -162,12 +162,13 @@ export class CollectionBrowserDataSource
162
162
  return this._initialSearchCompletePromise;
163
163
  }
164
164
 
165
+ // eslint-disable-next-line no-useless-constructor
165
166
  constructor(
166
167
  /** The host element to which this controller should attach listeners */
167
168
  private readonly host: ReactiveControllerHost &
168
169
  CollectionBrowserSearchInterface,
169
170
  /** Default size of result pages */
170
- private pageSize: number = 50,
171
+ private pageSize: number = 50
171
172
  ) {
172
173
  // Just setting some property values
173
174
  }
@@ -263,13 +264,13 @@ export class CollectionBrowserDataSource
263
264
  const pageStartIndex = this.pageSize * i;
264
265
  this.addPage(
265
266
  firstPageNum + i,
266
- tiles.slice(pageStartIndex, pageStartIndex + this.pageSize),
267
+ tiles.slice(pageStartIndex, pageStartIndex + this.pageSize)
267
268
  );
268
269
  }
269
270
 
270
271
  const visiblePages = this.host.currentVisiblePageNumbers;
271
272
  const needsReload = visiblePages.some(
272
- page => page >= firstPageNum && page <= firstPageNum + numPages,
273
+ page => page >= firstPageNum && page <= firstPageNum + numPages
273
274
  );
274
275
  if (needsReload) {
275
276
  this.refreshVisibleResults();
@@ -430,19 +431,15 @@ export class CollectionBrowserDataSource
430
431
  * @inheritdoc
431
432
  */
432
433
  map(
433
- callback: (
434
- model: TileModel,
435
- index: number,
436
- array: TileModel[],
437
- ) => TileModel,
434
+ callback: (model: TileModel, index: number, array: TileModel[]) => TileModel
438
435
  ): void {
439
436
  this.pages = Object.fromEntries(
440
437
  Object.entries(this.pages).map(([page, tileModels]) => [
441
438
  page,
442
439
  tileModels.map((model, index, array) =>
443
- model ? callback(model, index, array) : model,
440
+ model ? callback(model, index, array) : model
444
441
  ),
445
- ]),
442
+ ])
446
443
  );
447
444
  this.requestHostUpdate();
448
445
  this.refreshVisibleResults();
@@ -539,12 +536,12 @@ export class CollectionBrowserDataSource
539
536
  * @returns A filtered array of tile models satisfying the predicate
540
537
  */
541
538
  private getFilteredTileModels(
542
- predicate: (model: TileModel, index: number, array: TileModel[]) => unknown,
539
+ predicate: (model: TileModel, index: number, array: TileModel[]) => unknown
543
540
  ): TileModel[] {
544
541
  return Object.values(this.pages)
545
542
  .flat()
546
543
  .filter((model, index, array) =>
547
- model ? predicate(model, index, array) : false,
544
+ model ? predicate(model, index, array) : false
548
545
  );
549
546
  }
550
547
 
@@ -656,25 +653,25 @@ export class CollectionBrowserDataSource
656
653
  builder.addFilter(
657
654
  'year',
658
655
  this.host.minSelectedDate,
659
- FilterConstraint.GREATER_OR_EQUAL,
656
+ FilterConstraint.GREATER_OR_EQUAL
660
657
  );
661
658
  }
662
659
  if (this.host.maxSelectedDate) {
663
660
  builder.addFilter(
664
661
  'year',
665
662
  this.host.maxSelectedDate,
666
- FilterConstraint.LESS_OR_EQUAL,
663
+ FilterConstraint.LESS_OR_EQUAL
667
664
  );
668
665
  }
669
666
 
670
667
  // Add any selected facets
671
668
  if (this.host.selectedFacets) {
672
669
  for (const [facetName, facetValues] of Object.entries(
673
- this.host.selectedFacets,
670
+ this.host.selectedFacets
674
671
  )) {
675
672
  const { name, values } = this.prepareFacetForFetch(
676
673
  facetName,
677
- facetValues,
674
+ facetValues
678
675
  );
679
676
  for (const [value, bucket] of Object.entries(values)) {
680
677
  let constraint;
@@ -696,14 +693,14 @@ export class CollectionBrowserDataSource
696
693
  builder.addFilter(
697
694
  'firstTitle',
698
695
  this.host.selectedTitleFilter,
699
- FilterConstraint.INCLUDE,
696
+ FilterConstraint.INCLUDE
700
697
  );
701
698
  }
702
699
  if (this.host.selectedCreatorFilter) {
703
700
  builder.addFilter(
704
701
  'firstCreator',
705
702
  this.host.selectedCreatorFilter,
706
- FilterConstraint.INCLUDE,
703
+ FilterConstraint.INCLUDE
707
704
  );
708
705
  }
709
706
 
@@ -791,7 +788,7 @@ export class CollectionBrowserDataSource
791
788
  if (!this.host.selectedFacets) return undefined;
792
789
  const facetClauses = [];
793
790
  for (const [facetName, facetValues] of Object.entries(
794
- this.host.selectedFacets,
791
+ this.host.selectedFacets
795
792
  )) {
796
793
  facetClauses.push(this.buildFacetClause(facetName, facetValues));
797
794
  }
@@ -844,11 +841,11 @@ export class CollectionBrowserDataSource
844
841
  */
845
842
  private buildFacetClause(
846
843
  facetName: string,
847
- facetValues: Record<string, FacetBucket>,
844
+ facetValues: Record<string, FacetBucket>
848
845
  ): string {
849
846
  const { name: facetQueryName, values } = this.prepareFacetForFetch(
850
847
  facetName,
851
- facetValues,
848
+ facetValues
852
849
  );
853
850
  const facetEntries = Object.entries(values);
854
851
  if (facetEntries.length === 0) return '';
@@ -872,7 +869,7 @@ export class CollectionBrowserDataSource
872
869
  */
873
870
  private prepareFacetForFetch(
874
871
  facetName: string,
875
- facetValues: Record<string, FacetBucket>,
872
+ facetValues: Record<string, FacetBucket>
876
873
  ): { name: string; values: Record<string, FacetBucket> } {
877
874
  // eslint-disable-next-line prefer-const
878
875
  let [normalizedName, normalizedValues] = [facetName, facetValues];
@@ -894,7 +891,7 @@ export class CollectionBrowserDataSource
894
891
  */
895
892
  private joinFacetClauses(facetClauses: string[]): string | undefined {
896
893
  const nonEmptyFacetClauses = facetClauses.filter(
897
- clause => clause.length > 0,
894
+ clause => clause.length > 0
898
895
  );
899
896
  return nonEmptyFacetClauses.length > 0
900
897
  ? `(${nonEmptyFacetClauses.join(' AND ')})`
@@ -928,12 +925,12 @@ export class CollectionBrowserDataSource
928
925
  };
929
926
  params.uid = await this.requestUID(
930
927
  { ...params, sort: sortParams },
931
- 'aggregations',
928
+ 'aggregations'
932
929
  );
933
930
 
934
931
  const searchResponse = await this.host.searchService?.search(
935
932
  params,
936
- this.host.searchType,
933
+ this.host.searchType
937
934
  );
938
935
  const success = searchResponse?.success;
939
936
 
@@ -950,10 +947,10 @@ export class CollectionBrowserDataSource
950
947
  const detailMsg = searchResponse?.error?.details?.message;
951
948
 
952
949
  if (!errorMsg && !detailMsg) {
953
- // @ts-expect-error: Property 'Sentry' does not exist on type 'Window & typeof globalThis'
950
+ // @ts-ignore: Property 'Sentry' does not exist on type 'Window & typeof globalThis'
954
951
  window?.Sentry?.captureMessage?.(
955
952
  'Missing or malformed facet response from backend',
956
- 'error',
953
+ 'error'
957
954
  );
958
955
  }
959
956
 
@@ -1048,7 +1045,7 @@ export class CollectionBrowserDataSource
1048
1045
  // log('=== FIRING PAGE REQUEST ===', params);
1049
1046
  const searchResponse = await this.host.searchService?.search(
1050
1047
  params,
1051
- this.host.searchType,
1048
+ this.host.searchType
1052
1049
  );
1053
1050
  // log('=== RECEIVED PAGE RESPONSE IN CB ===', searchResponse);
1054
1051
  const success = searchResponse?.success;
@@ -1070,7 +1067,7 @@ export class CollectionBrowserDataSource
1070
1067
 
1071
1068
  if (!this.queryErrorMessage) {
1072
1069
  this.queryErrorMessage = 'Missing or malformed response from backend';
1073
- // @ts-expect-error: Property 'Sentry' does not exist on type 'Window & typeof globalThis'
1070
+ // @ts-ignore: Property 'Sentry' does not exist on type 'Window & typeof globalThis'
1074
1071
  window?.Sentry?.captureMessage?.(this.queryErrorMessage, 'error');
1075
1072
  }
1076
1073
 
@@ -1097,7 +1094,7 @@ export class CollectionBrowserDataSource
1097
1094
 
1098
1095
  if (this.collectionExtraInfo) {
1099
1096
  this.parentCollections = [].concat(
1100
- this.collectionExtraInfo.public_metadata?.collection ?? [],
1097
+ this.collectionExtraInfo.public_metadata?.collection ?? []
1101
1098
  );
1102
1099
  }
1103
1100
  } else if (this.host.withinProfile) {
@@ -1118,7 +1115,7 @@ export class CollectionBrowserDataSource
1118
1115
  // Update the data source for each returned page.
1119
1116
  // For loans and web archives, we must account for receiving more pages than we asked for.
1120
1117
  const isUnpagedElement = ['lending', 'web_archives'].includes(
1121
- this.host.profileElement!,
1118
+ this.host.profileElement!
1122
1119
  );
1123
1120
  if (isUnpagedElement) {
1124
1121
  numPages = Math.ceil(results.length / this.pageSize);
@@ -1131,7 +1128,7 @@ export class CollectionBrowserDataSource
1131
1128
  this.addFetchedResultsToDataSource(
1132
1129
  pageNumber + i,
1133
1130
  results.slice(pageStartIndex, pageStartIndex + this.pageSize),
1134
- !isUnpagedElement || i === numPages - 1,
1131
+ !isUnpagedElement || i === numPages - 1
1135
1132
  );
1136
1133
  }
1137
1134
  }
@@ -1157,7 +1154,7 @@ export class CollectionBrowserDataSource
1157
1154
  private addFetchedResultsToDataSource(
1158
1155
  pageNumber: number,
1159
1156
  results: SearchResult[],
1160
- needsReload = true,
1157
+ needsReload = true
1161
1158
  ): void {
1162
1159
  const tiles: TileModel[] = [];
1163
1160
  results?.forEach(result => {
@@ -1176,7 +1173,7 @@ export class CollectionBrowserDataSource
1176
1173
  * Fetches the aggregation buckets for the given prefix filter type.
1177
1174
  */
1178
1175
  private async fetchPrefixFilterBuckets(
1179
- filterType: PrefixFilterType,
1176
+ filterType: PrefixFilterType
1180
1177
  ): Promise<Bucket[]> {
1181
1178
  const trimmedQuery = this.host.baseQuery?.trim();
1182
1179
  if (!this.canPerformSearch) return [];
@@ -1196,12 +1193,12 @@ export class CollectionBrowserDataSource
1196
1193
  };
1197
1194
  params.uid = await this.requestUID(
1198
1195
  { ...params, sort: sortParams },
1199
- 'aggregations',
1196
+ 'aggregations'
1200
1197
  );
1201
1198
 
1202
1199
  const searchResponse = await this.host.searchService?.search(
1203
1200
  params,
1204
- this.host.searchType,
1201
+ this.host.searchType
1205
1202
  );
1206
1203
 
1207
1204
  return (searchResponse?.success?.response?.aggregations?.[
@@ -1229,7 +1226,7 @@ export class CollectionBrowserDataSource
1229
1226
  acc[(bucket.key as string).toUpperCase()] = bucket.doc_count;
1230
1227
  return acc;
1231
1228
  },
1232
- {},
1229
+ {}
1233
1230
  );
1234
1231
 
1235
1232
  this.requestHostUpdate();
@@ -23,38 +23,35 @@ export type PlaceholderType =
23
23
  @customElement('empty-placeholder')
24
24
  export class EmptyPlaceholder extends LitElement {
25
25
  private static readonly MESSAGE_EMPTY_QUERY = msg(
26
- 'To begin searching, enter a search term in the box above and hit "Go".',
26
+ 'To begin searching, enter a search term in the box above and hit "Go".'
27
27
  );
28
28
 
29
29
  private static readonly MESSAGE_NO_SEARCH_RESULTS = msg(
30
30
  'Your search did not match any items in the Archive. ' +
31
- 'Try different keywords or a more general search.',
31
+ 'Try different keywords or a more general search.'
32
32
  );
33
33
 
34
34
  private static readonly MESSAGE_NO_COLLECTION_RESULTS = msg(
35
35
  'Your search did not match any items in this collection. ' +
36
- 'Try different keywords or a more general search.',
36
+ 'Try different keywords or a more general search.'
37
37
  );
38
38
 
39
39
  private static readonly MESSAGE_NO_VIEWABLE_MEMBERS = msg(
40
- 'This collection contains no viewable items.',
40
+ 'This collection contains no viewable items.'
41
41
  );
42
42
 
43
- private static readonly MESSAGE_QUERY_ERROR = msg(
44
- html`The search engine encountered an error, which might be related to your
45
- search query.
46
- <a
47
- href="https://help.archive.org/help/search-building-powerful-complex-queries/"
48
- >
49
- Tips for constructing search queries.
50
- </a> `,
51
- );
52
-
53
- private static readonly MESSAGE_COLLECTION_ERROR = msg(
54
- html`The search engine encountered an error while loading this collection.
55
- If the problem persists, please let us know at
56
- <a href="mailto:info@archive.org">info@archive.org</a>.`,
57
- );
43
+ private static readonly MESSAGE_QUERY_ERROR = msg(html`The search engine
44
+ encountered an error, which might be related to your search query.
45
+ <a
46
+ href="https://help.archive.org/help/search-building-powerful-complex-queries/"
47
+ >
48
+ Tips for constructing search queries.
49
+ </a> `);
50
+
51
+ private static readonly MESSAGE_COLLECTION_ERROR = msg(html`The search engine
52
+ encountered an error while loading this collection. If the problem persists,
53
+ please let us know at
54
+ <a href="mailto:info@archive.org">info@archive.org</a>.`);
58
55
 
59
56
  private static readonly QUERY_ERROR_DETAILS_MESSAGE = msg('Error details:');
60
57
 
@@ -96,7 +96,7 @@ export class ExpandedDatePicker extends LitElement {
96
96
  e: CustomEvent<{
97
97
  minDate: string;
98
98
  maxDate: string;
99
- }>,
99
+ }>
100
100
  ): void {
101
101
  this.minSelectedDate = e.detail.minDate;
102
102
  this.maxSelectedDate = e.detail.maxDate;
@@ -50,7 +50,7 @@ export class LanguageCodeHandler implements LanguageCodeHandlerInterface {
50
50
  /** @inheritdoc */
51
51
  getCodeStringFromLanguageName(languageName: string): string {
52
52
  const languageCodes = Object.keys(codeToLanguageMap).filter(
53
- code => codeToLanguageMap[code] === languageName,
53
+ code => codeToLanguageMap[code] === languageName
54
54
  );
55
55
  const stringifiedCodes = languageCodes?.join(this.delimeter);
56
56
  return stringifiedCodes;
@@ -66,23 +66,21 @@ export class ManageBar extends LitElement {
66
66
  <div class="selection-buttons">
67
67
  ${when(
68
68
  this.showSelectAll,
69
- () =>
70
- html` <button
71
- class="ia-button link select-all-btn"
72
- @click=${this.selectAllClicked}
73
- >
74
- ${msg('Select all')}
75
- </button>`,
69
+ () => html` <button
70
+ class="ia-button link select-all-btn"
71
+ @click=${this.selectAllClicked}
72
+ >
73
+ ${msg('Select all')}
74
+ </button>`
76
75
  )}
77
76
  ${when(
78
77
  this.showUnselectAll,
79
- () =>
80
- html` <button
81
- class="ia-button link unselect-all-btn"
82
- @click=${this.unselectAllClicked}
83
- >
84
- ${msg('Unselect all')}
85
- </button>`,
78
+ () => html` <button
79
+ class="ia-button link unselect-all-btn"
80
+ @click=${this.unselectAllClicked}
81
+ >
82
+ ${msg('Unselect all')}
83
+ </button>`
86
84
  )}
87
85
  </div>
88
86
  </div>
@@ -13,7 +13,6 @@ import { videoIcon } from '../assets/img/icons/mediatype/video';
13
13
  import { webIcon } from '../assets/img/icons/mediatype/web';
14
14
  import { searchIcon } from '../assets/img/icons/mediatype/search';
15
15
 
16
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
16
  export const mediatypeConfig: { [key: string]: any } = {
18
17
  account: {
19
18
  color: '#000000',
package/src/models.ts CHANGED
@@ -125,7 +125,7 @@ export class TileModel {
125
125
  this.description = result.description?.values.join('\n');
126
126
  this.favCount = result.num_favorites?.value ?? 0;
127
127
  this.href = collapseRepeatedQuotes(
128
- result.review?.__href__ ?? result.__href__?.value,
128
+ result.review?.__href__ ?? result.__href__?.value
129
129
  );
130
130
  this.identifier = TileModel.cleanIdentifier(result.identifier);
131
131
  this.issue = result.issue?.value;
@@ -212,7 +212,7 @@ export class TileModel {
212
212
  }
213
213
 
214
214
  private static cleanIdentifier(
215
- identifier: string | undefined,
215
+ identifier: string | undefined
216
216
  ): string | undefined {
217
217
  // Some identifiers (e.g., from Whisper) represent documents rather than items, and
218
218
  // are suffixed with values that need to be stripped. Those values are separated
@@ -463,7 +463,7 @@ export const SORT_OPTIONS: Record<SortField, SortOption> = {
463
463
  export function sortOptionFromAPIString(sortName?: string | null): SortOption {
464
464
  return (
465
465
  Object.values(SORT_OPTIONS).find(opt =>
466
- opt.urlNames.some(name => sortName === name),
466
+ opt.urlNames.some(name => sortName === name)
467
467
  ) ?? SORT_OPTIONS[SortField.unrecognized]
468
468
  );
469
469
  }