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

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 (236) 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 +47 -43
  12. package/dist/src/app-root.js +331 -285
  13. package/dist/src/app-root.js.map +1 -1
  14. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  15. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  16. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  17. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  18. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  19. package/dist/src/assets/img/icons/chevron.js +2 -2
  20. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  21. package/dist/src/assets/img/icons/empty-query.js +2 -2
  22. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  23. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  24. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  25. package/dist/src/assets/img/icons/eye.js +2 -2
  26. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  27. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  28. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  29. package/dist/src/assets/img/icons/login-required.js +2 -2
  30. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  31. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  32. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  33. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  34. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  35. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  36. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  37. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  38. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  39. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  40. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  41. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  42. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  43. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  44. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  45. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  46. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  47. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  48. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  49. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  50. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  51. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  52. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  53. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  54. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  55. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  56. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  57. package/dist/src/assets/img/icons/null-result.js +2 -2
  58. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  59. package/dist/src/assets/img/icons/restricted.js +2 -2
  60. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  61. package/dist/src/assets/img/icons/reviews.js +2 -2
  62. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  63. package/dist/src/assets/img/icons/upload.js +2 -2
  64. package/dist/src/assets/img/icons/views.d.ts +1 -1
  65. package/dist/src/assets/img/icons/views.js +2 -2
  66. package/dist/src/circular-activity-indicator.d.ts +5 -5
  67. package/dist/src/circular-activity-indicator.js +17 -17
  68. package/dist/src/collection-browser.d.ts +246 -245
  69. package/dist/src/collection-browser.js +1370 -1359
  70. package/dist/src/collection-browser.js.map +1 -1
  71. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  72. package/dist/src/collection-facets/facet-tombstone-row.js +42 -42
  73. package/dist/src/collection-facets/facet-tombstone-row.js.map +1 -1
  74. package/dist/src/collection-facets/facets-template.d.ts +16 -16
  75. package/dist/src/collection-facets/facets-template.js +130 -128
  76. package/dist/src/collection-facets/facets-template.js.map +1 -1
  77. package/dist/src/collection-facets/more-facets-content.d.ts +76 -76
  78. package/dist/src/collection-facets/more-facets-content.js +353 -353
  79. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  80. package/dist/src/collection-facets/more-facets-pagination.js +192 -192
  81. package/dist/src/collection-facets.d.ts +77 -77
  82. package/dist/src/collection-facets.js +551 -551
  83. package/dist/src/collection-facets.js.map +1 -1
  84. package/dist/src/empty-placeholder.d.ts +11 -11
  85. package/dist/src/empty-placeholder.js +42 -42
  86. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  87. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  88. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  89. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  90. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  91. package/dist/src/mediatype/mediatype-config.js +85 -85
  92. package/dist/src/models.d.ts +103 -102
  93. package/dist/src/models.js +117 -117
  94. package/dist/src/models.js.map +1 -1
  95. package/dist/src/restoration-state-handler.d.ts +46 -45
  96. package/dist/src/restoration-state-handler.js +230 -220
  97. package/dist/src/restoration-state-handler.js.map +1 -1
  98. package/dist/src/sort-filter-bar/alpha-bar.d.ts +9 -9
  99. package/dist/src/sort-filter-bar/alpha-bar.js +41 -41
  100. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  101. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  102. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  103. package/dist/src/sort-filter-bar/img/list.js +2 -2
  104. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  105. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  106. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  107. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  108. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +107 -107
  109. package/dist/src/sort-filter-bar/sort-filter-bar.js +423 -423
  110. package/dist/src/styles/item-image-styles.d.ts +8 -8
  111. package/dist/src/styles/item-image-styles.js +9 -9
  112. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  113. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  114. package/dist/src/tiles/grid/account-tile.d.ts +8 -8
  115. package/dist/src/tiles/grid/account-tile.js +20 -20
  116. package/dist/src/tiles/grid/collection-tile.d.ts +7 -7
  117. package/dist/src/tiles/grid/collection-tile.js +23 -23
  118. package/dist/src/tiles/grid/item-tile.d.ts +24 -24
  119. package/dist/src/tiles/grid/item-tile.js +87 -87
  120. package/dist/src/tiles/grid/tile-stats.d.ts +10 -10
  121. package/dist/src/tiles/grid/tile-stats.js +46 -40
  122. package/dist/src/tiles/grid/tile-stats.js.map +1 -1
  123. package/dist/src/tiles/image-block.d.ts +17 -17
  124. package/dist/src/tiles/image-block.js +69 -69
  125. package/dist/src/tiles/item-image.d.ts +31 -31
  126. package/dist/src/tiles/item-image.js +103 -103
  127. package/dist/src/tiles/list/account-label.d.ts +1 -1
  128. package/dist/src/tiles/list/account-label.js +6 -6
  129. package/dist/src/tiles/list/date-label.d.ts +1 -1
  130. package/dist/src/tiles/list/date-label.js +12 -12
  131. package/dist/src/tiles/list/tile-list-compact-header.d.ts +12 -12
  132. package/dist/src/tiles/list/tile-list-compact-header.js +41 -41
  133. package/dist/src/tiles/list/tile-list-compact.d.ts +21 -20
  134. package/dist/src/tiles/list/tile-list-compact.js +94 -90
  135. package/dist/src/tiles/list/tile-list-compact.js.map +1 -1
  136. package/dist/src/tiles/list/tile-list.d.ts +50 -50
  137. package/dist/src/tiles/list/tile-list.js +271 -268
  138. package/dist/src/tiles/list/tile-list.js.map +1 -1
  139. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  140. package/dist/src/tiles/mediatype-icon.js +49 -47
  141. package/dist/src/tiles/mediatype-icon.js.map +1 -1
  142. package/dist/src/tiles/overlay/icon-overlay.d.ts +7 -7
  143. package/dist/src/tiles/overlay/icon-overlay.js +30 -30
  144. package/dist/src/tiles/overlay/text-overlay.d.ts +8 -8
  145. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  146. package/dist/src/tiles/text-snippet-block.d.ts +29 -29
  147. package/dist/src/tiles/text-snippet-block.js +81 -81
  148. package/dist/src/tiles/tile-dispatcher.d.ts +36 -36
  149. package/dist/src/tiles/tile-dispatcher.js +128 -128
  150. package/dist/src/utils/analytics-events.d.ts +22 -22
  151. package/dist/src/utils/analytics-events.js +24 -24
  152. package/dist/src/utils/format-count.d.ts +7 -7
  153. package/dist/src/utils/format-count.js +76 -76
  154. package/dist/src/utils/format-date.d.ts +2 -2
  155. package/dist/src/utils/format-date.js +23 -23
  156. package/dist/test/collection-browser.test.d.ts +1 -1
  157. package/dist/test/collection-browser.test.js +481 -415
  158. package/dist/test/collection-browser.test.js.map +1 -1
  159. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  160. package/dist/test/collection-facets/facets-template.test.js +62 -62
  161. package/dist/test/collection-facets/facets-template.test.js.map +1 -1
  162. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  163. package/dist/test/collection-facets/more-facets-content.test.js +114 -114
  164. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  165. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  166. package/dist/test/collection-facets.test.d.ts +2 -2
  167. package/dist/test/collection-facets.test.js +498 -498
  168. package/dist/test/empty-placeholder.test.d.ts +1 -1
  169. package/dist/test/empty-placeholder.test.js +33 -33
  170. package/dist/test/icon-overlay.test.d.ts +1 -1
  171. package/dist/test/icon-overlay.test.js +24 -24
  172. package/dist/test/image-block.test.d.ts +1 -1
  173. package/dist/test/image-block.test.js +48 -48
  174. package/dist/test/item-image.test.d.ts +1 -1
  175. package/dist/test/item-image.test.js +56 -56
  176. package/dist/test/mediatype-config.test.d.ts +1 -1
  177. package/dist/test/mediatype-config.test.js +16 -16
  178. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  179. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  180. package/dist/test/mocks/mock-collection-name-cache.d.ts +7 -7
  181. package/dist/test/mocks/mock-collection-name-cache.js +13 -13
  182. package/dist/test/mocks/mock-search-responses.d.ts +8 -8
  183. package/dist/test/mocks/mock-search-responses.js +198 -198
  184. package/dist/test/mocks/mock-search-responses.js.map +1 -1
  185. package/dist/test/mocks/mock-search-service.d.ts +13 -13
  186. package/dist/test/mocks/mock-search-service.js +32 -32
  187. package/dist/test/mocks/mock-search-service.js.map +1 -1
  188. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  189. package/dist/test/restoration-state-handler.test.js +126 -117
  190. package/dist/test/restoration-state-handler.test.js.map +1 -1
  191. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  192. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +113 -113
  193. package/dist/test/text-overlay.test.d.ts +1 -1
  194. package/dist/test/text-overlay.test.js +41 -41
  195. package/dist/test/text-snippet-block.test.d.ts +1 -1
  196. package/dist/test/text-snippet-block.test.js +57 -57
  197. package/dist/test/tile-stats.test.d.ts +1 -1
  198. package/dist/test/tile-stats.test.js +33 -33
  199. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  200. package/dist/test/tiles/grid/item-tile.test.js +107 -107
  201. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  202. package/dist/test/tiles/list/tile-list-compact.test.js +125 -26
  203. package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
  204. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  205. package/dist/test/tiles/list/tile-list.test.js +79 -47
  206. package/dist/test/tiles/list/tile-list.test.js.map +1 -1
  207. package/dist/test/utils/format-count.test.d.ts +1 -1
  208. package/dist/test/utils/format-count.test.js +23 -23
  209. package/dist/test/utils/format-date.test.d.ts +1 -1
  210. package/dist/test/utils/format-date.test.js +17 -17
  211. package/index.html +24 -24
  212. package/local.archive.org.cert +86 -86
  213. package/local.archive.org.key +27 -27
  214. package/package.json +115 -115
  215. package/renovate.json +6 -6
  216. package/src/app-root.ts +104 -55
  217. package/src/collection-browser.ts +1503 -1488
  218. package/src/collection-facets/facet-tombstone-row.ts +40 -40
  219. package/src/collection-facets/facets-template.ts +5 -3
  220. package/src/collection-facets.ts +635 -635
  221. package/src/models.ts +1 -0
  222. package/src/restoration-state-handler.ts +19 -1
  223. package/src/tiles/grid/tile-stats.ts +18 -5
  224. package/src/tiles/list/tile-list-compact.ts +7 -3
  225. package/src/tiles/list/tile-list.ts +6 -1
  226. package/src/tiles/mediatype-icon.ts +2 -0
  227. package/test/collection-browser.test.ts +679 -599
  228. package/test/collection-facets/facets-template.test.ts +5 -3
  229. package/test/mocks/mock-search-responses.ts +226 -226
  230. package/test/mocks/mock-search-service.ts +61 -61
  231. package/test/restoration-state-handler.test.ts +12 -0
  232. package/test/tiles/list/tile-list-compact.test.ts +110 -0
  233. package/test/tiles/list/tile-list.test.ts +36 -0
  234. package/tsconfig.json +21 -21
  235. package/web-dev-server.config.mjs +30 -30
  236. package/web-test-runner.config.mjs +41 -41
