@internetarchive/collection-browser 2.7.6-alpha.0 → 2.7.6-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 (330) hide show
  1. package/.editorconfig +29 -29
  2. package/.husky/pre-commit +4 -4
  3. package/LICENSE +661 -661
  4. package/README.md +83 -83
  5. package/dist/index.d.ts +13 -15
  6. package/dist/index.js +13 -15
  7. package/dist/index.js.map +1 -1
  8. package/dist/src/app-root.d.ts +99 -95
  9. package/dist/src/app-root.js +528 -494
  10. package/dist/src/app-root.js.map +1 -1
  11. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  12. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  13. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  14. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  15. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  16. package/dist/src/assets/img/icons/chevron.js +2 -2
  17. package/dist/src/assets/img/icons/contract.d.ts +2 -2
  18. package/dist/src/assets/img/icons/contract.js +2 -2
  19. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  20. package/dist/src/assets/img/icons/empty-query.js +2 -2
  21. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  22. package/dist/src/assets/img/icons/expand.js +2 -2
  23. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  24. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  25. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  26. package/dist/src/assets/img/icons/eye.js +2 -2
  27. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  28. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  29. package/dist/src/assets/img/icons/favorite-unfilled.d.ts +1 -1
  30. package/dist/src/assets/img/icons/favorite-unfilled.js +2 -2
  31. package/dist/src/assets/img/icons/filter.d.ts +2 -2
  32. package/dist/src/assets/img/icons/filter.js +2 -2
  33. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  34. package/dist/src/assets/img/icons/login-required.js +2 -2
  35. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  36. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  37. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  38. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  39. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  40. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  41. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  42. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  43. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  44. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  45. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  46. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  47. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  48. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  49. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  50. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  51. package/dist/src/assets/img/icons/mediatype/search.d.ts +1 -1
  52. package/dist/src/assets/img/icons/mediatype/search.js +2 -2
  53. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  54. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  55. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  56. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  57. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  58. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  59. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  60. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  61. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  62. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  63. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  64. package/dist/src/assets/img/icons/null-result.js +2 -2
  65. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  66. package/dist/src/assets/img/icons/restricted.js +2 -2
  67. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  68. package/dist/src/assets/img/icons/reviews.js +2 -2
  69. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  70. package/dist/src/assets/img/icons/upload.js +2 -2
  71. package/dist/src/assets/img/icons/views.d.ts +1 -1
  72. package/dist/src/assets/img/icons/views.js +2 -2
  73. package/dist/src/circular-activity-indicator.d.ts +5 -5
  74. package/dist/src/circular-activity-indicator.js +17 -17
  75. package/dist/src/collection-browser.d.ts +584 -578
  76. package/dist/src/collection-browser.js +1640 -1614
  77. package/dist/src/collection-browser.js.map +1 -1
  78. package/dist/src/collection-facets/facet-row.d.ts +30 -30
  79. package/dist/src/collection-facets/facet-row.js +118 -118
  80. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  81. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  82. package/dist/src/collection-facets/facets-template.d.ts +13 -13
  83. package/dist/src/collection-facets/facets-template.js +44 -44
  84. package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
  85. package/dist/src/collection-facets/more-facets-content.js +407 -407
  86. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  87. package/dist/src/collection-facets/more-facets-pagination.js +196 -196
  88. package/dist/src/collection-facets/smart-facets/dedupe.d.ts +10 -10
  89. package/dist/src/collection-facets/smart-facets/dedupe.js +33 -33
  90. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.d.ts +5 -5
  91. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.js +23 -23
  92. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.d.ts +5 -5
  93. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js +44 -44
  94. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.d.ts +5 -5
  95. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js +172 -172
  96. package/dist/src/collection-facets/smart-facets/models.d.ts +26 -26
  97. package/dist/src/collection-facets/smart-facets/models.js +1 -1
  98. package/dist/src/collection-facets/smart-facets/smart-facet-bar.d.ts +31 -31
  99. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +240 -240
  100. package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +11 -11
  101. package/dist/src/collection-facets/smart-facets/smart-facet-button.js +86 -86
  102. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +16 -16
  103. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +100 -100
  104. package/dist/src/collection-facets/smart-facets/smart-facet-equals.d.ts +2 -2
  105. package/dist/src/collection-facets/smart-facets/smart-facet-equals.js +12 -12
  106. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.d.ts +5 -5
  107. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js +15 -15
  108. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  109. package/dist/src/collection-facets/toggle-switch.js +94 -94
  110. package/dist/src/collection-facets.d.ts +103 -103
  111. package/dist/src/collection-facets.js +522 -522
  112. package/dist/src/data-source/collection-browser-data-source-interface.d.ts +241 -241
  113. package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
  114. package/dist/src/data-source/collection-browser-data-source.d.ts +373 -373
  115. package/dist/src/data-source/collection-browser-data-source.js +982 -982
  116. package/dist/src/data-source/collection-browser-query-state.d.ts +43 -43
  117. package/dist/src/data-source/collection-browser-query-state.js +1 -1
  118. package/dist/src/data-source/models.d.ts +28 -28
  119. package/dist/src/data-source/models.js +8 -8
  120. package/dist/src/empty-placeholder.d.ts +23 -23
  121. package/dist/src/empty-placeholder.js +79 -79
  122. package/dist/src/expanded-date-picker.d.ts +43 -43
  123. package/dist/src/expanded-date-picker.js +109 -109
  124. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  125. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  126. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  127. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  128. package/dist/src/manage/manage-bar.d.ts +71 -30
  129. package/dist/src/manage/manage-bar.js +209 -83
  130. package/dist/src/manage/manage-bar.js.map +1 -1
  131. package/dist/src/manage/remove-items-modal-content.d.ts +13 -0
  132. package/dist/src/manage/remove-items-modal-content.js +104 -0
  133. package/dist/src/manage/remove-items-modal-content.js.map +1 -0
  134. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  135. package/dist/src/mediatype/mediatype-config.js +91 -91
  136. package/dist/src/models.d.ts +219 -219
  137. package/dist/src/models.js +401 -401
  138. package/dist/src/models.js.map +1 -1
  139. package/dist/src/restoration-state-handler.d.ts +70 -70
  140. package/dist/src/restoration-state-handler.js +363 -363
  141. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  142. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  143. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  144. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  145. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  146. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  147. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  148. package/dist/src/sort-filter-bar/img/list.js +2 -2
  149. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  150. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  151. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  152. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  153. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  154. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  155. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  156. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  157. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  158. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  159. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +223 -223
  160. package/dist/src/sort-filter-bar/sort-filter-bar.js +697 -697
  161. package/dist/src/styles/ia-button.d.ts +2 -2
  162. package/dist/src/styles/ia-button.js +51 -19
  163. package/dist/src/styles/ia-button.js.map +1 -1
  164. package/dist/src/styles/item-image-styles.d.ts +8 -8
  165. package/dist/src/styles/item-image-styles.js +9 -9
  166. package/dist/src/styles/sr-only.d.ts +1 -1
  167. package/dist/src/styles/sr-only.js +2 -2
  168. package/dist/src/tiles/base-tile-component.d.ts +19 -19
  169. package/dist/src/tiles/base-tile-component.js +64 -64
  170. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  171. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  172. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  173. package/dist/src/tiles/grid/account-tile.js +72 -72
  174. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  175. package/dist/src/tiles/grid/collection-tile.js +80 -80
  176. package/dist/src/tiles/grid/item-tile.d.ts +34 -34
  177. package/dist/src/tiles/grid/item-tile.js +158 -158
  178. package/dist/src/tiles/grid/search-tile.d.ts +10 -10
  179. package/dist/src/tiles/grid/search-tile.js +51 -51
  180. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  181. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  182. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  183. package/dist/src/tiles/grid/tile-stats.js +53 -53
  184. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  185. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  186. package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
  187. package/dist/src/tiles/hover/tile-hover-pane.js +69 -69
  188. package/dist/src/tiles/image-block.d.ts +18 -18
  189. package/dist/src/tiles/image-block.js +89 -89
  190. package/dist/src/tiles/item-image.d.ts +39 -39
  191. package/dist/src/tiles/item-image.js +154 -154
  192. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  193. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  194. package/dist/src/tiles/list/tile-list-compact.d.ts +19 -19
  195. package/dist/src/tiles/list/tile-list-compact.js +122 -122
  196. package/dist/src/tiles/list/tile-list.d.ts +54 -54
  197. package/dist/src/tiles/list/tile-list.js +323 -323
  198. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  199. package/dist/src/tiles/mediatype-icon.js +47 -47
  200. package/dist/src/tiles/overlay/icon-overlay.d.ts +8 -8
  201. package/dist/src/tiles/overlay/icon-overlay.js +25 -25
  202. package/dist/src/tiles/overlay/text-overlay.d.ts +9 -9
  203. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  204. package/dist/src/tiles/review-block.d.ts +12 -12
  205. package/dist/src/tiles/review-block.js +56 -56
  206. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  207. package/dist/src/tiles/text-snippet-block.js +73 -73
  208. package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
  209. package/dist/src/tiles/tile-dispatcher.js +230 -230
  210. package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
  211. package/dist/src/tiles/tile-display-value-provider.js +94 -94
  212. package/dist/src/utils/analytics-events.d.ts +28 -28
  213. package/dist/src/utils/analytics-events.js +30 -30
  214. package/dist/src/utils/array-equals.d.ts +4 -4
  215. package/dist/src/utils/array-equals.js +10 -10
  216. package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
  217. package/dist/src/utils/collapse-repeated-quotes.js +13 -13
  218. package/dist/src/utils/facet-utils.d.ts +83 -83
  219. package/dist/src/utils/facet-utils.js +145 -145
  220. package/dist/src/utils/format-count.d.ts +7 -7
  221. package/dist/src/utils/format-count.js +76 -76
  222. package/dist/src/utils/format-date.d.ts +2 -2
  223. package/dist/src/utils/format-date.js +25 -25
  224. package/dist/src/utils/format-unit-size.d.ts +2 -2
  225. package/dist/src/utils/format-unit-size.js +33 -33
  226. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  227. package/dist/src/utils/local-date-from-utc.js +15 -15
  228. package/dist/src/utils/log.d.ts +7 -7
  229. package/dist/src/utils/log.js +15 -15
  230. package/dist/src/utils/resolve-mediatype.d.ts +8 -8
  231. package/dist/src/utils/resolve-mediatype.js +23 -23
  232. package/dist/src/utils/sha1.d.ts +2 -2
  233. package/dist/src/utils/sha1.js +8 -8
  234. package/dist/test/collection-browser.test.d.ts +1 -1
  235. package/dist/test/collection-browser.test.js +1293 -1293
  236. package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
  237. package/dist/test/collection-facets/facet-row.test.js +227 -227
  238. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  239. package/dist/test/collection-facets/facets-template.test.js +91 -91
  240. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  241. package/dist/test/collection-facets/more-facets-content.test.js +141 -141
  242. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  243. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  244. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  245. package/dist/test/collection-facets/toggle-switch.test.js +73 -73
  246. package/dist/test/collection-facets.test.d.ts +2 -2
  247. package/dist/test/collection-facets.test.js +690 -690
  248. package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
  249. package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
  250. package/dist/test/empty-placeholder.test.d.ts +1 -1
  251. package/dist/test/empty-placeholder.test.js +63 -63
  252. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  253. package/dist/test/expanded-date-picker.test.js +95 -95
  254. package/dist/test/icon-overlay.test.d.ts +1 -1
  255. package/dist/test/icon-overlay.test.js +24 -24
  256. package/dist/test/image-block.test.d.ts +1 -1
  257. package/dist/test/image-block.test.js +107 -107
  258. package/dist/test/item-image.test.d.ts +1 -1
  259. package/dist/test/item-image.test.js +85 -85
  260. package/dist/test/manage/manage-bar.test.d.ts +1 -1
  261. package/dist/test/manage/manage-bar.test.js +91 -81
  262. package/dist/test/manage/manage-bar.test.js.map +1 -1
  263. package/dist/test/mediatype-config.test.d.ts +1 -1
  264. package/dist/test/mediatype-config.test.js +16 -16
  265. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  266. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  267. package/dist/test/mocks/mock-search-responses.d.ts +25 -25
  268. package/dist/test/mocks/mock-search-responses.js +942 -942
  269. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  270. package/dist/test/mocks/mock-search-service.js +54 -54
  271. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  272. package/dist/test/restoration-state-handler.test.js +270 -270
  273. package/dist/test/review-block.test.d.ts +1 -1
  274. package/dist/test/review-block.test.js +44 -44
  275. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  276. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  277. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  278. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  279. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  280. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +426 -426
  281. package/dist/test/text-overlay.test.d.ts +1 -1
  282. package/dist/test/text-overlay.test.js +38 -38
  283. package/dist/test/text-snippet-block.test.d.ts +1 -1
  284. package/dist/test/text-snippet-block.test.js +57 -57
  285. package/dist/test/tile-stats.test.d.ts +1 -1
  286. package/dist/test/tile-stats.test.js +81 -81
  287. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  288. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  289. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  290. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  291. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  292. package/dist/test/tiles/grid/item-tile.test.js +312 -312
  293. package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
  294. package/dist/test/tiles/grid/search-tile.test.js +51 -51
  295. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  296. package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
  297. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  298. package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
  299. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  300. package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
  301. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  302. package/dist/test/tiles/list/tile-list.test.js +297 -297
  303. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  304. package/dist/test/tiles/tile-dispatcher.test.js +100 -100
  305. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  306. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  307. package/dist/test/utils/array-equals.test.d.ts +1 -1
  308. package/dist/test/utils/array-equals.test.js +26 -26
  309. package/dist/test/utils/format-count.test.d.ts +1 -1
  310. package/dist/test/utils/format-count.test.js +23 -23
  311. package/dist/test/utils/format-date.test.d.ts +1 -1
  312. package/dist/test/utils/format-date.test.js +17 -17
  313. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  314. package/dist/test/utils/format-unit-size.test.js +17 -17
  315. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  316. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  317. package/index.ts +0 -2
  318. package/local.archive.org.cert +86 -86
  319. package/local.archive.org.key +27 -27
  320. package/package.json +1 -1
  321. package/renovate.json +6 -6
  322. package/src/app-root.ts +36 -0
  323. package/src/collection-browser.ts +29 -5
  324. package/src/manage/manage-bar.ts +168 -24
  325. package/src/manage/remove-items-modal-content.ts +107 -0
  326. package/src/models.ts +2 -2
  327. package/src/styles/ia-button.ts +37 -5
  328. package/test/manage/manage-bar.test.ts +12 -0
  329. package/web-dev-server.config.mjs +30 -30
  330. package/web-test-runner.config.mjs +41 -41
