@internetarchive/collection-browser 4.7.1-alpha-webdev9189.0 → 4.8.1-alpha-webdev9189.0

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 (351) hide show
  1. package/dist/src/app-root.js +0 -2
  2. package/dist/src/app-root.js.map +1 -1
  3. package/dist/src/assets/img/icons/check.d.ts +2 -0
  4. package/dist/src/assets/img/icons/check.js +5 -0
  5. package/dist/src/assets/img/icons/check.js.map +1 -0
  6. package/dist/src/collection-facets/facet-row-template.d.ts +38 -0
  7. package/dist/src/collection-facets/facet-row-template.js +200 -0
  8. package/dist/src/collection-facets/facet-row-template.js.map +1 -0
  9. package/dist/src/collection-facets/facet-row.js +11 -186
  10. package/dist/src/collection-facets/facet-row.js.map +1 -1
  11. package/dist/src/collection-facets/models.d.ts +7 -2
  12. package/dist/src/collection-facets/models.js +7 -2
  13. package/dist/src/collection-facets/models.js.map +1 -1
  14. package/dist/src/collection-facets/more-facets-content.d.ts +87 -21
  15. package/dist/src/collection-facets/more-facets-content.js +477 -200
  16. package/dist/src/collection-facets/more-facets-content.js.map +1 -1
  17. package/dist/src/collection-facets/more-facets-scroller.d.ts +85 -0
  18. package/dist/src/collection-facets/more-facets-scroller.js +428 -0
  19. package/dist/src/collection-facets/more-facets-scroller.js.map +1 -0
  20. package/dist/src/collection-facets/page-window.d.ts +73 -0
  21. package/dist/src/collection-facets/page-window.js +202 -0
  22. package/dist/src/collection-facets/page-window.js.map +1 -0
  23. package/dist/src/collection-facets/toggle-switch.js +1 -0
  24. package/dist/src/collection-facets/toggle-switch.js.map +1 -1
  25. package/dist/src/models.d.ts +4 -0
  26. package/dist/src/models.js +16 -0
  27. package/dist/src/models.js.map +1 -1
  28. package/dist/src/utils/normalize-filter-text.d.ts +28 -0
  29. package/dist/src/utils/normalize-filter-text.js +35 -0
  30. package/dist/src/utils/normalize-filter-text.js.map +1 -0
  31. package/package.json +7 -1
  32. package/.editorconfig +0 -29
  33. package/.github/workflows/ci.yml +0 -29
  34. package/.github/workflows/gh-pages-main.yml +0 -41
  35. package/.github/workflows/npm-publish.yml +0 -42
  36. package/.github/workflows/pr-preview.yml +0 -40
  37. package/.husky/pre-commit +0 -1
  38. package/.prettierignore +0 -1
  39. package/dist/src/collection-facets/more-facets-pagination.d.ts +0 -36
  40. package/dist/src/collection-facets/more-facets-pagination.js +0 -260
  41. package/dist/src/collection-facets/more-facets-pagination.js.map +0 -1
  42. package/dist/test/collection-browser.test.d.ts +0 -1
  43. package/dist/test/collection-browser.test.js +0 -1849
  44. package/dist/test/collection-browser.test.js.map +0 -1
  45. package/dist/test/collection-facets/facet-row.test.d.ts +0 -1
  46. package/dist/test/collection-facets/facet-row.test.js +0 -291
  47. package/dist/test/collection-facets/facet-row.test.js.map +0 -1
  48. package/dist/test/collection-facets/facets-template.test.d.ts +0 -1
  49. package/dist/test/collection-facets/facets-template.test.js +0 -95
  50. package/dist/test/collection-facets/facets-template.test.js.map +0 -1
  51. package/dist/test/collection-facets/more-facets-content.test.d.ts +0 -1
  52. package/dist/test/collection-facets/more-facets-content.test.js +0 -159
  53. package/dist/test/collection-facets/more-facets-content.test.js.map +0 -1
  54. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +0 -1
  55. package/dist/test/collection-facets/more-facets-pagination.test.js +0 -126
  56. package/dist/test/collection-facets/more-facets-pagination.test.js.map +0 -1
  57. package/dist/test/collection-facets/toggle-switch.test.d.ts +0 -1
  58. package/dist/test/collection-facets/toggle-switch.test.js +0 -99
  59. package/dist/test/collection-facets/toggle-switch.test.js.map +0 -1
  60. package/dist/test/collection-facets.test.d.ts +0 -2
  61. package/dist/test/collection-facets.test.js +0 -728
  62. package/dist/test/collection-facets.test.js.map +0 -1
  63. package/dist/test/data-source/collection-browser-data-source.test.d.ts +0 -1
  64. package/dist/test/data-source/collection-browser-data-source.test.js +0 -154
  65. package/dist/test/data-source/collection-browser-data-source.test.js.map +0 -1
  66. package/dist/test/empty-placeholder.test.d.ts +0 -1
  67. package/dist/test/empty-placeholder.test.js +0 -57
  68. package/dist/test/empty-placeholder.test.js.map +0 -1
  69. package/dist/test/expanded-date-picker.test.d.ts +0 -1
  70. package/dist/test/expanded-date-picker.test.js +0 -124
  71. package/dist/test/expanded-date-picker.test.js.map +0 -1
  72. package/dist/test/icon-overlay.test.d.ts +0 -1
  73. package/dist/test/icon-overlay.test.js +0 -31
  74. package/dist/test/icon-overlay.test.js.map +0 -1
  75. package/dist/test/image-block.test.d.ts +0 -1
  76. package/dist/test/image-block.test.js +0 -208
  77. package/dist/test/image-block.test.js.map +0 -1
  78. package/dist/test/item-image.test.d.ts +0 -1
  79. package/dist/test/item-image.test.js +0 -187
  80. package/dist/test/item-image.test.js.map +0 -1
  81. package/dist/test/manage/manage-bar.test.d.ts +0 -3
  82. package/dist/test/manage/manage-bar.test.js +0 -216
  83. package/dist/test/manage/manage-bar.test.js.map +0 -1
  84. package/dist/test/manage/remove-items-modal-content.test.d.ts +0 -1
  85. package/dist/test/manage/remove-items-modal-content.test.js +0 -60
  86. package/dist/test/manage/remove-items-modal-content.test.js.map +0 -1
  87. package/dist/test/mediatype-config.test.d.ts +0 -1
  88. package/dist/test/mediatype-config.test.js +0 -11
  89. package/dist/test/mediatype-config.test.js.map +0 -1
  90. package/dist/test/mocks/mock-analytics-handler.d.ts +0 -10
  91. package/dist/test/mocks/mock-analytics-handler.js +0 -16
  92. package/dist/test/mocks/mock-analytics-handler.js.map +0 -1
  93. package/dist/test/mocks/mock-search-responses.d.ts +0 -31
  94. package/dist/test/mocks/mock-search-responses.js +0 -1241
  95. package/dist/test/mocks/mock-search-responses.js.map +0 -1
  96. package/dist/test/mocks/mock-search-service.d.ts +0 -16
  97. package/dist/test/mocks/mock-search-service.js +0 -64
  98. package/dist/test/mocks/mock-search-service.js.map +0 -1
  99. package/dist/test/restoration-state-handler.test.d.ts +0 -1
  100. package/dist/test/restoration-state-handler.test.js +0 -335
  101. package/dist/test/restoration-state-handler.test.js.map +0 -1
  102. package/dist/test/review-block.test.d.ts +0 -1
  103. package/dist/test/review-block.test.js +0 -46
  104. package/dist/test/review-block.test.js.map +0 -1
  105. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +0 -1
  106. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +0 -12
  107. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js.map +0 -1
  108. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +0 -1
  109. package/dist/test/sort-filter-bar/alpha-bar.test.js +0 -68
  110. package/dist/test/sort-filter-bar/alpha-bar.test.js.map +0 -1
  111. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +0 -1
  112. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +0 -326
  113. package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +0 -1
  114. package/dist/test/text-overlay.test.d.ts +0 -1
  115. package/dist/test/text-overlay.test.js +0 -43
  116. package/dist/test/text-overlay.test.js.map +0 -1
  117. package/dist/test/text-snippet-block.test.d.ts +0 -1
  118. package/dist/test/text-snippet-block.test.js +0 -58
  119. package/dist/test/text-snippet-block.test.js.map +0 -1
  120. package/dist/test/tile-stats.test.d.ts +0 -1
  121. package/dist/test/tile-stats.test.js +0 -167
  122. package/dist/test/tile-stats.test.js.map +0 -1
  123. package/dist/test/tiles/grid/account-tile.test.d.ts +0 -1
  124. package/dist/test/tiles/grid/account-tile.test.js +0 -96
  125. package/dist/test/tiles/grid/account-tile.test.js.map +0 -1
  126. package/dist/test/tiles/grid/collection-tile.test.d.ts +0 -1
  127. package/dist/test/tiles/grid/collection-tile.test.js +0 -90
  128. package/dist/test/tiles/grid/collection-tile.test.js.map +0 -1
  129. package/dist/test/tiles/grid/item-tile.test.d.ts +0 -1
  130. package/dist/test/tiles/grid/item-tile.test.js +0 -400
  131. package/dist/test/tiles/grid/item-tile.test.js.map +0 -1
  132. package/dist/test/tiles/grid/search-tile.test.d.ts +0 -1
  133. package/dist/test/tiles/grid/search-tile.test.js +0 -62
  134. package/dist/test/tiles/grid/search-tile.test.js.map +0 -1
  135. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +0 -1
  136. package/dist/test/tiles/hover/hover-pane-controller.test.js +0 -351
  137. package/dist/test/tiles/hover/hover-pane-controller.test.js.map +0 -1
  138. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +0 -1
  139. package/dist/test/tiles/hover/tile-hover-pane.test.js +0 -53
  140. package/dist/test/tiles/hover/tile-hover-pane.test.js.map +0 -1
  141. package/dist/test/tiles/list/tile-list-compact-header.test.d.ts +0 -1
  142. package/dist/test/tiles/list/tile-list-compact-header.test.js +0 -36
  143. package/dist/test/tiles/list/tile-list-compact-header.test.js.map +0 -1
  144. package/dist/test/tiles/list/tile-list-compact.test.d.ts +0 -1
  145. package/dist/test/tiles/list/tile-list-compact.test.js +0 -237
  146. package/dist/test/tiles/list/tile-list-compact.test.js.map +0 -1
  147. package/dist/test/tiles/list/tile-list.test.d.ts +0 -1
  148. package/dist/test/tiles/list/tile-list.test.js +0 -460
  149. package/dist/test/tiles/list/tile-list.test.js.map +0 -1
  150. package/dist/test/tiles/tile-dispatcher.test.d.ts +0 -1
  151. package/dist/test/tiles/tile-dispatcher.test.js +0 -246
  152. package/dist/test/tiles/tile-dispatcher.test.js.map +0 -1
  153. package/dist/test/tiles/tile-display-value-provider.test.d.ts +0 -1
  154. package/dist/test/tiles/tile-display-value-provider.test.js +0 -142
  155. package/dist/test/tiles/tile-display-value-provider.test.js.map +0 -1
  156. package/dist/test/tiles/tile-mediatype-icon.test.d.ts +0 -1
  157. package/dist/test/tiles/tile-mediatype-icon.test.js +0 -133
  158. package/dist/test/tiles/tile-mediatype-icon.test.js.map +0 -1
  159. package/dist/test/utils/array-equals.test.d.ts +0 -1
  160. package/dist/test/utils/array-equals.test.js +0 -27
  161. package/dist/test/utils/array-equals.test.js.map +0 -1
  162. package/dist/test/utils/format-count.test.d.ts +0 -1
  163. package/dist/test/utils/format-count.test.js +0 -24
  164. package/dist/test/utils/format-count.test.js.map +0 -1
  165. package/dist/test/utils/format-date.test.d.ts +0 -1
  166. package/dist/test/utils/format-date.test.js +0 -61
  167. package/dist/test/utils/format-date.test.js.map +0 -1
  168. package/dist/test/utils/format-unit-size.test.d.ts +0 -1
  169. package/dist/test/utils/format-unit-size.test.js +0 -18
  170. package/dist/test/utils/format-unit-size.test.js.map +0 -1
  171. package/dist/test/utils/local-date-from-utc.test.d.ts +0 -1
  172. package/dist/test/utils/local-date-from-utc.test.js +0 -27
  173. package/dist/test/utils/local-date-from-utc.test.js.map +0 -1
  174. package/eslint.config.mjs +0 -53
  175. package/index.html +0 -24
  176. package/index.ts +0 -29
  177. package/local.archive.org.cert +0 -86
  178. package/local.archive.org.key +0 -27
  179. package/pnpm-workspace.yaml +0 -30
  180. package/renovate.json +0 -6
  181. package/src/app-root.ts +0 -1284
  182. package/src/assets/img/icons/arrow-left.ts +0 -10
  183. package/src/assets/img/icons/arrow-right.ts +0 -10
  184. package/src/assets/img/icons/chevron.ts +0 -4
  185. package/src/assets/img/icons/close-circle-dark.ts +0 -5
  186. package/src/assets/img/icons/contract.ts +0 -9
  187. package/src/assets/img/icons/empty-query.ts +0 -5
  188. package/src/assets/img/icons/expand.ts +0 -9
  189. package/src/assets/img/icons/eye-closed.ts +0 -5
  190. package/src/assets/img/icons/eye.ts +0 -5
  191. package/src/assets/img/icons/favorite-filled.ts +0 -10
  192. package/src/assets/img/icons/favorite-unfilled.ts +0 -9
  193. package/src/assets/img/icons/filter.ts +0 -10
  194. package/src/assets/img/icons/login-required.ts +0 -18
  195. package/src/assets/img/icons/mediatype/account.ts +0 -14
  196. package/src/assets/img/icons/mediatype/audio.ts +0 -14
  197. package/src/assets/img/icons/mediatype/collection.ts +0 -12
  198. package/src/assets/img/icons/mediatype/data.ts +0 -15
  199. package/src/assets/img/icons/mediatype/etree.ts +0 -14
  200. package/src/assets/img/icons/mediatype/film.ts +0 -14
  201. package/src/assets/img/icons/mediatype/images.ts +0 -13
  202. package/src/assets/img/icons/mediatype/radio.ts +0 -15
  203. package/src/assets/img/icons/mediatype/search.ts +0 -14
  204. package/src/assets/img/icons/mediatype/software.ts +0 -13
  205. package/src/assets/img/icons/mediatype/texts.ts +0 -13
  206. package/src/assets/img/icons/mediatype/tv-commercial.ts +0 -12
  207. package/src/assets/img/icons/mediatype/tv-fact-check.ts +0 -12
  208. package/src/assets/img/icons/mediatype/tv-quote.ts +0 -12
  209. package/src/assets/img/icons/mediatype/tv.ts +0 -14
  210. package/src/assets/img/icons/mediatype/video.ts +0 -14
  211. package/src/assets/img/icons/mediatype/web.ts +0 -13
  212. package/src/assets/img/icons/null-result.ts +0 -5
  213. package/src/assets/img/icons/quote.ts +0 -7
  214. package/src/assets/img/icons/restricted.ts +0 -13
  215. package/src/assets/img/icons/reviews.ts +0 -11
  216. package/src/assets/img/icons/upload.ts +0 -12
  217. package/src/assets/img/icons/views.ts +0 -11
  218. package/src/circular-activity-indicator.ts +0 -64
  219. package/src/collection-browser.ts +0 -3187
  220. package/src/collection-facets/facet-row.ts +0 -309
  221. package/src/collection-facets/facet-tombstone-row.ts +0 -40
  222. package/src/collection-facets/facets-template.ts +0 -85
  223. package/src/collection-facets/models.ts +0 -10
  224. package/src/collection-facets/more-facets-content.ts +0 -644
  225. package/src/collection-facets/more-facets-pagination.ts +0 -294
  226. package/src/collection-facets/smart-facets/dedupe.ts +0 -44
  227. package/src/collection-facets/smart-facets/heuristics/browser-language/browser-language-heuristic.ts +0 -27
  228. package/src/collection-facets/smart-facets/heuristics/index.ts +0 -3
  229. package/src/collection-facets/smart-facets/heuristics/query-keywords/query-keywords-heuristic.ts +0 -17
  230. package/src/collection-facets/smart-facets/heuristics/query-keywords/query-keywords-map.ts +0 -70
  231. package/src/collection-facets/smart-facets/heuristics/wikidata/wikidata-entity-map.ts +0 -79
  232. package/src/collection-facets/smart-facets/heuristics/wikidata/wikidata-heuristic.ts +0 -93
  233. package/src/collection-facets/smart-facets/models.ts +0 -36
  234. package/src/collection-facets/smart-facets/smart-facet-bar.ts +0 -437
  235. package/src/collection-facets/smart-facets/smart-facet-button.ts +0 -145
  236. package/src/collection-facets/smart-facets/smart-facet-dropdown.ts +0 -185
  237. package/src/collection-facets/smart-facets/smart-facet-equals.ts +0 -16
  238. package/src/collection-facets/smart-facets/smart-facet-heuristics.ts +0 -26
  239. package/src/collection-facets/toggle-switch.ts +0 -174
  240. package/src/collection-facets.ts +0 -1013
  241. package/src/data-source/collection-browser-data-source-interface.ts +0 -351
  242. package/src/data-source/collection-browser-data-source.ts +0 -1474
  243. package/src/data-source/collection-browser-query-state.ts +0 -60
  244. package/src/data-source/models.ts +0 -56
  245. package/src/empty-placeholder.ts +0 -192
  246. package/src/expanded-date-picker.ts +0 -191
  247. package/src/language-code-handler/language-code-handler.ts +0 -64
  248. package/src/language-code-handler/language-code-mapping.ts +0 -564
  249. package/src/manage/manage-bar.ts +0 -276
  250. package/src/manage/remove-items-modal-content.ts +0 -102
  251. package/src/mediatype/mediatype-config.ts +0 -146
  252. package/src/models.ts +0 -895
  253. package/src/restoration-state-handler.ts +0 -550
  254. package/src/sort-filter-bar/alpha-bar-tooltip.ts +0 -53
  255. package/src/sort-filter-bar/alpha-bar.ts +0 -252
  256. package/src/sort-filter-bar/img/compact.ts +0 -5
  257. package/src/sort-filter-bar/img/list.ts +0 -5
  258. package/src/sort-filter-bar/img/sort-toggle-disabled.ts +0 -15
  259. package/src/sort-filter-bar/img/sort-toggle-down.ts +0 -17
  260. package/src/sort-filter-bar/img/sort-toggle-up.ts +0 -17
  261. package/src/sort-filter-bar/img/sort-triangle.ts +0 -5
  262. package/src/sort-filter-bar/img/tile.ts +0 -5
  263. package/src/sort-filter-bar/sort-filter-bar.ts +0 -734
  264. package/src/styles/ia-button.ts +0 -139
  265. package/src/styles/item-image-styles.ts +0 -124
  266. package/src/styles/sr-only.ts +0 -18
  267. package/src/styles/tile-action-styles.ts +0 -59
  268. package/src/tiles/base-tile-component.ts +0 -124
  269. package/src/tiles/collection-browser-loading-tile.ts +0 -26
  270. package/src/tiles/grid/account-tile.ts +0 -113
  271. package/src/tiles/grid/collection-tile.ts +0 -184
  272. package/src/tiles/grid/item-tile.ts +0 -347
  273. package/src/tiles/grid/search-tile.ts +0 -90
  274. package/src/tiles/grid/styles/tile-grid-shared-styles.ts +0 -130
  275. package/src/tiles/grid/tile-stats.ts +0 -211
  276. package/src/tiles/hover/hover-pane-controller.ts +0 -638
  277. package/src/tiles/hover/tile-hover-pane.ts +0 -184
  278. package/src/tiles/image-block.ts +0 -162
  279. package/src/tiles/item-image.ts +0 -214
  280. package/src/tiles/list/tile-list-compact-header.ts +0 -112
  281. package/src/tiles/list/tile-list-compact.ts +0 -278
  282. package/src/tiles/list/tile-list.ts +0 -718
  283. package/src/tiles/models.ts +0 -21
  284. package/src/tiles/overlay/icon-overlay.ts +0 -57
  285. package/src/tiles/overlay/text-overlay.ts +0 -79
  286. package/src/tiles/review-block.ts +0 -130
  287. package/src/tiles/text-snippet-block.ts +0 -132
  288. package/src/tiles/tile-dispatcher.ts +0 -637
  289. package/src/tiles/tile-display-value-provider.ts +0 -133
  290. package/src/tiles/tile-mediatype-icon.ts +0 -133
  291. package/src/utils/analytics-events.ts +0 -29
  292. package/src/utils/array-equals.ts +0 -8
  293. package/src/utils/collapse-repeated-quotes.ts +0 -13
  294. package/src/utils/date-filter-field.ts +0 -11
  295. package/src/utils/facet-utils.ts +0 -183
  296. package/src/utils/format-count.ts +0 -95
  297. package/src/utils/format-date.ts +0 -62
  298. package/src/utils/format-unit-size.ts +0 -43
  299. package/src/utils/local-date-from-utc.ts +0 -15
  300. package/src/utils/log.ts +0 -14
  301. package/src/utils/resolve-mediatype.ts +0 -26
  302. package/src/utils/sha1.ts +0 -9
  303. package/test/collection-browser.test.ts +0 -2694
  304. package/test/collection-facets/facet-row.test.ts +0 -421
  305. package/test/collection-facets/facets-template.test.ts +0 -139
  306. package/test/collection-facets/more-facets-content.test.ts +0 -231
  307. package/test/collection-facets/more-facets-pagination.test.ts +0 -201
  308. package/test/collection-facets/toggle-switch.test.ts +0 -164
  309. package/test/collection-facets.test.ts +0 -928
  310. package/test/data-source/collection-browser-data-source.test.ts +0 -193
  311. package/test/empty-placeholder.test.ts +0 -88
  312. package/test/expanded-date-picker.test.ts +0 -201
  313. package/test/icon-overlay.test.ts +0 -38
  314. package/test/image-block.test.ts +0 -247
  315. package/test/item-image.test.ts +0 -220
  316. package/test/manage/manage-bar.test.ts +0 -347
  317. package/test/manage/remove-items-modal-content.test.ts +0 -81
  318. package/test/mediatype-config.test.ts +0 -11
  319. package/test/mocks/mock-analytics-handler.ts +0 -30
  320. package/test/mocks/mock-search-responses.ts +0 -1364
  321. package/test/mocks/mock-search-service.ts +0 -134
  322. package/test/restoration-state-handler.test.ts +0 -480
  323. package/test/review-block.test.ts +0 -62
  324. package/test/sort-filter-bar/alpha-bar-tooltip.test.ts +0 -17
  325. package/test/sort-filter-bar/alpha-bar.test.ts +0 -101
  326. package/test/sort-filter-bar/sort-filter-bar.test.ts +0 -472
  327. package/test/text-overlay.test.ts +0 -55
  328. package/test/text-snippet-block.test.ts +0 -85
  329. package/test/tile-stats.test.ts +0 -191
  330. package/test/tiles/grid/account-tile.test.ts +0 -121
  331. package/test/tiles/grid/collection-tile.test.ts +0 -114
  332. package/test/tiles/grid/item-tile.test.ts +0 -520
  333. package/test/tiles/grid/search-tile.test.ts +0 -75
  334. package/test/tiles/hover/hover-pane-controller.test.ts +0 -482
  335. package/test/tiles/hover/tile-hover-pane.test.ts +0 -80
  336. package/test/tiles/list/tile-list-compact-header.test.ts +0 -43
  337. package/test/tiles/list/tile-list-compact.test.ts +0 -282
  338. package/test/tiles/list/tile-list.test.ts +0 -576
  339. package/test/tiles/tile-dispatcher.test.ts +0 -320
  340. package/test/tiles/tile-display-value-provider.test.ts +0 -172
  341. package/test/tiles/tile-mediatype-icon.test.ts +0 -160
  342. package/test/utils/array-equals.test.ts +0 -31
  343. package/test/utils/format-count.test.ts +0 -32
  344. package/test/utils/format-date.test.ts +0 -89
  345. package/test/utils/format-unit-size.test.ts +0 -21
  346. package/test/utils/local-date-from-utc.test.ts +0 -37
  347. package/tsconfig.json +0 -25
  348. package/types/dompurify.d.ts +0 -1
  349. package/vite.config.ts +0 -29
  350. package/web-dev-server.config.mjs +0 -30
  351. package/web-test-runner.config.mjs +0 -52
