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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (223) 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 +1194 -1194
  69. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  70. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  71. package/dist/src/collection-facets/facets-template.d.ts +16 -16
  72. package/dist/src/collection-facets/facets-template.js +125 -125
  73. package/dist/src/collection-facets/more-facets-content.d.ts +77 -77
  74. package/dist/src/collection-facets/more-facets-content.js +357 -357
  75. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  76. package/dist/src/collection-facets/more-facets-pagination.js +192 -192
  77. package/dist/src/collection-facets.d.ts +77 -77
  78. package/dist/src/collection-facets.js +383 -383
  79. package/dist/src/empty-placeholder.d.ts +11 -11
  80. package/dist/src/empty-placeholder.js +42 -42
  81. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  82. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  83. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  84. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  85. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  86. package/dist/src/mediatype/mediatype-config.js +85 -85
  87. package/dist/src/models.d.ts +114 -114
  88. package/dist/src/models.js +125 -125
  89. package/dist/src/restoration-state-handler.d.ts +45 -45
  90. package/dist/src/restoration-state-handler.js +230 -230
  91. package/dist/src/sort-filter-bar/alpha-bar.d.ts +12 -12
  92. package/dist/src/sort-filter-bar/alpha-bar.js +52 -52
  93. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  94. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  95. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  96. package/dist/src/sort-filter-bar/img/list.js +2 -2
  97. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  98. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  99. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  100. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  101. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +108 -108
  102. package/dist/src/sort-filter-bar/sort-filter-bar.js +438 -438
  103. package/dist/src/styles/item-image-styles.d.ts +8 -8
  104. package/dist/src/styles/item-image-styles.js +9 -9
  105. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  106. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  107. package/dist/src/tiles/grid/account-tile.d.ts +17 -17
  108. package/dist/src/tiles/grid/account-tile.js +46 -46
  109. package/dist/src/tiles/grid/collection-tile.d.ts +14 -14
  110. package/dist/src/tiles/grid/collection-tile.js +53 -53
  111. package/dist/src/tiles/grid/item-tile.d.ts +29 -29
  112. package/dist/src/tiles/grid/item-tile.js +108 -108
  113. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  114. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +7 -7
  115. package/dist/src/tiles/grid/tile-stats.d.ts +10 -10
  116. package/dist/src/tiles/grid/tile-stats.js +40 -40
  117. package/dist/src/tiles/hover/hover-pane-controller.d.ts +197 -197
  118. package/dist/src/tiles/hover/hover-pane-controller.js +331 -331
  119. package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
  120. package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
  121. package/dist/src/tiles/image-block.d.ts +17 -17
  122. package/dist/src/tiles/image-block.js +72 -72
  123. package/dist/src/tiles/item-image.d.ts +35 -35
  124. package/dist/src/tiles/item-image.js +117 -117
  125. package/dist/src/tiles/list/account-label.d.ts +1 -1
  126. package/dist/src/tiles/list/account-label.js +6 -6
  127. package/dist/src/tiles/list/date-label.d.ts +1 -1
  128. package/dist/src/tiles/list/date-label.js +12 -12
  129. package/dist/src/tiles/list/tile-list-compact-header.d.ts +12 -12
  130. package/dist/src/tiles/list/tile-list-compact-header.js +41 -41
  131. package/dist/src/tiles/list/tile-list-compact.d.ts +21 -21
  132. package/dist/src/tiles/list/tile-list-compact.js +99 -99
  133. package/dist/src/tiles/list/tile-list.d.ts +55 -55
  134. package/dist/src/tiles/list/tile-list.js +297 -296
  135. package/dist/src/tiles/list/tile-list.js.map +1 -1
  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 +153 -153
  210. package/dist/test/utils/format-count.test.d.ts +1 -1
  211. package/dist/test/utils/format-count.test.js +23 -23
  212. package/dist/test/utils/format-date.test.d.ts +1 -1
  213. package/dist/test/utils/format-date.test.js +17 -17
  214. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  215. package/dist/test/utils/format-unit-size.test.js +17 -17
  216. package/local.archive.org.cert +86 -86
  217. package/local.archive.org.key +27 -27
  218. package/package.json +1 -1
  219. package/renovate.json +6 -6
  220. package/src/tiles/list/tile-list.ts +3 -1
  221. package/tsconfig.json +21 -21
  222. package/web-dev-server.config.mjs +30 -30
  223. package/web-test-runner.config.mjs +41 -41
