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