@@ -1,48 +1,48 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../src/tiles/overlay/text-overlay';
5
- describe('Text Overlay component', () => {
6
- it('should render initial component', async () => {
7
- var _a, _b;
8
- const el = await fixture(html `<text-overlay></text-overlay>`);
9
- const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
10
- const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
11
- expect(overlay).to.exist;
12
- expect(noPreview).to.exist;
13
- });
14
- it('should render component if loggedIn required', async () => {
15
- var _a, _b;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import '../src/tiles/overlay/text-overlay';
5
+ describe('Text Overlay component', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b;
8
+ const el = await fixture(html `<text-overlay></text-overlay>`);
9
+ const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
10
+ const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
11
+ expect(overlay).to.exist;
12
+ expect(noPreview).to.exist;
13
+ });
14
+ it('should render component if loggedIn required', async () => {
15
+ var _a, _b;
16
16
  const el = await fixture(html `
17
17
  <text-overlay .loggedIn=${false} .loginRequired=${true}> </text-overlay>
18
- `);
19
- const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
20
- const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
21
- expect(overlay).to.exist;
22
- expect(noPreview).to.exist;
23
- expect(noPreview === null || noPreview === void 0 ? void 0 : noPreview.textContent).to.equal('Log in\nto view this item');
24
- });
25
- it('should render component if content warning', async () => {
26
- var _a, _b;
18
+ `);
19
+ const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
20
+ const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
21
+ expect(overlay).to.exist;
22
+ expect(noPreview).to.exist;
23
+ expect(noPreview === null || noPreview === void 0 ? void 0 : noPreview.textContent).to.equal('Log in\nto view this item');
24
+ });
25
+ it('should render component if content warning', async () => {
26
+ var _a, _b;
27
27
  const el = await fixture(html `
28
28
  <text-overlay .loggedIn=${false} .loginRequired=${false}> </text-overlay>
29
- `);
30
- const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
31
- const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
32
- expect(overlay).to.exist;
33
- expect(noPreview).to.exist;
34
- expect(noPreview === null || noPreview === void 0 ? void 0 : noPreview.textContent).to.equal('Content may be inappropriate');
35
- });
36
- it('should render component if content warning', async () => {
37
- var _a, _b;
29
+ `);
30
+ const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
31
+ const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
32
+ expect(overlay).to.exist;
33
+ expect(noPreview).to.exist;
34
+ expect(noPreview === null || noPreview === void 0 ? void 0 : noPreview.textContent).to.equal('Content may be inappropriate');
35
+ });
36
+ it('should render component if content warning', async () => {
37
+ var _a, _b;
38
38
  const el = await fixture(html `
39
39
  <text-overlay .loggedIn=${true} .loginRequired=${true}> </text-overlay>
40
- `);
41
- const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
42
- const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
43
- expect(overlay).to.exist;
44
- expect(noPreview).to.exist;
45
- expect(noPreview === null || noPreview === void 0 ? void 0 : noPreview.textContent).to.equal('Content may be inappropriate');
46
- });
47
- });
40
+ `);
41
+ const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
42
+ const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
43
+ expect(overlay).to.exist;
44
+ expect(noPreview).to.exist;
45
+ expect(noPreview === null || noPreview === void 0 ? void 0 : noPreview.textContent).to.equal('Content may be inappropriate');
46
+ });
47
+ });
48
48
  //# sourceMappingURL=text-overlay.test.js.map
@@ -1 +1 @@
1
- import '../src/tiles/text-snippet-block';
1
+ import '../src/tiles/text-snippet-block';
@@ -1,64 +1,64 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../src/tiles/text-snippet-block';
5
- describe('TextSnippetBlock component', () => {
6
- it('should render initial component', async () => {
7
- var _a, _b;
8
- const el = await fixture(html `<text-snippet-block></text-snippet-block>`);
9
- // No content if no snippets
10
- expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.children.length).to.equal(0);
11
- // Content appears if there are snippets
12
- el.snippets = ['text'];
13
- await el.updateComplete;
14
- const container = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.container');
15
- expect(container).to.exist;
16
- });
17
- it('should render marked snippets', async () => {
18
- var _a;
19
- const snippets = [
20
- 'some {{{snippet}}} text',
21
- 'some {{{other}}} {{{snippet}}} text',
22
- ];
23
- const el = await fixture(html `<text-snippet-block .snippets=${snippets}></text-snippet-block>`);
24
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
25
- // Has the correct number of snippets and highlights
26
- expect(container === null || container === void 0 ? void 0 : container.children.length).to.equal(snippets.length);
27
- expect(container === null || container === void 0 ? void 0 : container.querySelectorAll('mark').length).to.equal(3);
28
- });
29
- it('should render marked snippets containing newlines', async () => {
30
- var _a;
31
- const snippets = [
32
- 'some {{{snippet}}} text',
33
- 'some {{{other}}} {{{snippet\n text}}}',
34
- ];
35
- const el = await fixture(html `<text-snippet-block .snippets=${snippets}></text-snippet-block>`);
36
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
37
- // Has the correct number of snippets and highlights
38
- expect(container === null || container === void 0 ? void 0 : container.children.length).to.equal(snippets.length);
39
- expect(container === null || container === void 0 ? void 0 : container.querySelectorAll('mark').length).to.equal(3);
40
- });
41
- it('should render correctly in grid mode', async () => {
42
- 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/text-snippet-block';
5
+ describe('TextSnippetBlock component', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b;
8
+ const el = await fixture(html `<text-snippet-block></text-snippet-block>`);
9
+ // No content if no snippets
10
+ expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.children.length).to.equal(0);
11
+ // Content appears if there are snippets
12
+ el.snippets = ['text'];
13
+ await el.updateComplete;
14
+ const container = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.container');
15
+ expect(container).to.exist;
16
+ });
17
+ it('should render marked snippets', async () => {
18
+ var _a;
19
+ const snippets = [
20
+ 'some {{{snippet}}} text',
21
+ 'some {{{other}}} {{{snippet}}} text',
22
+ ];
23
+ const el = await fixture(html `<text-snippet-block .snippets=${snippets}></text-snippet-block>`);
24
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
25
+ // Has the correct number of snippets and highlights
26
+ expect(container === null || container === void 0 ? void 0 : container.children.length).to.equal(snippets.length);
27
+ expect(container === null || container === void 0 ? void 0 : container.querySelectorAll('mark').length).to.equal(3);
28
+ });
29
+ it('should render marked snippets containing newlines', async () => {
30
+ var _a;
31
+ const snippets = [
32
+ 'some {{{snippet}}} text',
33
+ 'some {{{other}}} {{{snippet\n text}}}',
34
+ ];
35
+ const el = await fixture(html `<text-snippet-block .snippets=${snippets}></text-snippet-block>`);
36
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
37
+ // Has the correct number of snippets and highlights
38
+ expect(container === null || container === void 0 ? void 0 : container.children.length).to.equal(snippets.length);
39
+ expect(container === null || container === void 0 ? void 0 : container.querySelectorAll('mark').length).to.equal(3);
40
+ });
41
+ it('should render correctly in grid mode', async () => {
42
+ var _a;
43
43
  const el = await fixture(html `<text-snippet-block