@@ -1,64 +1,64 @@
1
- var TileDispatcher_1;
2
- import { __decorate } from "tslib";
3
- import { css, html, nothing } from 'lit';
4
- import { customElement, property, query } from 'lit/decorators.js';
5
- import { ifDefined } from 'lit/directives/if-defined.js';
6
- import { msg } from '@lit/localize';
7
- import './grid/collection-tile';
8
- import './grid/item-tile';
9
- import './grid/account-tile';
10
- import './grid/search-tile';
11
- import './hover/tile-hover-pane';
12
- import './list/tile-list';
13
- import './list/tile-list-compact';
14
- import './list/tile-list-compact-header';
15
- import { BaseTileComponent } from './base-tile-component';
16
- import { HoverPaneController, } from './hover/hover-pane-controller';
17
- let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileComponent {
18
- constructor() {
19
- /*
20
- * Reactive properties inherited from BaseTileComponent:
21
- * - model?: TileModel;
22
- * - currentWidth?: number;
23
- * - currentHeight?: number;
24
- * - baseNavigationUrl?: string;
25
- * - baseImageUrl?: string;
26
- * - collectionPagePath?: string;
27
- * - sortParam: SortParam | null = null;
28
- * - defaultSortParam: SortParam | null = null;
29
- * - creatorFilter?: string;
30
- * - mobileBreakpoint?: number;
31
- * - loggedIn = false;
32
- */
33
- super(...arguments);
34
- this.isManageView = false;
35
- /** Whether this tile should include a hover pane at all (for applicable tile modes) */
36
- this.enableHoverPane = false;
37
- this.manageCheckTitle = msg('Remove this item from the list');
38
- }
39
- render() {
40
- var _a, _b;
41
- const isGridMode = this.tileDisplayMode === 'grid';
42
- const hoverPaneTemplate = (_b = (_a = this.hoverPaneController) === null || _a === void 0 ? void 0 : _a.getTemplate()) !== null && _b !== void 0 ? _b : nothing;
1
+ var TileDispatcher_1;
2
+ import { __decorate } from "tslib";
3
+ import { css, html, nothing } from 'lit';
4
+ import { customElement, property, query } from 'lit/decorators.js';
5
+ import { ifDefined } from 'lit/directives/if-defined.js';
6
+ import { msg } from '@lit/localize';
7
+ import './grid/collection-tile';
8
+ import './grid/item-tile';
9
+ import './grid/account-tile';
10
+ import './grid/search-tile';
11
+ import './hover/tile-hover-pane';
12
+ import './list/tile-list';
13
+ import './list/tile-list-compact';
14
+ import './list/tile-list-compact-header';
15
+ import { BaseTileComponent } from './base-tile-component';
16
+ import { HoverPaneController, } from './hover/hover-pane-controller';
17
+ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileComponent {
18
+ constructor() {
19
+ /*
20
+ * Reactive properties inherited from BaseTileComponent:
21
+ * - model?: TileModel;
22
+ * - currentWidth?: number;
23
+ * - currentHeight?: number;
24
+ * - baseNavigationUrl?: string;
25
+ * - baseImageUrl?: string;
26
+ * - collectionPagePath?: string;
27
+ * - sortParam: SortParam | null = null;
28
+ * - defaultSortParam: SortParam | null = null;
29
+ * - creatorFilter?: string;
30
+ * - mobileBreakpoint?: number;
31
+ * - loggedIn = false;
32
+ */
33
+ super(...arguments);
34
+ this.isManageView = false;
35
+ /** Whether this tile should include a hover pane at all (for applicable tile modes) */
36
+ this.enableHoverPane = false;
37
+ this.manageCheckTitle = msg('Remove this item from the list');
38
+ }
39
+ render() {
40
+ var _a, _b;
41
+ const isGridMode = this.tileDisplayMode === 'grid';
42
+ const hoverPaneTemplate = (_b = (_a = this.hoverPaneController) === null || _a === void 0 ? void 0 : _a.getTemplate()) !== null && _b !== void 0 ? _b : nothing;
43
43
  return html `
44
44
  <div id="container" class=${isGridMode ? 'hoverable' : nothing}>
45
- ${this.tileDisplayMode === 'list-header'
46
- ? this.headerTemplate
45
+ ${this.tileDisplayMode === 'list-header'
46
+ ? this.headerTemplate
47
47
  : this.tileTemplate}
48
48
  ${this.manageCheckTemplate} ${hoverPaneTemplate}
49
49
  </div>
50
- `;
51
- }
52
- firstUpdated() {
53
- if (this.shouldPrepareHoverPane) {
54
- this.hoverPaneController = new HoverPaneController(this, {
55
- mobileBreakpoint: this.mobileBreakpoint,
56
- enableLongPress: false,
57
- });
58
- }
59
- }
60
- get headerTemplate() {
61
- const { currentWidth, sortParam, defaultSortParam, mobileBreakpoint } = this;
50
+ `;
51
+ }
52
+ firstUpdated() {
53
+ if (this.shouldPrepareHoverPane) {
54
+ this.hoverPaneController = new HoverPaneController(this, {
55
+ mobileBreakpoint: this.mobileBreakpoint,
56
+ enableLongPress: false,
57
+ });
58
+ }
59
+ }
60
+ get headerTemplate() {
61
+ const { currentWidth, sortParam, defaultSortParam, mobileBreakpoint } = this;
62
62
  return html `
63
63
  <tile-list-compact-header
64
64
  class="header"
@@ -67,46 +67,46 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
67
67
  .mobileBreakpoint=${mobileBreakpoint}
68
68
  >
69
69
  </tile-list-compact-header>
70
- `;
71
- }
72
- get tileTemplate() {
70
+ `;
71
+ }
72
+ get tileTemplate() {
73
73
  return html `
74
- ${this.tileDisplayMode === 'list-detail'
75
- ? this.tile
74
+ ${this.tileDisplayMode === 'list-detail'
75
+ ? this.tile
76
76
  : this.linkTileTemplate}
77
- `;
78
- }
79
- get linkTileTemplate() {
80
- var _a, _b, _c;
77
+ `;
78
+ }
79
+ get linkTileTemplate() {
80
+ var _a, _b, _c;
81
81
  return html `
82
82
  <a
83
83
  href=${this.linkTileHref}
84
84
  aria-label=${(_b = (_a = this.model) === null || _a === void 0 ? void 0 : _a.title) !== null && _b !== void 0 ? _b : 'Untitled item'}
85
- title=${this.shouldPrepareHoverPane
86
- ? nothing // Don't show title tooltips when we have the tile info popups
85
+ title=${this.shouldPrepareHoverPane
86
+ ? nothing // Don't show title tooltips when we have the tile info popups
87
87
  : ifDefined((_c = this.model) === null || _c === void 0 ? void 0 : _c.title)}
88
88
  @click=${this.handleLinkClicked}
89
89
  @contextmenu=${this.handleLinkContextMenu}
90
90
  >
91
91
  ${this.tile}
92
92
  </a>
93
- `;
94
- }
95
- get linkTileHref() {
96
- var _a;
97
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier) || this.baseNavigationUrl == null)
98
- return nothing;
99
- // Use the server-specified href if available.
100
- // Otherwise, construct a details page URL from the item identifier.
101
- if (this.model.href) {
102
- return `${this.baseNavigationUrl}${this.model.href}`;
103
- }
104
- return this.displayValueProvider.itemPageUrl(this.model.identifier, this.model.mediatype === 'collection');
105
- }
106
- get manageCheckTemplate() {
107
- var _a;
108
- if (!this.isManageView || this.tileDisplayMode !== 'grid')
109
- return nothing;
93
+ `;
94
+ }
95
+ get linkTileHref() {
96
+ var _a;
97
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.identifier) || this.baseNavigationUrl == null)
98
+ return nothing;
99
+ // Use the server-specified href if available.
100
+ // Otherwise, construct a details page URL from the item identifier.
101
+ if (this.model.href) {
102
+ return `${this.baseNavigationUrl}${this.model.href}`;
103
+ }
104
+ return this.displayValueProvider.itemPageUrl(this.model.identifier, this.model.mediatype === 'collection');
105
+ }
106
+ get manageCheckTemplate() {
107
+ var _a;
108
+ if (!this.isManageView || this.tileDisplayMode !== 'grid')
109
+ return nothing;
110
110
  return html `
111
111
  <div class="manage-check">
112
112
  <input
@@ -116,97 +116,97 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
116
116
  @change=${this.handleLinkClicked}
117
117
  />
118
118
  </div>
119
- `;
120
- }
121
- /**
122
- * Whether hover pane behavior should be prepared for this tile
123
- * (e.g., whether mouse listeners should be attached, etc.)
124
- */
125
- get shouldPrepareHoverPane() {
126
- var _a, _b;
127
- return (this.enableHoverPane &&
128
- !!this.tileDisplayMode &&
129
- TileDispatcher_1.HOVER_PANE_DISPLAY_MODES[this.tileDisplayMode] &&
130
- ((_a = this.model) === null || _a === void 0 ? void 0 : _a.mediatype) !== 'search' && // don't show hover panes on search tiles
131
- !((_b = this.model) === null || _b === void 0 ? void 0 : _b.captureDates) // don't show hover panes on web archive tiles
132
- );
133
- }
134
- get isHoverEnabled() {
135
- return window.matchMedia('(hover: hover)').matches;
136
- }
137
- /** @inheritdoc */
138
- getHoverPane() {
139
- return this.hoverPane;
140
- }
141
- /** @inheritdoc */
142
- getHoverPaneProps() {
143
- return this;
144
- }
145
- handleResize(entry) {
146
- this.currentWidth = entry.contentRect.width;
147
- this.currentHeight = entry.contentRect.height;
148
- }
149
- disconnectedCallback() {
150
- this.stopResizeObservation(this.resizeObserver);
151
- }
152
- stopResizeObservation(observer) {
153
- observer === null || observer === void 0 ? void 0 : observer.removeObserver({
154
- handler: this,
155
- target: this.container,
156
- });
157
- }
158
- startResizeObservation() {
159
- var _a;
160
- this.stopResizeObservation(this.resizeObserver);
161
- (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.addObserver({
162
- handler: this,
163
- target: this.container,
164
- });
165
- }
166
- updated(props) {
167
- if (props.has('resizeObserver')) {
168
- const previousObserver = props.get('resizeObserver');
169
- this.stopResizeObservation(previousObserver);
170
- this.startResizeObservation();
171
- }
172
- }
173
- /**
174
- * Handler for when the tile link is left-clicked. Emits the `resultSelected` event.
175
- * In manage view, it also checks/unchecks the tile.
176
- */
177
- handleLinkClicked(e) {
178
- if (this.isManageView) {
179
- e.preventDefault();
180
- if (this.model)
181
- this.model.checked = !this.model.checked;
182
- }
183
- this.dispatchEvent(new CustomEvent('resultSelected', { detail: this.model }));
184
- }
185
- /**
186
- * Handler for when the tile link is right-clicked.
187
- * In manage view, it opens the item in a new tab. Otherwise, does nothing.
188
- */
189
- handleLinkContextMenu(e) {
190
- if (this.isManageView && this.linkTileHref !== nothing) {
191
- e.preventDefault();
192
- window.open(this.linkTileHref, '_blank');
193
- }
194
- }
195
- tileInfoButtonPressed(e) {
196
- var _a;
197
- (_a = this.hoverPaneController) === null || _a === void 0 ? void 0 : _a.toggleHoverPane({
198
- coords: e.detail,
199
- enableTouchBackdrop: true,
200
- });
201
- }
202
- get tile() {
203
- const { model, collectionPagePath, baseNavigationUrl, currentWidth, currentHeight, sortParam, creatorFilter, mobileBreakpoint, defaultSortParam, } = this;
204
- if (!model)
205
- return nothing;
206
- switch (this.tileDisplayMode) {
207
- case 'grid':
208
- switch (model.mediatype) {
209
- case 'collection':
119
+ `;
120
+ }
121
+ /**
122
+ * Whether hover pane behavior should be prepared for this tile
123
+ * (e.g., whether mouse listeners should be attached, etc.)
124
+ */
125
+ get shouldPrepareHoverPane() {
126
+ var _a, _b;
127
+ return (this.enableHoverPane &&
128
+ !!this.tileDisplayMode &&
129
+ TileDispatcher_1.HOVER_PANE_DISPLAY_MODES[this.tileDisplayMode] &&
130
+ ((_a = this.model) === null || _a === void 0 ? void 0 : _a.mediatype) !== 'search' && // don't show hover panes on search tiles
131
+ !((_b = this.model) === null || _b === void 0 ? void 0 : _b.captureDates) // don't show hover panes on web archive tiles
132
+ );
133
+ }
134
+ get isHoverEnabled() {
135
+ return window.matchMedia('(hover: hover)').matches;
136
+ }
137
+ /** @inheritdoc */
138
+ getHoverPane() {
139
+ return this.hoverPane;
140
+ }
141
+ /** @inheritdoc */
142
+ getHoverPaneProps() {
143
+ return this;
144
+ }
145
+ handleResize(entry) {
146
+ this.currentWidth = entry.contentRect.width;
147
+ this.currentHeight = entry.contentRect.height;
148
+ }
149
+ disconnectedCallback() {
150
+ this.stopResizeObservation(this.resizeObserver);
151
+ }
152
+ stopResizeObservation(observer) {
153
+ observer === null || observer === void 0 ? void 0 : observer.removeObserver({
154
+ handler: this,
155
+ target: this.container,
156
+ });
157
+ }
158
+ startResizeObservation() {
159
+ var _a;
160
+ this.stopResizeObservation(this.resizeObserver);
161
+ (_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.addObserver({
162
+ handler: this,
163
+ target: this.container,
164
+ });
165
+ }
166
+ updated(props) {
167
+ if (props.has('resizeObserver')) {
168
+ const previousObserver = props.get('resizeObserver');
169
+ this.stopResizeObservation(previousObserver);
170
+ this.startResizeObservation();
171
+ }
172
+ }
173
+ /**
174
+ * Handler for when the tile link is left-clicked. Emits the `resultSelected` event.
175
+ * In manage view, it also checks/unchecks the tile.
176
+ */
177
+ handleLinkClicked(e) {
178
+ if (this.isManageView) {
179
+ e.preventDefault();
180
+ if (this.model)
181
+ this.model.checked = !this.model.checked;
182
+ }
183
+ this.dispatchEvent(new CustomEvent('resultSelected', { detail: this.model }));
184
+ }
185
+ /**
186
+ * Handler for when the tile link is right-clicked.
187
+ * In manage view, it opens the item in a new tab. Otherwise, does nothing.
188
+ */
189
+ handleLinkContextMenu(e) {
190
+ if (this.isManageView && this.linkTileHref !== nothing) {
191
+ e.preventDefault();
192
+ window.open(this.linkTileHref, '_blank');
193
+ }
194
+ }
195
+ tileInfoButtonPressed(e) {
196
+ var _a;
197
+ (_a = this.hoverPaneController) === null || _a === void 0 ? void 0 : _a.toggleHoverPane({
198
+ coords: e.detail,
199
+ enableTouchBackdrop: true,
200
+ });
201
+ }
202
+ get tile() {
203
+ const { model, collectionPagePath, baseNavigationUrl, currentWidth, currentHeight, sortParam, creatorFilter, mobileBreakpoint, defaultSortParam, } = this;
204
+ if (!model)
205
+ return nothing;
206
+ switch (this.tileDisplayMode) {
207
+ case 'grid':
208
+ switch (model.mediatype) {
209
+ case 'collection':
210
210
  return html `<collection-tile
211
211
  .model=${model}
212
212
  .collectionPagePath=${collectionPagePath}
@@ -218,8 +218,8 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
218
218
  ?showInfoButton=${!this.isHoverEnabled}
219
219
  @infoButtonPressed=${this.tileInfoButtonPressed}
220
220
  >
221
- </collection-tile>`;
222
- case 'account':
221
+ </collection-tile>`;
222
+ case 'account':
223
223
  return html `<account-tile
224
224
  .model=${model}
225
225
  .collectionPagePath=${collectionPagePath}
@@ -231,8 +231,8 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
231
231
  ?showInfoButton=${!this.isHoverEnabled}
232
232
  @infoButtonPressed=${this.tileInfoButtonPressed}
233
233
  >
234
- </account-tile>`;
235
- case 'search':
234
+ </account-tile>`;
235
+ case 'search':
236
236
  return html `<search-tile
237
237
  .model=${model}
238
238
  .collectionPagePath=${collectionPagePath}
@@ -244,8 +244,8 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
244
244
  ?showInfoButton=${false}
245
245
  @infoButtonPressed=${this.tileInfoButtonPressed}
246
246
  >
247
- </search-tile>`;
248
- default:
247
+ </search-tile>`;
248
+ default:
249
249
  return html `<item-tile
250
250
  .model=${model}
251
251
  .collectionPagePath=${collectionPagePath}
@@ -260,9 +260,9 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
260
260
  ?showInfoButton=${!this.isHoverEnabled}
261
261
  @infoButtonPressed=${this.tileInfoButtonPressed}
262
262
  >
263
- </item-tile>`;
264
- }
265
- case 'list-compact':
263
+ </item-tile>`;
264
+ }
265
+ case 'list-compact':
266
266
  return html `<tile-list-compact
267
267
  .model=${model}
268
268
  .collectionPagePath=${collectionPagePath}
@@ -276,8 +276,8 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
276
276
  .baseImageUrl=${this.baseImageUrl}
277
277
  .loggedIn=${this.loggedIn}
278
278
  >
279
- </tile-list-compact>`;
280
- case 'list-detail':
279
+ </tile-list-compact>`;
280
+ case 'list-detail':
281
281
  return html `<tile-list
282
282
  .model=${model}
283
283
  .collectionPagePath=${collectionPagePath}
@@ -292,12 +292,12 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
292
292
  .baseImageUrl=${this.baseImageUrl}
293
293
  .loggedIn=${this.loggedIn}
294
294
  >
295
- </tile-list>`;
296
- default:
297
- return nothing;
298
- }
299
- }
300
- static get styles() {
295
+ </tile-list>`;
296
+ default:
297
+ return nothing;
298
+ }
299
+ }
300
+ static get styles() {
301
301
  return css `
302
302
  :host {
303
303
  display: block;
@@ -382,42 +382,42 @@ let TileDispatcher = TileDispatcher_1 = class TileDispatcher extends BaseTileCom
382
382
  left: -9999px;
383
383
  z-index: 2;
384
384
  }
385
- `;
386
- }
387
- };
388
- /** Maps each display mode to whether hover panes should appear in that mode */
389
- TileDispatcher.HOVER_PANE_DISPLAY_MODES = {
390
- grid: true,
391
- 'list-compact': true,
392
- 'list-detail': false,
393
- 'list-header': false,
394
- };
395
- __decorate([
396
- property({ type: String })
397
- ], TileDispatcher.prototype, "tileDisplayMode", void 0);
398
- __decorate([
399
- property({ type: Boolean })
400
- ], TileDispatcher.prototype, "isManageView", void 0);
401
- __decorate([
402
- property({ type: Object })
403
- ], TileDispatcher.prototype, "resizeObserver", void 0);
404
- __decorate([
405
- property({ type: Object })
406
- ], TileDispatcher.prototype, "collectionTitles", void 0);
407
- __decorate([
408
- property({ type: Boolean })
409
- ], TileDispatcher.prototype, "enableHoverPane", void 0);
410
- __decorate([
411
- property({ type: String })
412
- ], TileDispatcher.prototype, "manageCheckTitle", void 0);
413
- __decorate([
414
- query('#container')
415
- ], TileDispatcher.prototype, "container", void 0);
416
- __decorate([
417
- query('tile-hover-pane')
418
- ], TileDispatcher.prototype, "hoverPane", void 0);
419
- TileDispatcher = TileDispatcher_1 = __decorate([
420
- customElement('tile-dispatcher')
421
- ], TileDispatcher);
422
- export { TileDispatcher };
385
+ `;
386
+ }
387
+ };
388
+ /** Maps each display mode to whether hover panes should appear in that mode */
389
+ TileDispatcher.HOVER_PANE_DISPLAY_MODES = {
390
+ grid: true,
391
+ 'list-compact': true,
392
+ 'list-detail': false,
393
+ 'list-header': false,
394
+ };
395
+ __decorate([
396
+ property({ type: String })
397
+ ], TileDispatcher.prototype, "tileDisplayMode", void 0);
398
+ __decorate([
399
+ property({ type: Boolean })
400
+ ], TileDispatcher.prototype, "isManageView", void 0);
401
+ __decorate([
402
+ property({ type: Object })
403
+ ], TileDispatcher.prototype, "resizeObserver", void 0);
404
+ __decorate([
405
+ property({ type: Object })
406
+ ], TileDispatcher.prototype, "collectionTitles", void 0);
407
+ __decorate([
408
+ property({ type: Boolean })
409
+ ], TileDispatcher.prototype, "enableHoverPane", void 0);
410
+ __decorate([
411
+ property({ type: String })
412
+ ], TileDispatcher.prototype, "manageCheckTitle", void 0);
413
+ __decorate([
414
+ query('#container')
415
+ ], TileDispatcher.prototype, "container", void 0);
416
+ __decorate([
417
+ query('tile-hover-pane')
418
+ ], TileDispatcher.prototype, "hoverPane", void 0);
419
+ TileDispatcher = TileDispatcher_1 = __decorate([
420
+ customElement('tile-dispatcher')
421
+ ], TileDispatcher);
422
+ export { TileDispatcher };
423
423
  //# sourceMappingURL=tile-dispatcher.js.map
@@ -1,47 +1,47 @@
1
- import { TemplateResult, nothing } from 'lit';
2
- import type { SortParam } from '@internetarchive/search-service';
3
- import type { TileModel } from '../models';
4
- /**
5
- * A class encapsulating shared logic for converting model values into display values
6
- * across different types of tiles.
7
- */
8
- export declare class TileDisplayValueProvider {
9
- private model?;
10
- private baseNavigationUrl?;
11
- private collectionPagePath?;
12
- private sortParam?;
13
- private creatorFilter?;
14
- constructor(options?: {
15
- model?: TileModel;
16
- baseNavigationUrl?: string;
17
- collectionPagePath?: string;
18
- sortParam?: SortParam;
19
- creatorFilter?: string;
20
- });
21
- /**
22
- * Examines the creator(s) for the given tile model, returning
23
- * the first creator whose name matches the provided filter
24
- * (or simply the first creator overall if no filter is provided).
25
- */
26
- get firstCreatorMatchingFilter(): string | undefined;
27
- /**
28
- * The label indicating what year an account item was created.
29
- * E.g., "Archivist since 2015"
30
- */
31
- get accountLabel(): string;
32
- /**
33
- * The readable label for the current sort if it is a type of date sort,
34
- * or the empty string otherwise.
35
- */
36
- get dateLabel(): string;
37
- /**
38
- * Produces a URL pointing at the item page for the given identifier,
39
- * using the current base URL and the correct path based on whether the
40
- * item is specified to be a collection (default false).
41
- */
42
- itemPageUrl(identifier?: string, isCollection?: boolean): string | typeof nothing;
43
- /**
44
- * Produces a template for a link to a single web capture of the given URL and date
45
- */
46
- webArchivesCaptureLink(url: string, date: Date): TemplateResult;
47
- }
1
+ import { TemplateResult, nothing } from 'lit';
2
+ import type { SortParam } from '@internetarchive/search-service';
3
+ import type { TileModel } from '../models';
4
+ /**
5
+ * A class encapsulating shared logic for converting model values into display values
6
+ * across different types of tiles.
7
+ */
8
+ export declare class TileDisplayValueProvider {
9
+ private model?;
10
+ private baseNavigationUrl?;
11
+ private collectionPagePath?;
12
+ private sortParam?;
13
+ private creatorFilter?;
14
+ constructor(options?: {
15
+ model?: TileModel;
16
+ baseNavigationUrl?: string;
17
+ collectionPagePath?: string;
18
+ sortParam?: SortParam;
19
+ creatorFilter?: string;
20
+ });
21
+ /**
22
+ * Examines the creator(s) for the given tile model, returning
23
+ * the first creator whose name matches the provided filter
24
+ * (or simply the first creator overall if no filter is provided).
25
+ */
26
+ get firstCreatorMatchingFilter(): string | undefined;
27
+ /**
28
+ * The label indicating what year an account item was created.
29
+ * E.g., "Archivist since 2015"
30
+ */
31
+ get accountLabel(): string;
32
+ /**
33
+ * The readable label for the current sort if it is a type of date sort,
34
+ * or the empty string otherwise.
35
+ */
36
+ get dateLabel(): string;
37
+ /**
38
+ * Produces a URL pointing at the item page for the given identifier,
39
+ * using the current base URL and the correct path based on whether the
40
+ * item is specified to be a collection (default false).
41
+ */
42
+ itemPageUrl(identifier?: string, isCollection?: boolean): string | typeof nothing;
43
+ /**
44
+ * Produces a template for a link to a single web capture of the given URL and date
45
+ */
46
+ webArchivesCaptureLink(url: string, date: Date): TemplateResult;
47
+ }