@internetarchive/collection-browser 2.5.2 → 2.6.1

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 (308) 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 +12 -12
  6. package/dist/index.js +12 -12
  7. package/dist/src/app-root.d.ts +91 -91
  8. package/dist/src/app-root.js +487 -487
  9. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  10. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  11. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  12. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  13. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  14. package/dist/src/assets/img/icons/chevron.js +2 -2
  15. package/dist/src/assets/img/icons/contract.d.ts +2 -2
  16. package/dist/src/assets/img/icons/contract.js +2 -2
  17. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  18. package/dist/src/assets/img/icons/empty-query.js +2 -2
  19. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  20. package/dist/src/assets/img/icons/expand.js +2 -2
  21. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  22. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  23. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  24. package/dist/src/assets/img/icons/eye.js +2 -2
  25. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  26. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  27. package/dist/src/assets/img/icons/favorite-unfilled.d.ts +1 -1
  28. package/dist/src/assets/img/icons/favorite-unfilled.js +2 -2
  29. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  30. package/dist/src/assets/img/icons/login-required.js +2 -2
  31. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  32. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  33. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  34. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  35. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  36. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  37. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  38. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  39. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  40. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  41. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  42. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  43. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  44. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  45. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  46. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  47. package/dist/src/assets/img/icons/mediatype/search.d.ts +1 -1
  48. package/dist/src/assets/img/icons/mediatype/search.js +2 -2
  49. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  50. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  51. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  52. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  53. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  54. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  55. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  56. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  57. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  58. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  59. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  60. package/dist/src/assets/img/icons/null-result.js +2 -2
  61. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  62. package/dist/src/assets/img/icons/restricted.js +2 -2
  63. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  64. package/dist/src/assets/img/icons/reviews.js +2 -2
  65. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  66. package/dist/src/assets/img/icons/upload.js +2 -2
  67. package/dist/src/assets/img/icons/views.d.ts +1 -1
  68. package/dist/src/assets/img/icons/views.js +2 -2
  69. package/dist/src/circular-activity-indicator.d.ts +5 -5
  70. package/dist/src/circular-activity-indicator.js +17 -17
  71. package/dist/src/collection-browser.d.ts +564 -564
  72. package/dist/src/collection-browser.js +1579 -1569
  73. package/dist/src/collection-browser.js.map +1 -1
  74. package/dist/src/collection-facets/facet-row.d.ts +30 -30
  75. package/dist/src/collection-facets/facet-row.js +120 -117
  76. package/dist/src/collection-facets/facet-row.js.map +1 -1
  77. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  78. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  79. package/dist/src/collection-facets/facets-template.d.ts +13 -13
  80. package/dist/src/collection-facets/facets-template.js +45 -43
  81. package/dist/src/collection-facets/facets-template.js.map +1 -1
  82. package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
  83. package/dist/src/collection-facets/more-facets-content.js +407 -407
  84. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  85. package/dist/src/collection-facets/more-facets-pagination.js +196 -196
  86. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  87. package/dist/src/collection-facets/toggle-switch.js +94 -94
  88. package/dist/src/collection-facets.d.ts +103 -103
  89. package/dist/src/collection-facets.js +534 -516
  90. package/dist/src/collection-facets.js.map +1 -1
  91. package/dist/src/data-source/collection-browser-data-source-interface.d.ts +241 -241
  92. package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
  93. package/dist/src/data-source/collection-browser-data-source.d.ts +378 -378
  94. package/dist/src/data-source/collection-browser-data-source.js +984 -985
  95. package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
  96. package/dist/src/data-source/collection-browser-query-state.d.ts +43 -43
  97. package/dist/src/data-source/collection-browser-query-state.js +1 -1
  98. package/dist/src/data-source/models.d.ts +28 -28
  99. package/dist/src/data-source/models.js +8 -8
  100. package/dist/src/empty-placeholder.d.ts +23 -23
  101. package/dist/src/empty-placeholder.js +92 -79
  102. package/dist/src/empty-placeholder.js.map +1 -1
  103. package/dist/src/expanded-date-picker.d.ts +43 -43
  104. package/dist/src/expanded-date-picker.js +109 -109
  105. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  106. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  107. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  108. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  109. package/dist/src/manage/manage-bar.d.ts +30 -30
  110. package/dist/src/manage/manage-bar.js +61 -61
  111. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  112. package/dist/src/mediatype/mediatype-config.js +91 -91
  113. package/dist/src/models.d.ts +211 -209
  114. package/dist/src/models.js +381 -381
  115. package/dist/src/models.js.map +1 -1
  116. package/dist/src/restoration-state-handler.d.ts +70 -70
  117. package/dist/src/restoration-state-handler.js +357 -357
  118. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  119. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  120. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  121. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  122. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  123. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  124. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  125. package/dist/src/sort-filter-bar/img/list.js +2 -2
  126. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  127. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  128. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  129. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  130. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  131. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  132. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  133. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  134. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  135. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  136. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +223 -222
  137. package/dist/src/sort-filter-bar/sort-filter-bar.js +700 -696
  138. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  139. package/dist/src/styles/ia-button.d.ts +2 -2
  140. package/dist/src/styles/ia-button.js +16 -16
  141. package/dist/src/styles/item-image-styles.d.ts +8 -8
  142. package/dist/src/styles/item-image-styles.js +9 -9
  143. package/dist/src/styles/sr-only.d.ts +1 -1
  144. package/dist/src/styles/sr-only.js +2 -2
  145. package/dist/src/tiles/base-tile-component.d.ts +19 -19
  146. package/dist/src/tiles/base-tile-component.js +63 -63
  147. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  148. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  149. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  150. package/dist/src/tiles/grid/account-tile.js +72 -72
  151. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  152. package/dist/src/tiles/grid/collection-tile.js +80 -80
  153. package/dist/src/tiles/grid/item-tile.d.ts +30 -30
  154. package/dist/src/tiles/grid/item-tile.js +149 -149
  155. package/dist/src/tiles/grid/search-tile.d.ts +10 -10
  156. package/dist/src/tiles/grid/search-tile.js +51 -51
  157. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  158. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  159. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  160. package/dist/src/tiles/grid/tile-stats.js +53 -53
  161. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  162. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  163. package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
  164. package/dist/src/tiles/hover/tile-hover-pane.js +69 -69
  165. package/dist/src/tiles/image-block.d.ts +17 -17
  166. package/dist/src/tiles/image-block.js +73 -73
  167. package/dist/src/tiles/item-image.d.ts +39 -39
  168. package/dist/src/tiles/item-image.js +154 -154
  169. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  170. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  171. package/dist/src/tiles/list/tile-list-compact.d.ts +15 -15
  172. package/dist/src/tiles/list/tile-list-compact.js +114 -114
  173. package/dist/src/tiles/list/tile-list.d.ts +50 -50
  174. package/dist/src/tiles/list/tile-list.js +315 -315
  175. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  176. package/dist/src/tiles/mediatype-icon.js +47 -47
  177. package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
  178. package/dist/src/tiles/overlay/icon-overlay.js +40 -40
  179. package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
  180. package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
  181. package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
  182. package/dist/src/tiles/overlay/text-overlay.js +42 -42
  183. package/dist/src/tiles/review-block.d.ts +12 -12
  184. package/dist/src/tiles/review-block.js +56 -56
  185. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  186. package/dist/src/tiles/text-snippet-block.js +73 -73
  187. package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
  188. package/dist/src/tiles/tile-dispatcher.js +229 -229
  189. package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
  190. package/dist/src/tiles/tile-display-value-provider.js +94 -94
  191. package/dist/src/utils/analytics-events.d.ts +28 -28
  192. package/dist/src/utils/analytics-events.js +30 -30
  193. package/dist/src/utils/array-equals.d.ts +4 -4
  194. package/dist/src/utils/array-equals.js +10 -10
  195. package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
  196. package/dist/src/utils/collapse-repeated-quotes.js +13 -13
  197. package/dist/src/utils/facet-utils.d.ts +83 -83
  198. package/dist/src/utils/facet-utils.js +145 -145
  199. package/dist/src/utils/format-count.d.ts +7 -7
  200. package/dist/src/utils/format-count.js +76 -76
  201. package/dist/src/utils/format-date.d.ts +2 -2
  202. package/dist/src/utils/format-date.js +25 -25
  203. package/dist/src/utils/format-unit-size.d.ts +2 -2
  204. package/dist/src/utils/format-unit-size.js +33 -33
  205. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  206. package/dist/src/utils/local-date-from-utc.js +15 -15
  207. package/dist/src/utils/log.d.ts +7 -7
  208. package/dist/src/utils/log.js +15 -15
  209. package/dist/src/utils/resolve-mediatype.d.ts +8 -8
  210. package/dist/src/utils/resolve-mediatype.js +23 -23
  211. package/dist/src/utils/sha1.d.ts +2 -2
  212. package/dist/src/utils/sha1.js +8 -8
  213. package/dist/test/collection-browser.test.d.ts +1 -1
  214. package/dist/test/collection-browser.test.js +1294 -1294
  215. package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
  216. package/dist/test/collection-facets/facet-row.test.js +227 -227
  217. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  218. package/dist/test/collection-facets/facets-template.test.js +91 -91
  219. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  220. package/dist/test/collection-facets/more-facets-content.test.js +141 -141
  221. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  222. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  223. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  224. package/dist/test/collection-facets/toggle-switch.test.js +73 -73
  225. package/dist/test/collection-facets.test.d.ts +2 -2
  226. package/dist/test/collection-facets.test.js +652 -652
  227. package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
  228. package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
  229. package/dist/test/empty-placeholder.test.d.ts +1 -1
  230. package/dist/test/empty-placeholder.test.js +63 -63
  231. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  232. package/dist/test/expanded-date-picker.test.js +95 -95
  233. package/dist/test/icon-overlay.test.d.ts +1 -1
  234. package/dist/test/icon-overlay.test.js +24 -24
  235. package/dist/test/image-block.test.d.ts +1 -1
  236. package/dist/test/image-block.test.js +48 -48
  237. package/dist/test/item-image.test.d.ts +1 -1
  238. package/dist/test/item-image.test.js +85 -85
  239. package/dist/test/manage/manage-bar.test.d.ts +1 -1
  240. package/dist/test/manage/manage-bar.test.js +81 -81
  241. package/dist/test/mediatype-config.test.d.ts +1 -1
  242. package/dist/test/mediatype-config.test.js +16 -16
  243. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  244. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  245. package/dist/test/mocks/mock-search-responses.d.ts +25 -25
  246. package/dist/test/mocks/mock-search-responses.js +942 -942
  247. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  248. package/dist/test/mocks/mock-search-service.js +54 -54
  249. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  250. package/dist/test/restoration-state-handler.test.js +270 -270
  251. package/dist/test/review-block.test.d.ts +1 -1
  252. package/dist/test/review-block.test.js +44 -44
  253. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  254. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  255. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  256. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  257. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  258. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +426 -426
  259. package/dist/test/text-overlay.test.d.ts +1 -1
  260. package/dist/test/text-overlay.test.js +48 -48
  261. package/dist/test/text-snippet-block.test.d.ts +1 -1
  262. package/dist/test/text-snippet-block.test.js +57 -57
  263. package/dist/test/tile-stats.test.d.ts +1 -1
  264. package/dist/test/tile-stats.test.js +81 -81
  265. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  266. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  267. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  268. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  269. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  270. package/dist/test/tiles/grid/item-tile.test.js +312 -312
  271. package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
  272. package/dist/test/tiles/grid/search-tile.test.js +51 -51
  273. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  274. package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
  275. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  276. package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
  277. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  278. package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
  279. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  280. package/dist/test/tiles/list/tile-list.test.js +297 -297
  281. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  282. package/dist/test/tiles/tile-dispatcher.test.js +100 -100
  283. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  284. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  285. package/dist/test/utils/array-equals.test.d.ts +1 -1
  286. package/dist/test/utils/array-equals.test.js +26 -26
  287. package/dist/test/utils/format-count.test.d.ts +1 -1
  288. package/dist/test/utils/format-count.test.js +23 -23
  289. package/dist/test/utils/format-date.test.d.ts +1 -1
  290. package/dist/test/utils/format-date.test.js +17 -17
  291. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  292. package/dist/test/utils/format-unit-size.test.js +17 -17
  293. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  294. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  295. package/local.archive.org.cert +86 -86
  296. package/local.archive.org.key +27 -27
  297. package/package.json +1 -1
  298. package/renovate.json +6 -6
  299. package/src/collection-browser.ts +26 -10
  300. package/src/collection-facets/facet-row.ts +3 -0
  301. package/src/collection-facets/facets-template.ts +3 -1
  302. package/src/collection-facets.ts +20 -2
  303. package/src/data-source/collection-browser-data-source.ts +1 -5
  304. package/src/empty-placeholder.ts +18 -5
  305. package/src/models.ts +8 -1
  306. package/src/sort-filter-bar/sort-filter-bar.ts +4 -0
  307. package/web-dev-server.config.mjs +30 -30
  308. package/web-test-runner.config.mjs +41 -41