44
44
  viewsize="grid"
45
45
  .snippets=${['text']}
46
- ></text-snippet-block>`);
47
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
48
- // Applies the right container classes
49
- expect(container === null || container === void 0 ? void 0 : container.classList.contains('grid')).to.be.true;
50
- expect(container === null || container === void 0 ? void 0 : container.classList.contains('list')).to.be.false;
51
- });
52
- it('should render correctly in list mode', async () => {
53
- var _a;
46
+ ></text-snippet-block>`);
47
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
48
+ // Applies the right container classes
49
+ expect(container === null || container === void 0 ? void 0 : container.classList.contains('grid')).to.be.true;
50
+ expect(container === null || container === void 0 ? void 0 : container.classList.contains('list')).to.be.false;
51
+ });
52
+ it('should render correctly in list mode', async () => {
53
+ var _a;
54
54
  const el = await fixture(html `<text-snippet-block
55
55
  viewsize="list"
56
56
  .snippets=${['text']}
57
- ></text-snippet-block>`);
58
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
59
- // Applies the right container classes
60
- expect(container === null || container === void 0 ? void 0 : container.classList.contains('list')).to.be.true;
61
- expect(container === null || container === void 0 ? void 0 : container.classList.contains('grid')).to.be.false;
62
- });
63
- });
57
+ ></text-snippet-block>`);
58
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
59
+ // Applies the right container classes
60
+ expect(container === null || container === void 0 ? void 0 : container.classList.contains('list')).to.be.true;
61
+ expect(container === null || container === void 0 ? void 0 : container.classList.contains('grid')).to.be.false;
62
+ });
63
+ });
64
64
  //# sourceMappingURL=text-snippet-block.test.js.map
@@ -1 +1 @@
1
- import '../src/tiles/grid/tile-stats';
1
+ import '../src/tiles/grid/tile-stats';
@@ -1,20 +1,20 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../src/tiles/grid/tile-stats';
5
- describe('Tile Stats', () => {
6
- it('should render initial component', async () => {
7
- var _a, _b;
8
- const el = await fixture(html `<tile-stats></tile-stats>`);
9
- const itemStats = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-stats');
10
- const statsRow = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#stats-row');
11
- const statsRowCount = statsRow === null || statsRow === void 0 ? void 0 : statsRow.childElementCount;
12
- expect(itemStats).to.exist;
13
- expect(statsRow).to.exist;
14
- expect(statsRowCount).to.equal(4);
15
- });
16
- it('should render component with value', async () => {
17
- var _a, _b, _c, _d, _e, _f, _g;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import '../src/tiles/grid/tile-stats';
5
+ describe('Tile Stats', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b;
8
+ const el = await fixture(html `<tile-stats></tile-stats>`);
9
+ const itemStats = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-stats');
10
+ const statsRow = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#stats-row');
11
+ const statsRowCount = statsRow === null || statsRow === void 0 ? void 0 : statsRow.childElementCount;
12
+ expect(itemStats).to.exist;
13
+ expect(statsRow).to.exist;
14
+ expect(statsRowCount).to.equal(4);
15
+ });
16
+ it('should render component with value', async () => {
17
+ var _a, _b, _c, _d, _e, _f, _g;
18
18
  const el = await fixture(html `
