@internetarchive/collection-browser 0.4.8-alpha.1 → 0.4.8

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 (225) hide show
  1. package/.editorconfig +29 -29
  2. package/.github/workflows/ci.yml +26 -26
  3. package/.github/workflows/gh-pages-main.yml +39 -39
  4. package/.github/workflows/npm-publish.yml +39 -39
  5. package/.github/workflows/pr-preview.yml +38 -38
  6. package/.husky/pre-commit +4 -4
  7. package/LICENSE +661 -661
  8. package/README.md +83 -83
  9. package/dist/index.d.ts +9 -9
  10. package/dist/index.js +9 -9
  11. package/dist/src/app-root.d.ts +50 -50
  12. package/dist/src/app-root.js +278 -278
  13. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  14. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  15. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  16. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  17. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  18. package/dist/src/assets/img/icons/chevron.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/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/login-required.d.ts +1 -1
  28. package/dist/src/assets/img/icons/login-required.js +2 -2
  29. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  30. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  31. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  32. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  33. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  34. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  35. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  36. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  37. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  38. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  39. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  40. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  41. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  42. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  43. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  44. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  45. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  46. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  47. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  48. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  49. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  50. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  51. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  52. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  53. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  54. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  55. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  56. package/dist/src/assets/img/icons/null-result.js +2 -2
  57. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  58. package/dist/src/assets/img/icons/restricted.js +2 -2
  59. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  60. package/dist/src/assets/img/icons/reviews.js +2 -2
  61. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  62. package/dist/src/assets/img/icons/upload.js +2 -2
  63. package/dist/src/assets/img/icons/views.d.ts +1 -1
  64. package/dist/src/assets/img/icons/views.js +2 -2
  65. package/dist/src/circular-activity-indicator.d.ts +5 -5
  66. package/dist/src/circular-activity-indicator.js +17 -17
  67. package/dist/src/collection-browser.d.ts +277 -277
  68. package/dist/src/collection-browser.js +1196 -1194
  69. package/dist/src/collection-browser.js.map +1 -1
  70. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  71. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  72. package/dist/src/collection-facets/facets-template.d.ts +16 -16
  73. package/dist/src/collection-facets/facets-template.js +125 -125
  74. package/dist/src/collection-facets/more-facets-content.d.ts +77 -77
  75. package/dist/src/collection-facets/more-facets-content.js +357 -357
  76. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  77. package/dist/src/collection-facets/more-facets-pagination.js +192 -192
  78. package/dist/src/collection-facets.d.ts +77 -77
  79. package/dist/src/collection-facets.js +383 -383
  80. package/dist/src/empty-placeholder.d.ts +11 -11
  81. package/dist/src/empty-placeholder.js +42 -42
  82. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  83. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  84. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  85. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  86. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  87. package/dist/src/mediatype/mediatype-config.js +85 -85
  88. package/dist/src/models.d.ts +114 -114
  89. package/dist/src/models.js +125 -125
  90. package/dist/src/restoration-state-handler.d.ts +45 -45
  91. package/dist/src/restoration-state-handler.js +230 -230
  92. package/dist/src/sort-filter-bar/alpha-bar.d.ts +12 -12
  93. package/dist/src/sort-filter-bar/alpha-bar.js +52 -52
  94. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  95. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  96. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  97. package/dist/src/sort-filter-bar/img/list.js +2 -2
  98. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  99. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  100. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  101. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  102. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +108 -108
  103. package/dist/src/sort-filter-bar/sort-filter-bar.js +438 -438
  104. package/dist/src/styles/item-image-styles.d.ts +8 -8
  105. package/dist/src/styles/item-image-styles.js +9 -9
  106. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  107. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  108. package/dist/src/tiles/grid/account-tile.d.ts +17 -17
  109. package/dist/src/tiles/grid/account-tile.js +46 -46
  110. package/dist/src/tiles/grid/collection-tile.d.ts +14 -14
  111. package/dist/src/tiles/grid/collection-tile.js +53 -53
  112. package/dist/src/tiles/grid/item-tile.d.ts +29 -29
  113. package/dist/src/tiles/grid/item-tile.js +108 -108
  114. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  115. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +7 -7
  116. package/dist/src/tiles/grid/tile-stats.d.ts +10 -10
  117. package/dist/src/tiles/grid/tile-stats.js +40 -40
  118. package/dist/src/tiles/hover/hover-pane-controller.d.ts +197 -197
  119. package/dist/src/tiles/hover/hover-pane-controller.js +331 -331
  120. package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
  121. package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
  122. package/dist/src/tiles/image-block.d.ts +17 -17
  123. package/dist/src/tiles/image-block.js +72 -72
  124. package/dist/src/tiles/item-image.d.ts +35 -35
  125. package/dist/src/tiles/item-image.js +117 -117
  126. package/dist/src/tiles/list/account-label.d.ts +1 -1
  127. package/dist/src/tiles/list/account-label.js +6 -6
  128. package/dist/src/tiles/list/date-label.d.ts +1 -1
  129. package/dist/src/tiles/list/date-label.js +12 -12
  130. package/dist/src/tiles/list/tile-list-compact-header.d.ts +12 -12
  131. package/dist/src/tiles/list/tile-list-compact-header.js +41 -41
  132. package/dist/src/tiles/list/tile-list-compact.d.ts +21 -21
  133. package/dist/src/tiles/list/tile-list-compact.js +99 -99
  134. package/dist/src/tiles/list/tile-list.d.ts +55 -55
  135. package/dist/src/tiles/list/tile-list.js +297 -297
  136. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  137. package/dist/src/tiles/mediatype-icon.js +47 -47
  138. package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
  139. package/dist/src/tiles/overlay/icon-overlay.js +40 -40
  140. package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
  141. package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
  142. package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
  143. package/dist/src/tiles/overlay/text-overlay.js +42 -42
  144. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  145. package/dist/src/tiles/text-snippet-block.js +73 -73
  146. package/dist/src/tiles/tile-dispatcher.d.ts +55 -55
  147. package/dist/src/tiles/tile-dispatcher.js +176 -176
  148. package/dist/src/utils/analytics-events.d.ts +22 -22
  149. package/dist/src/utils/analytics-events.js +24 -24
  150. package/dist/src/utils/format-count.d.ts +7 -7
  151. package/dist/src/utils/format-count.js +76 -76
  152. package/dist/src/utils/format-date.d.ts +2 -2
  153. package/dist/src/utils/format-date.js +23 -23
  154. package/dist/src/utils/format-unit-size.d.ts +2 -2
  155. package/dist/src/utils/format-unit-size.js +33 -33
  156. package/dist/test/collection-browser.test.d.ts +1 -1
  157. package/dist/test/collection-browser.test.js +584 -584
  158. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  159. package/dist/test/collection-facets/facets-template.test.js +62 -62
  160. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  161. package/dist/test/collection-facets/more-facets-content.test.js +114 -114
  162. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  163. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  164. package/dist/test/collection-facets.test.d.ts +2 -2
  165. package/dist/test/collection-facets.test.js +508 -508
  166. package/dist/test/empty-placeholder.test.d.ts +1 -1
  167. package/dist/test/empty-placeholder.test.js +33 -33
  168. package/dist/test/icon-overlay.test.d.ts +1 -1
  169. package/dist/test/icon-overlay.test.js +24 -24
  170. package/dist/test/image-block.test.d.ts +1 -1
  171. package/dist/test/image-block.test.js +48 -48
  172. package/dist/test/item-image.test.d.ts +1 -1
  173. package/dist/test/item-image.test.js +84 -84
  174. package/dist/test/mediatype-config.test.d.ts +1 -1
  175. package/dist/test/mediatype-config.test.js +16 -16
  176. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  177. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  178. package/dist/test/mocks/mock-collection-name-cache.d.ts +7 -7
  179. package/dist/test/mocks/mock-collection-name-cache.js +13 -13
  180. package/dist/test/mocks/mock-search-responses.d.ts +12 -12
  181. package/dist/test/mocks/mock-search-responses.js +341 -341
  182. package/dist/test/mocks/mock-search-service.d.ts +13 -13
  183. package/dist/test/mocks/mock-search-service.js +40 -40
  184. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  185. package/dist/test/restoration-state-handler.test.js +125 -125
  186. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  187. package/dist/test/sort-filter-bar/alpha-bar.test.js +43 -43
  188. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  189. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +197 -197
  190. package/dist/test/text-overlay.test.d.ts +1 -1
  191. package/dist/test/text-overlay.test.js +48 -48
  192. package/dist/test/text-snippet-block.test.d.ts +1 -1
  193. package/dist/test/text-snippet-block.test.js +57 -57
  194. package/dist/test/tile-stats.test.d.ts +1 -1
  195. package/dist/test/tile-stats.test.js +33 -33
  196. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  197. package/dist/test/tiles/grid/account-tile.test.js +60 -60
  198. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  199. package/dist/test/tiles/grid/collection-tile.test.js +57 -57
  200. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  201. package/dist/test/tiles/grid/item-tile.test.js +142 -142
  202. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  203. package/dist/test/tiles/hover/hover-pane-controller.test.js +257 -257
  204. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  205. package/dist/test/tiles/hover/tile-hover-pane.test.js +13 -13
  206. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  207. package/dist/test/tiles/list/tile-list-compact.test.js +92 -92
  208. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  209. package/dist/test/tiles/list/tile-list.test.js +165 -153
  210. package/dist/test/tiles/list/tile-list.test.js.map +1 -1
  211. package/dist/test/utils/format-count.test.d.ts +1 -1
  212. package/dist/test/utils/format-count.test.js +23 -23
  213. package/dist/test/utils/format-date.test.d.ts +1 -1
  214. package/dist/test/utils/format-date.test.js +17 -17
  215. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  216. package/dist/test/utils/format-unit-size.test.js +17 -17
  217. package/local.archive.org.cert +86 -86
  218. package/local.archive.org.key +27 -27
  219. package/package.json +1 -1
  220. package/renovate.json +6 -6
  221. package/src/collection-browser.ts +2 -0
  222. package/test/tiles/list/tile-list.test.ts +14 -0
  223. package/tsconfig.json +21 -21
  224. package/web-dev-server.config.mjs +30 -30
  225. package/web-test-runner.config.mjs +41 -41
