@internetarchive/collection-browser 0.4.9 → 0.4.10-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 (243) 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 +280 -281
  68. package/dist/src/collection-browser.js +1173 -1202
  69. package/dist/src/collection-browser.js.map +1 -1
  70. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  71. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  72. package/dist/src/collection-facets/facets-template.d.ts +16 -16
  73. package/dist/src/collection-facets/facets-template.js +125 -125
  74. package/dist/src/collection-facets/more-facets-content.d.ts +75 -77
  75. package/dist/src/collection-facets/more-facets-content.js +340 -357
  76. package/dist/src/collection-facets/more-facets-content.js.map +1 -1
  77. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  78. package/dist/src/collection-facets/more-facets-pagination.js +192 -192
  79. package/dist/src/collection-facets.d.ts +81 -83
  80. package/dist/src/collection-facets.js +375 -393
  81. package/dist/src/collection-facets.js.map +1 -1
  82. package/dist/src/empty-placeholder.d.ts +11 -11
  83. package/dist/src/empty-placeholder.js +42 -42
  84. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  85. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  86. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  87. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  88. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  89. package/dist/src/mediatype/mediatype-config.js +85 -85
  90. package/dist/src/models.d.ts +115 -115
  91. package/dist/src/models.js +125 -125
  92. package/dist/src/models.js.map +1 -1
  93. package/dist/src/restoration-state-handler.d.ts +45 -45
  94. package/dist/src/restoration-state-handler.js +230 -230
  95. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  96. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  97. package/dist/src/sort-filter-bar/alpha-bar.d.ts +20 -20
  98. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  99. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  100. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  101. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  102. package/dist/src/sort-filter-bar/img/list.js +2 -2
  103. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  104. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  105. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  106. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  107. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +113 -108
  108. package/dist/src/sort-filter-bar/sort-filter-bar.js +614 -548
  109. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  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 +20 -20
  115. package/dist/src/tiles/grid/account-tile.js +64 -64
  116. package/dist/src/tiles/grid/collection-tile.d.ts +17 -17
  117. package/dist/src/tiles/grid/collection-tile.js +71 -71
  118. package/dist/src/tiles/grid/item-tile.d.ts +32 -32
  119. package/dist/src/tiles/grid/item-tile.js +129 -126
  120. package/dist/src/tiles/grid/item-tile.js.map +1 -1
  121. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  122. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +7 -7
  123. package/dist/src/tiles/grid/tile-stats.d.ts +10 -10
  124. package/dist/src/tiles/grid/tile-stats.js +40 -40
  125. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  126. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  127. package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
  128. package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
  129. package/dist/src/tiles/image-block.d.ts +17 -17
  130. package/dist/src/tiles/image-block.js +72 -72
  131. package/dist/src/tiles/item-image.d.ts +35 -35
  132. package/dist/src/tiles/item-image.js +117 -117
  133. package/dist/src/tiles/list/account-label.d.ts +1 -1
  134. package/dist/src/tiles/list/account-label.js +6 -6
  135. package/dist/src/tiles/list/date-label.d.ts +1 -1
  136. package/dist/src/tiles/list/date-label.js +12 -12
  137. package/dist/src/tiles/list/tile-list-compact-header.d.ts +12 -12
  138. package/dist/src/tiles/list/tile-list-compact-header.js +41 -41
  139. package/dist/src/tiles/list/tile-list-compact.d.ts +21 -21
  140. package/dist/src/tiles/list/tile-list-compact.js +99 -99
  141. package/dist/src/tiles/list/tile-list.d.ts +55 -55
  142. package/dist/src/tiles/list/tile-list.js +301 -301
  143. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  144. package/dist/src/tiles/mediatype-icon.js +47 -47
  145. package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
  146. package/dist/src/tiles/overlay/icon-overlay.js +40 -40
  147. package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
  148. package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
  149. package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
  150. package/dist/src/tiles/overlay/text-overlay.js +42 -42
  151. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  152. package/dist/src/tiles/text-snippet-block.js +73 -73
  153. package/dist/src/tiles/tile-dispatcher.d.ts +58 -58
  154. package/dist/src/tiles/tile-dispatcher.js +194 -194
  155. package/dist/src/utils/analytics-events.d.ts +22 -22
  156. package/dist/src/utils/analytics-events.js +24 -24
  157. package/dist/src/utils/format-count.d.ts +7 -7
  158. package/dist/src/utils/format-count.js +76 -76
  159. package/dist/src/utils/format-date.d.ts +2 -2
  160. package/dist/src/utils/format-date.js +23 -23
  161. package/dist/src/utils/format-unit-size.d.ts +2 -2
  162. package/dist/src/utils/format-unit-size.js +33 -33
  163. package/dist/test/collection-browser.test.d.ts +1 -1
  164. package/dist/test/collection-browser.test.js +584 -584
  165. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  166. package/dist/test/collection-facets/facets-template.test.js +62 -62
  167. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  168. package/dist/test/collection-facets/more-facets-content.test.js +114 -114
  169. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  170. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  171. package/dist/test/collection-facets.test.d.ts +2 -2
  172. package/dist/test/collection-facets.test.js +460 -508
  173. package/dist/test/collection-facets.test.js.map +1 -1
  174. package/dist/test/empty-placeholder.test.d.ts +1 -1
  175. package/dist/test/empty-placeholder.test.js +33 -33
  176. package/dist/test/icon-overlay.test.d.ts +1 -1
  177. package/dist/test/icon-overlay.test.js +24 -24
  178. package/dist/test/image-block.test.d.ts +1 -1
  179. package/dist/test/image-block.test.js +48 -48
  180. package/dist/test/item-image.test.d.ts +1 -1
  181. package/dist/test/item-image.test.js +84 -84
  182. package/dist/test/mediatype-config.test.d.ts +1 -1
  183. package/dist/test/mediatype-config.test.js +16 -16
  184. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  185. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  186. package/dist/test/mocks/mock-collection-name-cache.d.ts +7 -7
  187. package/dist/test/mocks/mock-collection-name-cache.js +13 -13
  188. package/dist/test/mocks/mock-search-responses.d.ts +12 -12
  189. package/dist/test/mocks/mock-search-responses.js +341 -341
  190. package/dist/test/mocks/mock-search-service.d.ts +13 -13
  191. package/dist/test/mocks/mock-search-service.js +40 -40
  192. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  193. package/dist/test/restoration-state-handler.test.js +125 -125
  194. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  195. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  196. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  197. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  198. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  199. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +208 -197
  200. package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +1 -1
  201. package/dist/test/text-overlay.test.d.ts +1 -1
  202. package/dist/test/text-overlay.test.js +48 -48
  203. package/dist/test/text-snippet-block.test.d.ts +1 -1
  204. package/dist/test/text-snippet-block.test.js +57 -57
  205. package/dist/test/tile-stats.test.d.ts +1 -1
  206. package/dist/test/tile-stats.test.js +33 -33
  207. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  208. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  209. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  210. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  211. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  212. package/dist/test/tiles/grid/item-tile.test.js +158 -158
  213. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  214. package/dist/test/tiles/hover/hover-pane-controller.test.js +257 -257
  215. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  216. package/dist/test/tiles/hover/tile-hover-pane.test.js +13 -13
  217. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  218. package/dist/test/tiles/list/tile-list-compact.test.js +92 -92
  219. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  220. package/dist/test/tiles/list/tile-list.test.js +163 -163
  221. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  222. package/dist/test/tiles/tile-dispatcher.test.js +67 -67
  223. package/dist/test/utils/format-count.test.d.ts +1 -1
  224. package/dist/test/utils/format-count.test.js +23 -23
  225. package/dist/test/utils/format-date.test.d.ts +1 -1
  226. package/dist/test/utils/format-date.test.js +17 -17
  227. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  228. package/dist/test/utils/format-unit-size.test.js +17 -17
  229. package/local.archive.org.cert +86 -86
  230. package/local.archive.org.key +27 -27
  231. package/package.json +4 -3
  232. package/renovate.json +6 -6
  233. package/src/collection-browser.ts +1 -34
  234. package/src/collection-facets/more-facets-content.ts +2 -22
  235. package/src/collection-facets.ts +1 -24
  236. package/src/models.ts +6 -6
  237. package/src/sort-filter-bar/sort-filter-bar.ts +283 -197
  238. package/src/tiles/grid/item-tile.ts +5 -1
  239. package/test/collection-facets.test.ts +0 -67
  240. package/test/sort-filter-bar/sort-filter-bar.test.ts +56 -39
  241. package/tsconfig.json +21 -21
  242. package/web-dev-server.config.mjs +30 -30
  243. package/web-test-runner.config.mjs +41 -41
