@internetarchive/collection-browser 2.7.7 → 2.7.8-alpha2

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 (338) hide show
  1. package/.editorconfig +29 -29
  2. package/.husky/pre-commit +4 -4
  3. package/LICENSE +661 -661
  4. package/README.md +83 -83
  5. package/dist/index.d.ts +13 -13
  6. package/dist/index.js +13 -13
  7. package/dist/src/app-root.d.ts +107 -99
  8. package/dist/src/app-root.js +539 -505
  9. package/dist/src/app-root.js.map +1 -1
  10. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  11. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  12. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  13. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  14. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  15. package/dist/src/assets/img/icons/chevron.js +2 -2
  16. package/dist/src/assets/img/icons/contract.d.ts +2 -2
  17. package/dist/src/assets/img/icons/contract.js +2 -2
  18. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  19. package/dist/src/assets/img/icons/empty-query.js +2 -2
  20. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  21. package/dist/src/assets/img/icons/expand.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/favorite-unfilled.d.ts +1 -1
  29. package/dist/src/assets/img/icons/favorite-unfilled.js +2 -2
  30. package/dist/src/assets/img/icons/filter.d.ts +2 -2
  31. package/dist/src/assets/img/icons/filter.js +2 -2
  32. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  33. package/dist/src/assets/img/icons/login-required.js +2 -2
  34. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  35. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  36. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  37. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  38. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  39. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  40. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  41. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  42. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  43. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  44. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  45. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  46. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  47. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  48. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  49. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  50. package/dist/src/assets/img/icons/mediatype/search.d.ts +1 -1
  51. package/dist/src/assets/img/icons/mediatype/search.js +2 -2
  52. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  53. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  54. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  55. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  56. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  57. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  58. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  59. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  60. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  61. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  62. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  63. package/dist/src/assets/img/icons/null-result.js +2 -2
  64. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  65. package/dist/src/assets/img/icons/restricted.js +2 -2
  66. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  67. package/dist/src/assets/img/icons/reviews.js +2 -2
  68. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  69. package/dist/src/assets/img/icons/upload.js +2 -2
  70. package/dist/src/assets/img/icons/views.d.ts +1 -1
  71. package/dist/src/assets/img/icons/views.js +2 -2
  72. package/dist/src/circular-activity-indicator.d.ts +5 -5
  73. package/dist/src/circular-activity-indicator.js +17 -17
  74. package/dist/src/collection-browser.d.ts +606 -582
  75. package/dist/src/collection-browser.js +1677 -1629
  76. package/dist/src/collection-browser.js.map +1 -1
  77. package/dist/src/collection-facets/facet-row.d.ts +30 -30
  78. package/dist/src/collection-facets/facet-row.js +118 -118
  79. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  80. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  81. package/dist/src/collection-facets/facets-template.d.ts +13 -13
  82. package/dist/src/collection-facets/facets-template.js +44 -44
  83. package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
  84. package/dist/src/collection-facets/more-facets-content.js +407 -407
  85. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  86. package/dist/src/collection-facets/more-facets-pagination.js +196 -196
  87. package/dist/src/collection-facets/smart-facets/dedupe.d.ts +10 -10
  88. package/dist/src/collection-facets/smart-facets/dedupe.js +33 -33
  89. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.d.ts +5 -5
  90. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.js +23 -23
  91. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.d.ts +5 -5
  92. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js +44 -44
  93. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.d.ts +5 -5
  94. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js +172 -172
  95. package/dist/src/collection-facets/smart-facets/models.d.ts +26 -26
  96. package/dist/src/collection-facets/smart-facets/models.js +1 -1
  97. package/dist/src/collection-facets/smart-facets/smart-facet-bar.d.ts +31 -31
  98. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +240 -240
  99. package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +11 -11
  100. package/dist/src/collection-facets/smart-facets/smart-facet-button.js +86 -86
  101. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +16 -16
  102. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +100 -100
  103. package/dist/src/collection-facets/smart-facets/smart-facet-equals.d.ts +2 -2
  104. package/dist/src/collection-facets/smart-facets/smart-facet-equals.js +12 -12
  105. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.d.ts +5 -5
  106. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js +15 -15
  107. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  108. package/dist/src/collection-facets/toggle-switch.js +94 -94
  109. package/dist/src/collection-facets.d.ts +103 -103
  110. package/dist/src/collection-facets.js +522 -522
  111. package/dist/src/data-source/collection-browser-data-source-interface.d.ts +245 -241
  112. package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
  113. package/dist/src/data-source/collection-browser-data-source-interface.js.map +1 -1
  114. package/dist/src/data-source/collection-browser-data-source.d.ts +377 -373
  115. package/dist/src/data-source/collection-browser-data-source.js +995 -982
  116. package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
  117. package/dist/src/data-source/collection-browser-query-state.d.ts +44 -43
  118. package/dist/src/data-source/collection-browser-query-state.js +1 -1
  119. package/dist/src/data-source/collection-browser-query-state.js.map +1 -1
  120. package/dist/src/data-source/models.d.ts +28 -28
  121. package/dist/src/data-source/models.js +8 -8
  122. package/dist/src/empty-placeholder.d.ts +23 -23
  123. package/dist/src/empty-placeholder.js +79 -79
  124. package/dist/src/expanded-date-picker.d.ts +43 -43
  125. package/dist/src/expanded-date-picker.js +109 -109
  126. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  127. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  128. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  129. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  130. package/dist/src/manage/manage-bar.d.ts +58 -35
  131. package/dist/src/manage/manage-bar.js +174 -80
  132. package/dist/src/manage/manage-bar.js.map +1 -1
  133. package/dist/src/manage/remove-items-modal-content.d.ts +9 -0
  134. package/dist/src/manage/remove-items-modal-content.js +104 -0
  135. package/dist/src/manage/remove-items-modal-content.js.map +1 -0
  136. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  137. package/dist/src/mediatype/mediatype-config.js +91 -91
  138. package/dist/src/models.d.ts +228 -219
  139. package/dist/src/models.js +401 -401
  140. package/dist/src/models.js.map +1 -1
  141. package/dist/src/restoration-state-handler.d.ts +70 -70
  142. package/dist/src/restoration-state-handler.js +363 -363
  143. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  144. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  145. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  146. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  147. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  148. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  149. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  150. package/dist/src/sort-filter-bar/img/list.js +2 -2
  151. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  152. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  153. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  154. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  155. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  156. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  157. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  158. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  159. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  160. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  161. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +223 -223
  162. package/dist/src/sort-filter-bar/sort-filter-bar.js +697 -697
  163. package/dist/src/styles/ia-button.d.ts +2 -2
  164. package/dist/src/styles/ia-button.js +17 -17
  165. package/dist/src/styles/item-image-styles.d.ts +8 -8
  166. package/dist/src/styles/item-image-styles.js +9 -9
  167. package/dist/src/styles/sr-only.d.ts +1 -1
  168. package/dist/src/styles/sr-only.js +2 -2
  169. package/dist/src/tiles/base-tile-component.d.ts +19 -19
  170. package/dist/src/tiles/base-tile-component.js +64 -64
  171. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  172. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  173. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  174. package/dist/src/tiles/grid/account-tile.js +72 -72
  175. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  176. package/dist/src/tiles/grid/collection-tile.js +80 -80
  177. package/dist/src/tiles/grid/item-tile.d.ts +34 -34
  178. package/dist/src/tiles/grid/item-tile.js +158 -158
  179. package/dist/src/tiles/grid/search-tile.d.ts +10 -10
  180. package/dist/src/tiles/grid/search-tile.js +51 -51
  181. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  182. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  183. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  184. package/dist/src/tiles/grid/tile-stats.js +53 -53
  185. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  186. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  187. package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
  188. package/dist/src/tiles/hover/tile-hover-pane.js +69 -69
  189. package/dist/src/tiles/image-block.d.ts +18 -18
  190. package/dist/src/tiles/image-block.js +89 -89
  191. package/dist/src/tiles/item-image.d.ts +39 -39
  192. package/dist/src/tiles/item-image.js +154 -154
  193. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  194. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  195. package/dist/src/tiles/list/tile-list-compact.d.ts +19 -19
  196. package/dist/src/tiles/list/tile-list-compact.js +122 -122
  197. package/dist/src/tiles/list/tile-list.d.ts +54 -54
  198. package/dist/src/tiles/list/tile-list.js +323 -323
  199. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  200. package/dist/src/tiles/mediatype-icon.js +47 -47
  201. package/dist/src/tiles/overlay/icon-overlay.d.ts +8 -8
  202. package/dist/src/tiles/overlay/icon-overlay.js +25 -25
  203. package/dist/src/tiles/overlay/text-overlay.d.ts +9 -9
  204. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  205. package/dist/src/tiles/review-block.d.ts +12 -12
  206. package/dist/src/tiles/review-block.js +56 -56
  207. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  208. package/dist/src/tiles/text-snippet-block.js +73 -73
  209. package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
  210. package/dist/src/tiles/tile-dispatcher.js +230 -230
  211. package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
  212. package/dist/src/tiles/tile-display-value-provider.js +94 -94
  213. package/dist/src/utils/analytics-events.d.ts +28 -28
  214. package/dist/src/utils/analytics-events.js +30 -30
  215. package/dist/src/utils/array-equals.d.ts +4 -4
  216. package/dist/src/utils/array-equals.js +10 -10
  217. package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
  218. package/dist/src/utils/collapse-repeated-quotes.js +13 -13
  219. package/dist/src/utils/facet-utils.d.ts +83 -83
  220. package/dist/src/utils/facet-utils.js +145 -145
  221. package/dist/src/utils/format-count.d.ts +7 -7
  222. package/dist/src/utils/format-count.js +76 -76
  223. package/dist/src/utils/format-date.d.ts +2 -2
  224. package/dist/src/utils/format-date.js +27 -27
  225. package/dist/src/utils/format-unit-size.d.ts +2 -2
  226. package/dist/src/utils/format-unit-size.js +33 -33
  227. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  228. package/dist/src/utils/local-date-from-utc.js +15 -15
  229. package/dist/src/utils/log.d.ts +7 -7
  230. package/dist/src/utils/log.js +15 -15
  231. package/dist/src/utils/resolve-mediatype.d.ts +8 -8
  232. package/dist/src/utils/resolve-mediatype.js +23 -23
  233. package/dist/src/utils/sha1.d.ts +2 -2
  234. package/dist/src/utils/sha1.js +8 -8
  235. package/dist/test/collection-browser.test.d.ts +1 -1
  236. package/dist/test/collection-browser.test.js +1309 -1293
  237. package/dist/test/collection-browser.test.js.map +1 -1
  238. package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
  239. package/dist/test/collection-facets/facet-row.test.js +227 -227
  240. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  241. package/dist/test/collection-facets/facets-template.test.js +91 -91
  242. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  243. package/dist/test/collection-facets/more-facets-content.test.js +141 -141
  244. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  245. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  246. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  247. package/dist/test/collection-facets/toggle-switch.test.js +73 -73
  248. package/dist/test/collection-facets.test.d.ts +2 -2
  249. package/dist/test/collection-facets.test.js +690 -690
  250. package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
  251. package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
  252. package/dist/test/empty-placeholder.test.d.ts +1 -1
  253. package/dist/test/empty-placeholder.test.js +63 -63
  254. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  255. package/dist/test/expanded-date-picker.test.js +95 -95
  256. package/dist/test/icon-overlay.test.d.ts +1 -1
  257. package/dist/test/icon-overlay.test.js +24 -24
  258. package/dist/test/image-block.test.d.ts +1 -1
  259. package/dist/test/image-block.test.js +107 -107
  260. package/dist/test/item-image.test.d.ts +1 -1
  261. package/dist/test/item-image.test.js +85 -85
  262. package/dist/test/manage/manage-bar.test.d.ts +2 -1
  263. package/dist/test/manage/manage-bar.test.js +106 -91
  264. package/dist/test/manage/manage-bar.test.js.map +1 -1
  265. package/dist/test/manage/remove-items-modal-content.test.d.ts +1 -0
  266. package/dist/test/manage/remove-items-modal-content.test.js +66 -0
  267. package/dist/test/manage/remove-items-modal-content.test.js.map +1 -0
  268. package/dist/test/mediatype-config.test.d.ts +1 -1
  269. package/dist/test/mediatype-config.test.js +16 -16
  270. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  271. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  272. package/dist/test/mocks/mock-search-responses.d.ts +25 -25
  273. package/dist/test/mocks/mock-search-responses.js +942 -942
  274. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  275. package/dist/test/mocks/mock-search-service.js +54 -54
  276. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  277. package/dist/test/restoration-state-handler.test.js +270 -270
  278. package/dist/test/review-block.test.d.ts +1 -1
  279. package/dist/test/review-block.test.js +44 -44
  280. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  281. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  282. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  283. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  284. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  285. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +426 -426
  286. package/dist/test/text-overlay.test.d.ts +1 -1
  287. package/dist/test/text-overlay.test.js +38 -38
  288. package/dist/test/text-snippet-block.test.d.ts +1 -1
  289. package/dist/test/text-snippet-block.test.js +57 -57
  290. package/dist/test/tile-stats.test.d.ts +1 -1
  291. package/dist/test/tile-stats.test.js +81 -81
  292. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  293. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  294. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  295. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  296. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  297. package/dist/test/tiles/grid/item-tile.test.js +312 -312
  298. package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
  299. package/dist/test/tiles/grid/search-tile.test.js +51 -51
  300. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  301. package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
  302. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  303. package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
  304. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  305. package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
  306. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  307. package/dist/test/tiles/list/tile-list.test.js +297 -297
  308. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  309. package/dist/test/tiles/tile-dispatcher.test.js +100 -100
  310. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  311. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  312. package/dist/test/utils/array-equals.test.d.ts +1 -1
  313. package/dist/test/utils/array-equals.test.js +26 -26
  314. package/dist/test/utils/format-count.test.d.ts +1 -1
  315. package/dist/test/utils/format-count.test.js +23 -23
  316. package/dist/test/utils/format-date.test.d.ts +1 -1
  317. package/dist/test/utils/format-date.test.js +30 -30
  318. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  319. package/dist/test/utils/format-unit-size.test.js +17 -17
  320. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  321. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  322. package/local.archive.org.cert +86 -86
  323. package/local.archive.org.key +27 -27
  324. package/package.json +1 -1
  325. package/renovate.json +6 -6
  326. package/src/app-root.ts +38 -4
  327. package/src/collection-browser.ts +69 -17
  328. package/src/data-source/collection-browser-data-source-interface.ts +5 -0
  329. package/src/data-source/collection-browser-data-source.ts +14 -0
  330. package/src/data-source/collection-browser-query-state.ts +1 -0
  331. package/src/manage/manage-bar.ts +120 -24
  332. package/src/manage/remove-items-modal-content.ts +102 -0
  333. package/src/models.ts +10 -0
  334. package/test/collection-browser.test.ts +23 -0
  335. package/test/manage/manage-bar.test.ts +41 -18
  336. package/test/manage/remove-items-modal-content.test.ts +82 -0
  337. package/web-dev-server.config.mjs +30 -30
  338. package/web-test-runner.config.mjs +41 -41