19
19
  <tile-stats
20
20
  .mediatype=${'account'}
@@ -23,20 +23,20 @@ describe('Tile Stats', () => {
23
23
  .commentCount=${3}
24
24
  >
25
25
  </tile-stats>
26
- `);
27
- const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
28
- const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
29
- // get second column item in stats row
30
- const itemStatCount = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent;
31
- // get third column item in stats row
32
- const favoritesStatCount = (_e = (_d = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _d === void 0 ? void 0 : _d.querySelector('.status-text')) === null || _e === void 0 ? void 0 : _e.textContent;
33
- // get fourth column item in stats row
34
- const reviewsStatCount = (_g = (_f = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _f === void 0 ? void 0 : _f.querySelector('.status-text')) === null || _g === void 0 ? void 0 : _g.textContent;
35
- expect(mediatypeStat).to.exist;
36
- // Snapshot testing - reference: https://open-wc.org/docs/testing/semantic-dom-diff/#snapshot-testing
37
- expect(itemStatCount).to.equalSnapshot(1);
38
- expect(favoritesStatCount).to.equalSnapshot(2);
39
- expect(reviewsStatCount).to.equalSnapshot(3);
40
- });
41
- });
26
+ `);
27
+ const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
28
+ const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
29
+ // get second column item in stats row
30
+ const itemStatCount = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent;
31
+ // get third column item in stats row
32
+ const favoritesStatCount = (_e = (_d = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _d === void 0 ? void 0 : _d.querySelector('.status-text')) === null || _e === void 0 ? void 0 : _e.textContent;
33
+ // get fourth column item in stats row
34
+ const reviewsStatCount = (_g = (_f = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _f === void 0 ? void 0 : _f.querySelector('.status-text')) === null || _g === void 0 ? void 0 : _g.textContent;
35
+ expect(mediatypeStat).to.exist;
36
+ // Snapshot testing - reference: https://open-wc.org/docs/testing/semantic-dom-diff/#snapshot-testing
37
+ expect(itemStatCount).to.equalSnapshot(1);
38
+ expect(favoritesStatCount).to.equalSnapshot(2);
39
+ expect(reviewsStatCount).to.equalSnapshot(3);
40
+ });
41
+ });
42
42
  //# sourceMappingURL=tile-stats.test.js.map