@@ -1,130 +1,130 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../../../src/tiles/list/tile-list-compact';
5
- describe('List Tile Compact', () => {
6
- it('should render initial component', async () => {
7
- var _a, _b, _c, _d, _e;
8
- const el = await fixture(html `<tile-list-compact></tile-list-compact>`);
9
- const listContainer = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#list-line');
10
- const itemTitle = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#title');
11
- const imageBlock = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('image-block');
12
- const itemIcon = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#icon');
13
- const itemViews = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('#views');
14
- expect(listContainer).to.exist;
15
- expect(itemTitle).to.exist;
16
- expect(imageBlock).to.exist;
17
- expect(itemIcon).to.exist;
18
- expect(itemViews).to.exist;
19
- });
20
- it('should render with creator element with title', async () => {
21
- var _a;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import '../../../src/tiles/list/tile-list-compact';
5
+ describe('List Tile Compact', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b, _c, _d, _e;
8
+ const el = await fixture(html `<tile-list-compact></tile-list-compact>`);
9
+ const listContainer = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#list-line');
10
+ const itemTitle = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#title');
11
+ const imageBlock = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('image-block');
12
+ const itemIcon = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#icon');
13
+ const itemViews = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('#views');
14
+ expect(listContainer).to.exist;
15
+ expect(itemTitle).to.exist;
16
+ expect(imageBlock).to.exist;
17
+ expect(itemIcon).to.exist;
18
+ expect(itemViews).to.exist;
19
+ });
20
+ it('should render with creator element with title', async () => {
21
+ var _a;
22
22
  const el = await fixture(html `
23
23
  <tile-list-compact
24
24
  .model=${{ creators: ['someone'] }}
25
25
  ></tile-list-compact>
26
- `);
27
- const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#creator');
28
- expect(creator).to.exist;
29
- });
30
- it('should render weekly views when sorting by week', async () => {
31
- var _a, _b;
26
+ `);
27
+ const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#creator');
28
+ expect(creator).to.exist;
29
+ });
30
+ it('should render weekly views when sorting by week', async () => {
31
+ var _a, _b;
32
32
  const el = await fixture(html `
33
33
  <tile-list-compact
34
34
  .model=${{ viewCount: 50, weeklyViewCount: 10 }}
35
35
  .sortParam=${{ field: 'week', direction: 'desc' }}
36
36
  >
37
37
  </tile-list-compact>
38
- `);
39
- const viewsColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('views');
40
- expect(viewsColumn).to.exist;
41
- expect((_b = viewsColumn === null || viewsColumn === void 0 ? void 0 : viewsColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('10');
42
- });
43
- it('should render 0 for views if missing model', async () => {
44
- var _a, _b;
38
+ `);
39
+ const viewsColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('views');
40
+ expect(viewsColumn).to.exist;
41
+ expect((_b = viewsColumn === null || viewsColumn === void 0 ? void 0 : viewsColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('10');
42
+ });
43
+ it('should render 0 for views if missing model', async () => {
44
+ var _a, _b;
45
45
  const el = await fixture(html `
46
46
  <tile-list-compact .sortParam=${{ field: 'week', direction: 'desc' }}>
47
47
  </tile-list-compact>
48
- `);
49
- const viewsColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('views');
50
- expect(viewsColumn).to.exist;
51
- expect((_b = viewsColumn === null || viewsColumn === void 0 ? void 0 : viewsColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('0');
52
- });
53
- it('should render published date when sorting by it', async () => {
54
- var _a, _b;
55
- const model = {
56
- dateAdded: new Date('2010-01-01'),
57
- dateArchived: new Date('2011-01-01'),
58
- datePublished: new Date('2012-01-01'),
59
- dateReviewed: new Date('2013-01-01'),
60
- };
48
+ `);
49
+ const viewsColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('views');
50
+ expect(viewsColumn).to.exist;
51
+ expect((_b = viewsColumn === null || viewsColumn === void 0 ? void 0 : viewsColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('0');
52
+ });
53
+ it('should render published date when sorting by it', async () => {
54
+ var _a, _b;
55
+ const model = {
56
+ dateAdded: new Date('2010-01-01'),
57
+ dateArchived: new Date('2011-01-01'),
58
+ datePublished: new Date('2012-01-01'),
59
+ dateReviewed: new Date('2013-01-01'),
60
+ };
61
61
  const el = await fixture(html `
62
62
  <tile-list-compact
63
63
  .model=${model}
64
64
  .sortParam=${{ field: 'date', direction: 'desc' }}
65
65
  >
66
66
  </tile-list-compact>
67
- `);
68
- const dateColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('date');
69
- expect(dateColumn).to.exist;
70
- expect((_b = dateColumn === null || dateColumn === void 0 ? void 0 : dateColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Jan 01, 2012');
71
- });
72
- it('should render added date when sorting by it', async () => {
73
- var _a, _b;
74
- const model = {
75
- dateAdded: new Date('2010-01-01'),
76
- dateArchived: new Date('2011-01-01'),
77
- datePublished: new Date('2012-01-01'),
78
- dateReviewed: new Date('2013-01-01'),
79
- };
67
+ `);
68
+ const dateColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('date');
69
+ expect(dateColumn).to.exist;
70
+ expect((_b = dateColumn === null || dateColumn === void 0 ? void 0 : dateColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Jan 01, 2012');
71
+ });
72
+ it('should render added date when sorting by it', async () => {
73
+ var _a, _b;
74
+ const model = {
75
+ dateAdded: new Date('2010-01-01'),
76
+ dateArchived: new Date('2011-01-01'),
77
+ datePublished: new Date('2012-01-01'),
78
+ dateReviewed: new Date('2013-01-01'),
79
+ };
80
80
  const el = await fixture(html `
81
81
  <tile-list-compact
82
82
  .model=${model}
83
83
  .sortParam=${{ field: 'addeddate', direction: 'desc' }}
84
84
  >
85
85
  </tile-list-compact>
86
- `);
87
- const dateColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('date');
88
- expect(dateColumn).to.exist;
89
- expect((_b = dateColumn === null || dateColumn === void 0 ? void 0 : dateColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Jan 01, 2010');
90
- });
91
- it('should render archived date when sorting by it', async () => {
92
- var _a, _b;
93
- const model = {
94
- dateAdded: new Date('2010-01-01'),
95
- dateArchived: new Date('2011-01-01'),
96
- datePublished: new Date('2012-01-01'),
97
- dateReviewed: new Date('2013-01-01'),
98
- };
86
+ `);
87
+ const dateColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('date');
88
+ expect(dateColumn).to.exist;
89
+ expect((_b = dateColumn === null || dateColumn === void 0 ? void 0 : dateColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Jan 01, 2010');
90
+ });
91
+ it('should render archived date when sorting by it', async () => {
92
+ var _a, _b;
93
+ const model = {
94
+ dateAdded: new Date('2010-01-01'),
95
+ dateArchived: new Date('2011-01-01'),
96
+ datePublished: new Date('2012-01-01'),
97
+ dateReviewed: new Date('2013-01-01'),
98
+ };
99
99
  const el = await fixture(html `
100
100
  <tile-list-compact
101
101
  .model=${model}
102
102
  .sortParam=${{ field: 'publicdate', direction: 'desc' }}
103
103
  >
104
104
  </tile-list-compact>
105
- `);
106
- const dateColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('date');
107
- expect(dateColumn).to.exist;
108
- expect((_b = dateColumn === null || dateColumn === void 0 ? void 0 : dateColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Jan 01, 2011');
109
- });
110
- it('should render reviewed date when sorting by it', async () => {
111
- var _a, _b;
112
- const model = {
113
- dateAdded: new Date('2010-01-01'),
114
- dateArchived: new Date('2011-01-01'),
115
- datePublished: new Date('2012-01-01'),
116
- dateReviewed: new Date('2013-01-01'),
117
- };
105
+ `);
106
+ const dateColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('date');
107
+ expect(dateColumn).to.exist;
108
+ expect((_b = dateColumn === null || dateColumn === void 0 ? void 0 : dateColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Jan 01, 2011');
109
+ });
110
+ it('should render reviewed date when sorting by it', async () => {
111
+ var _a, _b;
112
+ const model = {
113
+ dateAdded: new Date('2010-01-01'),
114
+ dateArchived: new Date('2011-01-01'),
115
+ datePublished: new Date('2012-01-01'),
116
+ dateReviewed: new Date('2013-01-01'),
117
+ };
118
118
  const el = await fixture(html `
119
119
  <tile-list-compact
120
120
  .model=${model}
121
121
  .sortParam=${{ field: 'reviewdate', direction: 'desc' }}
122
122
  >
123
123
  </tile-list-compact>
124
- `);
125
- const dateColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('date');
126
- expect(dateColumn).to.exist;
127
- expect((_b = dateColumn === null || dateColumn === void 0 ? void 0 : dateColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Jan 01, 2013');
128
- });
129
- });
124
+ `);
125
+ const dateColumn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('date');
126
+ expect(dateColumn).to.exist;
127
+ expect((_b = dateColumn === null || dateColumn === void 0 ? void 0 : dateColumn.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Jan 01, 2013');
128
+ });
129
+ });
130
130
  //# sourceMappingURL=tile-list-compact.test.js.map
@@ -1 +1 @@
1
- import '../../../src/tiles/list/tile-list';
1
+ import '../../../src/tiles/list/tile-list';
@@ -1,209 +1,221 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../../../src/tiles/list/tile-list';
5
- import { MockCollectionNameCache } from '../../mocks/mock-collection-name-cache';
6
- describe('List Tile', () => {
7
- it('should render initial component', async () => {
8
- var _a, _b, _c;
9
- const el = await fixture(html `<tile-list .model=${{}}></tile-list>`);
10
- const listContainer = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#list-line');
11
- const itemTitle = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#title');
12
- const imageBlock = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('image-block');
13
- expect(listContainer).to.exist;
14
- expect(itemTitle).to.exist;
15
- expect(imageBlock).to.exist;
16
- });
17
- it('should render the mobile template if below mobile breakpoint', async () => {
18
- var _a, _b, _c;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import '../../../src/tiles/list/tile-list';
5
+ import { MockCollectionNameCache } from '../../mocks/mock-collection-name-cache';
6
+ describe('List Tile', () => {
7
+ it('should render initial component', async () => {
8
+ var _a, _b, _c;
9
+ const el = await fixture(html `<tile-list .model=${{}}></tile-list>`);
10
+ const listContainer = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#list-line');
11
+ const itemTitle = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#title');
12
+ const imageBlock = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('image-block');
13
+ expect(listContainer).to.exist;
14
+ expect(itemTitle).to.exist;
15
+ expect(imageBlock).to.exist;
16
+ });
17
+ it('should render the mobile template if below mobile breakpoint', async () => {
18
+ var _a, _b, _c;
19
19
  const el = await fixture(html `
20
20
  <tile-list .mobileBreakpoint=${500} .currentWidth=${400}> </tile-list>
21
- `);
22
- const listContainer = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('list-line');
23
- const topLine = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.getElementById('list-line-top');
24
- const bottomLine = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.getElementById('list-line-bottom');
25
- expect(listContainer).to.exist;
26
- expect(listContainer === null || listContainer === void 0 ? void 0 : listContainer.classList.contains('mobile')).to.be.true;
27
- expect(topLine).to.exist;
28
- expect(bottomLine).to.exist;
29
- });
30
- it('should render with creator element but not dates', async () => {
31
- var _a, _b;
21
+ `);
22
+ const listContainer = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('list-line');
23
+ const topLine = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.getElementById('list-line-top');
24
+ const bottomLine = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.getElementById('list-line-bottom');
25
+ expect(listContainer).to.exist;
26
+ expect(listContainer === null || listContainer === void 0 ? void 0 : listContainer.classList.contains('mobile')).to.be.true;
27
+ expect(topLine).to.exist;
28
+ expect(bottomLine).to.exist;
29
+ });
30
+ it('should render with creator element but not dates', async () => {
31
+ var _a, _b;
32
32
  const el = await fixture(html `
33
33
  <tile-list .model=${{ creators: ['someone'] }}></tile-list>
34
- `);
35
- const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#creator');
36
- const datesLine = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#dates-line');
37
- expect(creator).to.exist;
38
- expect(datesLine === null || datesLine === void 0 ? void 0 : datesLine.children.length).to.equal(0);
39
- });
40
- it('should render with snippet block when it has snippets', async () => {
41
- var _a;
34
+ `);
35
+ const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#creator');
36
+ const datesLine = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#dates-line');
37
+ expect(creator).to.exist;
38
+ expect(datesLine === null || datesLine === void 0 ? void 0 : datesLine.children.length).to.equal(0);
39
+ });
40
+ it('should render with snippet block when it has snippets', async () => {
41
+ var _a;
42
42
  const el = await fixture(html `
43
43
  <tile-list .model=${{ snippets: ['some {{{snippet}}} text'] }}>
44
44
  </tile-list>
45
- `);
46
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
47
- expect(snippetBlock).to.exist;
48
- });
49
- it('should not render snippet block when no snippets are present', async () => {
50
- var _a;
51
- const el = await fixture(html `<tile-list></tile-list>`);
52
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
53
- expect(snippetBlock).to.not.exist;
54
- });
55
- it('should not render suppressed collections', async () => {
56
- var _a;
57
- const collectionNameCache = new MockCollectionNameCache();
45
+ `);
46
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
47
+ expect(snippetBlock).to.exist;
48
+ });
49
+ it('should not render snippet block when no snippets are present', async () => {
50
+ var _a;
51
+ const el = await fixture(html `<tile-list></tile-list>`);
52
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
53
+ expect(snippetBlock).to.not.exist;
54
+ });
55
+ it('should not render suppressed collections', async () => {
56
+ var _a;
57
+ const collectionNameCache = new MockCollectionNameCache();
58
58
  const el = await fixture(html `
59
59
  <tile-list
60
60
  .model=${{ collections: ['deemphasize', 'community', 'foo'] }}
61
61
  .collectionNameCache=${collectionNameCache}
62
62
  >
63
63
  </tile-list>
64
- `);
65
- const collectionsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('collections');
66
- expect(collectionsRow).to.exist;
67
- const collectionLinks = collectionsRow === null || collectionsRow === void 0 ? void 0 : collectionsRow.querySelectorAll('a[href]');
68
- expect(collectionLinks === null || collectionLinks === void 0 ? void 0 : collectionLinks.length).to.equal(1);
69
- expect(collectionLinks === null || collectionLinks === void 0 ? void 0 : collectionLinks.item(0).getAttribute('href')).to.equal('/details/foo');
70
- });
71
- it('should not render fav- collections', async () => {
72
- var _a;
73
- const collectionNameCache = new MockCollectionNameCache();
64
+ `);
65
+ const collectionsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('collections');
66
+ expect(collectionsRow).to.exist;
67
+ const collectionLinks = collectionsRow === null || collectionsRow === void 0 ? void 0 : collectionsRow.querySelectorAll('a[href]');
68
+ expect(collectionLinks === null || collectionLinks === void 0 ? void 0 : collectionLinks.length).to.equal(1);
69
+ expect(collectionLinks === null || collectionLinks === void 0 ? void 0 : collectionLinks.item(0).getAttribute('href')).to.equal('/details/foo');
70
+ });
71
+ it('should not render fav- collections', async () => {
72
+ var _a;
73
+ const collectionNameCache = new MockCollectionNameCache();
74
74
  const el = await fixture(html `
75
75
  <tile-list
76
76
  .model=${{ collections: ['fav-foo', 'bar'] }}
77
77
  .collectionNameCache=${collectionNameCache}
78
78
  >
79
79
  </tile-list>
80
- `);
81
- const collectionsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('collections');
82
- expect(collectionsRow).to.exist;
83
- const collectionLinks = collectionsRow === null || collectionsRow === void 0 ? void 0 : collectionsRow.querySelectorAll('a[href]');
84
- expect(collectionLinks === null || collectionLinks === void 0 ? void 0 : collectionLinks.length).to.equal(1);
85
- expect(collectionLinks === null || collectionLinks === void 0 ? void 0 : collectionLinks.item(0).getAttribute('href')).to.equal('/details/bar');
86
- });
87
- it('should render weekly views when sorting by week', async () => {
88
- var _a, _b;
80
+ `);
81
+ const collectionsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('collections');
82
+ expect(collectionsRow).to.exist;
83
+ const collectionLinks = collectionsRow === null || collectionsRow === void 0 ? void 0 : collectionsRow.querySelectorAll('a[href]');
84
+ expect(collectionLinks === null || collectionLinks === void 0 ? void 0 : collectionLinks.length).to.equal(1);
85
+ expect(collectionLinks === null || collectionLinks === void 0 ? void 0 : collectionLinks.item(0).getAttribute('href')).to.equal('/details/bar');
86
+ });
87
+ it('should render weekly views when sorting by week', async () => {
88
+ var _a, _b;
89
89
  const el = await fixture(html `
90
90
  <tile-list
91
91
  .model=${{ viewCount: 50, weeklyViewCount: 10 }}
92
92
  .sortParam=${{ field: 'week', direction: 'desc' }}
93
93
  >
94
94
  </tile-list>
95
- `);
96
- const viewsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('views-line');
97
- expect(viewsRow).to.exist;
98
- expect((_b = viewsRow === null || viewsRow === void 0 ? void 0 : viewsRow.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Views: 10');
99
- });
100
- it('should render added date when sorting by it', async () => {
101
- var _a, _b;
102
- const model = {
103
- dateAdded: new Date('2010-01-01'),
104
- dateArchived: new Date('2011-01-01'),
105
- datePublished: new Date('2012-01-01'),
106
- dateReviewed: new Date('2013-01-01'),
107
- };
95
+ `);
96
+ const viewsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('views-line');
97
+ expect(viewsRow).to.exist;
98
+ expect((_b = viewsRow === null || viewsRow === void 0 ? void 0 : viewsRow.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Views: 10');
99
+ });
100
+ it('should render added date when sorting by it', async () => {
101
+ var _a, _b;
102
+ const model = {
103
+ dateAdded: new Date('2010-01-01'),
104
+ dateArchived: new Date('2011-01-01'),
105
+ datePublished: new Date('2012-01-01'),
106
+ dateReviewed: new Date('2013-01-01'),
107
+ };
108
108
  const el = await fixture(html `
109
109
  <tile-list
110
110
  .model=${model}
111
111
  .sortParam=${{ field: 'addeddate', direction: 'desc' }}
112
112
  >
113
113
  </tile-list>
114
- `);
115
- const dateRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('dates-line');
116
- expect(dateRow).to.exist;
117
- expect((_b = dateRow === null || dateRow === void 0 ? void 0 : dateRow.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('Added: Jan 01, 2010');
118
- });
119
- it('should render links to /search pages (not search.php) for subject, creator, and source', async () => {
120
- var _a, _b, _c;
121
- const model = {
122
- subjects: ['foo'],
123
- creators: ['bar'],
124
- source: 'baz',
125
- };
114
+ `);
115
+ const dateRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('dates-line');
116
+ expect(dateRow).to.exist;
117
+ expect((_b = dateRow === null || dateRow === void 0 ? void 0 : dateRow.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('Added: Jan 01, 2010');
118
+ });
119
+ it('should render links to /search pages (not search.php) for subject, creator, and source', async () => {
120
+ var _a, _b, _c;
121
+ const model = {
122
+ subjects: ['foo'],
123
+ creators: ['bar'],
124
+ source: 'baz',
125
+ };
126
126
  const el = await fixture(html `
127
127
  <tile-list .model=${model}></tile-list>
128
- `);
129
- const subjectLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#topics a[href]');
130
- expect(subjectLink).to.exist;
131
- expect(subjectLink === null || subjectLink === void 0 ? void 0 : subjectLink.getAttribute('href')).to.equal(`/search?query=${encodeURIComponent('subject:"foo"')}`);
132
- const creatorLink = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#creator a[href]');
133
- expect(creatorLink).to.exist;
134
- expect(creatorLink === null || creatorLink === void 0 ? void 0 : creatorLink.getAttribute('href')).to.equal(`/search?query=${encodeURIComponent('creator:"bar"')}`);
135
- const sourceLink = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('#source a[href]');
136
- expect(sourceLink).to.exist;
137
- expect(sourceLink === null || sourceLink === void 0 ? void 0 : sourceLink.getAttribute('href')).to.equal(`/search?query=${encodeURIComponent('source:"baz"')}`);
138
- });
139
- it('should render multi-line descriptions with spaces b/w lines', async () => {
140
- var _a, _b;
128
+ `);
129
+ const subjectLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#topics a[href]');
130
+ expect(subjectLink).to.exist;
131
+ expect(subjectLink === null || subjectLink === void 0 ? void 0 : subjectLink.getAttribute('href')).to.equal(`/search?query=${encodeURIComponent('subject:"foo"')}`);
132
+ const creatorLink = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#creator a[href]');
133
+ expect(creatorLink).to.exist;
134
+ expect(creatorLink === null || creatorLink === void 0 ? void 0 : creatorLink.getAttribute('href')).to.equal(`/search?query=${encodeURIComponent('creator:"bar"')}`);
135
+ const sourceLink = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('#source a[href]');
136
+ expect(sourceLink).to.exist;
137
+ expect(sourceLink === null || sourceLink === void 0 ? void 0 : sourceLink.getAttribute('href')).to.equal(`/search?query=${encodeURIComponent('source:"baz"')}`);
138
+ });
139
+ it('should render multi-line descriptions with spaces b/w lines', async () => {
140
+ var _a, _b;
141
141
  const el = await fixture(html `
142
142
  <tile-list .model=${{ description: 'line1\nline2' }}> </tile-list>
143
- `);
144
- const descriptionBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('description');
145
- expect(descriptionBlock).to.exist;
146
- expect((_b = descriptionBlock === null || descriptionBlock === void 0 ? void 0 : descriptionBlock.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('line1 line2'); // line break replaced by space
147
- });
148
- it('should render mediatype icon as link to corresponding mediatype collection details', async () => {
149
- var _a;
150
- const model = {
151
- mediatype: 'texts',
152
- };
143
+ `);
144
+ const descriptionBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('description');
145
+ expect(descriptionBlock).to.exist;
146
+ expect((_b = descriptionBlock === null || descriptionBlock === void 0 ? void 0 : descriptionBlock.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('line1 line2'); // line break replaced by space
147
+ });
148
+ it('should render mediatype icon as link to corresponding mediatype collection details', async () => {
149
+ var _a;
150
+ const model = {
151
+ mediatype: 'texts',
152
+ };
153
153
  const el = await fixture(html `
154
154
  <tile-list
155
155
  .baseNavigationUrl=${'https://archive.org'}
156
156
  .model=${model}
157
157
  ></tile-list>
158
- `);
159
- const mediatypeLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('a#icon-right');
160
- expect(mediatypeLink).to.exist;
161
- expect(mediatypeLink === null || mediatypeLink === void 0 ? void 0 : mediatypeLink.getAttribute('href')).to.equal(`https://archive.org/details/texts`);
162
- });
163
- it('should render collection mediatype icon as link to search page', async () => {
164
- var _a;
165
- const model = {
166
- mediatype: 'collection',
167
- };
158
+ `);
159
+ const mediatypeLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('a#icon-right');
160
+ expect(mediatypeLink).to.exist;
161
+ expect(mediatypeLink === null || mediatypeLink === void 0 ? void 0 : mediatypeLink.getAttribute('href')).to.equal(`https://archive.org/details/texts`);
162
+ });
163
+ it('should render mediatype icon as link even with empty baseNavigationUrl', async () => {
164
+ var _a;
165
+ const model = {
166
+ mediatype: 'texts',
167
+ };
168
+ const el = await fixture(html `
169
+ <tile-list .baseNavigationUrl=${''} .model=${model}></tile-list>
170
+ `);
171
+ const mediatypeLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('a#icon-right');
172
+ expect(mediatypeLink).to.exist;
173
+ expect(mediatypeLink === null || mediatypeLink === void 0 ? void 0 : mediatypeLink.getAttribute('href')).to.equal(`/details/texts`);
174
+ });
175
+ it('should render collection mediatype icon as link to search page', async () => {
176
+ var _a;
177
+ const model = {
178
+ mediatype: 'collection',
179
+ };
168
180
  const el = await fixture(html `
169
181
  <tile-list
170
182
  .baseNavigationUrl=${'https://archive.org'}
171
183
  .model=${model}
172
184
  ></tile-list>
173
- `);
174
- const mediatypeLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('a#icon-right');
175
- expect(mediatypeLink).to.exist;
176
- expect(mediatypeLink === null || mediatypeLink === void 0 ? void 0 : mediatypeLink.getAttribute('href')).to.equal(`https://archive.org/search?query=mediatype:collection&sort=-downloads`);
177
- });
178
- it('should not render account mediatype icon as link', async () => {
179
- var _a;
180
- const model = {
181
- mediatype: 'account',
182
- };
185
+ `);
186
+ const mediatypeLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('a#icon-right');
187
+ expect(mediatypeLink).to.exist;
188
+ expect(mediatypeLink === null || mediatypeLink === void 0 ? void 0 : mediatypeLink.getAttribute('href')).to.equal(`https://archive.org/search?query=mediatype:collection&sort=-downloads`);
189
+ });
190
+ it('should not render account mediatype icon as link', async () => {
191
+ var _a;
192
+ const model = {
193
+ mediatype: 'account',
194
+ };
183
195
  const el = await fixture(html `
184
196
  <tile-list
185
197
  .baseNavigationUrl=${'https://archive.org'}
186
198
  .model=${model}
187
199
  ></tile-list>
188
- `);
189
- const mediatypeLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('a#icon-right');
190
- expect(mediatypeLink).to.exist;
191
- expect(mediatypeLink === null || mediatypeLink === void 0 ? void 0 : mediatypeLink.getAttribute('href')).not.to.exist;
192
- });
193
- it('should render date added for accounts', async () => {
194
- var _a, _b;
200
+ `);
201
+ const mediatypeLink = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('a#icon-right');
202
+ expect(mediatypeLink).to.exist;
203
+ expect(mediatypeLink === null || mediatypeLink === void 0 ? void 0 : mediatypeLink.getAttribute('href')).not.to.exist;
204
+ });
205
+ it('should render date added for accounts', async () => {
206
+ var _a, _b;
195
207
  const el = await fixture(html `
196
208
  <tile-list
197
- .model=${{
198
- mediatype: 'account',
199
- dateAdded: new Date('2015-05-05T00:00:00'),
209
+ .model=${{
210
+ mediatype: 'account',
211
+ dateAdded: new Date('2015-05-05T00:00:00'),
200
212
  }}
201
213
  >
202
214
  </tile-list>
203
- `);
204
- const creatorBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('creator');
205
- expect(creatorBlock).to.exist;
206
- expect((_b = creatorBlock === null || creatorBlock === void 0 ? void 0 : creatorBlock.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Archivist since 2015');
207
- });
208
- });
215
+ `);
216
+ const creatorBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.getElementById('creator');
217
+ expect(creatorBlock).to.exist;
218
+ expect((_b = creatorBlock === null || creatorBlock === void 0 ? void 0 : creatorBlock.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('Archivist since 2015');
219
+ });
220
+ });
209
221
  //# sourceMappingURL=tile-list.test.js.map