@@ -1,44 +1,44 @@
1
- import { __decorate } from "tslib";
2
- /* eslint-disable import/no-duplicates */
3
- import { css, html, nothing } from 'lit';
4
- import { customElement, property } from 'lit/decorators.js';
5
- import { ifDefined } from 'lit/directives/if-defined.js';
6
- import { msg } from '@lit/localize';
7
- import { map } from 'lit/directives/map.js';
8
- import { formatDate } from '../../utils/format-date';
9
- import { isFirstMillisecondOfUTCYear } from '../../utils/local-date-from-utc';
10
- import { BaseTileComponent } from '../base-tile-component';
11
- import { baseTileStyles } from './styles/tile-grid-shared-styles';
12
- import '../image-block';
13
- import '../review-block';
14
- import '../text-snippet-block';
15
- import '../item-image';
16
- import '../mediatype-icon';
17
- import './tile-stats';
18
- let ItemTile = class ItemTile extends BaseTileComponent {
19
- constructor() {
20
- /*
21
- * Reactive properties inherited from BaseTileComponent:
22
- * - model?: TileModel;
23
- * - currentWidth?: number;
24
- * - currentHeight?: number;
25
- * - baseNavigationUrl?: string;
26
- * - baseImageUrl?: string;
27
- * - collectionPagePath?: string;
28
- * - sortParam: SortParam | null = null;
29
- * - creatorFilter?: string;
30
- * - mobileBreakpoint?: number;
31
- * - loggedIn = false;
32
- */
33
- super(...arguments);
34
- this.showInfoButton = false;
35
- }
36
- render() {
37
- var _a, _b, _c, _d, _e, _f, _g;
38
- const itemTitle = (_a = this.model) === null || _a === void 0 ? void 0 : _a.title;
39
- const [viewCount, viewLabel] = ((_b = this.sortParam) === null || _b === void 0 ? void 0 : _b.field) === 'week'
40
- ? [(_c = this.model) === null || _c === void 0 ? void 0 : _c.weeklyViewCount, 'weekly views']
41
- : [(_d = this.model) === null || _d === void 0 ? void 0 : _d.viewCount, 'all-time views'];
1
+ import { __decorate } from "tslib";
2
+ /* eslint-disable import/no-duplicates */
3
+ import { css, html, nothing } from 'lit';
4
+ import { customElement, property } from 'lit/decorators.js';
5
+ import { ifDefined } from 'lit/directives/if-defined.js';
6
+ import { msg } from '@lit/localize';
7
+ import { map } from 'lit/directives/map.js';
8
+ import { formatDate } from '../../utils/format-date';
9
+ import { isFirstMillisecondOfUTCYear } from '../../utils/local-date-from-utc';
10
+ import { BaseTileComponent } from '../base-tile-component';
11
+ import { baseTileStyles } from './styles/tile-grid-shared-styles';
12
+ import '../image-block';
13
+ import '../review-block';
14
+ import '../text-snippet-block';
15
+ import '../item-image';
16
+ import '../mediatype-icon';
17
+ import './tile-stats';
18
+ let ItemTile = class ItemTile extends BaseTileComponent {
19
+ constructor() {
20
+ /*
21
+ * Reactive properties inherited from BaseTileComponent:
22
+ * - model?: TileModel;
23
+ * - currentWidth?: number;
24
+ * - currentHeight?: number;
25
+ * - baseNavigationUrl?: string;
26
+ * - baseImageUrl?: string;
27
+ * - collectionPagePath?: string;
28
+ * - sortParam: SortParam | null = null;
29
+ * - creatorFilter?: string;
30
+ * - mobileBreakpoint?: number;
31
+ * - loggedIn = false;
32
+ */
33
+ super(...arguments);
34
+ this.showInfoButton = false;
35
+ }
36
+ render() {
37
+ var _a, _b, _c, _d, _e, _f, _g;
38
+ const itemTitle = (_a = this.model) === null || _a === void 0 ? void 0 : _a.title;
39
+ const [viewCount, viewLabel] = ((_b = this.sortParam) === null || _b === void 0 ? void 0 : _b.field) === 'week'
40
+ ? [(_c = this.model) === null || _c === void 0 ? void 0 : _c.weeklyViewCount, 'weekly views']
41
+ : [(_d = this.model) === null || _d === void 0 ? void 0 : _d.viewCount, 'all-time views'];
42
42
  return html `
43
43
  <div class="container">
44
44
  ${this.infoButtonTemplate}
@@ -53,8 +53,8 @@ let ItemTile = class ItemTile extends BaseTileComponent {
53
53
  </div>
54
54
 
55
55
  ${this.volumeIssueTemplate}
56
- ${this.isSortedByDate
57
- ? this.sortedDateInfoTemplate
56
+ ${this.isSortedByDate
57
+ ? this.sortedDateInfoTemplate
58
58
  : this.creatorTemplate}
59
59
  ${this.webArchivesCaptureDatesTemplate} ${this.textSnippetsTemplate}
60
60
  ${this.reviewBlockTemplate}
@@ -70,24 +70,24 @@ let ItemTile = class ItemTile extends BaseTileComponent {
70
70
  </tile-stats>
71
71
  </div>
72
72
  </div>
73
- `;
74
- }
75
- /**
76
- * Templates
77
- */
78
- get creatorTemplate() {
79
- const displayedCreator = this.displayValueProvider.firstCreatorMatchingFilter;
80
- if (!displayedCreator)
81
- return nothing;
73
+ `;
74
+ }
75
+ /**
76
+ * Templates
77
+ */
78
+ get creatorTemplate() {
79
+ const displayedCreator = this.displayValueProvider.firstCreatorMatchingFilter;
80
+ if (!displayedCreator)
81
+ return nothing;
82
82
  return html `
83
83
  <div class="created-by">
84
84
  <span class="truncated" title=${displayedCreator}>
85
85
  by&nbsp;${displayedCreator}
86
86
  </span>
87
87
  </div>
88
- `;
89
- }
90
- get imageBlockTemplate() {
88
+ `;
89
+ }
90
+ get imageBlockTemplate() {
91
91
  return html `
92
92
  <image-block
93
93
  .model=${this.model}
@@ -98,58 +98,58 @@ let ItemTile = class ItemTile extends BaseTileComponent {
98
98
  .viewSize=${'grid'}
99
99
  >
100
100
  </image-block>
101
- `;
102
- }
103
- get sortedDateInfoTemplate() {
104
- var _a, _b, _c, _d, _e;
105
- let sortedValue;
106
- let format = 'long';
107
- switch ((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field) {
108
- case 'date': {
109
- const datePublished = (_b = this.model) === null || _b === void 0 ? void 0 : _b.datePublished;
110
- sortedValue = { field: 'published', value: datePublished };
111
- if (isFirstMillisecondOfUTCYear(datePublished)) {
112
- format = 'year-only';
113
- }
114
- break;
115
- }
116
- case 'reviewdate':
117
- sortedValue = { field: 'reviewed', value: (_c = this.model) === null || _c === void 0 ? void 0 : _c.dateReviewed };
118
- break;
119
- case 'addeddate':
120
- sortedValue = { field: 'added', value: (_d = this.model) === null || _d === void 0 ? void 0 : _d.dateAdded };
121
- break;
122
- case 'publicdate':
123
- sortedValue = { field: 'archived', value: (_e = this.model) === null || _e === void 0 ? void 0 : _e.dateArchived };
124
- break;
125
- default:
126
- break;
127
- }
128
- if (!(sortedValue === null || sortedValue === void 0 ? void 0 : sortedValue.value)) {
129
- return nothing;
130
- }
101
+ `;
102
+ }
103
+ get sortedDateInfoTemplate() {
104
+ var _a, _b, _c, _d, _e;
105
+ let sortedValue;
106
+ let format = 'long';
107
+ switch ((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field) {
108
+ case 'date': {
109
+ const datePublished = (_b = this.model) === null || _b === void 0 ? void 0 : _b.datePublished;
110
+ sortedValue = { field: 'published', value: datePublished };
111
+ if (isFirstMillisecondOfUTCYear(datePublished)) {
112
+ format = 'year-only';
113
+ }
114
+ break;
115
+ }
116
+ case 'reviewdate':
117
+ sortedValue = { field: 'reviewed', value: (_c = this.model) === null || _c === void 0 ? void 0 : _c.dateReviewed };
118
+ break;
119
+ case 'addeddate':
120
+ sortedValue = { field: 'added', value: (_d = this.model) === null || _d === void 0 ? void 0 : _d.dateAdded };
121
+ break;
122
+ case 'publicdate':
123
+ sortedValue = { field: 'archived', value: (_e = this.model) === null || _e === void 0 ? void 0 : _e.dateArchived };
124
+ break;
125
+ default:
126
+ break;
127
+ }
128
+ if (!(sortedValue === null || sortedValue === void 0 ? void 0 : sortedValue.value)) {
129
+ return nothing;
130
+ }
131
131
  return html `
132
132
  <div class="date-sorted-by truncated">
133
133
  <span>
134
134
  ${sortedValue === null || sortedValue === void 0 ? void 0 : sortedValue.field} ${formatDate(sortedValue === null || sortedValue === void 0 ? void 0 : sortedValue.value, format)}
135
135
  </span>
136
136
  </div>
137
- `;
138
- }
139
- get infoButtonTemplate() {
140
- // &#9432; is an information icon
141
- return this.showInfoButton
137
+ `;
138
+ }
139
+ get infoButtonTemplate() {
140
+ // &#9432; is an information icon
141
+ return this.showInfoButton
142
142
  ? html `<button class="info-button" @click=${this.infoButtonPressed}>
143
143
  &#9432;
144
144
  <span class="sr-only">${msg('More info')}</span>
145
- </button>`
146
- : nothing;
147
- }
148
- get reviewBlockTemplate() {
149
- var _a;
150
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.review))
151
- return nothing;
152
- const { title, body, stars } = this.model.review;
145
+ </button>`
146
+ : nothing;
147
+ }
148
+ get reviewBlockTemplate() {
149
+ var _a;
150
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.review))
151
+ return nothing;
152
+ const { title, body, stars } = this.model.review;
153
153
  return html `
154
154
  <review-block
155
155
  viewsize="grid"
@@ -158,61 +158,61 @@ let ItemTile = class ItemTile extends BaseTileComponent {
158
158
  .starRating=${stars}
159
159
  >
160
160
  </review-block>
161
- `;
162
- }
163
- get textSnippetsTemplate() {
164
- var _a;
165
- if (!this.hasSnippets)
166
- return nothing;
161
+ `;
162
+ }
163
+ get textSnippetsTemplate() {
164
+ var _a;
165
+ if (!this.hasSnippets)
166
+ return nothing;
167
167
  return html `
168
168
  <text-snippet-block viewsize="grid" .snippets=${(_a = this.model) === null || _a === void 0 ? void 0 : _a.snippets}>
169
169
  </text-snippet-block>
170
- `;
171
- }
172
- get volumeIssueTemplate() {
173
- var _a, _b, _c, _d;
174
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.volume) || !((_b = this.model) === null || _b === void 0 ? void 0 : _b.issue))
175
- return nothing;
170
+ `;
171
+ }
172
+ get volumeIssueTemplate() {
173
+ var _a, _b, _c, _d;
174
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.volume) || !((_b = this.model) === null || _b === void 0 ? void 0 : _b.issue))
175
+ return nothing;
176
176
  return html `
177
177
  <div class="volume-issue">
178
178
  <span class="truncated" title="volume|issue">
179
179
  Volume&nbsp;${(_c = this.model) === null || _c === void 0 ? void 0 : _c.volume}, Issue&nbsp;${(_d = this.model) === null || _d === void 0 ? void 0 : _d.issue}
180
180
  </span>
181
181
  </div>
182
- `;
183
- }
184
- get webArchivesCaptureDatesTemplate() {
185
- var _a;
186
- if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.captureDates) || !this.model.title)
187
- return nothing;
182
+ `;
183
+ }
184
+ get webArchivesCaptureDatesTemplate() {
185
+ var _a;
186
+ if (!((_a = this.model) === null || _a === void 0 ? void 0 : _a.captureDates) || !this.model.title)
187
+ return nothing;
188
188
  return html `
189
189
  <ul class="capture-dates">
190
190
  ${map(this.model.captureDates, date => html `<li>
191
191
  ${this.displayValueProvider.webArchivesCaptureLink(this.model.title, date)}
192
192
  </li>`)}
193
193
  </ul>
194
- `;
195
- }
196
- get isSortedByDate() {
197
- var _a;
198
- return ['date', 'reviewdate', 'addeddate', 'publicdate'].includes((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field);
199
- }
200
- get hasSnippets() {
201
- var _a, _b;
202
- return !!((_b = (_a = this.model) === null || _a === void 0 ? void 0 : _a.snippets) === null || _b === void 0 ? void 0 : _b.length);
203
- }
204
- infoButtonPressed(e) {
205
- e.preventDefault();
206
- const event = new CustomEvent('infoButtonPressed', { detail: { x: e.clientX, y: e.clientY } });
207
- this.dispatchEvent(event);
208
- }
209
- /**
210
- * CSS
211
- */
212
- static get styles() {
213
- const tileBorderColor = css `var(--tileBorderColor, #dddddd)`;
214
- return [
215
- baseTileStyles,
194
+ `;
195
+ }
196
+ get isSortedByDate() {
197
+ var _a;
198
+ return ['date', 'reviewdate', 'addeddate', 'publicdate'].includes((_a = this.sortParam) === null || _a === void 0 ? void 0 : _a.field);
199
+ }
200
+ get hasSnippets() {
201
+ var _a, _b;
202
+ return !!((_b = (_a = this.model) === null || _a === void 0 ? void 0 : _a.snippets) === null || _b === void 0 ? void 0 : _b.length);
203
+ }
204
+ infoButtonPressed(e) {
205
+ e.preventDefault();
206
+ const event = new CustomEvent('infoButtonPressed', { detail: { x: e.clientX, y: e.clientY } });
207
+ this.dispatchEvent(event);
208
+ }
209
+ /**
210
+ * CSS
211
+ */
212
+ static get styles() {
213
+ const tileBorderColor = css `var(--tileBorderColor, #dddddd)`;
214
+ return [
215
+ baseTileStyles,
216
216
  css `
217
217
  a:link {
218
218
  text-decoration: none;
@@ -251,15 +251,15 @@ let ItemTile = class ItemTile extends BaseTileComponent {
251
251
  -webkit-touch-callout: default;
252
252
  }
253
253
  }
254
- `,
255
- ];
256
- }
257
- };
258
- __decorate([
259
- property({ type: Boolean })
260
- ], ItemTile.prototype, "showInfoButton", void 0);
261
- ItemTile = __decorate([
262
- customElement('item-tile')
263
- ], ItemTile);
264
- export { ItemTile };
254
+ `,
255
+ ];
256
+ }
257
+ };
258
+ __decorate([
259
+ property({ type: Boolean })
260
+ ], ItemTile.prototype, "showInfoButton", void 0);
261
+ ItemTile = __decorate([
262
+ customElement('item-tile')
263
+ ], ItemTile);
264
+ export { ItemTile };
265
265
  //# sourceMappingURL=item-tile.js.map
@@ -1,10 +1,10 @@
1
- import { CSSResultGroup, TemplateResult } from 'lit';
2
- import { BaseTileComponent } from '../base-tile-component';
3
- import '../image-block';
4
- export declare class SearchTile extends BaseTileComponent {
5
- showInfoButton: boolean;
6
- render(): TemplateResult<1>;
7
- private get getImageBlockTemplate();
8
- private get getTitleTemplate();
9
- static get styles(): CSSResultGroup;
10
- }
1
+ import { CSSResultGroup, TemplateResult } from 'lit';
2
+ import { BaseTileComponent } from '../base-tile-component';
3
+ import '../image-block';
4
+ export declare class SearchTile extends BaseTileComponent {
5
+ showInfoButton: boolean;
6
+ render(): TemplateResult<1>;
7
+ private get getImageBlockTemplate();
8
+ private get getTitleTemplate();
9
+ static get styles(): CSSResultGroup;
10
+ }
@@ -1,28 +1,28 @@
1
- import { __decorate } from "tslib";
2
- import { css, html } from 'lit';
3
- import { customElement, property } from 'lit/decorators.js';
4
- import { baseTileStyles } from './styles/tile-grid-shared-styles';
5
- import { BaseTileComponent } from '../base-tile-component';
6
- import '../image-block';
7
- let SearchTile = class SearchTile extends BaseTileComponent {
8
- constructor() {
9
- /*
10
- * Reactive properties inherited from BaseTileComponent:
11
- * - model?: TileModel;
12
- * - currentWidth?: number;
13
- * - currentHeight?: number;
14
- * - baseNavigationUrl?: string;
15
- * - baseImageUrl?: string;
16
- * - collectionPagePath?: string;
17
- * - sortParam: SortParam | null = null;
18
- * - creatorFilter?: string;
19
- * - mobileBreakpoint?: number;
20
- * - loggedIn = false;
21
- */
22
- super(...arguments);
23
- this.showInfoButton = false;
24
- }
25
- render() {
1
+ import { __decorate } from "tslib";
2
+ import { css, html } from 'lit';
3
+ import { customElement, property } from 'lit/decorators.js';
4
+ import { baseTileStyles } from './styles/tile-grid-shared-styles';
5
+ import { BaseTileComponent } from '../base-tile-component';
6
+ import '../image-block';
7
+ let SearchTile = class SearchTile extends BaseTileComponent {
8
+ constructor() {
9
+ /*
10
+ * Reactive properties inherited from BaseTileComponent:
11
+ * - model?: TileModel;
12
+ * - currentWidth?: number;
13
+ * - currentHeight?: number;
14
+ * - baseNavigationUrl?: string;
15
+ * - baseImageUrl?: string;
16
+ * - collectionPagePath?: string;
17
+ * - sortParam: SortParam | null = null;
18
+ * - creatorFilter?: string;
19
+ * - mobileBreakpoint?: number;
20
+ * - loggedIn = false;
21
+ */
22
+ super(...arguments);
23
+ this.showInfoButton = false;
24
+ }
25
+ render() {
26
26
  return html `
27
27
  <div class="container">
28
28
  <div class="tile-details">
@@ -31,9 +31,9 @@ let SearchTile = class SearchTile extends BaseTileComponent {
31
31
  </div>
32
32
  </div>
33
33
  </div>
34
- `;
35
- }
36
- get getImageBlockTemplate() {
34
+ `;
35
+ }
36
+ get getImageBlockTemplate() {
37
37
  return html `
38
38
  <image-block
39
39
  .model=${this.model}
@@ -41,20 +41,20 @@ let SearchTile = class SearchTile extends BaseTileComponent {
41
41
  .viewSize=${'grid'}
42
42
  >
43
43
  </image-block>
44
- `;
45
- }
46
- get getTitleTemplate() {
47
- var _a;
44
+ `;
45
+ }
46
+ get getTitleTemplate() {
47
+ var _a;
48
48
  return html `<div id="title">
49
49
  <h4 class="truncated">${(_a = this.model) === null || _a === void 0 ? void 0 : _a.title}</h4>
50
- </div>`;
51
- }
52
- static get styles() {
53
- const tileBorderColor = css `var(--tileBorderColor, #555555)`;
54
- const tileBackgroundColor = css `var(--tileBackgroundColor, #666666)`;
55
- const whiteColor = css `#fff`;
56
- return [
57
- baseTileStyles,
50
+ </div>`;
51
+ }
52
+ static get styles() {
53
+ const tileBorderColor = css `var(--tileBorderColor, #555555)`;
54
+ const tileBackgroundColor = css `var(--tileBackgroundColor, #666666)`;
55
+ const whiteColor = css `#fff`;
56
+ return [
57
+ baseTileStyles,
58
58
  css `
59
59
  .container {
60
60
  background-color: ${tileBackgroundColor};
@@ -78,15 +78,15 @@ let SearchTile = class SearchTile extends BaseTileComponent {
78
78
  image-block:hover > #title {
79
79
  text-decoration: underline;
80
80
  }
81
- `,
82
- ];
83
- }
84
- };
85
- __decorate([
86
- property({ type: Boolean })
87
- ], SearchTile.prototype, "showInfoButton", void 0);
88
- SearchTile = __decorate([
89
- customElement('search-tile')
90
- ], SearchTile);
91
- export { SearchTile };
81
+ `,
82
+ ];
83
+ }
84
+ };
85
+ __decorate([
86
+ property({ type: Boolean })
87
+ ], SearchTile.prototype, "showInfoButton", void 0);
88
+ SearchTile = __decorate([
89
+ customElement('search-tile')
90
+ ], SearchTile);
91
+ export { SearchTile };
92
92
  //# sourceMappingURL=search-tile.js.map
@@ -1 +1 @@
1
- export declare const baseTileStyles: import("lit").CSSResult;
1
+ export declare const baseTileStyles: import("lit").CSSResult;
@@ -1,10 +1,10 @@
1
- import { css } from 'lit';
2
- import { srOnlyStyle } from '../../../styles/sr-only';
3
- /**
4
- * Base tile styles
5
- */
6
- const tileBackgroundColor = css `var(--tileBackgroundColor, #ffffff)`;
7
- const tileCornerRadius = css `var(--tileCornerRadius, 4px)`;
1
+ import { css } from 'lit';
2
+ import { srOnlyStyle } from '../../../styles/sr-only';
3
+ /**
4
+ * Base tile styles
5
+ */
6
+ const tileBackgroundColor = css `var(--tileBackgroundColor, #ffffff)`;
7
+ const tileCornerRadius = css `var(--tileCornerRadius, 4px)`;
8
8
  export const baseTileStyles = css `
9
9
  /* Include .sr-only styles for all tiles */
10
10
  ${srOnlyStyle}
@@ -123,5 +123,5 @@ export const baseTileStyles = css `
123
123
  .hidden {
124
124
  display: none;
125
125
  }
126
- `;
126
+ `;
127
127
  //# sourceMappingURL=tile-grid-shared-styles.js.map
@@ -1,11 +1,11 @@
1
- import { CSSResultGroup, LitElement } from 'lit';
2
- export declare class TileStats extends LitElement {
3
- mediatype?: string;
4
- itemCount?: number;
5
- viewCount?: number;
6
- viewLabel?: number;
7
- favCount?: number;
8
- commentCount?: number;
9
- render(): import("lit-html").TemplateResult<1>;
10
- static get styles(): CSSResultGroup;
11
- }
1
+ import { CSSResultGroup, LitElement } from 'lit';
2
+ export declare class TileStats extends LitElement {
3
+ mediatype?: string;
4
+ itemCount?: number;
5
+ viewCount?: number;
6
+ viewLabel?: number;
7
+ favCount?: number;
8
+ commentCount?: number;
9
+ render(): import("lit-html").TemplateResult<1>;
10
+ static get styles(): CSSResultGroup;
11
+ }