@@ -1,133 +1,133 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture, oneEvent } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import sinon from 'sinon';
5
- import '../../src/collection-facets/more-facets-pagination';
6
- afterEach(() => {
7
- sinon.restore();
8
- });
9
- describe('More facets pagination', () => {
10
- describe('5 pages or less', () => {
11
- it('shows all pages', async () => {
12
- var _a;
13
- const el = await fixture(html `<more-facets-pagination .size=${5}></more-facets-pagination>`);
14
- await el.updateComplete;
15
- const pageButtons = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('button[data-page]');
16
- expect(pageButtons.length).to.greaterThan(0);
17
- pageButtons.forEach((button, index) => {
18
- expect(button.textContent).to.contain(index + 1);
19
- });
20
- });
21
- });
22
- it('should render pagination template', async () => {
23
- var _a, _b;
24
- const el = await fixture(html `<more-facets-pagination .size=${10}></more-facets-pagination>`);
25
- await el.updateComplete;
26
- expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-pagination')).to.exist;
27
- expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.arrow-icon')).to.exist;
28
- });
29
- it('should render page numbers', async () => {
30
- var _a;
31
- const el = await fixture(html `<more-facets-pagination .size=${3}></more-facets-pagination>`);
32
- await el.updateComplete;
33
- const pageNumberElement = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.page-numbers');
34
- expect(pageNumberElement).to.exist;
35
- expect(pageNumberElement === null || pageNumberElement === void 0 ? void 0 : pageNumberElement.querySelectorAll('button').length).to.equal(3);
36
- });
37
- it('check current page and total pages', async () => {
38
- var _a, _b;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture, oneEvent } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import sinon from 'sinon';
5
+ import '../../src/collection-facets/more-facets-pagination';
6
+ afterEach(() => {
7
+ sinon.restore();
8
+ });
9
+ describe('More facets pagination', () => {
10
+ describe('5 pages or less', () => {
11
+ it('shows all pages', async () => {
12
+ var _a;
13
+ const el = await fixture(html `<more-facets-pagination .size=${5}></more-facets-pagination>`);
14
+ await el.updateComplete;
15
+ const pageButtons = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('button[data-page]');
16
+ expect(pageButtons.length).to.greaterThan(0);
17
+ pageButtons.forEach((button, index) => {
18
+ expect(button.textContent).to.contain(index + 1);
19
+ });
20
+ });
21
+ });
22
+ it('should render pagination template', async () => {
23
+ var _a, _b;
24
+ const el = await fixture(html `<more-facets-pagination .size=${10}></more-facets-pagination>`);
25
+ await el.updateComplete;
26
+ expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-pagination')).to.exist;
27
+ expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.arrow-icon')).to.exist;
28
+ });
29
+ it('should render page numbers', async () => {
30
+ var _a;
31
+ const el = await fixture(html `<more-facets-pagination .size=${3}></more-facets-pagination>`);
32
+ await el.updateComplete;
33
+ const pageNumberElement = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.page-numbers');
34
+ expect(pageNumberElement).to.exist;
35
+ expect(pageNumberElement === null || pageNumberElement === void 0 ? void 0 : pageNumberElement.querySelectorAll('button').length).to.equal(3);
36
+ });
37
+ it('check current page and total pages', async () => {
38
+ var _a, _b;
39
39
  const el = await fixture(html `<more-facets-pagination
40
40
  .size=${4}
41
41
  .currentPage=${2}
42
- ></more-facets-pagination>`);
43
- await el.updateComplete;
44
- const pageNumberElement = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.page-numbers');
45
- expect(pageNumberElement).to.exist;
46
- expect(pageNumberElement === null || pageNumberElement === void 0 ? void 0 : pageNumberElement.querySelectorAll('button')[1].classList.contains('current')).to.be.true;
47
- expect((_b = el.pages) === null || _b === void 0 ? void 0 : _b.length).to.equal(4);
48
- });
49
- it('get page numbers based of size and currentPage', async () => {
50
- var _a;
42
+ ></more-facets-pagination>`);
43
+ await el.updateComplete;
44
+ const pageNumberElement = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.page-numbers');
45
+ expect(pageNumberElement).to.exist;
46
+ expect(pageNumberElement === null || pageNumberElement === void 0 ? void 0 : pageNumberElement.querySelectorAll('button')[1].classList.contains('current')).to.be.true;
47
+ expect((_b = el.pages) === null || _b === void 0 ? void 0 : _b.length).to.equal(4);
48
+ });
49
+ it('get page numbers based of size and currentPage', async () => {
50
+ var _a;
51
51
  const el = await fixture(html `<more-facets-pagination
52
52
  .size=${4}
53
53
  .currentPage=${2}
54
- ></more-facets-pagination>`);
55
- await el.updateComplete;
56
- expect((_a = el.pages) === null || _a === void 0 ? void 0 : _a.length).to.equal(4);
57
- });
58
- describe('Selecting a page', () => {
59
- it('fires event', async () => {
60
- const el = await fixture(html `<more-facets-pagination></more-facets-pagination>`);
61
- await el.updateComplete;
62
- setTimeout(() => el.dispatchEvent(new CustomEvent('pageNumberClicked', { detail: { page: 15 } })));
63
- const { detail } = await oneEvent(el, 'pageNumberClicked');
64
- expect(detail === null || detail === void 0 ? void 0 : detail.page).to.equal(15);
65
- });
66
- it('sets off side effects with `onChange`', async () => {
67
- var _a;
54
+ ></more-facets-pagination>`);
55
+ await el.updateComplete;
56
+ expect((_a = el.pages) === null || _a === void 0 ? void 0 : _a.length).to.equal(4);
57
+ });
58
+ describe('Selecting a page', () => {
59
+ it('fires event', async () => {
60
+ const el = await fixture(html `<more-facets-pagination></more-facets-pagination>`);
61
+ await el.updateComplete;
62
+ setTimeout(() => el.dispatchEvent(new CustomEvent('pageNumberClicked', { detail: { page: 15 } })));
63
+ const { detail } = await oneEvent(el, 'pageNumberClicked');
64
+ expect(detail === null || detail === void 0 ? void 0 : detail.page).to.equal(15);
65
+ });
66
+ it('sets off side effects with `onChange`', async () => {
67
+ var _a;
68
68
  const el = await fixture(html `<more-facets-pagination
69
69
  .size=${'10'}
70
70
  .currentPage=${2}
71
- ></more-facets-pagination>`);
72
- expect(el.currentPage).to.equal(2); // confirm current page
73
- const fake1 = sinon.fake();
74
- const fake2 = sinon.fake();
75
- el.observePageCount = fake1;
76
- el.emitPageClick = fake2;
77
- // select first page button
78
- const pageButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.page-numbers > button');
79
- // confirm button isn't selected
80
- expect(pageButton.classList.contains('current')).to.be.false;
81
- pageButton.click();
82
- await el.updateComplete;
83
- expect(fake1.callCount).to.equal(1);
84
- expect(fake2.callCount).to.equal(1);
85
- expect(el.currentPage).to.equal(1); // brings us back to currentPage
86
- // confirm button is selected
87
- expect(pageButton.classList.contains('current')).to.be.true;
88
- });
89
- });
90
- describe('Using Arrows', () => {
91
- it('going backwards', async () => {
92
- var _a, _b;
71
+ ></more-facets-pagination>`);
72
+ expect(el.currentPage).to.equal(2); // confirm current page
73
+ const fake1 = sinon.fake();
74
+ const fake2 = sinon.fake();
75
+ el.observePageCount = fake1;
76
+ el.emitPageClick = fake2;
77
+ // select first page button
78
+ const pageButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.page-numbers > button');
79
+ // confirm button isn't selected
80
+ expect(pageButton.classList.contains('current')).to.be.false;
81
+ pageButton.click();
82
+ await el.updateComplete;
83
+ expect(fake1.callCount).to.equal(1);
84
+ expect(fake2.callCount).to.equal(1);
85
+ expect(el.currentPage).to.equal(1); // brings us back to currentPage
86
+ // confirm button is selected
87
+ expect(pageButton.classList.contains('current')).to.be.true;
88
+ });
89
+ });
90
+ describe('Using Arrows', () => {
91
+ it('going backwards', async () => {
92
+ var _a, _b;
93
93
  const el = await fixture(html `<more-facets-pagination
94
94
  .size=${'10'}
95
95
  .currentPage=${2}
96
- ></more-facets-pagination>`);
97
- expect(el.currentPage).to.equal(2); // confirm current page
98
- const fake1 = sinon.fake();
99
- const fake2 = sinon.fake();
100
- el.observePageCount = fake1;
101
- el.emitPageClick = fake2;
102
- // select first page button
103
- const rewindButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-pagination > button.rewind');
104
- rewindButton.click();
105
- await el.updateComplete;
106
- expect(fake1.callCount).to.equal(1);
107
- expect(fake2.callCount).to.equal(1);
108
- expect(el.currentPage).to.equal(1); // brings us back 1 page
109
- // confirm button is selected
110
- expect(((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.page-numbers > button[data-page="1"]')).classList.contains('current')).to.be.true;
111
- });
112
- it('going forwards', async () => {
113
- var _a;
96
+ ></more-facets-pagination>`);
97
+ expect(el.currentPage).to.equal(2); // confirm current page
98
+ const fake1 = sinon.fake();
99
+ const fake2 = sinon.fake();
100
+ el.observePageCount = fake1;
101
+ el.emitPageClick = fake2;
102
+ // select first page button
103
+ const rewindButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-pagination > button.rewind');
104
+ rewindButton.click();
105
+ await el.updateComplete;
106
+ expect(fake1.callCount).to.equal(1);
107
+ expect(fake2.callCount).to.equal(1);
108
+ expect(el.currentPage).to.equal(1); // brings us back 1 page
109
+ // confirm button is selected
110
+ expect(((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.page-numbers > button[data-page="1"]')).classList.contains('current')).to.be.true;
111
+ });
112
+ it('going forwards', async () => {
113
+ var _a;
114
114
  const el = await fixture(html `<more-facets-pagination
115
115
  .size=${'10'}
116
116
  .currentPage=${5}
117
- ></more-facets-pagination>`);
118
- expect(el.currentPage).to.equal(5); // confirm current page
119
- const fake1 = sinon.fake();
120
- const fake2 = sinon.fake();
121
- el.observePageCount = fake1;
122
- el.emitPageClick = fake2;
123
- // select first page button
124
- const forwardButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-pagination > button.forward');
125
- forwardButton.click();
126
- await el.updateComplete;
127
- expect(fake1.callCount).to.equal(1);
128
- expect(fake2.callCount).to.equal(1);
129
- expect(el.currentPage).to.equal(6); // brings us forward 1 page
130
- });
131
- });
132
- });
117
+ ></more-facets-pagination>`);
118
+ expect(el.currentPage).to.equal(5); // confirm current page
119
+ const fake1 = sinon.fake();
120
+ const fake2 = sinon.fake();
121
+ el.observePageCount = fake1;
122
+ el.emitPageClick = fake2;
123
+ // select first page button
124
+ const forwardButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-pagination > button.forward');
125
+ forwardButton.click();
126
+ await el.updateComplete;
127
+ expect(fake1.callCount).to.equal(1);
128
+ expect(fake2.callCount).to.equal(1);
129
+ expect(el.currentPage).to.equal(6); // brings us forward 1 page
130
+ });
131
+ });
132
+ });
133
133
  //# sourceMappingURL=more-facets-pagination.test.js.map
@@ -1,2 +1,2 @@
1
- import '@internetarchive/modal-manager';
2
- import '../src/collection-facets';
1
+ import '@internetarchive/modal-manager';
2
+ import '../src/collection-facets';