@internetarchive/collection-browser 2.7.14-alpha-webdev7002.3 → 2.7.14-alpha-webdev7397.0

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 (490) hide show
  1. package/.github/workflows/ci.yml +3 -3
  2. package/.github/workflows/gh-pages-main.yml +2 -2
  3. package/.github/workflows/pr-preview.yml +2 -2
  4. package/.prettierignore +1 -0
  5. package/dist/index.d.ts +13 -15
  6. package/dist/index.js +11 -15
  7. package/dist/index.js.map +1 -1
  8. package/dist/src/app-root.d.ts +107 -107
  9. package/dist/src/app-root.js +531 -531
  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/circular-activity-indicator.js.map +1 -1
  76. package/dist/src/collection-browser.d.ts +606 -606
  77. package/dist/src/collection-browser.js +1679 -1677
  78. package/dist/src/collection-browser.js.map +1 -1
  79. package/dist/src/collection-facets/facet-row.d.ts +30 -30
  80. package/dist/src/collection-facets/facet-row.js +118 -118
  81. package/dist/src/collection-facets/facet-row.js.map +1 -1
  82. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  83. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  84. package/dist/src/collection-facets/facet-tombstone-row.js.map +1 -1
  85. package/dist/src/collection-facets/facets-template.d.ts +13 -13
  86. package/dist/src/collection-facets/facets-template.js +49 -49
  87. package/dist/src/collection-facets/facets-template.js.map +1 -1
  88. package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
  89. package/dist/src/collection-facets/more-facets-content.js +406 -408
  90. package/dist/src/collection-facets/more-facets-content.js.map +1 -1
  91. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  92. package/dist/src/collection-facets/more-facets-pagination.js +197 -196
  93. package/dist/src/collection-facets/more-facets-pagination.js.map +1 -1
  94. package/dist/src/collection-facets/smart-facets/dedupe.d.ts +10 -10
  95. package/dist/src/collection-facets/smart-facets/dedupe.js +33 -33
  96. package/dist/src/collection-facets/smart-facets/dedupe.js.map +1 -1
  97. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.d.ts +5 -5
  98. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.js +23 -23
  99. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.d.ts +5 -5
  100. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js +44 -44
  101. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js.map +1 -1
  102. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.d.ts +5 -5
  103. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js +172 -172
  104. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js.map +1 -1
  105. package/dist/src/collection-facets/smart-facets/models.d.ts +26 -26
  106. package/dist/src/collection-facets/smart-facets/models.js +1 -1
  107. package/dist/src/collection-facets/smart-facets/smart-facet-bar.d.ts +31 -31
  108. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +237 -240
  109. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
  110. package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +11 -11
  111. package/dist/src/collection-facets/smart-facets/smart-facet-button.js +86 -86
  112. package/dist/src/collection-facets/smart-facets/smart-facet-button.js.map +1 -1
  113. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +16 -16
  114. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +100 -100
  115. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js.map +1 -1
  116. package/dist/src/collection-facets/smart-facets/smart-facet-equals.d.ts +2 -2
  117. package/dist/src/collection-facets/smart-facets/smart-facet-equals.js +12 -12
  118. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.d.ts +5 -5
  119. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js +15 -15
  120. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js.map +1 -1
  121. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  122. package/dist/src/collection-facets/toggle-switch.js +94 -94
  123. package/dist/src/collection-facets/toggle-switch.js.map +1 -1
  124. package/dist/src/collection-facets.d.ts +103 -103
  125. package/dist/src/collection-facets.js +521 -522
  126. package/dist/src/collection-facets.js.map +1 -1
  127. package/dist/src/data-source/collection-browser-data-source-interface.d.ts +245 -245
  128. package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
  129. package/dist/src/data-source/collection-browser-data-source-interface.js.map +1 -1
  130. package/dist/src/data-source/collection-browser-data-source.d.ts +377 -377
  131. package/dist/src/data-source/collection-browser-data-source.js +1003 -1004
  132. package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
  133. package/dist/src/data-source/collection-browser-query-state.d.ts +44 -44
  134. package/dist/src/data-source/collection-browser-query-state.js +1 -1
  135. package/dist/src/data-source/models.d.ts +28 -28
  136. package/dist/src/data-source/models.js +8 -8
  137. package/dist/src/empty-placeholder.d.ts +23 -23
  138. package/dist/src/empty-placeholder.js +87 -88
  139. package/dist/src/empty-placeholder.js.map +1 -1
  140. package/dist/src/expanded-date-picker.d.ts +43 -43
  141. package/dist/src/expanded-date-picker.js +109 -109
  142. package/dist/src/expanded-date-picker.js.map +1 -1
  143. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  144. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  145. package/dist/src/language-code-handler/language-code-handler.js.map +1 -1
  146. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  147. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  148. package/dist/src/language-code-handler/language-code-mapping.js.map +1 -1
  149. package/dist/src/manage/manage-bar.d.ts +58 -58
  150. package/dist/src/manage/manage-bar.js +175 -175
  151. package/dist/src/manage/manage-bar.js.map +1 -1
  152. package/dist/src/manage/remove-items-modal-content.d.ts +9 -9
  153. package/dist/src/manage/remove-items-modal-content.js +34 -34
  154. package/dist/src/manage/remove-items-modal-content.js.map +1 -1
  155. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  156. package/dist/src/mediatype/mediatype-config.js +92 -91
  157. package/dist/src/mediatype/mediatype-config.js.map +1 -1
  158. package/dist/src/models.d.ts +228 -228
  159. package/dist/src/models.js +401 -401
  160. package/dist/src/models.js.map +1 -1
  161. package/dist/src/restoration-state-handler.d.ts +70 -70
  162. package/dist/src/restoration-state-handler.js +362 -363
  163. package/dist/src/restoration-state-handler.js.map +1 -1
  164. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  165. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  166. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js.map +1 -1
  167. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  168. package/dist/src/sort-filter-bar/alpha-bar.js +136 -136
  169. package/dist/src/sort-filter-bar/alpha-bar.js.map +1 -1
  170. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  171. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  172. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  173. package/dist/src/sort-filter-bar/img/list.js +2 -2
  174. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  175. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  176. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  177. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  178. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  179. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  180. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  181. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  182. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  183. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  184. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +223 -223
  185. package/dist/src/sort-filter-bar/sort-filter-bar.js +696 -697
  186. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  187. package/dist/src/styles/ia-button.d.ts +2 -2
  188. package/dist/src/styles/ia-button.js +17 -17
  189. package/dist/src/styles/item-image-styles.d.ts +8 -8
  190. package/dist/src/styles/item-image-styles.js +9 -9
  191. package/dist/src/styles/sr-only.d.ts +1 -1
  192. package/dist/src/styles/sr-only.js +2 -2
  193. package/dist/src/tiles/base-tile-component.d.ts +19 -19
  194. package/dist/src/tiles/base-tile-component.js +64 -64
  195. package/dist/src/tiles/base-tile-component.js.map +1 -1
  196. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  197. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  198. package/dist/src/tiles/collection-browser-loading-tile.js.map +1 -1
  199. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  200. package/dist/src/tiles/grid/account-tile.js +72 -72
  201. package/dist/src/tiles/grid/account-tile.js.map +1 -1
  202. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  203. package/dist/src/tiles/grid/collection-tile.js +80 -80
  204. package/dist/src/tiles/grid/collection-tile.js.map +1 -1
  205. package/dist/src/tiles/grid/item-tile.d.ts +34 -34
  206. package/dist/src/tiles/grid/item-tile.js +159 -160
  207. package/dist/src/tiles/grid/item-tile.js.map +1 -1
  208. package/dist/src/tiles/grid/search-tile.d.ts +10 -10
  209. package/dist/src/tiles/grid/search-tile.js +51 -51
  210. package/dist/src/tiles/grid/search-tile.js.map +1 -1
  211. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  212. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  213. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  214. package/dist/src/tiles/grid/tile-stats.js +54 -54
  215. package/dist/src/tiles/grid/tile-stats.js.map +1 -1
  216. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  217. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  218. package/dist/src/tiles/hover/hover-pane-controller.js.map +1 -1
  219. package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
  220. package/dist/src/tiles/hover/tile-hover-pane.js +72 -70
  221. package/dist/src/tiles/hover/tile-hover-pane.js.map +1 -1
  222. package/dist/src/tiles/image-block.d.ts +18 -18
  223. package/dist/src/tiles/image-block.js +89 -89
  224. package/dist/src/tiles/image-block.js.map +1 -1
  225. package/dist/src/tiles/item-image.d.ts +39 -39
  226. package/dist/src/tiles/item-image.js +154 -154
  227. package/dist/src/tiles/item-image.js.map +1 -1
  228. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  229. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  230. package/dist/src/tiles/list/tile-list-compact-header.js.map +1 -1
  231. package/dist/src/tiles/list/tile-list-compact.d.ts +19 -19
  232. package/dist/src/tiles/list/tile-list-compact.js +122 -122
  233. package/dist/src/tiles/list/tile-list-compact.js.map +1 -1
  234. package/dist/src/tiles/list/tile-list.d.ts +54 -54
  235. package/dist/src/tiles/list/tile-list.js +324 -326
  236. package/dist/src/tiles/list/tile-list.js.map +1 -1
  237. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  238. package/dist/src/tiles/mediatype-icon.js +47 -47
  239. package/dist/src/tiles/mediatype-icon.js.map +1 -1
  240. package/dist/src/tiles/overlay/icon-overlay.d.ts +8 -8
  241. package/dist/src/tiles/overlay/icon-overlay.js +25 -25
  242. package/dist/src/tiles/overlay/icon-overlay.js.map +1 -1
  243. package/dist/src/tiles/overlay/text-overlay.d.ts +9 -9
  244. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  245. package/dist/src/tiles/overlay/text-overlay.js.map +1 -1
  246. package/dist/src/tiles/review-block.d.ts +12 -12
  247. package/dist/src/tiles/review-block.js +56 -56
  248. package/dist/src/tiles/review-block.js.map +1 -1
  249. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  250. package/dist/src/tiles/text-snippet-block.js +73 -73
  251. package/dist/src/tiles/text-snippet-block.js.map +1 -1
  252. package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
  253. package/dist/src/tiles/tile-dispatcher.js +230 -230
  254. package/dist/src/tiles/tile-dispatcher.js.map +1 -1
  255. package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
  256. package/dist/src/tiles/tile-display-value-provider.js +94 -94
  257. package/dist/src/tiles/tile-display-value-provider.js.map +1 -1
  258. package/dist/src/utils/analytics-events.d.ts +28 -28
  259. package/dist/src/utils/analytics-events.js +30 -30
  260. package/dist/src/utils/array-equals.d.ts +4 -4
  261. package/dist/src/utils/array-equals.js +10 -10
  262. package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
  263. package/dist/src/utils/collapse-repeated-quotes.js +13 -13
  264. package/dist/src/utils/facet-utils.d.ts +83 -83
  265. package/dist/src/utils/facet-utils.js +145 -145
  266. package/dist/src/utils/facet-utils.js.map +1 -1
  267. package/dist/src/utils/format-count.d.ts +7 -7
  268. package/dist/src/utils/format-count.js +75 -76
  269. package/dist/src/utils/format-count.js.map +1 -1
  270. package/dist/src/utils/format-date.d.ts +2 -2
  271. package/dist/src/utils/format-date.js +27 -27
  272. package/dist/src/utils/format-date.js.map +1 -1
  273. package/dist/src/utils/format-unit-size.d.ts +2 -2
  274. package/dist/src/utils/format-unit-size.js +33 -33
  275. package/dist/src/utils/format-unit-size.js.map +1 -1
  276. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  277. package/dist/src/utils/local-date-from-utc.js +15 -15
  278. package/dist/src/utils/log.d.ts +7 -7
  279. package/dist/src/utils/log.js +13 -15
  280. package/dist/src/utils/log.js.map +1 -1
  281. package/dist/src/utils/resolve-mediatype.d.ts +8 -8
  282. package/dist/src/utils/resolve-mediatype.js +23 -23
  283. package/dist/src/utils/resolve-mediatype.js.map +1 -1
  284. package/dist/src/utils/sha1.d.ts +2 -2
  285. package/dist/src/utils/sha1.js +8 -8
  286. package/dist/test/collection-browser.test.d.ts +1 -1
  287. package/dist/test/collection-browser.test.js +1309 -1308
  288. package/dist/test/collection-browser.test.js.map +1 -1
  289. package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
  290. package/dist/test/collection-facets/facet-row.test.js +230 -227
  291. package/dist/test/collection-facets/facet-row.test.js.map +1 -1
  292. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  293. package/dist/test/collection-facets/facets-template.test.js +91 -91
  294. package/dist/test/collection-facets/facets-template.test.js.map +1 -1
  295. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  296. package/dist/test/collection-facets/more-facets-content.test.js +140 -141
  297. package/dist/test/collection-facets/more-facets-content.test.js.map +1 -1
  298. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  299. package/dist/test/collection-facets/more-facets-pagination.test.js +116 -117
  300. package/dist/test/collection-facets/more-facets-pagination.test.js.map +1 -1
  301. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  302. package/dist/test/collection-facets/toggle-switch.test.js +82 -73
  303. package/dist/test/collection-facets/toggle-switch.test.js.map +1 -1
  304. package/dist/test/collection-facets.test.d.ts +2 -2
  305. package/dist/test/collection-facets.test.js +692 -692
  306. package/dist/test/collection-facets.test.js.map +1 -1
  307. package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
  308. package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
  309. package/dist/test/data-source/collection-browser-data-source.test.js.map +1 -1
  310. package/dist/test/empty-placeholder.test.d.ts +1 -1
  311. package/dist/test/empty-placeholder.test.js +62 -63
  312. package/dist/test/empty-placeholder.test.js.map +1 -1
  313. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  314. package/dist/test/expanded-date-picker.test.js +97 -96
  315. package/dist/test/expanded-date-picker.test.js.map +1 -1
  316. package/dist/test/icon-overlay.test.d.ts +1 -1
  317. package/dist/test/icon-overlay.test.js +23 -24
  318. package/dist/test/icon-overlay.test.js.map +1 -1
  319. package/dist/test/image-block.test.d.ts +1 -1
  320. package/dist/test/image-block.test.js +106 -107
  321. package/dist/test/image-block.test.js.map +1 -1
  322. package/dist/test/item-image.test.d.ts +1 -1
  323. package/dist/test/item-image.test.js +84 -85
  324. package/dist/test/item-image.test.js.map +1 -1
  325. package/dist/test/manage/manage-bar.test.d.ts +2 -2
  326. package/dist/test/manage/manage-bar.test.js +100 -101
  327. package/dist/test/manage/manage-bar.test.js.map +1 -1
  328. package/dist/test/manage/remove-items-modal-content.test.d.ts +1 -1
  329. package/dist/test/manage/remove-items-modal-content.test.js +44 -45
  330. package/dist/test/manage/remove-items-modal-content.test.js.map +1 -1
  331. package/dist/test/mediatype-config.test.d.ts +1 -1
  332. package/dist/test/mediatype-config.test.js +16 -16
  333. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  334. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  335. package/dist/test/mocks/mock-search-responses.d.ts +25 -25
  336. package/dist/test/mocks/mock-search-responses.js +942 -942
  337. package/dist/test/mocks/mock-search-responses.js.map +1 -1
  338. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  339. package/dist/test/mocks/mock-search-service.js +54 -54
  340. package/dist/test/mocks/mock-search-service.js.map +1 -1
  341. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  342. package/dist/test/restoration-state-handler.test.js +270 -270
  343. package/dist/test/restoration-state-handler.test.js.map +1 -1
  344. package/dist/test/review-block.test.d.ts +1 -1
  345. package/dist/test/review-block.test.js +43 -44
  346. package/dist/test/review-block.test.js.map +1 -1
  347. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  348. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  349. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js.map +1 -1
  350. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  351. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  352. package/dist/test/sort-filter-bar/alpha-bar.test.js.map +1 -1
  353. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  354. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +425 -426
  355. package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +1 -1
  356. package/dist/test/text-overlay.test.d.ts +1 -1
  357. package/dist/test/text-overlay.test.js +37 -38
  358. package/dist/test/text-overlay.test.js.map +1 -1
  359. package/dist/test/text-snippet-block.test.d.ts +1 -1
  360. package/dist/test/text-snippet-block.test.js +56 -57
  361. package/dist/test/text-snippet-block.test.js.map +1 -1
  362. package/dist/test/tile-stats.test.d.ts +1 -1
  363. package/dist/test/tile-stats.test.js +98 -99
  364. package/dist/test/tile-stats.test.js.map +1 -1
  365. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  366. package/dist/test/tiles/grid/account-tile.test.js +75 -76
  367. package/dist/test/tiles/grid/account-tile.test.js.map +1 -1
  368. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  369. package/dist/test/tiles/grid/collection-tile.test.js +72 -73
  370. package/dist/test/tiles/grid/collection-tile.test.js.map +1 -1
  371. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  372. package/dist/test/tiles/grid/item-tile.test.js +311 -312
  373. package/dist/test/tiles/grid/item-tile.test.js.map +1 -1
  374. package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
  375. package/dist/test/tiles/grid/search-tile.test.js +50 -51
  376. package/dist/test/tiles/grid/search-tile.test.js.map +1 -1
  377. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  378. package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
  379. package/dist/test/tiles/hover/hover-pane-controller.test.js.map +1 -1
  380. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  381. package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
  382. package/dist/test/tiles/hover/tile-hover-pane.test.js.map +1 -1
  383. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  384. package/dist/test/tiles/list/tile-list-compact.test.js +142 -143
  385. package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
  386. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  387. package/dist/test/tiles/list/tile-list.test.js +296 -297
  388. package/dist/test/tiles/list/tile-list.test.js.map +1 -1
  389. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  390. package/dist/test/tiles/tile-dispatcher.test.js +100 -100
  391. package/dist/test/tiles/tile-dispatcher.test.js.map +1 -1
  392. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  393. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  394. package/dist/test/utils/array-equals.test.d.ts +1 -1
  395. package/dist/test/utils/array-equals.test.js +26 -26
  396. package/dist/test/utils/format-count.test.d.ts +1 -1
  397. package/dist/test/utils/format-count.test.js +23 -23
  398. package/dist/test/utils/format-count.test.js.map +1 -1
  399. package/dist/test/utils/format-date.test.d.ts +1 -1
  400. package/dist/test/utils/format-date.test.js +30 -30
  401. package/dist/test/utils/format-date.test.js.map +1 -1
  402. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  403. package/dist/test/utils/format-unit-size.test.js +17 -17
  404. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  405. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  406. package/dist/test/utils/local-date-from-utc.test.js.map +1 -1
  407. package/eslint.config.mjs +53 -0
  408. package/index.html +0 -3
  409. package/index.ts +1 -7
  410. package/package.json +41 -39
  411. package/src/app-root.ts +21 -22
  412. package/src/collection-browser.ts +44 -40
  413. package/src/collection-facets/facets-template.ts +7 -6
  414. package/src/collection-facets/more-facets-content.ts +11 -13
  415. package/src/collection-facets/more-facets-pagination.ts +3 -2
  416. package/src/collection-facets/smart-facets/dedupe.ts +2 -2
  417. package/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.ts +1 -1
  418. package/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.ts +6 -6
  419. package/src/collection-facets/smart-facets/smart-facet-bar.ts +6 -8
  420. package/src/collection-facets/smart-facets/smart-facet-button.ts +5 -3
  421. package/src/collection-facets/smart-facets/smart-facet-dropdown.ts +4 -4
  422. package/src/collection-facets/smart-facets/smart-facet-heuristics.ts +1 -1
  423. package/src/collection-facets/toggle-switch.ts +2 -2
  424. package/src/collection-facets.ts +18 -19
  425. package/src/data-source/collection-browser-data-source-interface.ts +5 -1
  426. package/src/data-source/collection-browser-data-source.ts +37 -34
  427. package/src/empty-placeholder.ts +19 -16
  428. package/src/expanded-date-picker.ts +1 -1
  429. package/src/language-code-handler/language-code-handler.ts +1 -1
  430. package/src/manage/manage-bar.ts +23 -20
  431. package/src/manage/remove-items-modal-content.ts +2 -2
  432. package/src/mediatype/mediatype-config.ts +1 -0
  433. package/src/models.ts +3 -3
  434. package/src/restoration-state-handler.ts +14 -15
  435. package/src/sort-filter-bar/alpha-bar.ts +16 -17
  436. package/src/sort-filter-bar/sort-filter-bar.ts +14 -15
  437. package/src/tiles/grid/account-tile.ts +1 -1
  438. package/src/tiles/grid/collection-tile.ts +1 -1
  439. package/src/tiles/grid/item-tile.ts +9 -9
  440. package/src/tiles/grid/tile-stats.ts +4 -4
  441. package/src/tiles/hover/hover-pane-controller.ts +1 -1
  442. package/src/tiles/hover/tile-hover-pane.ts +4 -2
  443. package/src/tiles/item-image.ts +1 -1
  444. package/src/tiles/list/tile-list-compact.ts +2 -2
  445. package/src/tiles/list/tile-list.ts +22 -24
  446. package/src/tiles/tile-dispatcher.ts +5 -5
  447. package/src/tiles/tile-display-value-provider.ts +4 -4
  448. package/src/utils/facet-utils.ts +6 -6
  449. package/src/utils/format-count.ts +2 -3
  450. package/src/utils/format-date.ts +1 -1
  451. package/src/utils/format-unit-size.ts +1 -1
  452. package/src/utils/log.ts +1 -3
  453. package/test/collection-browser.test.ts +125 -124
  454. package/test/collection-facets/facet-row.test.ts +31 -28
  455. package/test/collection-facets/facets-template.test.ts +9 -9
  456. package/test/collection-facets/more-facets-content.test.ts +14 -15
  457. package/test/collection-facets/more-facets-pagination.test.ts +18 -19
  458. package/test/collection-facets/toggle-switch.test.ts +28 -18
  459. package/test/collection-facets.test.ts +46 -39
  460. package/test/data-source/collection-browser-data-source.test.ts +2 -2
  461. package/test/empty-placeholder.test.ts +6 -7
  462. package/test/expanded-date-picker.test.ts +25 -20
  463. package/test/icon-overlay.test.ts +0 -1
  464. package/test/image-block.test.ts +6 -7
  465. package/test/item-image.test.ts +0 -1
  466. package/test/manage/manage-bar.test.ts +19 -16
  467. package/test/manage/remove-items-modal-content.test.ts +4 -5
  468. package/test/mocks/mock-search-responses.ts +2 -1
  469. package/test/mocks/mock-search-service.ts +1 -1
  470. package/test/restoration-state-handler.test.ts +12 -12
  471. package/test/review-block.test.ts +1 -2
  472. package/test/sort-filter-bar/alpha-bar-tooltip.test.ts +1 -1
  473. package/test/sort-filter-bar/alpha-bar.test.ts +5 -5
  474. package/test/sort-filter-bar/sort-filter-bar.test.ts +38 -39
  475. package/test/text-overlay.test.ts +0 -1
  476. package/test/text-snippet-block.test.ts +5 -6
  477. package/test/tile-stats.test.ts +26 -35
  478. package/test/tiles/grid/account-tile.test.ts +2 -3
  479. package/test/tiles/grid/collection-tile.test.ts +3 -4
  480. package/test/tiles/grid/item-tile.test.ts +13 -14
  481. package/test/tiles/grid/search-tile.test.ts +1 -2
  482. package/test/tiles/hover/hover-pane-controller.test.ts +15 -15
  483. package/test/tiles/hover/tile-hover-pane.test.ts +5 -5
  484. package/test/tiles/list/tile-list-compact.test.ts +1 -2
  485. package/test/tiles/list/tile-list.test.ts +10 -11
  486. package/test/tiles/tile-dispatcher.test.ts +5 -5
  487. package/test/utils/format-count.test.ts +1 -1
  488. package/test/utils/format-date.test.ts +1 -1
  489. package/test/utils/local-date-from-utc.test.ts +1 -1
  490. package/tsconfig.json +0 -1
