@internetarchive/collection-browser 1.8.0 → 1.9.0-alpha1

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 (269) 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 +54 -54
  12. package/dist/src/app-root.js +293 -293
  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/contract.d.ts +2 -2
  20. package/dist/src/assets/img/icons/contract.js +2 -2
  21. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  22. package/dist/src/assets/img/icons/empty-query.js +2 -2
  23. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  24. package/dist/src/assets/img/icons/expand.js +2 -2
  25. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  26. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  27. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  28. package/dist/src/assets/img/icons/eye.js +2 -2
  29. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  30. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  31. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  32. package/dist/src/assets/img/icons/login-required.js +2 -2
  33. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  34. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  35. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  36. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  37. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  38. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  39. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  40. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  41. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  42. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  43. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  44. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  45. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  46. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  47. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  48. package/dist/src/assets/img/icons/mediatype/radio.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 +469 -469
  72. package/dist/src/collection-browser.js +1666 -1653
  73. package/dist/src/collection-browser.js.map +1 -1
  74. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  75. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  76. package/dist/src/collection-facets/facets-template.d.ts +20 -20
  77. package/dist/src/collection-facets/facets-template.js +152 -152
  78. package/dist/src/collection-facets/more-facets-content.d.ts +77 -77
  79. package/dist/src/collection-facets/more-facets-content.js +359 -359
  80. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  81. package/dist/src/collection-facets/more-facets-pagination.js +196 -196
  82. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  83. package/dist/src/collection-facets/toggle-switch.js +94 -94
  84. package/dist/src/collection-facets.d.ts +99 -99
  85. package/dist/src/collection-facets.js +471 -471
  86. package/dist/src/empty-placeholder.d.ts +21 -21
  87. package/dist/src/empty-placeholder.js +69 -69
  88. package/dist/src/expanded-date-picker.d.ts +43 -43
  89. package/dist/src/expanded-date-picker.js +109 -109
  90. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  91. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  92. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  93. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  94. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  95. package/dist/src/mediatype/mediatype-config.js +85 -85
  96. package/dist/src/models.d.ts +162 -149
  97. package/dist/src/models.js +256 -195
  98. package/dist/src/models.js.map +1 -1
  99. package/dist/src/restoration-state-handler.d.ts +70 -63
  100. package/dist/src/restoration-state-handler.js +355 -326
  101. package/dist/src/restoration-state-handler.js.map +1 -1
  102. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  103. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  104. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  105. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  106. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  107. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  108. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  109. package/dist/src/sort-filter-bar/img/list.js +2 -2
  110. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  111. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  112. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  113. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  114. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  115. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  116. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  117. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  118. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  119. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  120. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +201 -199
  121. package/dist/src/sort-filter-bar/sort-filter-bar.js +622 -617
  122. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  123. package/dist/src/styles/item-image-styles.d.ts +8 -8
  124. package/dist/src/styles/item-image-styles.js +9 -9
  125. package/dist/src/styles/sr-only.d.ts +1 -1
  126. package/dist/src/styles/sr-only.js +2 -2
  127. package/dist/src/tiles/base-tile-component.d.ts +18 -18
  128. package/dist/src/tiles/base-tile-component.js +59 -59
  129. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  130. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  131. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  132. package/dist/src/tiles/grid/account-tile.js +72 -72
  133. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  134. package/dist/src/tiles/grid/collection-tile.js +80 -80
  135. package/dist/src/tiles/grid/item-tile.d.ts +27 -27
  136. package/dist/src/tiles/grid/item-tile.js +134 -134
  137. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  138. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  139. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  140. package/dist/src/tiles/grid/tile-stats.js +48 -48
  141. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  142. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  143. package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
  144. package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
  145. package/dist/src/tiles/image-block.d.ts +17 -17
  146. package/dist/src/tiles/image-block.js +72 -72
  147. package/dist/src/tiles/item-image.d.ts +35 -35
  148. package/dist/src/tiles/item-image.js +117 -117
  149. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  150. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  151. package/dist/src/tiles/list/tile-list-compact.d.ts +15 -15
  152. package/dist/src/tiles/list/tile-list-compact.js +114 -114
  153. package/dist/src/tiles/list/tile-list.d.ts +46 -46
  154. package/dist/src/tiles/list/tile-list.js +298 -298
  155. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  156. package/dist/src/tiles/mediatype-icon.js +47 -47
  157. package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
  158. package/dist/src/tiles/overlay/icon-overlay.js +40 -40
  159. package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
  160. package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
  161. package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
  162. package/dist/src/tiles/overlay/text-overlay.js +42 -42
  163. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  164. package/dist/src/tiles/text-snippet-block.js +73 -73
  165. package/dist/src/tiles/tile-dispatcher.d.ts +50 -50
  166. package/dist/src/tiles/tile-dispatcher.js +185 -185
  167. package/dist/src/tiles/tile-display-value-provider.d.ts +43 -43
  168. package/dist/src/tiles/tile-display-value-provider.js +80 -80
  169. package/dist/src/utils/analytics-events.d.ts +24 -24
  170. package/dist/src/utils/analytics-events.js +26 -26
  171. package/dist/src/utils/array-equals.d.ts +4 -4
  172. package/dist/src/utils/array-equals.js +10 -10
  173. package/dist/src/utils/format-count.d.ts +7 -7
  174. package/dist/src/utils/format-count.js +76 -76
  175. package/dist/src/utils/format-date.d.ts +2 -2
  176. package/dist/src/utils/format-date.js +25 -25
  177. package/dist/src/utils/format-unit-size.d.ts +2 -2
  178. package/dist/src/utils/format-unit-size.js +33 -33
  179. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  180. package/dist/src/utils/local-date-from-utc.js +15 -15
  181. package/dist/src/utils/sha1.d.ts +2 -2
  182. package/dist/src/utils/sha1.js +8 -8
  183. package/dist/test/collection-browser.test.d.ts +1 -1
  184. package/dist/test/collection-browser.test.js +808 -808
  185. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  186. package/dist/test/collection-facets/facets-template.test.js +134 -134
  187. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  188. package/dist/test/collection-facets/more-facets-content.test.js +133 -133
  189. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  190. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  191. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  192. package/dist/test/collection-facets/toggle-switch.test.js +73 -73
  193. package/dist/test/collection-facets.test.d.ts +2 -2
  194. package/dist/test/collection-facets.test.js +645 -645
  195. package/dist/test/empty-placeholder.test.d.ts +1 -1
  196. package/dist/test/empty-placeholder.test.js +56 -56
  197. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  198. package/dist/test/expanded-date-picker.test.js +95 -95
  199. package/dist/test/icon-overlay.test.d.ts +1 -1
  200. package/dist/test/icon-overlay.test.js +24 -24
  201. package/dist/test/image-block.test.d.ts +1 -1
  202. package/dist/test/image-block.test.js +48 -48
  203. package/dist/test/item-image.test.d.ts +1 -1
  204. package/dist/test/item-image.test.js +84 -84
  205. package/dist/test/mediatype-config.test.d.ts +1 -1
  206. package/dist/test/mediatype-config.test.js +16 -16
  207. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  208. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  209. package/dist/test/mocks/mock-collection-name-cache.d.ts +9 -9
  210. package/dist/test/mocks/mock-collection-name-cache.js +17 -17
  211. package/dist/test/mocks/mock-search-responses.d.ts +19 -19
  212. package/dist/test/mocks/mock-search-responses.js +623 -623
  213. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  214. package/dist/test/mocks/mock-search-service.js +48 -48
  215. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  216. package/dist/test/restoration-state-handler.test.js +270 -218
  217. package/dist/test/restoration-state-handler.test.js.map +1 -1
  218. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  219. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  220. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  221. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  222. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  223. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +378 -378
  224. package/dist/test/text-overlay.test.d.ts +1 -1
  225. package/dist/test/text-overlay.test.js +48 -48
  226. package/dist/test/text-snippet-block.test.d.ts +1 -1
  227. package/dist/test/text-snippet-block.test.js +57 -57
  228. package/dist/test/tile-stats.test.d.ts +1 -1
  229. package/dist/test/tile-stats.test.js +33 -33
  230. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  231. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  232. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  233. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  234. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  235. package/dist/test/tiles/grid/item-tile.test.js +254 -254
  236. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  237. package/dist/test/tiles/hover/hover-pane-controller.test.js +257 -257
  238. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  239. package/dist/test/tiles/hover/tile-hover-pane.test.js +13 -13
  240. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  241. package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
  242. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  243. package/dist/test/tiles/list/tile-list.test.js +242 -242
  244. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  245. package/dist/test/tiles/tile-dispatcher.test.js +67 -67
  246. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  247. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  248. package/dist/test/utils/array-equals.test.d.ts +1 -1
  249. package/dist/test/utils/array-equals.test.js +26 -26
  250. package/dist/test/utils/format-count.test.d.ts +1 -1
  251. package/dist/test/utils/format-count.test.js +23 -23
  252. package/dist/test/utils/format-date.test.d.ts +1 -1
  253. package/dist/test/utils/format-date.test.js +17 -17
  254. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  255. package/dist/test/utils/format-unit-size.test.js +17 -17
  256. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  257. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  258. package/local.archive.org.cert +86 -86
  259. package/local.archive.org.key +27 -27
  260. package/package.json +1 -1
  261. package/renovate.json +6 -6
  262. package/src/collection-browser.ts +24 -8
  263. package/src/models.ts +193 -109
  264. package/src/restoration-state-handler.ts +66 -40
  265. package/src/sort-filter-bar/sort-filter-bar.ts +34 -27
  266. package/test/restoration-state-handler.test.ts +68 -1
  267. package/tsconfig.json +21 -21
  268. package/web-dev-server.config.mjs +30 -30
  269. package/web-test-runner.config.mjs +41 -41