@@ -1 +1 @@
1
- import '../../../src/tiles/grid/item-tile';
1
+ import '../../../src/tiles/grid/item-tile';
@@ -1,111 +1,111 @@
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;
8
- const el = await fixture(html `<item-tile></item-tile>`);
9
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
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
- expect(itemInfo).to.exist;
13
- expect(imageBlock).to.exist;
14
- expect(itemTitle).to.exist;
15
- });
16
- it('should render with created-by element', async () => {
17
- var _a, _b, _c;
18
- const el = await fixture(html `<item-tile></item-tile>`);
19
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
20
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
21
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
22
- expect(itemInfo).to.exist;
23
- expect(createdBy).to.exist;
24
- expect(dateSortedBy).to.not.exist;
25
- });
26
- it('should not render with created-by but date element', async () => {
27
- var _a, _b;
28
- const el = await fixture(html `<item-tile></item-tile>`);
29
- el.sortParam = {
30
- field: 'date',
31
- direction: 'desc',
32
- };
33
- await el.updateComplete;
34
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
35
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
36
- expect(createdBy).to.not.exist;
37
- expect(dateSortedBy).to.exist;
38
- });
39
- it('should not render with created-by but reviewdate element', async () => {
40
- var _a, _b;
41
- const el = await fixture(html `<item-tile></item-tile>`);
42
- el.sortParam = {
43
- field: 'reviewdate',
44
- direction: 'desc',
45
- };
46
- await el.updateComplete;
47
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
48
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
49
- expect(createdBy).to.not.exist;
50
- expect(dateSortedBy).to.exist;
51
- });
52
- it('should not render with created-by but publicdate element', async () => {
53
- var _a, _b;
54
- const el = await fixture(html `<item-tile></item-tile>`);
55
- el.sortParam = {
56
- field: 'publicdate',
57
- direction: 'desc',
58
- };
59
- await el.updateComplete;
60
- const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
61
- const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
62
- expect(createdBy).to.not.exist;
63
- expect(dateSortedBy).to.exist;
64
- });
65
- it('should render with created-by when sorting not related to date', async () => {
66
- var _a, _b, _c;
67
- const el = await fixture(html `<item-tile></item-tile>`);
68
- el.sortParam = {
69
- field: 'addeddate',
70
- direction: 'asc',
71
- };
72
- await el.updateComplete;
73
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
74
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
75
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
76
- expect(itemInfo).to.exist;
77
- expect(createdBy).to.not.exist;
78
- expect(dateSortedBy).to.exist;
79
- });
80
- it('should render with created-by when sort field id not like date', async () => {
81
- var _a, _b, _c;
82
- const el = await fixture(html `<item-tile></item-tile>`);
83
- el.sortParam = {
84
- field: 'week',
85
- direction: 'asc',
86
- };
87
- await el.updateComplete;
88
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
89
- const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
90
- const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
91
- expect(itemInfo).to.exist;
92
- expect(dateSortedBy).to.not.exist; // it should be exist because this is not related to date sort
93
- expect(createdBy).to.exist;
94
- });
95
- it('should render with snippet block when it has snippets', async () => {
96
- 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;
8
+ const el = await fixture(html `<item-tile></item-tile>`);
9
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
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
+ expect(itemInfo).to.exist;
13
+ expect(imageBlock).to.exist;
14
+ expect(itemTitle).to.exist;
15
+ });
16
+ it('should render with created-by element', async () => {
17
+ var _a, _b, _c;
18
+ const el = await fixture(html `<item-tile></item-tile>`);
19
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
20
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
21
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
22
+ expect(itemInfo).to.exist;
23
+ expect(createdBy).to.exist;
24
+ expect(dateSortedBy).to.not.exist;
25
+ });
26
+ it('should not render with created-by but date element', async () => {
27
+ var _a, _b;
28
+ const el = await fixture(html `<item-tile></item-tile>`);
29
+ el.sortParam = {
30
+ field: 'date',
31
+ direction: 'desc',
32
+ };
33
+ await el.updateComplete;
34
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
35
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
36
+ expect(createdBy).to.not.exist;
37
+ expect(dateSortedBy).to.exist;
38
+ });
39
+ it('should not render with created-by but reviewdate element', async () => {
40
+ var _a, _b;
41
+ const el = await fixture(html `<item-tile></item-tile>`);
42
+ el.sortParam = {
43
+ field: 'reviewdate',
44
+ direction: 'desc',
45
+ };
46
+ await el.updateComplete;
47
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
48
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
49
+ expect(createdBy).to.not.exist;
50
+ expect(dateSortedBy).to.exist;
51
+ });
52
+ it('should not render with created-by but publicdate element', async () => {
53
+ var _a, _b;
54
+ const el = await fixture(html `<item-tile></item-tile>`);
55
+ el.sortParam = {
56
+ field: 'publicdate',
57
+ direction: 'desc',
58
+ };
59
+ await el.updateComplete;
60
+ const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
61
+ const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
62
+ expect(createdBy).to.not.exist;
63
+ expect(dateSortedBy).to.exist;
64
+ });
65
+ it('should render with created-by when sorting not related to date', async () => {
66
+ var _a, _b, _c;
67
+ const el = await fixture(html `<item-tile></item-tile>`);
68
+ el.sortParam = {
69
+ field: 'addeddate',
70
+ direction: 'asc',
71
+ };
72
+ await el.updateComplete;
73
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
74
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
75
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
76
+ expect(itemInfo).to.exist;
77
+ expect(createdBy).to.not.exist;
78
+ expect(dateSortedBy).to.exist;
79
+ });
80
+ it('should render with created-by when sort field id not like date', async () => {
81
+ var _a, _b, _c;
82
+ const el = await fixture(html `<item-tile></item-tile>`);
83
+ el.sortParam = {
84
+ field: 'week',
85
+ direction: 'asc',
86
+ };
87
+ await el.updateComplete;
88
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
89
+ const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
90
+ const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
91
+ expect(itemInfo).to.exist;
92
+ expect(dateSortedBy).to.not.exist; // it should be exist because this is not related to date sort
93
+ expect(createdBy).to.exist;
94
+ });
95
+ it('should render with snippet block when it has snippets', async () => {
96
+ var _a;
97
97
  const el = await fixture(html `
98
98
  <item-tile .model=${{ snippets: ['some {{{snippet}}} text'] }}>
99
99
  </item-tile>
100
- `);
101
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
102
- expect(snippetBlock).to.exist;
103
- });
104
- it('should not render snippet block when no snippets are present', async () => {
105
- var _a;
106
- const el = await fixture(html `<item-tile></item-tile>`);
107
- const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
108
- expect(snippetBlock).to.not.exist;
109
- });
110
- });
100
+ `);
101
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
102
+ expect(snippetBlock).to.exist;
103
+ });
104
+ it('should not render snippet block when no snippets are present', async () => {
105
+ var _a;
106
+ const el = await fixture(html `<item-tile></item-tile>`);
107
+ const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
108
+ expect(snippetBlock).to.not.exist;
109
+ });
110
+ });
111
111
  //# sourceMappingURL=item-tile.test.js.map
@@ -1 +1 @@
1
- import '../../../src/tiles/list/tile-list-compact';
1
+ import '../../../src/tiles/list/tile-list-compact';