@@ -1,377 +1,376 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import sinon from 'sinon';
4
- import { html } from 'lit';
5
- import '../../../src/tiles/grid/item-tile';
6
- describe('Item Tile', () => {
7
- it('should render initial component', async () => {
8
- var _a, _b, _c, _d, _e;
9
- const el = await fixture(html `<item-tile></item-tile>`);
10
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
11
- const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
12
- const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
13
- const itemTitle = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#title');
14
- const imageBlock = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('image-block');
15
- expect(container).to.exist;
16
- expect(tileDetails).to.exist;
17
- expect(itemInfo).to.exist;
18
- expect(imageBlock).to.exist;
19
- expect(itemTitle).to.exist;
20
- });
21
- it('should render with created-by element', async () => {
22
- var _a, _b, _c, _d, _e;
23
- const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
24
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
25
- const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
26
- const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
27
- const createdBy = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.created-by');
28
- const truncatedCreatorText = createdBy === null || createdBy === void 0 ? void 0 : createdBy.querySelector('.truncated');
29
- const dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
30
- expect(container).to.exist;
31
- expect(tileDetails).to.exist;
32
- expect(itemInfo).to.exist;
33
- expect(createdBy).to.exist;
34
- expect(truncatedCreatorText).to.exist;
35
- expect(dateSortedBy).to.not.exist;
36
- });
37
- it('should not render with created-by but date element', async () => {
38
- var _a, _b;
39
- const el = await fixture(html `<item-tile .model=${{ datePublished: new Date() }}></item-tile>`);
40
- el.sortParam = {
41
- field: 'date',
42
- direction: 'desc',
43
- };
44
- await el.updateComplete;
45
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
46
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
47
- expect(createdBy).to.not.exist;
48
- expect(dateSortedBy).to.exist;
49
- });
50
- it('should not render with created-by but reviewdate element', async () => {
51
- var _a, _b;
52
- const el = await fixture(html `<item-tile .model=${{ dateReviewed: new Date() }}></item-tile>`);
53
- el.sortParam = {
54
- field: 'reviewdate',
55
- direction: 'desc',
56
- };
57
- await el.updateComplete;
58
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
59
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
60
- expect(createdBy).to.not.exist;
61
- expect(dateSortedBy).to.exist;
62
- });
63
- it('should not render with created-by but publicdate element', async () => {
64
- var _a, _b;
65
- const el = await fixture(html `<item-tile .model=${{ dateArchived: new Date() }}></item-tile>`);
66
- el.sortParam = {
67
- field: 'publicdate',
68
- direction: 'desc',
69
- };
70
- await el.updateComplete;
71
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
72
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
73
- expect(createdBy).to.not.exist;
74
- expect(dateSortedBy).to.exist;
75
- });
76
- it('should not render date-sorted-by element if date is not provided', async () => {
77
- var _a, _b;
78
- const el = await fixture(html `<item-tile .model=${{ dateArchived: undefined }}></item-tile>`);
79
- el.sortParam = {
80
- field: 'publicdate',
81
- direction: 'desc',
82
- };
83
- await el.updateComplete;
84
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
85
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
86
- expect(createdBy).to.not.exist;
87
- expect(dateSortedBy).to.not.exist;
88
- });
89
- it('should render without created-by when sorting by a date field', async () => {
90
- var _a, _b, _c;
91
- const el = await fixture(html `<item-tile .model=${{ dateAdded: new Date() }}></item-tile>`);
92
- el.sortParam = {
93
- field: 'addeddate',
94
- direction: 'asc',
95
- };
96
- await el.updateComplete;
97
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
98
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
99
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
100
- expect(itemInfo).to.exist;
101
- expect(createdBy).to.not.exist;
102
- expect(dateSortedBy).to.exist;
103
- });
104
- it('should render with created-by when sort field is not a date', async () => {
105
- var _a, _b, _c;
106
- const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
107
- el.sortParam = {
108
- field: 'week',
109
- direction: 'asc',
110
- };
111
- await el.updateComplete;
112
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
113
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
114
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
115
- expect(itemInfo).to.exist;
116
- expect(dateSortedBy).to.not.exist; // it should not exist because this is not a date sort
117
- expect(createdBy).to.exist;
118
- });
119
- it('should render published date when sorting by it', async () => {
120
- var _a, _b;
121
- const model = {
122
- dateAdded: new Date(2010, 0, 2),
123
- dateArchived: new Date(2011, 0, 2),
124
- datePublished: new Date(2012, 0, 2),
125
- dateReviewed: new Date(2013, 0, 2),
126
- };
1
+ import { expect, fixture } from '@open-wc/testing';
2
+ import sinon from 'sinon';
3
+ import { html } from 'lit';
4
+ import '../../../src/tiles/grid/item-tile';
5
+ describe('Item Tile', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b, _c, _d, _e;
8
+ const el = await fixture(html `<item-tile></item-tile>`);
9
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
10
+ const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
11
+ const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
12
+ const itemTitle = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#title');
13
+ const imageBlock = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('image-block');
14
+ expect(container).to.exist;
15
+ expect(tileDetails).to.exist;
16
+ expect(itemInfo).to.exist;
17
+ expect(imageBlock).to.exist;
18
+ expect(itemTitle).to.exist;
19
+ });
20
+ it('should render with created-by element', async () => {
21
+ var _a, _b, _c, _d, _e;
22
+ const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
23
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
24
+ const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
25
+ const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
26
+ const createdBy = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.created-by');
27
+ const truncatedCreatorText = createdBy === null || createdBy === void 0 ? void 0 : createdBy.querySelector('.truncated');
28
+ const dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
29
+ expect(container).to.exist;
30
+ expect(tileDetails).to.exist;
31
+ expect(itemInfo).to.exist;
32
+ expect(createdBy).to.exist;
33
+ expect(truncatedCreatorText).to.exist;
34
+ expect(dateSortedBy).to.not.exist;
35
+ });
36
+ it('should not render with created-by but date element', async () => {
37
+ var _a, _b;
38
+ const el = await fixture(html `<item-tile .model=${{ datePublished: new Date() }}></item-tile>`);
39
+ el.sortParam = {
40
+ field: 'date',
41
+ direction: 'desc',
42
+ };
43
+ await el.updateComplete;
44
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
45
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
46
+ expect(createdBy).to.not.exist;
47
+ expect(dateSortedBy).to.exist;
48
+ });
49
+ it('should not render with created-by but reviewdate element', async () => {
50
+ var _a, _b;
51
+ const el = await fixture(html `<item-tile .model=${{ dateReviewed: new Date() }}></item-tile>`);
52
+ el.sortParam = {
53
+ field: 'reviewdate',
54
+ direction: 'desc',
55
+ };
56
+ await el.updateComplete;
57
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
58
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
59
+ expect(createdBy).to.not.exist;
60
+ expect(dateSortedBy).to.exist;
61
+ });
62
+ it('should not render with created-by but publicdate element', async () => {
63
+ var _a, _b;
64
+ const el = await fixture(html `<item-tile .model=${{ dateArchived: new Date() }}></item-tile>`);
65
+ el.sortParam = {
66
+ field: 'publicdate',
67
+ direction: 'desc',
68
+ };
69
+ await el.updateComplete;
70
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
71
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
72
+ expect(createdBy).to.not.exist;
73
+ expect(dateSortedBy).to.exist;
74
+ });
75
+ it('should not render date-sorted-by element if date is not provided', async () => {
76
+ var _a, _b;
77
+ const el = await fixture(html `<item-tile .model=${{ dateArchived: undefined }}></item-tile>`);
78
+ el.sortParam = {
79
+ field: 'publicdate',
80
+ direction: 'desc',
81
+ };
82
+ await el.updateComplete;
83
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
84
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
85
+ expect(createdBy).to.not.exist;
86
+ expect(dateSortedBy).to.not.exist;
87
+ });
88
+ it('should render without created-by when sorting by a date field', async () => {
89
+ var _a, _b, _c;
90
+ const el = await fixture(html `<item-tile .model=${{ dateAdded: new Date() }}></item-tile>`);
91
+ el.sortParam = {
92
+ field: 'addeddate',
93
+ direction: 'asc',
94
+ };
95
+ await el.updateComplete;
96
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
97
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
98
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
99
+ expect(itemInfo).to.exist;
100
+ expect(createdBy).to.not.exist;
101
+ expect(dateSortedBy).to.exist;
102
+ });
103
+ it('should render with created-by when sort field is not a date', async () => {
104
+ var _a, _b, _c;
105
+ const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
106
+ el.sortParam = {
107
+ field: 'week',
108
+ direction: 'asc',
109
+ };
110
+ await el.updateComplete;
111
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
112
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
113
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
114
+ expect(itemInfo).to.exist;
115
+ expect(dateSortedBy).to.not.exist; // it should not exist because this is not a date sort
116
+ expect(createdBy).to.exist;
117
+ });
118
+ it('should render published date when sorting by it', async () => {
119
+ var _a, _b;
120
+ const model = {
121
+ dateAdded: new Date(2010, 0, 2),
122
+ dateArchived: new Date(2011, 0, 2),
123
+ datePublished: new Date(2012, 0, 2),
124
+ dateReviewed: new Date(2013, 0, 2),
125
+ };
127
126
  const el = await fixture(html `
128
127
  <item-tile
129
128
  .model=${model}
130
129
  .sortParam=${{ field: 'date', direction: 'desc' }}
131
130
  >
132
131
  </item-tile>
133
- `);
134
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
135
- expect(dateSortedBy).to.exist;
136
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('published Jan 02, 2012');
137
- });
138
- it('should render added date when sorting by it', async () => {
139
- var _a, _b;
140
- const model = {
141
- dateAdded: new Date(2010, 0, 2),
142
- dateArchived: new Date(2011, 0, 2),
143
- datePublished: new Date(2012, 0, 2),
144
- dateReviewed: new Date(2013, 0, 2),
145
- };
132
+ `);
133
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
134
+ expect(dateSortedBy).to.exist;
135
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('published Jan 02, 2012');
136
+ });
137
+ it('should render added date when sorting by it', async () => {
138
+ var _a, _b;
139
+ const model = {
140
+ dateAdded: new Date(2010, 0, 2),
141
+ dateArchived: new Date(2011, 0, 2),
142
+ datePublished: new Date(2012, 0, 2),
143
+ dateReviewed: new Date(2013, 0, 2),
144
+ };
146
145
  const el = await fixture(html `
147
146
  <item-tile
148
147
  .model=${model}
149
148
  .sortParam=${{ field: 'addeddate', direction: 'desc' }}
150
149
  >
151
150
  </item-tile>
152
- `);
153
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
154
- expect(dateSortedBy).to.exist;
155
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('added Jan 02, 2010');
156
- });
157
- it('should render archived date when sorting by it', async () => {
158
- var _a, _b;
159
- const model = {
160
- dateAdded: new Date(2010, 0, 2),
161
- dateArchived: new Date(2011, 0, 2),
162
- datePublished: new Date(2012, 0, 2),
163
- dateReviewed: new Date(2013, 0, 2),
164
- };
151
+ `);
152
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
153
+ expect(dateSortedBy).to.exist;
154
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('added Jan 02, 2010');
155
+ });
156
+ it('should render archived date when sorting by it', async () => {
157
+ var _a, _b;
158
+ const model = {
159
+ dateAdded: new Date(2010, 0, 2),
160
+ dateArchived: new Date(2011, 0, 2),
161
+ datePublished: new Date(2012, 0, 2),
162
+ dateReviewed: new Date(2013, 0, 2),
163
+ };
165
164
  const el = await fixture(html `
166
165
  <item-tile
167
166
  .model=${model}
168
167
  .sortParam=${{ field: 'publicdate', direction: 'desc' }}
169
168
  >
170
169
  </item-tile>
171
- `);
172
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
173
- expect(dateSortedBy).to.exist;
174
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('archived Jan 02, 2011');
175
- });
176
- it('should render reviewed date when sorting by it', async () => {
177
- var _a, _b;
178
- const model = {
179
- dateAdded: new Date(2010, 0, 2),
180
- dateArchived: new Date(2011, 0, 2),
181
- datePublished: new Date(2012, 0, 2),
182
- dateReviewed: new Date(2013, 0, 2),
183
- };
170
+ `);
171
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
172
+ expect(dateSortedBy).to.exist;
173
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('archived Jan 02, 2011');
174
+ });
175
+ it('should render reviewed date when sorting by it', async () => {
176
+ var _a, _b;
177
+ const model = {
178
+ dateAdded: new Date(2010, 0, 2),
179
+ dateArchived: new Date(2011, 0, 2),
180
+ datePublished: new Date(2012, 0, 2),
181
+ dateReviewed: new Date(2013, 0, 2),
182
+ };
184
183
  const el = await fixture(html `
185
184
  <item-tile
186
185
  .model=${model}
187
186
  .sortParam=${{ field: 'reviewdate', direction: 'desc' }}
188
187
  >
189
188
  </item-tile>
190
- `);
191
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
192
- expect(dateSortedBy).to.exist;
193
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('reviewed Jan 02, 2013');
194
- });
195
- it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
196
- var _a, _b;
197
- const model = {
198
- datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
199
- };
189
+ `);
190
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
191
+ expect(dateSortedBy).to.exist;
192
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('reviewed Jan 02, 2013');
193
+ });
194
+ it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
195
+ var _a, _b;
196
+ const model = {
197
+ datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
198
+ };
200
199
  const el = await fixture(html `
201
200
  <item-tile
202
201
  .model=${model}
203
202
  .sortParam=${{ field: 'date', direction: 'desc' }}
204
203
  >
205
204
  </item-tile>
206
- `);
207
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
208
- expect(dateSortedBy).to.exist;
209
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('published 2012');
210
- });
211
- it('should show full date added/archived/reviewed, even on Jan 1 at midnight UTC', async () => {
212
- var _a, _b, _c, _d, _e, _f;
213
- const model = {
214
- dateAdded: new Date(2010, 0, 1, 0, 0, 0, 0),
215
- dateArchived: new Date(2011, 0, 1, 0, 0, 0, 0),
216
- datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
217
- dateReviewed: new Date(2013, 0, 1, 0, 0, 0, 0),
218
- };
205
+ `);
206
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
207
+ expect(dateSortedBy).to.exist;
208
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('published 2012');
209
+ });
210
+ it('should show full date added/archived/reviewed, even on Jan 1 at midnight UTC', async () => {
211
+ var _a, _b, _c, _d, _e, _f;
212
+ const model = {
213
+ dateAdded: new Date(2010, 0, 1, 0, 0, 0, 0),
214
+ dateArchived: new Date(2011, 0, 1, 0, 0, 0, 0),
215
+ datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
216
+ dateReviewed: new Date(2013, 0, 1, 0, 0, 0, 0),
217
+ };
219
218
  const el = await fixture(html `
220
219
  <item-tile
221
220
  .model=${model}
222
221
  .sortParam=${{ field: 'addeddate', direction: 'desc' }}
223
222
  >
224
223
  </item-tile>
225
- `);
226
- let dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
227
- expect(dateSortedBy).to.exist;
228
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('added Jan 01, 2010');
229
- el.sortParam = { field: 'publicdate', direction: 'desc' };
230
- await el.updateComplete;
231
- dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
232
- expect(dateSortedBy).to.exist;
233
- expect((_d = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _d === void 0 ? void 0 : _d.trim()).to.equal('archived Jan 01, 2011');
234
- el.sortParam = { field: 'reviewdate', direction: 'desc' };
235
- await el.updateComplete;
236
- dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
237
- expect(dateSortedBy).to.exist;
238
- expect((_f = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _f === void 0 ? void 0 : _f.trim()).to.equal('reviewed Jan 01, 2013');
239
- });
240
- it('should show the first creator matching the letter filter, if defined', async () => {
241
- var _a, _b;
242
- const model = {
243
- creator: 'foo',
244
- creators: ['foo', 'bar', 'baz'],
245
- };
224
+ `);
225
+ let dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
226
+ expect(dateSortedBy).to.exist;
227
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('added Jan 01, 2010');
228
+ el.sortParam = { field: 'publicdate', direction: 'desc' };
229
+ await el.updateComplete;
230
+ dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
231
+ expect(dateSortedBy).to.exist;
232
+ expect((_d = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _d === void 0 ? void 0 : _d.trim()).to.equal('archived Jan 01, 2011');
233
+ el.sortParam = { field: 'reviewdate', direction: 'desc' };
234
+ await el.updateComplete;
235
+ dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
236
+ expect(dateSortedBy).to.exist;
237
+ expect((_f = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _f === void 0 ? void 0 : _f.trim()).to.equal('reviewed Jan 01, 2013');
238
+ });
239
+ it('should show the first creator matching the letter filter, if defined', async () => {
240
+ var _a, _b;
241
+ const model = {
242
+ creator: 'foo',
243
+ creators: ['foo', 'bar', 'baz'],
244
+ };
246
245
  const el = await fixture(html `
247
246
  <item-tile .model=${model} .creatorFilter=${'B'}> </item-tile>
248
- `);
249
- const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
250
- expect(creator).to.exist;
251
- expect((_b = creator === null || creator === void 0 ? void 0 : creator.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.match(/by\s+bar/);
252
- });
253
- it('should render with snippet block when it has snippets', async () => {
254
- var _a;
247
+ `);
248
+ const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
249
+ expect(creator).to.exist;
250
+ expect((_b = creator === null || creator === void 0 ? void 0 : creator.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.match(/by\s+bar/);
251
+ });
252
+ it('should render with snippet block when it has snippets', async () => {
253
+ var _a;
255
254
  const el = await fixture(html `
256
255
  <item-tile .model=${{ snippets: ['some {{{snippet}}} text'] }}>
257
256
  </item-tile>
258
- `);
259
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
260
- expect(snippetBlock).to.exist;
261
- });
262
- it('should not render snippet block when no snippets are present', async () => {
263
- var _a;
264
- const el = await fixture(html `<item-tile></item-tile>`);
265
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
266
- expect(snippetBlock).to.not.exist;
267
- });
268
- it('should render info button when showInfoButton flag is set', async () => {
269
- var _a;
257
+ `);
258
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
259
+ expect(snippetBlock).to.exist;
260
+ });
261
+ it('should not render snippet block when no snippets are present', async () => {
262
+ var _a;
263
+ const el = await fixture(html `<item-tile></item-tile>`);
264
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
265
+ expect(snippetBlock).to.not.exist;
266
+ });
267
+ it('should render info button when showInfoButton flag is set', async () => {
268
+ var _a;
270
269
  const el = await fixture(html `
271
270
  <item-tile ?showInfoButton=${true}> </item-tile>
272
- `);
273
- const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
274
- expect(infoButton).to.exist;
275
- });
276
- it('should dispatch event when info button tapped', async () => {
277
- var _a;
278
- const infoButtonSpy = sinon.spy();
271
+ `);
272
+ const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
273
+ expect(infoButton).to.exist;
274
+ });
275
+ it('should dispatch event when info button tapped', async () => {
276
+ var _a;
277
+ const infoButtonSpy = sinon.spy();
279
278
  const el = await fixture(html `
280
279
  <item-tile ?showInfoButton=${true} @infoButtonPressed=${infoButtonSpy}>
281
280
  </item-tile>
282
- `);
283
- const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
284
- infoButton.click();
285
- await el.updateComplete;
286
- expect(infoButtonSpy.callCount).to.equal(1);
287
- });
288
- it('should render with volume/issue view', async () => {
289
- var _a;
281
+ `);
282
+ const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
283
+ infoButton.click();
284
+ await el.updateComplete;
285
+ expect(infoButtonSpy.callCount).to.equal(1);
286
+ });
287
+ it('should render with volume/issue view', async () => {
288
+ var _a;
290
289
  const el = await fixture(html `
291
290
  <item-tile .model=${{ volume: '1', issue: 'Index' }}></item-tile>
292
- `);
293
- const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
294
- expect(volumeIssueBlock).to.exist;
295
- });
296
- it('should render with volume/issue view to not render', async () => {
297
- var _a;
298
- const el = await fixture(html `<item-tile></item-tile>`);
299
- const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
300
- expect(volumeIssueBlock).to.not.exist;
301
- });
302
- it('should render web capture date links if present', async () => {
303
- var _a, _b, _c, _d, _e;
304
- const captureDates = [
305
- new Date('2010-01-02T12:34:56Z'),
306
- new Date('2011-02-03T12:43:21Z'),
307
- ];
291
+ `);
292
+ const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
293
+ expect(volumeIssueBlock).to.exist;
294
+ });
295
+ it('should render with volume/issue view to not render', async () => {
296
+ var _a;
297
+ const el = await fixture(html `<item-tile></item-tile>`);
298
+ const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
299
+ expect(volumeIssueBlock).to.not.exist;
300
+ });
301
+ it('should render web capture date links if present', async () => {
302
+ var _a, _b, _c, _d, _e;
303
+ const captureDates = [
304
+ new Date('2010-01-02T12:34:56Z'),
305
+ new Date('2011-02-03T12:43:21Z'),
306
+ ];
308
307
  const el = await fixture(html `
309
308
  <item-tile
310
- .model=${{
311
- identifier: 'foo',
312
- title: 'https://example.com/',
313
- captureDates,
309
+ .model=${{
310
+ identifier: 'foo',
311
+ title: 'https://example.com/',
312
+ captureDates,
314
313
  }}
315
314
  ></item-tile>
316
- `);
317
- const captureDatesUl = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.capture-dates');
318
- expect(captureDatesUl, 'capture dates container').to.exist;
319
- expect(captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children.length).to.equal(2);
320
- const firstDateLink = (_b = captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children[0]) === null || _b === void 0 ? void 0 : _b.querySelector('a[href]');
321
- expect(firstDateLink, 'first date link').to.exist;
322
- expect(firstDateLink === null || firstDateLink === void 0 ? void 0 : firstDateLink.getAttribute('href')).to.equal('https://web.archive.org/web/20100102123456/https%3A%2F%2Fexample.com%2F');
323
- expect((_c = firstDateLink === null || firstDateLink === void 0 ? void 0 : firstDateLink.textContent) === null || _c === void 0 ? void 0 : _c.trim()).to.equal('Jan 02, 2010');
324
- const secondDateLink = (_d = captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children[1]) === null || _d === void 0 ? void 0 : _d.querySelector('a[href]');
325
- expect(secondDateLink, 'second date link').to.exist;
326
- expect(secondDateLink === null || secondDateLink === void 0 ? void 0 : secondDateLink.getAttribute('href')).to.equal('https://web.archive.org/web/20110203124321/https%3A%2F%2Fexample.com%2F');
327
- expect((_e = secondDateLink === null || secondDateLink === void 0 ? void 0 : secondDateLink.textContent) === null || _e === void 0 ? void 0 : _e.trim()).to.equal('Feb 03, 2011');
328
- });
329
- it('should not render web captures if no title is present', async () => {
330
- var _a;
331
- const captureDates = [
332
- new Date('2010-01-02T12:34:56Z'),
333
- new Date('2011-02-03T12:43:21Z'),
334
- ];
315
+ `);
316
+ const captureDatesUl = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.capture-dates');
317
+ expect(captureDatesUl, 'capture dates container').to.exist;
318
+ expect(captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children.length).to.equal(2);
319
+ const firstDateLink = (_b = captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children[0]) === null || _b === void 0 ? void 0 : _b.querySelector('a[href]');
320
+ expect(firstDateLink, 'first date link').to.exist;
321
+ expect(firstDateLink === null || firstDateLink === void 0 ? void 0 : firstDateLink.getAttribute('href')).to.equal('https://web.archive.org/web/20100102123456/https%3A%2F%2Fexample.com%2F');
322
+ expect((_c = firstDateLink === null || firstDateLink === void 0 ? void 0 : firstDateLink.textContent) === null || _c === void 0 ? void 0 : _c.trim()).to.equal('Jan 02, 2010');
323
+ const secondDateLink = (_d = captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children[1]) === null || _d === void 0 ? void 0 : _d.querySelector('a[href]');
324
+ expect(secondDateLink, 'second date link').to.exist;
325
+ expect(secondDateLink === null || secondDateLink === void 0 ? void 0 : secondDateLink.getAttribute('href')).to.equal('https://web.archive.org/web/20110203124321/https%3A%2F%2Fexample.com%2F');
326
+ expect((_e = secondDateLink === null || secondDateLink === void 0 ? void 0 : secondDateLink.textContent) === null || _e === void 0 ? void 0 : _e.trim()).to.equal('Feb 03, 2011');
327
+ });
328
+ it('should not render web captures if no title is present', async () => {
329
+ var _a;
330
+ const captureDates = [
331
+ new Date('2010-01-02T12:34:56Z'),
332
+ new Date('2011-02-03T12:43:21Z'),
333
+ ];
335
334
  const el = await fixture(html `
336
335
  <item-tile
337
- .model=${{
338
- identifier: 'foo',
339
- captureDates,
336
+ .model=${{
337
+ identifier: 'foo',
338
+ captureDates,
340
339
  }}
341
340
  ></item-tile>
342
- `);
343
- const captureDatesUl = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.capture-dates');
344
- expect(captureDatesUl).not.to.exist;
345
- });
346
- it('should render review snippet if present', async () => {
347
- var _a;
348
- const review = {
349
- title: 'Foo',
350
- body: 'foo bar baz',
351
- stars: 3,
352
- };
341
+ `);
342
+ const captureDatesUl = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.capture-dates');
343
+ expect(captureDatesUl).not.to.exist;
344
+ });
345
+ it('should render review snippet if present', async () => {
346
+ var _a;
347
+ const review = {
348
+ title: 'Foo',
349
+ body: 'foo bar baz',
350
+ stars: 3,
351
+ };
353
352
  const el = await fixture(html `
354
353
  <item-tile
355
- .model=${{
356
- identifier: 'foo',
357
- review,
354
+ .model=${{
355
+ identifier: 'foo',
356
+ review,
358
357
  }}
359
358
  ></item-tile>
360
- `);
361
- const reviewBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('review-block');
362
- expect(reviewBlock).to.exist;
363
- });
364
- it('should not render review snippet block when no review is present', async () => {
365
- var _a;
359
+ `);
360
+ const reviewBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('review-block');
361
+ expect(reviewBlock).to.exist;
362
+ });
363
+ it('should not render review snippet block when no review is present', async () => {
364
+ var _a;
366
365
  const el = await fixture(html `
367
366
  <item-tile
368
- .model=${{
369
- identifier: 'foo',
367
+ .model=${{
368
+ identifier: 'foo',
370
369
  }}
371
370
  ></item-tile>
372
- `);
373
- const reviewBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('review-block');
374
- expect(reviewBlock).not.to.exist;
375
- });
376
- });
371
+ `);
372
+ const reviewBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('review-block');
373
+ expect(reviewBlock).not.to.exist;
374
+ });
375
+ });
377
376
  //# sourceMappingURL=item-tile.test.js.map