@@ -1 +1 @@
1
- import '../../src/collection-browser';
1
+ import '../../src/collection-browser';
@@ -1,92 +1,92 @@
1
- import { expect, fixture } from '@open-wc/testing';
2
- import { html } from 'lit';
3
- import sinon from 'sinon';
4
- import { ItemHit, SearchType } from '@internetarchive/search-service';
5
- import { CollectionBrowserDataSource } from '../../src/data-source/collection-browser-data-source';
6
- import { TileModel } from '../../src/models';
7
- import '../../src/collection-browser';
8
- import { MockSearchService } from '../mocks/mock-search-service';
9
- const dataPage = [
10
- new TileModel(new ItemHit({
11
- fields: {
12
- identifier: 'foo',
13
- },
14
- })),
15
- new TileModel(new ItemHit({
16
- fields: {
17
- identifier: 'bar',
18
- },
19
- })),
20
- ];
21
- describe('Collection Browser Data Source', () => {
22
- let host;
23
- beforeEach(async () => {
1
+ import { expect, fixture } from '@open-wc/testing';
2
+ import { html } from 'lit';
3
+ import sinon from 'sinon';
4
+ import { ItemHit, SearchType } from '@internetarchive/search-service';
5
+ import { CollectionBrowserDataSource } from '../../src/data-source/collection-browser-data-source';
6
+ import { TileModel } from '../../src/models';
7
+ import '../../src/collection-browser';
8
+ import { MockSearchService } from '../mocks/mock-search-service';
9
+ const dataPage = [
10
+ new TileModel(new ItemHit({
11
+ fields: {
12
+ identifier: 'foo',
13
+ },
14
+ })),
15
+ new TileModel(new ItemHit({
16
+ fields: {
17
+ identifier: 'bar',
18
+ },
19
+ })),
20
+ ];
21
+ describe('Collection Browser Data Source', () => {
22
+ let host;
23
+ beforeEach(async () => {
24
24
  host = await fixture(html `
25
25
  <collection-browser></collection-browser>
26
- `);
27
- });
28
- it('can add and retrieve data pages', () => {
29
- const dataSource = new CollectionBrowserDataSource(host);
30
- dataSource.addPage(1, dataPage);
31
- expect(Object.keys(dataSource.getAllPages()).length).to.equal(1);
32
- expect(dataSource.getPage(1).length).to.equal(2);
33
- expect(dataSource.getPage(1)[0].identifier).to.equal('foo');
34
- expect(dataSource.getPage(1)[1].identifier).to.equal('bar');
35
- });
36
- it('can add data split across multiple pages', () => {
37
- const dataSource = new CollectionBrowserDataSource(host, 3);
38
- const doubledDataPage = [...dataPage, ...dataPage];
39
- dataSource.addMultiplePages(1, doubledDataPage);
40
- expect(Object.keys(dataSource.getAllPages()).length).to.equal(2);
41
- expect(dataSource.getPage(1).length).to.equal(3);
42
- expect(dataSource.getPage(2).length).to.equal(1);
43
- expect(dataSource.getPage(1)[0].identifier).to.equal('foo');
44
- expect(dataSource.getPage(1)[1].identifier).to.equal('bar');
45
- expect(dataSource.getPage(1)[2].identifier).to.equal('foo');
46
- expect(dataSource.getPage(2)[0].identifier).to.equal('bar');
47
- });
48
- it('resets data when changing page size', () => {
49
- const dataSource = new CollectionBrowserDataSource(host);
50
- dataSource.addPage(1, dataPage);
51
- dataSource.setPageSize(100);
52
- expect(Object.keys(dataSource.getAllPages()).length).to.equal(0);
53
- expect(dataSource.getPageSize()).to.equal(100);
54
- });
55
- it('can be installed on the host', async () => {
56
- const dataSource = new CollectionBrowserDataSource(host);
57
- dataSource.addPage(1, dataPage);
58
- host.installDataSourceAndQueryState(dataSource, {
59
- searchType: SearchType.METADATA,
60
- sortDirection: null,
61
- selectedTitleFilter: null,
62
- selectedCreatorFilter: null,
63
- baseQuery: 'foobar',
64
- });
65
- await host.updateComplete;
66
- expect(host.dataSource).to.equal(dataSource);
67
- expect(host.baseQuery).to.equal('foobar');
68
- host.removeController(dataSource);
69
- });
70
- it('can suppress further fetches', async () => {
71
- host.searchService = new MockSearchService();
72
- const pageFetchSpy = sinon.spy();
73
- const dataSource = new CollectionBrowserDataSource(host);
74
- dataSource.fetchPage = pageFetchSpy;
75
- dataSource.addPage(1, dataPage);
76
- dataSource.setFetchesSuppressed(true);
77
- dataSource.handleQueryChange();
78
- expect(pageFetchSpy.callCount).to.equal(0);
79
- });
80
- it('refreshes prefix filter counts', () => {
81
- const dataSource = new CollectionBrowserDataSource(host);
82
- dataSource.addPage(1, dataPage);
83
- dataSource.prefixFilterCountMap = {
84
- title: {
85
- X: 10,
86
- },
87
- };
88
- dataSource.refreshLetterCounts();
89
- expect(dataSource.prefixFilterCountMap).to.deep.equal({});
90
- });
91
- });
26
+ `);
27
+ });
28
+ it('can add and retrieve data pages', () => {
29
+ const dataSource = new CollectionBrowserDataSource(host);
30
+ dataSource.addPage(1, dataPage);
31
+ expect(Object.keys(dataSource.getAllPages()).length).to.equal(1);
32
+ expect(dataSource.getPage(1).length).to.equal(2);
33
+ expect(dataSource.getPage(1)[0].identifier).to.equal('foo');
34
+ expect(dataSource.getPage(1)[1].identifier).to.equal('bar');
35
+ });
36
+ it('can add data split across multiple pages', () => {
37
+ const dataSource = new CollectionBrowserDataSource(host, 3);
38
+ const doubledDataPage = [...dataPage, ...dataPage];
39
+ dataSource.addMultiplePages(1, doubledDataPage);
40
+ expect(Object.keys(dataSource.getAllPages()).length).to.equal(2);
41
+ expect(dataSource.getPage(1).length).to.equal(3);
42
+ expect(dataSource.getPage(2).length).to.equal(1);
43
+ expect(dataSource.getPage(1)[0].identifier).to.equal('foo');
44
+ expect(dataSource.getPage(1)[1].identifier).to.equal('bar');
45
+ expect(dataSource.getPage(1)[2].identifier).to.equal('foo');
46
+ expect(dataSource.getPage(2)[0].identifier).to.equal('bar');
47
+ });
48
+ it('resets data when changing page size', () => {
49
+ const dataSource = new CollectionBrowserDataSource(host);
50
+ dataSource.addPage(1, dataPage);
51
+ dataSource.setPageSize(100);
52
+ expect(Object.keys(dataSource.getAllPages()).length).to.equal(0);
53
+ expect(dataSource.getPageSize()).to.equal(100);
54
+ });
55
+ it('can be installed on the host', async () => {
56
+ const dataSource = new CollectionBrowserDataSource(host);
57
+ dataSource.addPage(1, dataPage);
58
+ host.installDataSourceAndQueryState(dataSource, {
59
+ searchType: SearchType.METADATA,
60
+ sortDirection: null,
61
+ selectedTitleFilter: null,
62
+ selectedCreatorFilter: null,
63
+ baseQuery: 'foobar',
64
+ });
65
+ await host.updateComplete;
66
+ expect(host.dataSource).to.equal(dataSource);
67
+ expect(host.baseQuery).to.equal('foobar');
68
+ host.removeController(dataSource);
69
+ });
70
+ it('can suppress further fetches', async () => {
71
+ host.searchService = new MockSearchService();
72
+ const pageFetchSpy = sinon.spy();
73
+ const dataSource = new CollectionBrowserDataSource(host);
74
+ dataSource.fetchPage = pageFetchSpy;
75
+ dataSource.addPage(1, dataPage);
76
+ dataSource.setFetchesSuppressed(true);
77
+ dataSource.handleQueryChange();
78
+ expect(pageFetchSpy.callCount).to.equal(0);
79
+ });
80
+ it('refreshes prefix filter counts', () => {
81
+ const dataSource = new CollectionBrowserDataSource(host);
82
+ dataSource.addPage(1, dataPage);
83
+ dataSource.prefixFilterCountMap = {
84
+ title: {
85
+ X: 10,
86
+ },
87
+ };
88
+ dataSource.refreshLetterCounts();
89
+ expect(dataSource.prefixFilterCountMap).to.deep.equal({});
90
+ });
91
+ });
92
92
  //# sourceMappingURL=collection-browser-data-source.test.js.map
@@ -1 +1 @@
1
- import '../src/empty-placeholder';
1
+ import '../src/empty-placeholder';
@@ -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/empty-placeholder';
5
- describe('Empty Placeholder', () => {
6
- it('should render with empty-query placeholder', async () => {
7
- var _a;
8
- const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
9
- el.placeholderType = 'empty-query';
10
- await el.updateComplete;
11
- const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
12
- expect(placeholderElem).to.exist;
13
- expect(placeholderElem).to.have.class('empty-query');
14
- });
15
- it('should render with empty-collection placeholder', async () => {
16
- var _a;
17
- const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
18
- el.placeholderType = 'empty-collection';
19
- await el.updateComplete;
20
- const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
21
- expect(placeholderElem).to.exist;
22
- expect(placeholderElem).to.have.class('empty-collection');
23
- });
24
- it('should render with no-results placeholder', async () => {
25
- var _a;
26
- const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
27
- el.placeholderType = 'no-results';
28
- await el.updateComplete;
29
- const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
30
- expect(placeholderElem).to.exist;
31
- expect(placeholderElem).to.have.class('no-results');
32
- });
33
- it('should render with query-error placeholder', async () => {
34
- var _a;
35
- const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
36
- el.placeholderType = 'query-error';
37
- await el.updateComplete;
38
- const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
39
- expect(placeholderElem).to.exist;
40
- expect(placeholderElem).to.have.class('query-error');
41
- });
42
- it('should render with collection-error placeholder', async () => {
43
- var _a;
44
- const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
45
- el.placeholderType = 'collection-error';
46
- await el.updateComplete;
47
- const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
48
- expect(placeholderElem).to.exist;
49
- expect(placeholderElem).to.have.class('collection-error');
50
- });
51
- it('should not render any empty placeholder', async () => {
52
- var _a, _b, _c, _d, _e, _f;
53
- const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
54
- el.placeholderType = null;
55
- await el.updateComplete;
56
- expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder')).to.not.exist;
57
- expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.empty-query')).to.not.exist;
58
- expect((_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.empty-collection')).to.not.exist;
59
- expect((_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.no-results')).to.not.exist;
60
- expect((_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.query-error')).to.not.exist;
61
- expect((_f = el.shadowRoot) === null || _f === void 0 ? void 0 : _f.querySelector('.collection-error')).to.not.exist;
62
- });
63
- });
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import '../src/empty-placeholder';
5
+ describe('Empty Placeholder', () => {
6
+ it('should render with empty-query placeholder', async () => {
7
+ var _a;
8
+ const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
9
+ el.placeholderType = 'empty-query';
10
+ await el.updateComplete;
11
+ const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
12
+ expect(placeholderElem).to.exist;
13
+ expect(placeholderElem).to.have.class('empty-query');
14
+ });
15
+ it('should render with empty-collection placeholder', async () => {
16
+ var _a;
17
+ const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
18
+ el.placeholderType = 'empty-collection';
19
+ await el.updateComplete;
20
+ const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
21
+ expect(placeholderElem).to.exist;
22
+ expect(placeholderElem).to.have.class('empty-collection');
23
+ });
24
+ it('should render with no-results placeholder', async () => {
25
+ var _a;
26
+ const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
27
+ el.placeholderType = 'no-results';
28
+ await el.updateComplete;
29
+ const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
30
+ expect(placeholderElem).to.exist;
31
+ expect(placeholderElem).to.have.class('no-results');
32
+ });
33
+ it('should render with query-error placeholder', async () => {
34
+ var _a;
35
+ const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
36
+ el.placeholderType = 'query-error';
37
+ await el.updateComplete;
38
+ const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
39
+ expect(placeholderElem).to.exist;
40
+ expect(placeholderElem).to.have.class('query-error');
41
+ });
42
+ it('should render with collection-error placeholder', async () => {
43
+ var _a;
44
+ const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
45
+ el.placeholderType = 'collection-error';
46
+ await el.updateComplete;
47
+ const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
48
+ expect(placeholderElem).to.exist;
49
+ expect(placeholderElem).to.have.class('collection-error');
50
+ });
51
+ it('should not render any empty placeholder', async () => {
52
+ var _a, _b, _c, _d, _e, _f;
53
+ const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
54
+ el.placeholderType = null;
55
+ await el.updateComplete;
56
+ expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder')).to.not.exist;
57
+ expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.empty-query')).to.not.exist;
58
+ expect((_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.empty-collection')).to.not.exist;
59
+ expect((_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.no-results')).to.not.exist;
60
+ expect((_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.query-error')).to.not.exist;
61
+ expect((_f = el.shadowRoot) === null || _f === void 0 ? void 0 : _f.querySelector('.collection-error')).to.not.exist;
62
+ });
63
+ });
64
64
  //# sourceMappingURL=empty-placeholder.test.js.map
@@ -1 +1 @@
1
- import '../src/expanded-date-picker';
1
+ import '../src/expanded-date-picker';
@@ -1,43 +1,43 @@
1
- import { ModalManager, ModalManagerMode, } from '@internetarchive/modal-manager';
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import sinon from 'sinon';
5
- import '../src/expanded-date-picker';
6
- import { MockAnalyticsHandler } from './mocks/mock-analytics-handler';
7
- import { analyticsActions, analyticsCategories, } from '../src/utils/analytics-events';
8
- describe('Expanded Date Picker', () => {
9
- it('should render with a date picker and Apply button', async () => {
10
- var _a, _b;
11
- const el = await fixture(html `<expanded-date-picker></expanded-date-picker>`);
12
- expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#date-picker')).to.exist;
13
- expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#apply-btn')).to.exist;
14
- });
15
- it('should update its min/max selected date when date picker changes', async () => {
16
- var _a;
1
+ import { ModalManager, ModalManagerMode, } from '@internetarchive/modal-manager';
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import sinon from 'sinon';
5
+ import '../src/expanded-date-picker';
6
+ import { MockAnalyticsHandler } from './mocks/mock-analytics-handler';
7
+ import { analyticsActions, analyticsCategories, } from '../src/utils/analytics-events';
8
+ describe('Expanded Date Picker', () => {
9
+ it('should render with a date picker and Apply button', async () => {
10
+ var _a, _b;
11
+ const el = await fixture(html `<expanded-date-picker></expanded-date-picker>`);
12
+ expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#date-picker')).to.exist;
13
+ expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#apply-btn')).to.exist;
14
+ });
15
+ it('should update its min/max selected date when date picker changes', async () => {
16
+ var _a;
17
17
  const el = await fixture(html `<expanded-date-picker
18
18
  .buckets=${[1, 2, 3, 4, 5]}
19
19
  .minDate=${'1'}
20
20
  .maxDate=${'5'}
21
21
  .minSelectedDate=${'1'}
22
22
  .maxSelectedDate=${'5'}
23
- ></expanded-date-picker>`);
24
- const datePicker = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#date-picker');
25
- expect(datePicker).to.exist;
26
- datePicker.minSelectedDate = '2';
27
- datePicker.maxSelectedDate = '4';
28
- datePicker.dispatchEvent(new CustomEvent('histogramDateRangeUpdated', {
29
- detail: {
30
- minDate: datePicker.minSelectedDate,
31
- maxDate: datePicker.maxSelectedDate,
32
- },
33
- }));
34
- await el.updateComplete;
35
- expect(el.minSelectedDate).to.equal('2');
36
- expect(el.maxSelectedDate).to.equal('4');
37
- });
38
- it('should emit an event when a date range is applied', async () => {
39
- var _a;
40
- const applySpy = sinon.spy();
23
+ ></expanded-date-picker>`);
24
+ const datePicker = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#date-picker');
25
+ expect(datePicker).to.exist;
26
+ datePicker.minSelectedDate = '2';
27
+ datePicker.maxSelectedDate = '4';
28
+ datePicker.dispatchEvent(new CustomEvent('histogramDateRangeUpdated', {
29
+ detail: {
30
+ minDate: datePicker.minSelectedDate,
31
+ maxDate: datePicker.maxSelectedDate,
32
+ },
33
+ }));
34
+ await el.updateComplete;
35
+ expect(el.minSelectedDate).to.equal('2');
36
+ expect(el.maxSelectedDate).to.equal('4');
37
+ });
38
+ it('should emit an event when a date range is applied', async () => {
39
+ var _a;
40
+ const applySpy = sinon.spy();
41
41
  const el = await fixture(html `<expanded-date-picker
42
42
  .buckets=${[1, 2, 3, 4, 5]}
43
43
  .minDate=${'1'}
@@ -45,19 +45,19 @@ describe('Expanded Date Picker', () => {
45
45
  .minSelectedDate=${'1'}
46
46
  .maxSelectedDate=${'5'}
47
47
  @histogramDateRangeApplied=${applySpy}
48
- ></expanded-date-picker>`);
49
- const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
50
- expect(applyBtn).to.exist;
51
- applyBtn.click();
52
- await el.updateComplete;
53
- expect(applySpy.callCount).to.equal(1);
54
- expect(applySpy.calledWithMatch({ detail: { minDate: '1', maxDate: '5' } }));
55
- });
56
- it('should close its modal and emit close event when date range applied', async () => {
57
- var _a;
58
- const modalManager = new ModalManager();
59
- modalManager.mode = ModalManagerMode.Open;
60
- const modalClosed = sinon.spy();
48
+ ></expanded-date-picker>`);
49
+ const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
50
+ expect(applyBtn).to.exist;
51
+ applyBtn.click();
52
+ await el.updateComplete;
53
+ expect(applySpy.callCount).to.equal(1);
54
+ expect(applySpy.calledWithMatch({ detail: { minDate: '1', maxDate: '5' } }));
55
+ });
56
+ it('should close its modal and emit close event when date range applied', async () => {
57
+ var _a;
58
+ const modalManager = new ModalManager();
59
+ modalManager.mode = ModalManagerMode.Open;
60
+ const modalClosed = sinon.spy();
61
61
  const el = await fixture(html `<expanded-date-picker
62
62
  .buckets=${[1, 2, 3, 4, 5]}
63
63
  .minDate=${'1'}
@@ -66,16 +66,16 @@ describe('Expanded Date Picker', () => {
66
66
  .maxSelectedDate=${'5'}
67
67
  .modalManager=${modalManager}
68
68
  @modalClosed=${modalClosed}
69
- ></expanded-date-picker>`);
70
- const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
71
- expect(applyBtn).to.exist;
72
- applyBtn.click();
73
- await el.updateComplete;
74
- expect(modalManager.getMode()).to.equal(ModalManagerMode.Closed);
75
- expect(modalClosed.callCount).to.equal(1);
76
- });
77
- it('closes the modal when Esc key is pressed', async () => {
78
- var _a;
69
+ ></expanded-date-picker>`);
70
+ const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
71
+ expect(applyBtn).to.exist;
72
+ applyBtn.click();
73
+ await el.updateComplete;
74
+ expect(modalManager.getMode()).to.equal(ModalManagerMode.Closed);
75
+ expect(modalClosed.callCount).to.equal(1);
76
+ });
77
+ it('closes the modal when Esc key is pressed', async () => {
78
+ var _a;
79
79
  const el = await fixture(html `<expanded-date-picker
80
80
  .buckets=${[1, 2, 3, 4, 5]}
81
81
  .minDate=${'1'}
@@ -83,47 +83,47 @@ describe('Expanded Date Picker', () => {
83
83
  .minSelectedDate=${'1'}
84
84
  .maxSelectedDate=${'5'}
85
85
  .modalManager=${new ModalManager()}
86
- ></expanded-date-picker>`);
87
- const closeModalSpy = sinon.spy(el.modalManager, 'closeModal');
88
- // Dispatch an Esc keydown event
89
- document.dispatchEvent(new KeyboardEvent('keydown', { key: 'Escape' }));
90
- await el.updateComplete;
91
- expect(closeModalSpy.callCount).to.equal(1);
92
- expect((_a = el.modalManager) === null || _a === void 0 ? void 0 : _a.classList.contains('expanded-date-picker')).to.be
93
- .false;
94
- });
95
- it('sends analytics when date range is applied', async () => {
96
- var _a, _b;
97
- const analyticsHandler = new MockAnalyticsHandler();
86
+ ></expanded-date-picker>`);
87
+ const closeModalSpy = sinon.spy(el.modalManager, 'closeModal');
88
+ // Dispatch an Esc keydown event
89
+ document.dispatchEvent(new KeyboardEvent('keydown', { key: 'Escape' }));
90
+ await el.updateComplete;
91
+ expect(closeModalSpy.callCount).to.equal(1);
92
+ expect((_a = el.modalManager) === null || _a === void 0 ? void 0 : _a.classList.contains('expanded-date-picker')).to.be
93
+ .false;
94
+ });
95
+ it('sends analytics when date range is applied', async () => {
96
+ var _a, _b;
97
+ const analyticsHandler = new MockAnalyticsHandler();
98
98
  const el = await fixture(html `<expanded-date-picker
99
99
  .buckets=${[1, 2, 3, 4, 5]}
100
100
  .minDate=${'1'}
101
101
  .maxDate=${'5'}
102
102
  .analyticsHandler=${analyticsHandler}
103
- ></expanded-date-picker>`);
104
- const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
105
- expect(applyBtn).to.exist;
106
- applyBtn.click();
107
- await el.updateComplete;
108
- expect(analyticsHandler.callCategory).to.equal(analyticsCategories.default);
109
- expect(analyticsHandler.callAction).to.equal(analyticsActions.histogramChangedFromModal);
110
- expect(analyticsHandler.callLabel).to.equal(window.location.href);
111
- const datePicker = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#date-picker');
112
- expect(datePicker).to.exist;
113
- datePicker.minSelectedDate = '2';
114
- datePicker.maxSelectedDate = '5';
115
- datePicker.dispatchEvent(new CustomEvent('histogramDateRangeUpdated', {
116
- detail: {
117
- minDate: datePicker.minSelectedDate,
118
- maxDate: datePicker.maxSelectedDate,
119
- },
120
- }));
121
- await el.updateComplete;
122
- applyBtn.click();
123
- await el.updateComplete;
124
- expect(analyticsHandler.callCategory).to.equal(analyticsCategories.default);
125
- expect(analyticsHandler.callAction).to.equal(analyticsActions.histogramChangedFromModal);
126
- expect(analyticsHandler.callLabel).to.equal(window.location.href);
127
- });
128
- });
103
+ ></expanded-date-picker>`);
104
+ const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
105
+ expect(applyBtn).to.exist;
106
+ applyBtn.click();
107
+ await el.updateComplete;
108
+ expect(analyticsHandler.callCategory).to.equal(analyticsCategories.default);
109
+ expect(analyticsHandler.callAction).to.equal(analyticsActions.histogramChangedFromModal);
110
+ expect(analyticsHandler.callLabel).to.equal(window.location.href);
111
+ const datePicker = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#date-picker');
112
+ expect(datePicker).to.exist;
113
+ datePicker.minSelectedDate = '2';
114
+ datePicker.maxSelectedDate = '5';
115
+ datePicker.dispatchEvent(new CustomEvent('histogramDateRangeUpdated', {
116
+ detail: {
117
+ minDate: datePicker.minSelectedDate,
118
+ maxDate: datePicker.maxSelectedDate,
119
+ },
120
+ }));
121
+ await el.updateComplete;
122
+ applyBtn.click();
123
+ await el.updateComplete;
124
+ expect(analyticsHandler.callCategory).to.equal(analyticsCategories.default);
125
+ expect(analyticsHandler.callAction).to.equal(analyticsActions.histogramChangedFromModal);
126
+ expect(analyticsHandler.callLabel).to.equal(window.location.href);
127
+ });
128
+ });
129
129
  //# sourceMappingURL=expanded-date-picker.test.js.map