@@ -1,303 +1,303 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import sinon from 'sinon';
4
- import { html } from 'lit';
5
- import '../../../src/tiles/grid/item-tile';
6
- describe('Item Tile', () => {
7
- it('should render initial component', async () => {
8
- var _a, _b, _c, _d, _e;
9
- const el = await fixture(html `<item-tile></item-tile>`);
10
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
11
- const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
12
- const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
13
- const itemTitle = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#title');
14
- const imageBlock = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('image-block');
15
- expect(container).to.exist;
16
- expect(tileDetails).to.exist;
17
- expect(itemInfo).to.exist;
18
- expect(imageBlock).to.exist;
19
- expect(itemTitle).to.exist;
20
- });
21
- it('should render with created-by element', async () => {
22
- var _a, _b, _c, _d, _e;
23
- const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
24
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
25
- const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
26
- const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
27
- const createdBy = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.created-by');
28
- const truncatedCreatorText = createdBy === null || createdBy === void 0 ? void 0 : createdBy.querySelector('.truncated');
29
- const dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
30
- expect(container).to.exist;
31
- expect(tileDetails).to.exist;
32
- expect(itemInfo).to.exist;
33
- expect(createdBy).to.exist;
34
- expect(truncatedCreatorText).to.exist;
35
- expect(dateSortedBy).to.not.exist;
36
- });
37
- it('should not render with created-by but date element', async () => {
38
- var _a, _b;
39
- const el = await fixture(html `<item-tile .model=${{ datePublished: new Date() }}></item-tile>`);
40
- el.sortParam = {
41
- field: 'date',
42
- direction: 'desc',
43
- };
44
- await el.updateComplete;
45
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
46
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
47
- expect(createdBy).to.not.exist;
48
- expect(dateSortedBy).to.exist;
49
- });
50
- it('should not render with created-by but reviewdate element', async () => {
51
- var _a, _b;
52
- const el = await fixture(html `<item-tile .model=${{ dateReviewed: new Date() }}></item-tile>`);
53
- el.sortParam = {
54
- field: 'reviewdate',
55
- direction: 'desc',
56
- };
57
- await el.updateComplete;
58
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
59
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
60
- expect(createdBy).to.not.exist;
61
- expect(dateSortedBy).to.exist;
62
- });
63
- it('should not render with created-by but publicdate element', async () => {
64
- var _a, _b;
65
- const el = await fixture(html `<item-tile .model=${{ dateArchived: new Date() }}></item-tile>`);
66
- el.sortParam = {
67
- field: 'publicdate',
68
- direction: 'desc',
69
- };
70
- await el.updateComplete;
71
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
72
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
73
- expect(createdBy).to.not.exist;
74
- expect(dateSortedBy).to.exist;
75
- });
76
- it('should not render date-sorted-by element if date is not provided', async () => {
77
- var _a, _b;
78
- const el = await fixture(html `<item-tile .model=${{ dateArchived: undefined }}></item-tile>`);
79
- el.sortParam = {
80
- field: 'publicdate',
81
- direction: 'desc',
82
- };
83
- await el.updateComplete;
84
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
85
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
86
- expect(createdBy).to.not.exist;
87
- expect(dateSortedBy).to.not.exist;
88
- });
89
- it('should render without created-by when sorting by a date field', async () => {
90
- var _a, _b, _c;
91
- const el = await fixture(html `<item-tile .model=${{ dateAdded: new Date() }}></item-tile>`);
92
- el.sortParam = {
93
- field: 'addeddate',
94
- direction: 'asc',
95
- };
96
- await el.updateComplete;
97
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
98
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
99
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
100
- expect(itemInfo).to.exist;
101
- expect(createdBy).to.not.exist;
102
- expect(dateSortedBy).to.exist;
103
- });
104
- it('should render with created-by when sort field is not a date', async () => {
105
- var _a, _b, _c;
106
- const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
107
- el.sortParam = {
108
- field: 'week',
109
- direction: 'asc',
110
- };
111
- await el.updateComplete;
112
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
113
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
114
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
115
- expect(itemInfo).to.exist;
116
- expect(dateSortedBy).to.not.exist; // it should not exist because this is not a date sort
117
- expect(createdBy).to.exist;
118
- });
119
- it('should render published date when sorting by it', async () => {
120
- var _a, _b;
121
- const model = {
122
- dateAdded: new Date(2010, 0, 2),
123
- dateArchived: new Date(2011, 0, 2),
124
- datePublished: new Date(2012, 0, 2),
125
- dateReviewed: new Date(2013, 0, 2),
126
- };
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import sinon from 'sinon';
4
+ import { html } from 'lit';
5
+ import '../../../src/tiles/grid/item-tile';
6
+ describe('Item Tile', () => {
7
+ it('should render initial component', async () => {
8
+ var _a, _b, _c, _d, _e;
9
+ const el = await fixture(html `<item-tile></item-tile>`);
10
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
11
+ const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
12
+ const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
13
+ const itemTitle = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#title');
14
+ const imageBlock = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('image-block');
15
+ expect(container).to.exist;
16
+ expect(tileDetails).to.exist;
17
+ expect(itemInfo).to.exist;
18
+ expect(imageBlock).to.exist;
19
+ expect(itemTitle).to.exist;
20
+ });
21
+ it('should render with created-by element', async () => {
22
+ var _a, _b, _c, _d, _e;
23
+ const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
24
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
25
+ const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
26
+ const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
27
+ const createdBy = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.created-by');
28
+ const truncatedCreatorText = createdBy === null || createdBy === void 0 ? void 0 : createdBy.querySelector('.truncated');
29
+ const dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
30
+ expect(container).to.exist;
31
+ expect(tileDetails).to.exist;
32
+ expect(itemInfo).to.exist;
33
+ expect(createdBy).to.exist;
34
+ expect(truncatedCreatorText).to.exist;
35
+ expect(dateSortedBy).to.not.exist;
36
+ });
37
+ it('should not render with created-by but date element', async () => {
38
+ var _a, _b;
39
+ const el = await fixture(html `<item-tile .model=${{ datePublished: new Date() }}></item-tile>`);
40
+ el.sortParam = {
41
+ field: 'date',
42
+ direction: 'desc',
43
+ };
44
+ await el.updateComplete;
45
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
46
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
47
+ expect(createdBy).to.not.exist;
48
+ expect(dateSortedBy).to.exist;
49
+ });
50
+ it('should not render with created-by but reviewdate element', async () => {
51
+ var _a, _b;
52
+ const el = await fixture(html `<item-tile .model=${{ dateReviewed: new Date() }}></item-tile>`);
53
+ el.sortParam = {
54
+ field: 'reviewdate',
55
+ direction: 'desc',
56
+ };
57
+ await el.updateComplete;
58
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
59
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
60
+ expect(createdBy).to.not.exist;
61
+ expect(dateSortedBy).to.exist;
62
+ });
63
+ it('should not render with created-by but publicdate element', async () => {
64
+ var _a, _b;
65
+ const el = await fixture(html `<item-tile .model=${{ dateArchived: new Date() }}></item-tile>`);
66
+ el.sortParam = {
67
+ field: 'publicdate',
68
+ direction: 'desc',
69
+ };
70
+ await el.updateComplete;
71
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
72
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
73
+ expect(createdBy).to.not.exist;
74
+ expect(dateSortedBy).to.exist;
75
+ });
76
+ it('should not render date-sorted-by element if date is not provided', async () => {
77
+ var _a, _b;
78
+ const el = await fixture(html `<item-tile .model=${{ dateArchived: undefined }}></item-tile>`);
79
+ el.sortParam = {
80
+ field: 'publicdate',
81
+ direction: 'desc',
82
+ };
83
+ await el.updateComplete;
84
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
85
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
86
+ expect(createdBy).to.not.exist;
87
+ expect(dateSortedBy).to.not.exist;
88
+ });
89
+ it('should render without created-by when sorting by a date field', async () => {
90
+ var _a, _b, _c;
91
+ const el = await fixture(html `<item-tile .model=${{ dateAdded: new Date() }}></item-tile>`);
92
+ el.sortParam = {
93
+ field: 'addeddate',
94
+ direction: 'asc',
95
+ };
96
+ await el.updateComplete;
97
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
98
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
99
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
100
+ expect(itemInfo).to.exist;
101
+ expect(createdBy).to.not.exist;
102
+ expect(dateSortedBy).to.exist;
103
+ });
104
+ it('should render with created-by when sort field is not a date', async () => {
105
+ var _a, _b, _c;
106
+ const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
107
+ el.sortParam = {
108
+ field: 'week',
109
+ direction: 'asc',
110
+ };
111
+ await el.updateComplete;
112
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
113
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
114
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
115
+ expect(itemInfo).to.exist;
116
+ expect(dateSortedBy).to.not.exist; // it should not exist because this is not a date sort
117
+ expect(createdBy).to.exist;
118
+ });
119
+ it('should render published date when sorting by it', async () => {
120
+ var _a, _b;
121
+ const model = {
122
+ dateAdded: new Date(2010, 0, 2),
123
+ dateArchived: new Date(2011, 0, 2),
124
+ datePublished: new Date(2012, 0, 2),
125
+ dateReviewed: new Date(2013, 0, 2),
126
+ };
127
127
  const el = await fixture(html `
128
128
  <item-tile
129
129
  .model=${model}
130
130
  .sortParam=${{ field: 'date', direction: 'desc' }}
131
131
  >
132
132
  </item-tile>
133
- `);
134
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
135
- expect(dateSortedBy).to.exist;
136
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('published Jan 02, 2012');
137
- });
138
- it('should render added date when sorting by it', async () => {
139
- var _a, _b;
140
- const model = {
141
- dateAdded: new Date(2010, 0, 2),
142
- dateArchived: new Date(2011, 0, 2),
143
- datePublished: new Date(2012, 0, 2),
144
- dateReviewed: new Date(2013, 0, 2),
145
- };
133
+ `);
134
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
135
+ expect(dateSortedBy).to.exist;
136
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('published Jan 02, 2012');
137
+ });
138
+ it('should render added date when sorting by it', async () => {
139
+ var _a, _b;
140
+ const model = {
141
+ dateAdded: new Date(2010, 0, 2),
142
+ dateArchived: new Date(2011, 0, 2),
143
+ datePublished: new Date(2012, 0, 2),
144
+ dateReviewed: new Date(2013, 0, 2),
145
+ };
146
146
  const el = await fixture(html `
147
147
  <item-tile
148
148
  .model=${model}
149
149
  .sortParam=${{ field: 'addeddate', direction: 'desc' }}
150
150
  >
151
151
  </item-tile>
152
- `);
153
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
154
- expect(dateSortedBy).to.exist;
155
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('added Jan 02, 2010');
156
- });
157
- it('should render archived date when sorting by it', async () => {
158
- var _a, _b;
159
- const model = {
160
- dateAdded: new Date(2010, 0, 2),
161
- dateArchived: new Date(2011, 0, 2),
162
- datePublished: new Date(2012, 0, 2),
163
- dateReviewed: new Date(2013, 0, 2),
164
- };
152
+ `);
153
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
154
+ expect(dateSortedBy).to.exist;
155
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('added Jan 02, 2010');
156
+ });
157
+ it('should render archived date when sorting by it', async () => {
158
+ var _a, _b;
159
+ const model = {
160
+ dateAdded: new Date(2010, 0, 2),
161
+ dateArchived: new Date(2011, 0, 2),
162
+ datePublished: new Date(2012, 0, 2),
163
+ dateReviewed: new Date(2013, 0, 2),
164
+ };
165
165
  const el = await fixture(html `
166
166
  <item-tile
167
167
  .model=${model}
168
168
  .sortParam=${{ field: 'publicdate', direction: 'desc' }}
169
169
  >
170
170
  </item-tile>
171
- `);
172
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
173
- expect(dateSortedBy).to.exist;
174
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('archived Jan 02, 2011');
175
- });
176
- it('should render reviewed date when sorting by it', async () => {
177
- var _a, _b;
178
- const model = {
179
- dateAdded: new Date(2010, 0, 2),
180
- dateArchived: new Date(2011, 0, 2),
181
- datePublished: new Date(2012, 0, 2),
182
- dateReviewed: new Date(2013, 0, 2),
183
- };
171
+ `);
172
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
173
+ expect(dateSortedBy).to.exist;
174
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('archived Jan 02, 2011');
175
+ });
176
+ it('should render reviewed date when sorting by it', async () => {
177
+ var _a, _b;
178
+ const model = {
179
+ dateAdded: new Date(2010, 0, 2),
180
+ dateArchived: new Date(2011, 0, 2),
181
+ datePublished: new Date(2012, 0, 2),
182
+ dateReviewed: new Date(2013, 0, 2),
183
+ };
184
184
  const el = await fixture(html `
185
185
  <item-tile
186
186
  .model=${model}
187
187
  .sortParam=${{ field: 'reviewdate', direction: 'desc' }}
188
188
  >
189
189
  </item-tile>
190
- `);
191
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
192
- expect(dateSortedBy).to.exist;
193
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('reviewed Jan 02, 2013');
194
- });
195
- it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
196
- var _a, _b;
197
- const model = {
198
- datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
199
- };
190
+ `);
191
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
192
+ expect(dateSortedBy).to.exist;
193
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('reviewed Jan 02, 2013');
194
+ });
195
+ it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
196
+ var _a, _b;
197
+ const model = {
198
+ datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
199
+ };
200
200
  const el = await fixture(html `
201
201
  <item-tile
202
202
  .model=${model}
203
203
  .sortParam=${{ field: 'date', direction: 'desc' }}
204
204
  >
205
205
  </item-tile>
206
- `);
207
- const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
208
- expect(dateSortedBy).to.exist;
209
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('published 2012');
210
- });
211
- it('should show full date added/archived/reviewed, even on Jan 1 at midnight UTC', async () => {
212
- var _a, _b, _c, _d, _e, _f;
213
- const model = {
214
- dateAdded: new Date(2010, 0, 1, 0, 0, 0, 0),
215
- dateArchived: new Date(2011, 0, 1, 0, 0, 0, 0),
216
- datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
217
- dateReviewed: new Date(2013, 0, 1, 0, 0, 0, 0),
218
- };
206
+ `);
207
+ const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
208
+ expect(dateSortedBy).to.exist;
209
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('published 2012');
210
+ });
211
+ it('should show full date added/archived/reviewed, even on Jan 1 at midnight UTC', async () => {
212
+ var _a, _b, _c, _d, _e, _f;
213
+ const model = {
214
+ dateAdded: new Date(2010, 0, 1, 0, 0, 0, 0),
215
+ dateArchived: new Date(2011, 0, 1, 0, 0, 0, 0),
216
+ datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
217
+ dateReviewed: new Date(2013, 0, 1, 0, 0, 0, 0),
218
+ };
219
219
  const el = await fixture(html `
220
220
  <item-tile
221
221
  .model=${model}
222
222
  .sortParam=${{ field: 'addeddate', direction: 'desc' }}
223
223
  >
224
224
  </item-tile>
225
- `);
226
- let dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
227
- expect(dateSortedBy).to.exist;
228
- expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('added Jan 01, 2010');
229
- el.sortParam = { field: 'publicdate', direction: 'desc' };
230
- await el.updateComplete;
231
- dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
232
- expect(dateSortedBy).to.exist;
233
- expect((_d = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _d === void 0 ? void 0 : _d.trim()).to.equal('archived Jan 01, 2011');
234
- el.sortParam = { field: 'reviewdate', direction: 'desc' };
235
- await el.updateComplete;
236
- dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
237
- expect(dateSortedBy).to.exist;
238
- expect((_f = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _f === void 0 ? void 0 : _f.trim()).to.equal('reviewed Jan 01, 2013');
239
- });
240
- it('should show the first creator matching the letter filter, if defined', async () => {
241
- var _a, _b;
242
- const model = {
243
- creator: 'foo',
244
- creators: ['foo', 'bar', 'baz'],
245
- };
225
+ `);
226
+ let dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
227
+ expect(dateSortedBy).to.exist;
228
+ expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('added Jan 01, 2010');
229
+ el.sortParam = { field: 'publicdate', direction: 'desc' };
230
+ await el.updateComplete;
231
+ dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
232
+ expect(dateSortedBy).to.exist;
233
+ expect((_d = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _d === void 0 ? void 0 : _d.trim()).to.equal('archived Jan 01, 2011');
234
+ el.sortParam = { field: 'reviewdate', direction: 'desc' };
235
+ await el.updateComplete;
236
+ dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
237
+ expect(dateSortedBy).to.exist;
238
+ expect((_f = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _f === void 0 ? void 0 : _f.trim()).to.equal('reviewed Jan 01, 2013');
239
+ });
240
+ it('should show the first creator matching the letter filter, if defined', async () => {
241
+ var _a, _b;
242
+ const model = {
243
+ creator: 'foo',
244
+ creators: ['foo', 'bar', 'baz'],
245
+ };
246
246
  const el = await fixture(html `
247
247
  <item-tile .model=${model} .creatorFilter=${'B'}> </item-tile>
248
- `);
249
- const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
250
- expect(creator).to.exist;
251
- expect((_b = creator === null || creator === void 0 ? void 0 : creator.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.match(/by\s+bar/);
252
- });
253
- it('should render with snippet block when it has snippets', async () => {
254
- var _a;
248
+ `);
249
+ const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
250
+ expect(creator).to.exist;
251
+ expect((_b = creator === null || creator === void 0 ? void 0 : creator.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.match(/by\s+bar/);
252
+ });
253
+ it('should render with snippet block when it has snippets', async () => {
254
+ var _a;
255
255
  const el = await fixture(html `
256
256
  <item-tile .model=${{ snippets: ['some {{{snippet}}} text'] }}>
257
257
  </item-tile>
258
- `);
259
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
260
- expect(snippetBlock).to.exist;
261
- });
262
- it('should not render snippet block when no snippets are present', async () => {
263
- var _a;
264
- const el = await fixture(html `<item-tile></item-tile>`);
265
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
266
- expect(snippetBlock).to.not.exist;
267
- });
268
- it('should render info button when showInfoButton flag is set', async () => {
269
- var _a;
258
+ `);
259
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
260
+ expect(snippetBlock).to.exist;
261
+ });
262
+ it('should not render snippet block when no snippets are present', async () => {
263
+ var _a;
264
+ const el = await fixture(html `<item-tile></item-tile>`);
265
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
266
+ expect(snippetBlock).to.not.exist;
267
+ });
268
+ it('should render info button when showInfoButton flag is set', async () => {
269
+ var _a;
270
270
  const el = await fixture(html `
271
271
  <item-tile ?showInfoButton=${true}> </item-tile>
272
- `);
273
- const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
274
- expect(infoButton).to.exist;
275
- });
276
- it('should dispatch event when info button tapped', async () => {
277
- var _a;
278
- const infoButtonSpy = sinon.spy();
272
+ `);
273
+ const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
274
+ expect(infoButton).to.exist;
275
+ });
276
+ it('should dispatch event when info button tapped', async () => {
277
+ var _a;
278
+ const infoButtonSpy = sinon.spy();
279
279
  const el = await fixture(html `
280
280
  <item-tile ?showInfoButton=${true} @infoButtonPressed=${infoButtonSpy}>
281
281
  </item-tile>
282
- `);
283
- const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
284
- infoButton.click();
285
- await el.updateComplete;
286
- expect(infoButtonSpy.callCount).to.equal(1);
287
- });
288
- it('should render with volume/issue view', async () => {
289
- var _a;
282
+ `);
283
+ const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
284
+ infoButton.click();
285
+ await el.updateComplete;
286
+ expect(infoButtonSpy.callCount).to.equal(1);
287
+ });
288
+ it('should render with volume/issue view', async () => {
289
+ var _a;
290
290
  const el = await fixture(html `
291
291
  <item-tile .model=${{ volume: '1', issue: 'Index' }}></item-tile>
292
- `);
293
- const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
294
- expect(volumeIssueBlock).to.exist;
295
- });
296
- it('should render with volume/issue view to not render', async () => {
297
- var _a;
298
- const el = await fixture(html `<item-tile></item-tile>`);
299
- const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
300
- expect(volumeIssueBlock).to.not.exist;
301
- });
302
- });
292
+ `);
293
+ const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
294
+ expect(volumeIssueBlock).to.exist;
295
+ });
296
+ it('should render with volume/issue view to not render', async () => {
297
+ var _a;
298
+ const el = await fixture(html `<item-tile></item-tile>`);
299
+ const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
300
+ expect(volumeIssueBlock).to.not.exist;
301
+ });
302
+ });
303
303
  //# sourceMappingURL=item-tile.test.js.map
@@ -1 +1 @@
1
- export {};
1
+ export {};