@@ -1,148 +1,148 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../../../src/tiles/grid/item-tile';
5
- describe('Item Tile', () => {
6
- it('should render initial component', async () => {
7
- var _a, _b, _c, _d, _e;
8
- const el = await fixture(html `<item-tile></item-tile>`);
9
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
10
- const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
11
- const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
12
- const itemTitle = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#title');
13
- const imageBlock = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('image-block');
14
- expect(container).to.exist;
15
- expect(tileDetails).to.exist;
16
- expect(itemInfo).to.exist;
17
- expect(imageBlock).to.exist;
18
- expect(itemTitle).to.exist;
19
- });
20
- it('should render with created-by element', async () => {
21
- var _a, _b, _c, _d, _e;
22
- const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
23
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
24
- const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
25
- const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
26
- const createdBy = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.created-by');
27
- const truncatedCreatorText = createdBy === null || createdBy === void 0 ? void 0 : createdBy.querySelector('.truncated');
28
- const dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
29
- expect(container).to.exist;
30
- expect(tileDetails).to.exist;
31
- expect(itemInfo).to.exist;
32
- expect(createdBy).to.exist;
33
- expect(truncatedCreatorText).to.exist;
34
- expect(dateSortedBy).to.not.exist;
35
- });
36
- it('should not render with created-by but date element', async () => {
37
- var _a, _b;
38
- const el = await fixture(html `<item-tile .model=${{ datePublished: new Date() }}></item-tile>`);
39
- el.sortParam = {
40
- field: 'date',
41
- direction: 'desc',
42
- };
43
- await el.updateComplete;
44
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
45
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
46
- expect(createdBy).to.not.exist;
47
- expect(dateSortedBy).to.exist;
48
- });
49
- it('should not render with created-by but reviewdate element', async () => {
50
- var _a, _b;
51
- const el = await fixture(html `<item-tile .model=${{ dateReviewed: new Date() }}></item-tile>`);
52
- el.sortParam = {
53
- field: 'reviewdate',
54
- direction: 'desc',
55
- };
56
- await el.updateComplete;
57
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
58
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
59
- expect(createdBy).to.not.exist;
60
- expect(dateSortedBy).to.exist;
61
- });
62
- it('should not render with created-by but publicdate element', async () => {
63
- var _a, _b;
64
- const el = await fixture(html `<item-tile .model=${{ dateArchived: new Date() }}></item-tile>`);
65
- el.sortParam = {
66
- field: 'publicdate',
67
- direction: 'desc',
68
- };
69
- await el.updateComplete;
70
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
71
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
72
- expect(createdBy).to.not.exist;
73
- expect(dateSortedBy).to.exist;
74
- });
75
- it('should not render date-sorted-by element if date is not provided', async () => {
76
- var _a, _b;
77
- const el = await fixture(html `<item-tile .model=${{ dateArchived: undefined }}></item-tile>`);
78
- el.sortParam = {
79
- field: 'publicdate',
80
- direction: 'desc',
81
- };
82
- await el.updateComplete;
83
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
84
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
85
- expect(createdBy).to.not.exist;
86
- expect(dateSortedBy).to.not.exist;
87
- });
88
- it('should render with created-by when sorting not related to date', async () => {
89
- var _a, _b, _c;
90
- const el = await fixture(html `<item-tile .model=${{ dateAdded: new Date() }}></item-tile>`);
91
- el.sortParam = {
92
- field: 'addeddate',
93
- direction: 'asc',
94
- };
95
- await el.updateComplete;
96
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
97
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
98
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
99
- expect(itemInfo).to.exist;
100
- expect(createdBy).to.not.exist;
101
- expect(dateSortedBy).to.exist;
102
- });
103
- it('should render with created-by when sort field id not like date', async () => {
104
- var _a, _b, _c;
105
- const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
106
- el.sortParam = {
107
- field: 'week',
108
- direction: 'asc',
109
- };
110
- await el.updateComplete;
111
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
112
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
113
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
114
- expect(itemInfo).to.exist;
115
- expect(dateSortedBy).to.not.exist; // it should be exist because this is not related to date sort
116
- expect(createdBy).to.exist;
117
- });
118
- it('should render with snippet block when it has snippets', async () => {
119
- 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/grid/item-tile';
5
+ describe('Item Tile', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b, _c, _d, _e;
8
+ const el = await fixture(html `<item-tile></item-tile>`);
9
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
10
+ const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
11
+ const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
12
+ const itemTitle = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#title');
13
+ const imageBlock = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('image-block');
14
+ expect(container).to.exist;
15
+ expect(tileDetails).to.exist;
16
+ expect(itemInfo).to.exist;
17
+ expect(imageBlock).to.exist;
18
+ expect(itemTitle).to.exist;
19
+ });
20
+ it('should render with created-by element', async () => {
21
+ var _a, _b, _c, _d, _e;
22
+ const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
23
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
24
+ const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
25
+ const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
26
+ const createdBy = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.created-by');
27
+ const truncatedCreatorText = createdBy === null || createdBy === void 0 ? void 0 : createdBy.querySelector('.truncated');
28
+ const dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
29
+ expect(container).to.exist;
30
+ expect(tileDetails).to.exist;
31
+ expect(itemInfo).to.exist;
32
+ expect(createdBy).to.exist;
33
+ expect(truncatedCreatorText).to.exist;
34
+ expect(dateSortedBy).to.not.exist;
35
+ });
36
+ it('should not render with created-by but date element', async () => {
37
+ var _a, _b;
38
+ const el = await fixture(html `<item-tile .model=${{ datePublished: new Date() }}></item-tile>`);
39
+ el.sortParam = {
40
+ field: 'date',
41
+ direction: 'desc',
42
+ };
43
+ await el.updateComplete;
44
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
45
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
46
+ expect(createdBy).to.not.exist;
47
+ expect(dateSortedBy).to.exist;
48
+ });
49
+ it('should not render with created-by but reviewdate element', async () => {
50
+ var _a, _b;
51
+ const el = await fixture(html `<item-tile .model=${{ dateReviewed: new Date() }}></item-tile>`);
52
+ el.sortParam = {
53
+ field: 'reviewdate',
54
+ direction: 'desc',
55
+ };
56
+ await el.updateComplete;
57
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
58
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
59
+ expect(createdBy).to.not.exist;
60
+ expect(dateSortedBy).to.exist;
61
+ });
62
+ it('should not render with created-by but publicdate element', async () => {
63
+ var _a, _b;
64
+ const el = await fixture(html `<item-tile .model=${{ dateArchived: new Date() }}></item-tile>`);
65
+ el.sortParam = {
66
+ field: 'publicdate',
67
+ direction: 'desc',
68
+ };
69
+ await el.updateComplete;
70
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
71
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
72
+ expect(createdBy).to.not.exist;
73
+ expect(dateSortedBy).to.exist;
74
+ });
75
+ it('should not render date-sorted-by element if date is not provided', async () => {
76
+ var _a, _b;
77
+ const el = await fixture(html `<item-tile .model=${{ dateArchived: undefined }}></item-tile>`);
78
+ el.sortParam = {
79
+ field: 'publicdate',
80
+ direction: 'desc',
81
+ };
82
+ await el.updateComplete;
83
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
84
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
85
+ expect(createdBy).to.not.exist;
86
+ expect(dateSortedBy).to.not.exist;
87
+ });
88
+ it('should render with created-by when sorting not related to date', async () => {
89
+ var _a, _b, _c;
90
+ const el = await fixture(html `<item-tile .model=${{ dateAdded: new Date() }}></item-tile>`);
91
+ el.sortParam = {
92
+ field: 'addeddate',
93
+ direction: 'asc',
94
+ };
95
+ await el.updateComplete;
96
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
97
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
98
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
99
+ expect(itemInfo).to.exist;
100
+ expect(createdBy).to.not.exist;
101
+ expect(dateSortedBy).to.exist;
102
+ });
103
+ it('should render with created-by when sort field id not like date', async () => {
104
+ var _a, _b, _c;
105
+ const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
106
+ el.sortParam = {
107
+ field: 'week',
108
+ direction: 'asc',
109
+ };
110
+ await el.updateComplete;
111
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
112
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
113
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
114
+ expect(itemInfo).to.exist;
115
+ expect(dateSortedBy).to.not.exist; // it should be exist because this is not related to date sort
116
+ expect(createdBy).to.exist;
117
+ });
118
+ it('should render with snippet block when it has snippets', async () => {
119
+ var _a;
120
120
  const el = await fixture(html `
121
121
  <item-tile .model=${{ snippets: ['some {{{snippet}}} text'] }}>
122
122
  </item-tile>
123
- `);
124
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
125
- expect(snippetBlock).to.exist;
126
- });
127
- it('should not render snippet block when no snippets are present', async () => {
128
- var _a;
129
- const el = await fixture(html `<item-tile></item-tile>`);
130
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
131
- expect(snippetBlock).to.not.exist;
132
- });
133
- it('should render with volume/issue view', async () => {
134
- var _a;
123
+ `);
124
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
125
+ expect(snippetBlock).to.exist;
126
+ });
127
+ it('should not render snippet block when no snippets are present', async () => {
128
+ var _a;
129
+ const el = await fixture(html `<item-tile></item-tile>`);
130
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
131
+ expect(snippetBlock).to.not.exist;
132
+ });
133
+ it('should render with volume/issue view', async () => {
134
+ var _a;
135
135
  const el = await fixture(html `
136
136
  <item-tile .model=${{ volume: '1', issue: 'Index' }}></item-tile>
137
- `);
138
- const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
139
- expect(volumeIssueBlock).to.exist;
140
- });
141
- it('should render with volume/issue view to not render', async () => {
142
- var _a;
143
- const el = await fixture(html `<item-tile></item-tile>`);
144
- const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
145
- expect(volumeIssueBlock).to.not.exist;
146
- });
147
- });
137
+ `);
138
+ const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
139
+ expect(volumeIssueBlock).to.exist;
140
+ });
141
+ it('should render with volume/issue view to not render', async () => {
142
+ var _a;
143
+ const el = await fixture(html `<item-tile></item-tile>`);
144
+ const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
145
+ expect(volumeIssueBlock).to.not.exist;
146
+ });
147
+ });
148
148
  //# sourceMappingURL=item-tile.test.js.map
@@ -1 +1 @@
1
- export {};
1
+ export {};