@@ -1,231 +0,0 @@
1
- import { aTimeout, expect, fixture } from '@open-wc/testing';
2
- import { html } from 'lit';
3
- import type { MoreFacetsContent } from '../../src/collection-facets/more-facets-content';
4
- import '../../src/collection-facets/more-facets-content';
5
- import { MockSearchService } from '../mocks/mock-search-service';
6
- import { MockAnalyticsHandler } from '../mocks/mock-analytics-handler';
7
- import type { FacetsTemplate } from '../../src/collection-facets/facets-template';
8
- import type { SelectedFacets } from '../../src/models';
9
-
10
- const selectedFacetsGroup = {
11
- title: 'Media Type',
12
- key: 'mediatype',
13
- buckets: [
14
- { displayText: 'audio', key: 'audio', count: 1001, state: 'none' },
15
- { displayText: 'movies', key: 'movies', count: 901, state: 'none' },
16
- { displayText: 'texts', key: 'texts', count: 2101, state: 'none' },
17
- { displayText: 'data', key: 'data', count: 230, state: 'none' },
18
- { displayText: 'web', key: 'web', count: 453, state: 'none' },
19
- ],
20
- };
21
-
22
- const yearSelectedFacets: SelectedFacets = {
23
- mediatype: {},
24
- lending: {},
25
- year: {
26
- '2000': { key: '2000', count: 5, state: 'selected' },
27
- },
28
- subject: {},
29
- collection: {},
30
- creator: {},
31
- language: {},
32
- };
33
-
34
- describe('More facets content', () => {
35
- it('should render more facets template', async () => {
36
- const el = await fixture<MoreFacetsContent>(
37
- html`<more-facets-content></more-facets-content>`,
38
- );
39
-
40
- el.facetsLoading = false;
41
- await el.updateComplete;
42
-
43
- expect(el.shadowRoot?.querySelector('.facets-content')).to.exist;
44
- });
45
-
46
- it('should render more facets loader template', async () => {
47
- const el = await fixture<MoreFacetsContent>(
48
- html`<more-facets-content></more-facets-content>`,
49
- );
50
-
51
- el.facetsLoading = true;
52
- await el.updateComplete;
53
-
54
- expect(el.shadowRoot?.querySelector('.facets-loader')).to.exist;
55
- });
56
-
57
- it('should render pagination for more facets', async () => {
58
- const searchService = new MockSearchService();
59
-
60
- const el = await fixture<MoreFacetsContent>(
61
- html`<more-facets-content
62
- .searchService=${searchService}
63
- ></more-facets-content>`,
64
- );
65
-
66
- el.facetKey = 'year';
67
- el.query = 'more-facets'; // Produces a response with 40+ aggregations for multiple pages
68
- await el.updateComplete;
69
- await aTimeout(50); // Give it a moment to perform the (mock) search query after the initial update
70
-
71
- expect(el.shadowRoot?.querySelectorAll('more-facets-pagination')).to.exist;
72
- });
73
-
74
- it('query for more facets content using search service', async () => {
75
- const searchService = new MockSearchService();
76
-
77
- const el = await fixture<MoreFacetsContent>(
78
- html`<more-facets-content
79
- .searchService=${searchService}
80
- ></more-facets-content>`,
81
- );
82
-
83
- el.facetKey = 'collection';
84
- el.query = 'collection-aggregations';
85
- await el.updateComplete;
86
-
87
- expect(searchService.searchParams?.query).to.equal(
88
- 'collection-aggregations',
89
- );
90
- });
91
-
92
- it('queries for more facets using search service within a collection (no query)', async () => {
93
- const searchService = new MockSearchService();
94
-
95
- const el = await fixture<MoreFacetsContent>(
96
- html`<more-facets-content
97
- .searchService=${searchService}
98
- .pageSpecifierParams=${{
99
- pageType: 'collection_details',
100
- pageTarget: 'foobar',
101
- }}
102
- ></more-facets-content>`,
103
- );
104
-
105
- el.facetKey = 'subject';
106
- await el.updateComplete;
107
-
108
- expect(searchService.searchParams?.query).to.be.empty;
109
- expect(searchService.searchParams?.pageTarget).to.equal('foobar');
110
- });
111
-
112
- it('queries for more facets using search service within a collection (with query)', async () => {
113
- const searchService = new MockSearchService();
114
-
115
- const el = await fixture<MoreFacetsContent>(
116
- html`<more-facets-content
117
- .searchService=${searchService}
118
- .pageSpecifierParams=${{
119
- pageType: 'collection_details',
120
- pageTarget: 'foobar',
121
- }}
122
- ></more-facets-content>`,
123
- );
124
-
125
- el.facetKey = 'subject';
126
- el.query = 'title:hello';
127
- await el.updateComplete;
128
-
129
- expect(searchService.searchParams?.query).to.equal('title:hello');
130
- expect(searchService.searchParams?.pageTarget).to.equal('foobar');
131
- });
132
-
133
- it('filter raw selectedFacets object', async () => {
134
- const searchService = new MockSearchService();
135
-
136
- const el = await fixture<MoreFacetsContent>(
137
- html`<more-facets-content
138
- .searchService=${searchService}
139
- .selectedFacets=${selectedFacetsGroup}
140
- ></more-facets-content>`,
141
- );
142
-
143
- el.facetKey = 'collection';
144
- el.query = 'title:hello';
145
- await el.updateComplete;
146
-
147
- expect(searchService.searchParams?.query).to.equal('title:hello');
148
- });
149
-
150
- it('combines selectedFacets and aggregationFacets and renders on modal', async () => {
151
- const searchService = new MockSearchService();
152
-
153
- const el = await fixture<MoreFacetsContent>(
154
- html`<more-facets-content
155
- .facetKey=${'year'}
156
- .query=${'more-facets'}
157
- .searchService=${searchService}
158
- .selectedFacets=${yearSelectedFacets}
159
- ></more-facets-content>`,
160
- );
161
-
162
- const facetsTemplate = el.shadowRoot?.querySelector(
163
- 'facets-template',
164
- ) as FacetsTemplate;
165
- expect(facetsTemplate).to.exist;
166
-
167
- const { facetGroup } = facetsTemplate;
168
- expect(facetGroup?.key).to.equal('year');
169
- expect(facetGroup?.title).to.equal('Year');
170
-
171
- // First bucket is the one that was included in the selected facets
172
- const firstBucket = facetGroup?.buckets[0];
173
- expect(firstBucket?.key).to.equal('2000');
174
- expect(firstBucket?.count).to.equal(5);
175
-
176
- // Second bucket is the most recent year, since year facets default to descending order of year
177
- const secondBucket = facetGroup?.buckets[1];
178
- expect(secondBucket?.key).to.equal('2024');
179
- expect(secondBucket?.count).to.equal(5);
180
- });
181
-
182
- it('cancel button clicked event', async () => {
183
- const searchService = new MockSearchService();
184
- const mockAnalyticsHandler = new MockAnalyticsHandler();
185
-
186
- const el = await fixture<MoreFacetsContent>(
187
- html`<more-facets-content
188
- .facetKey=${'collection'}
189
- .query=${'collection-aggregations'}
190
- .searchService=${searchService}
191
- .analyticsHandler=${mockAnalyticsHandler}
192
- ></more-facets-content>`,
193
- );
194
-
195
- // select cancel button
196
- const cancelButton = el.shadowRoot?.querySelector(
197
- '.footer > .btn-cancel',
198
- ) as HTMLButtonElement;
199
- expect(cancelButton).to.exist;
200
- cancelButton?.click();
201
-
202
- expect(mockAnalyticsHandler.callCategory).to.equal('collection-browser');
203
- expect(mockAnalyticsHandler.callAction).to.equal('closeMoreFacetsModal');
204
- expect(mockAnalyticsHandler.callLabel).to.equal('collection');
205
- });
206
-
207
- it('facet apply button clicked event', async () => {
208
- const searchService = new MockSearchService();
209
- const mockAnalyticsHandler = new MockAnalyticsHandler();
210
-
211
- const el = await fixture<MoreFacetsContent>(
212
- html`<more-facets-content
213
- .facetKey=${'collection'}
214
- .query=${'collection-aggregations'}
215
- .searchService=${searchService}
216
- .analyticsHandler=${mockAnalyticsHandler}
217
- ></more-facets-content>`,
218
- );
219
-
220
- // select submit button
221
- const submitButton = el.shadowRoot?.querySelector(
222
- '.footer > .btn-submit',
223
- ) as HTMLButtonElement;
224
- expect(submitButton).to.exist;
225
- submitButton?.click();
226
-
227
- expect(mockAnalyticsHandler.callCategory).to.equal('collection-browser');
228
- expect(mockAnalyticsHandler.callAction).to.equal('applyMoreFacetsModal');
229
- expect(mockAnalyticsHandler.callLabel).to.equal('collection');
230
- });
231
- });
@@ -1,201 +0,0 @@
1
- import { expect, fixture, oneEvent } from '@open-wc/testing';
2
- import { html } from 'lit';
3
- import sinon from 'sinon';
4
- import '../../src/collection-facets/more-facets-pagination';
5
- import type { MoreFacetsPagination } from '../../src/collection-facets/more-facets-pagination';
6
-
7
- afterEach(() => {
8
- sinon.restore();
9
- });
10
-
11
- describe('More facets pagination', () => {
12
- describe('5 pages or less', () => {
13
- it('shows all pages', async () => {
14
- const el = await fixture<MoreFacetsPagination>(
15
- html`<more-facets-pagination .size=${5}></more-facets-pagination>`,
16
- );
17
-
18
- await el.updateComplete;
19
-
20
- const pageButtons = el.shadowRoot?.querySelectorAll(
21
- 'button[data-page]',
22
- ) as NodeList;
23
- expect(pageButtons.length).to.greaterThan(0);
24
-
25
- pageButtons.forEach((button, index) => {
26
- expect(button.textContent).to.contain(index + 1);
27
- });
28
- });
29
- });
30
-
31
- it('should render pagination template', async () => {
32
- const el = await fixture<MoreFacetsPagination>(
33
- html`<more-facets-pagination .size=${10}></more-facets-pagination>`,
34
- );
35
-
36
- await el.updateComplete;
37
-
38
- expect(el.shadowRoot?.querySelector('.facets-pagination')).to.exist;
39
- expect(el.shadowRoot?.querySelector('.arrow-icon')).to.exist;
40
- });
41
-
42
- it('should render page numbers', async () => {
43
- const el = await fixture<MoreFacetsPagination>(
44
- html`<more-facets-pagination .size=${3}></more-facets-pagination>`,
45
- );
46
-
47
- await el.updateComplete;
48
-
49
- const pageNumberElement = el.shadowRoot?.querySelector('.page-numbers');
50
- expect(pageNumberElement).to.exist;
51
- expect(pageNumberElement?.querySelectorAll('button').length).to.equal(3);
52
- });
53
-
54
- it('check current page and total pages', async () => {
55
- const el = await fixture<MoreFacetsPagination>(
56
- html`<more-facets-pagination
57
- .size=${4}
58
- .currentPage=${2}
59
- ></more-facets-pagination>`,
60
- );
61
-
62
- await el.updateComplete;
63
-
64
- const pageNumberElement = el.shadowRoot?.querySelector('.page-numbers');
65
- expect(pageNumberElement).to.exist;
66
- expect(
67
- pageNumberElement
68
- ?.querySelectorAll('button')[1]
69
- .classList.contains('current'),
70
- ).to.be.true;
71
- expect(el.pages?.length).to.equal(4);
72
- });
73
-
74
- it('get page numbers based of size and currentPage', async () => {
75
- const el = await fixture<MoreFacetsPagination>(
76
- html`<more-facets-pagination
77
- .size=${4}
78
- .currentPage=${2}
79
- ></more-facets-pagination>`,
80
- );
81
-
82
- await el.updateComplete;
83
-
84
- expect(el.pages?.length).to.equal(4);
85
- });
86
-
87
- describe('Selecting a page', () => {
88
- it('fires event', async () => {
89
- const el = await fixture<MoreFacetsPagination>(
90
- html`<more-facets-pagination></more-facets-pagination>`,
91
- );
92
-
93
- await el.updateComplete;
94
-
95
- setTimeout(() =>
96
- el.dispatchEvent(
97
- new CustomEvent('pageNumberClicked', { detail: { page: 15 } }),
98
- ),
99
- );
100
- const { detail } = await oneEvent(el, 'pageNumberClicked');
101
- expect(detail?.page).to.equal(15);
102
- });
103
- it('sets off side effects with `onChange`', async () => {
104
- const el = await fixture<MoreFacetsPagination>(
105
- html`<more-facets-pagination
106
- .size=${'10'}
107
- .currentPage=${2}
108
- ></more-facets-pagination>`,
109
- );
110
-
111
- expect(el.currentPage).to.equal(2); // confirm current page
112
-
113
- const fake1 = sinon.fake();
114
- const fake2 = sinon.fake();
115
- el.observePageCount = fake1;
116
- el.emitPageClick = fake2;
117
-
118
- // select first page button
119
- const pageButton = el.shadowRoot?.querySelector(
120
- '.page-numbers > button',
121
- ) as HTMLButtonElement;
122
- // confirm button isn't selected
123
- expect(pageButton.classList.contains('current')).to.be.false;
124
- pageButton.click();
125
-
126
- await el.updateComplete;
127
-
128
- expect(fake1.callCount).to.equal(1);
129
- expect(fake2.callCount).to.equal(1);
130
- expect(el.currentPage).to.equal(1); // brings us back to currentPage
131
- // confirm button is selected
132
- expect(pageButton.classList.contains('current')).to.be.true;
133
- });
134
- });
135
-
136
- describe('Using Arrows', () => {
137
- it('going backwards', async () => {
138
- const el = await fixture<MoreFacetsPagination>(
139
- html`<more-facets-pagination
140
- .size=${'10'}
141
- .currentPage=${2}
142
- ></more-facets-pagination>`,
143
- );
144
-
145
- expect(el.currentPage).to.equal(2); // confirm current page
146
-
147
- const fake1 = sinon.fake();
148
- const fake2 = sinon.fake();
149
- el.observePageCount = fake1;
150
- el.emitPageClick = fake2;
151
-
152
- // select first page button
153
- const rewindButton = el.shadowRoot?.querySelector(
154
- '.facets-pagination > button.rewind',
155
- ) as HTMLButtonElement;
156
- rewindButton.click();
157
-
158
- await el.updateComplete;
159
-
160
- expect(fake1.callCount).to.equal(1);
161
- expect(fake2.callCount).to.equal(1);
162
- expect(el.currentPage).to.equal(1); // brings us back 1 page
163
- // confirm button is selected
164
- expect(
165
- (
166
- el.shadowRoot?.querySelector(
167
- '.page-numbers > button[data-page="1"]',
168
- ) as HTMLButtonElement
169
- ).classList.contains('current'),
170
- ).to.be.true;
171
- });
172
-
173
- it('going forwards', async () => {
174
- const el = await fixture<MoreFacetsPagination>(
175
- html`<more-facets-pagination
176
- .size=${'10'}
177
- .currentPage=${5}
178
- ></more-facets-pagination>`,
179
- );
180
-
181
- expect(el.currentPage).to.equal(5); // confirm current page
182
-
183
- const fake1 = sinon.fake();
184
- const fake2 = sinon.fake();
185
- el.observePageCount = fake1;
186
- el.emitPageClick = fake2;
187
-
188
- // select first page button
189
- const forwardButton = el.shadowRoot?.querySelector(
190
- '.facets-pagination > button.forward',
191
- ) as HTMLButtonElement;
192
- forwardButton.click();
193
-
194
- await el.updateComplete;
195
-
196
- expect(fake1.callCount).to.equal(1);
197
- expect(fake2.callCount).to.equal(1);
198
- expect(el.currentPage).to.equal(6); // brings us forward 1 page
199
- });
200
- });
201
- });
@@ -1,164 +0,0 @@
1
- import { expect, fixture } from '@open-wc/testing';
2
- import sinon from 'sinon';
3
- import { html } from 'lit';
4
- import type { ToggleSwitch } from '../../src/collection-facets/toggle-switch';
5
-
6
- import '../../src/collection-facets/toggle-switch';
7
-
8
- describe('Toggle switch', () => {
9
- it('renders component', async () => {
10
- const el = await fixture<ToggleSwitch>(
11
- html`<toggle-switch></toggle-switch>`,
12
- );
13
-
14
- expect(el.shadowRoot?.querySelector('#switch-button')).to.exist;
15
- expect(el.shadowRoot?.querySelector('#knob')).to.exist;
16
- });
17
-
18
- it('renders provided L/R values', async () => {
19
- const el = await fixture<ToggleSwitch>(
20
- html`<toggle-switch
21
- .leftValue=${'L'}
22
- .rightValue=${'R'}
23
- ></toggle-switch>`,
24
- );
25
-
26
- expect(el.value).to.equal('L');
27
- expect(el.selectedLabel).to.equal('L');
28
-
29
- expect(
30
- el.shadowRoot
31
- ?.querySelector('label[for=switch-left]')
32
- ?.textContent?.trim(),
33
- ).to.equal('L');
34
- expect(
35
- el.shadowRoot
36
- ?.querySelector('label[for=switch-right]')
37
- ?.textContent?.trim(),
38
- ).to.equal('R');
39
- });
40
-
41
- it('renders provided L/R labels instead of values', async () => {
42
- const el = await fixture<ToggleSwitch>(
43
- html`<toggle-switch
44
- .leftValue=${'L'}
45
- .leftLabel=${'L-label'}
46
- .rightValue=${'R'}
47
- .rightLabel=${'R-label'}
48
- ></toggle-switch>`,
49
- );
50
-
51
- expect(el.value).to.equal('L');
52
- expect(el.selectedLabel).to.equal('L-label');
53
-
54
- expect(
55
- (el.shadowRoot?.querySelector('#switch-left') as HTMLInputElement)?.value,
56
- ).to.equal('L');
57
- expect(
58
- (el.shadowRoot?.querySelector('#switch-right') as HTMLInputElement)
59
- ?.value,
60
- ).to.equal('R');
61
-
62
- expect(
63
- el.shadowRoot
64
- ?.querySelector('label[for=switch-left]')
65
- ?.textContent?.trim(),
66
- ).to.equal('L-label');
67
- expect(
68
- el.shadowRoot
69
- ?.querySelector('label[for=switch-right]')
70
- ?.textContent?.trim(),
71
- ).to.equal('R-label');
72
- });
73
-
74
- it('sets the initial side', async () => {
75
- const el = await fixture<ToggleSwitch>(
76
- html`<toggle-switch
77
- .leftValue=${'L'}
78
- .rightValue=${'R'}
79
- .side=${'right'}
80
- ></toggle-switch>`,
81
- );
82
-
83
- expect(el.value).to.equal('R');
84
- expect(el.selectedLabel).to.equal('R');
85
- });
86
-
87
- it('toggles on click', async () => {
88
- const el = await fixture<ToggleSwitch>(
89
- html`<toggle-switch
90
- .leftValue=${'L'}
91
- .rightValue=${'R'}
92
- ></toggle-switch>`,
93
- );
94
-
95
- const button = el.shadowRoot?.querySelector(
96
- '#switch-button',
97
- ) as HTMLButtonElement;
98
-
99
- expect(el.value).to.equal('L');
100
- button.click();
101
- await el.updateComplete;
102
-
103
- expect(el.value).to.equal('R');
104
- button.click();
105
- await el.updateComplete;
106
-
107
- expect(el.value).to.equal('L');
108
- });
109
-
110
- it('toggles on radio change', async () => {
111
- const el = await fixture<ToggleSwitch>(
112
- html`<toggle-switch
113
- .leftValue=${'L'}
114
- .rightValue=${'R'}
115
- ></toggle-switch>`,
116
- );
117
-
118
- const leftRadio = el.shadowRoot?.querySelector(
119
- '#switch-left',
120
- ) as HTMLInputElement;
121
- const rightRadio = el.shadowRoot?.querySelector(
122
- '#switch-right',
123
- ) as HTMLInputElement;
124
-
125
- expect(el.value).to.equal('L');
126
- rightRadio.click();
127
- await el.updateComplete;
128
-
129
- expect(el.value).to.equal('R');
130
- leftRadio.click();
131
- await el.updateComplete;
132
-
133
- expect(el.value).to.equal('L');
134
- });
135
-
136
- it('emits change event when toggled', async () => {
137
- const changeSpy = sinon.spy();
138
- const el = await fixture<ToggleSwitch>(
139
- html`<toggle-switch
140
- .leftValue=${'L'}
141
- .rightValue=${'R'}
142
- @change=${changeSpy}
143
- ></toggle-switch>`,
144
- );
145
-
146
- const button = el.shadowRoot?.querySelector(
147
- '#switch-button',
148
- ) as HTMLButtonElement;
149
-
150
- button.click();
151
- await el.updateComplete;
152
-
153
- expect(changeSpy.callCount).to.equal(1);
154
-
155
- const leftRadio = el.shadowRoot?.querySelector(
156
- '#switch-left',
157
- ) as HTMLInputElement;
158
-
159
- leftRadio.click();
160
- await el.updateComplete;
161
-
162
- expect(changeSpy.callCount).to.equal(2);
163
- });
164
- });