@@ -1 +1 @@
1
- import '../src/tiles/overlay/icon-overlay';
1
+ import '../src/tiles/overlay/icon-overlay';
@@ -1,31 +1,31 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../src/tiles/overlay/icon-overlay';
5
- describe('Icon Overlay component', () => {
6
- it('should render basic component', async () => {
7
- 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/overlay/icon-overlay';
5
+ describe('Icon Overlay component', () => {
6
+ it('should render basic component', async () => {
7
+ var _a;
8
8
  const el = await fixture(html `
9
9
  <icon-overlay></icon-overlay>
10
- `);
11
- const overlayDiv = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.icon-overlay');
12
- expect(overlayDiv).to.exist;
13
- });
14
- it('should render component with login-required type', async () => {
15
- var _a, _b, _c;
10
+ `);
11
+ const overlayDiv = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.icon-overlay');
12
+ expect(overlayDiv).to.exist;
13
+ });
14
+ it('should render component with login-required type', async () => {
15
+ var _a, _b, _c;
16
16
  const el = await fixture(html `
17
17
  <icon-overlay .type=${'login-required'}></icon-overlay>
18
- `);
19
- const svgTitle = (_c = (_b = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('svg')) === null || _b === void 0 ? void 0 : _b.querySelector('title')) === null || _c === void 0 ? void 0 : _c.textContent;
20
- expect(svgTitle).to.equal('Log in to view this item');
21
- });
22
- it('should render component with content-warning type', async () => {
23
- var _a, _b, _c;
18
+ `);
19
+ const svgTitle = (_c = (_b = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('svg')) === null || _b === void 0 ? void 0 : _b.querySelector('title')) === null || _c === void 0 ? void 0 : _c.textContent;
20
+ expect(svgTitle).to.equal('Log in to view this item');
21
+ });
22
+ it('should render component with content-warning type', async () => {
23
+ var _a, _b, _c;
24
24
  const el = await fixture(html `
25
25
  <icon-overlay .type=${'content-warning'}></icon-overlay>
26
- `);
27
- const svgTitle = (_c = (_b = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('svg')) === null || _b === void 0 ? void 0 : _b.querySelector('title')) === null || _c === void 0 ? void 0 : _c.textContent;
28
- expect(svgTitle).to.equal('Content may be inappropriate');
29
- });
30
- });
26
+ `);
27
+ const svgTitle = (_c = (_b = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('svg')) === null || _b === void 0 ? void 0 : _b.querySelector('title')) === null || _c === void 0 ? void 0 : _c.textContent;
28
+ expect(svgTitle).to.equal('Content may be inappropriate');
29
+ });
30
+ });
31
31
  //# sourceMappingURL=icon-overlay.test.js.map
@@ -1 +1 @@
1
- import '../src/tiles/image-block';
1
+ import '../src/tiles/image-block';