@internetarchive/collection-browser 2.7.7 → 2.7.8

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 (330) 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 +591 -582
  75. package/dist/src/collection-browser.js +1644 -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 +241 -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.d.ts +373 -373
  114. package/dist/src/data-source/collection-browser-data-source.js +982 -982
  115. package/dist/src/data-source/collection-browser-query-state.d.ts +43 -43
  116. package/dist/src/data-source/collection-browser-query-state.js +1 -1
  117. package/dist/src/data-source/models.d.ts +28 -28
  118. package/dist/src/data-source/models.js +8 -8
  119. package/dist/src/empty-placeholder.d.ts +23 -23
  120. package/dist/src/empty-placeholder.js +79 -79
  121. package/dist/src/expanded-date-picker.d.ts +43 -43
  122. package/dist/src/expanded-date-picker.js +109 -109
  123. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  124. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  125. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  126. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  127. package/dist/src/manage/manage-bar.d.ts +58 -35
  128. package/dist/src/manage/manage-bar.js +173 -79
  129. package/dist/src/manage/manage-bar.js.map +1 -1
  130. package/dist/src/manage/remove-items-modal-content.d.ts +9 -0
  131. package/dist/src/manage/remove-items-modal-content.js +104 -0
  132. package/dist/src/manage/remove-items-modal-content.js.map +1 -0
  133. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  134. package/dist/src/mediatype/mediatype-config.js +91 -91
  135. package/dist/src/models.d.ts +228 -219
  136. package/dist/src/models.js +401 -401
  137. package/dist/src/models.js.map +1 -1
  138. package/dist/src/restoration-state-handler.d.ts +70 -70
  139. package/dist/src/restoration-state-handler.js +363 -363
  140. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  141. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  142. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  143. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  144. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  145. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  146. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  147. package/dist/src/sort-filter-bar/img/list.js +2 -2
  148. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  149. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  150. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  151. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  152. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  153. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  154. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  155. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  156. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  157. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  158. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +223 -223
  159. package/dist/src/sort-filter-bar/sort-filter-bar.js +697 -697
  160. package/dist/src/styles/ia-button.d.ts +2 -2
  161. package/dist/src/styles/ia-button.js +17 -17
  162. package/dist/src/styles/item-image-styles.d.ts +8 -8
  163. package/dist/src/styles/item-image-styles.js +9 -9
  164. package/dist/src/styles/sr-only.d.ts +1 -1
  165. package/dist/src/styles/sr-only.js +2 -2
  166. package/dist/src/tiles/base-tile-component.d.ts +19 -19
  167. package/dist/src/tiles/base-tile-component.js +64 -64
  168. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  169. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  170. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  171. package/dist/src/tiles/grid/account-tile.js +72 -72
  172. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  173. package/dist/src/tiles/grid/collection-tile.js +80 -80
  174. package/dist/src/tiles/grid/item-tile.d.ts +34 -34
  175. package/dist/src/tiles/grid/item-tile.js +158 -158
  176. package/dist/src/tiles/grid/search-tile.d.ts +10 -10
  177. package/dist/src/tiles/grid/search-tile.js +51 -51
  178. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  179. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  180. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  181. package/dist/src/tiles/grid/tile-stats.js +53 -53
  182. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  183. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  184. package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
  185. package/dist/src/tiles/hover/tile-hover-pane.js +69 -69
  186. package/dist/src/tiles/image-block.d.ts +18 -18
  187. package/dist/src/tiles/image-block.js +89 -89
  188. package/dist/src/tiles/item-image.d.ts +39 -39
  189. package/dist/src/tiles/item-image.js +154 -154
  190. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  191. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  192. package/dist/src/tiles/list/tile-list-compact.d.ts +19 -19
  193. package/dist/src/tiles/list/tile-list-compact.js +122 -122
  194. package/dist/src/tiles/list/tile-list.d.ts +54 -54
  195. package/dist/src/tiles/list/tile-list.js +323 -323
  196. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  197. package/dist/src/tiles/mediatype-icon.js +47 -47
  198. package/dist/src/tiles/overlay/icon-overlay.d.ts +8 -8
  199. package/dist/src/tiles/overlay/icon-overlay.js +25 -25
  200. package/dist/src/tiles/overlay/text-overlay.d.ts +9 -9
  201. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  202. package/dist/src/tiles/review-block.d.ts +12 -12
  203. package/dist/src/tiles/review-block.js +56 -56
  204. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  205. package/dist/src/tiles/text-snippet-block.js +73 -73
  206. package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
  207. package/dist/src/tiles/tile-dispatcher.js +230 -230
  208. package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
  209. package/dist/src/tiles/tile-display-value-provider.js +94 -94
  210. package/dist/src/utils/analytics-events.d.ts +28 -28
  211. package/dist/src/utils/analytics-events.js +30 -30
  212. package/dist/src/utils/array-equals.d.ts +4 -4
  213. package/dist/src/utils/array-equals.js +10 -10
  214. package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
  215. package/dist/src/utils/collapse-repeated-quotes.js +13 -13
  216. package/dist/src/utils/facet-utils.d.ts +83 -83
  217. package/dist/src/utils/facet-utils.js +145 -145
  218. package/dist/src/utils/format-count.d.ts +7 -7
  219. package/dist/src/utils/format-count.js +76 -76
  220. package/dist/src/utils/format-date.d.ts +2 -2
  221. package/dist/src/utils/format-date.js +27 -27
  222. package/dist/src/utils/format-unit-size.d.ts +2 -2
  223. package/dist/src/utils/format-unit-size.js +33 -33
  224. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  225. package/dist/src/utils/local-date-from-utc.js +15 -15
  226. package/dist/src/utils/log.d.ts +7 -7
  227. package/dist/src/utils/log.js +15 -15
  228. package/dist/src/utils/resolve-mediatype.d.ts +8 -8
  229. package/dist/src/utils/resolve-mediatype.js +23 -23
  230. package/dist/src/utils/sha1.d.ts +2 -2
  231. package/dist/src/utils/sha1.js +8 -8
  232. package/dist/test/collection-browser.test.d.ts +1 -1
  233. package/dist/test/collection-browser.test.js +1293 -1293
  234. package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
  235. package/dist/test/collection-facets/facet-row.test.js +227 -227
  236. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  237. package/dist/test/collection-facets/facets-template.test.js +91 -91
  238. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  239. package/dist/test/collection-facets/more-facets-content.test.js +141 -141
  240. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  241. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  242. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  243. package/dist/test/collection-facets/toggle-switch.test.js +73 -73
  244. package/dist/test/collection-facets.test.d.ts +2 -2
  245. package/dist/test/collection-facets.test.js +690 -690
  246. package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
  247. package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
  248. package/dist/test/empty-placeholder.test.d.ts +1 -1
  249. package/dist/test/empty-placeholder.test.js +63 -63
  250. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  251. package/dist/test/expanded-date-picker.test.js +95 -95
  252. package/dist/test/icon-overlay.test.d.ts +1 -1
  253. package/dist/test/icon-overlay.test.js +24 -24
  254. package/dist/test/image-block.test.d.ts +1 -1
  255. package/dist/test/image-block.test.js +107 -107
  256. package/dist/test/item-image.test.d.ts +1 -1
  257. package/dist/test/item-image.test.js +85 -85
  258. package/dist/test/manage/manage-bar.test.d.ts +2 -1
  259. package/dist/test/manage/manage-bar.test.js +106 -91
  260. package/dist/test/manage/manage-bar.test.js.map +1 -1
  261. package/dist/test/manage/remove-items-modal-content.test.d.ts +1 -0
  262. package/dist/test/manage/remove-items-modal-content.test.js +66 -0
  263. package/dist/test/manage/remove-items-modal-content.test.js.map +1 -0
  264. package/dist/test/mediatype-config.test.d.ts +1 -1
  265. package/dist/test/mediatype-config.test.js +16 -16
  266. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  267. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  268. package/dist/test/mocks/mock-search-responses.d.ts +25 -25
  269. package/dist/test/mocks/mock-search-responses.js +942 -942
  270. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  271. package/dist/test/mocks/mock-search-service.js +54 -54
  272. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  273. package/dist/test/restoration-state-handler.test.js +270 -270
  274. package/dist/test/review-block.test.d.ts +1 -1
  275. package/dist/test/review-block.test.js +44 -44
  276. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  277. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  278. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  279. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  280. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  281. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +426 -426
  282. package/dist/test/text-overlay.test.d.ts +1 -1
  283. package/dist/test/text-overlay.test.js +38 -38
  284. package/dist/test/text-snippet-block.test.d.ts +1 -1
  285. package/dist/test/text-snippet-block.test.js +57 -57
  286. package/dist/test/tile-stats.test.d.ts +1 -1
  287. package/dist/test/tile-stats.test.js +81 -81
  288. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  289. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  290. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  291. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  292. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  293. package/dist/test/tiles/grid/item-tile.test.js +312 -312
  294. package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
  295. package/dist/test/tiles/grid/search-tile.test.js +51 -51
  296. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  297. package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
  298. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  299. package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
  300. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  301. package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
  302. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  303. package/dist/test/tiles/list/tile-list.test.js +297 -297
  304. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  305. package/dist/test/tiles/tile-dispatcher.test.js +100 -100
  306. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  307. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  308. package/dist/test/utils/array-equals.test.d.ts +1 -1
  309. package/dist/test/utils/array-equals.test.js +26 -26
  310. package/dist/test/utils/format-count.test.d.ts +1 -1
  311. package/dist/test/utils/format-count.test.js +23 -23
  312. package/dist/test/utils/format-date.test.d.ts +1 -1
  313. package/dist/test/utils/format-date.test.js +30 -30
  314. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  315. package/dist/test/utils/format-unit-size.test.js +17 -17
  316. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  317. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  318. package/local.archive.org.cert +86 -86
  319. package/local.archive.org.key +27 -27
  320. package/package.json +1 -1
  321. package/renovate.json +6 -6
  322. package/src/app-root.ts +38 -4
  323. package/src/collection-browser.ts +36 -16
  324. package/src/manage/manage-bar.ts +119 -23
  325. package/src/manage/remove-items-modal-content.ts +102 -0
  326. package/src/models.ts +10 -0
  327. package/test/manage/manage-bar.test.ts +41 -18
  328. package/test/manage/remove-items-modal-content.test.ts +82 -0
  329. package/web-dev-server.config.mjs +30 -30
  330. package/web-test-runner.config.mjs +41 -41
@@ -1,281 +1,281 @@
1
- import { __decorate } from "tslib";
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html, LitElement, nothing } from 'lit';
4
- import { customElement, property, query } from 'lit/decorators.js';
5
- import { HoverPaneController, } from '../../../src/tiles/hover/hover-pane-controller';
6
- import { TileModel } from '../../../src/models';
7
- let HostElement = class HostElement extends LitElement {
8
- constructor() {
9
- super(...arguments);
10
- this.suppressHoverPane = false;
11
- }
12
- render() {
13
- var _a;
14
- return html ` ${(_a = this.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()} `;
15
- }
16
- firstUpdated() {
17
- this.controller = new HoverPaneController(this, this.controllerOptions);
18
- }
19
- getHoverPane() {
20
- return this.suppressHoverPane ? undefined : this.hoverPane;
21
- }
22
- getHoverPaneProps() {
23
- const tileModel = new TileModel({});
24
- tileModel.checked = false;
25
- tileModel.collectionFilesCount = 1;
26
- tileModel.collections = ['foo', 'bar'];
27
- tileModel.collectionSize = 1;
28
- tileModel.commentCount = 1;
29
- tileModel.contentWarning = false;
30
- tileModel.creators = ['foo', 'bar'];
31
- tileModel.favCount = 1;
32
- tileModel.identifier = 'foo';
33
- tileModel.itemCount = 1;
34
- tileModel.loginRequired = false;
35
- tileModel.mediatype = 'data';
36
- tileModel.subjects = ['foo', 'bar'];
37
- tileModel.title = 'foo';
38
- tileModel.viewCount = 1;
39
- return {
40
- model: tileModel,
41
- loggedIn: false,
42
- sortParam: null,
43
- };
44
- }
45
- };
46
- __decorate([
47
- property({ type: Object })
48
- ], HostElement.prototype, "controllerOptions", void 0);
49
- __decorate([
50
- property({ type: Boolean })
51
- ], HostElement.prototype, "suppressHoverPane", void 0);
52
- __decorate([
53
- query('tile-hover-pane')
54
- ], HostElement.prototype, "hoverPane", void 0);
55
- HostElement = __decorate([
56
- customElement('host-element')
57
- ], HostElement);
58
- describe('Hover Pane Controller', () => {
59
- let oldMatchMedia;
60
- let oldOnTouchStart;
61
- before(() => {
62
- oldMatchMedia = window.matchMedia;
63
- oldOnTouchStart = window.ontouchstart;
64
- window.matchMedia = () => ({ matches: true });
65
- window.ontouchstart = () => { };
66
- });
67
- after(() => {
68
- window.matchMedia = oldMatchMedia;
69
- window.ontouchstart = oldOnTouchStart;
70
- });
71
- it('should initially provide empty template', async () => {
72
- var _a;
73
- const host = await fixture(html `<host-element></host-element>`);
74
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).to.equal(nothing);
75
- });
76
- it('should produce a hover pane template after mousemove, and hide it after mouseleave', async () => {
77
- var _a, _b;
1
+ import { __decorate } from "tslib";
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html, LitElement, nothing } from 'lit';
4
+ import { customElement, property, query } from 'lit/decorators.js';
5
+ import { HoverPaneController, } from '../../../src/tiles/hover/hover-pane-controller';
6
+ import { TileModel } from '../../../src/models';
7
+ let HostElement = class HostElement extends LitElement {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.suppressHoverPane = false;
11
+ }
12
+ render() {
13
+ var _a;
14
+ return html ` ${(_a = this.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()} `;
15
+ }
16
+ firstUpdated() {
17
+ this.controller = new HoverPaneController(this, this.controllerOptions);
18
+ }
19
+ getHoverPane() {
20
+ return this.suppressHoverPane ? undefined : this.hoverPane;
21
+ }
22
+ getHoverPaneProps() {
23
+ const tileModel = new TileModel({});
24
+ tileModel.checked = false;
25
+ tileModel.collectionFilesCount = 1;
26
+ tileModel.collections = ['foo', 'bar'];
27
+ tileModel.collectionSize = 1;
28
+ tileModel.commentCount = 1;
29
+ tileModel.contentWarning = false;
30
+ tileModel.creators = ['foo', 'bar'];
31
+ tileModel.favCount = 1;
32
+ tileModel.identifier = 'foo';
33
+ tileModel.itemCount = 1;
34
+ tileModel.loginRequired = false;
35
+ tileModel.mediatype = 'data';
36
+ tileModel.subjects = ['foo', 'bar'];
37
+ tileModel.title = 'foo';
38
+ tileModel.viewCount = 1;
39
+ return {
40
+ model: tileModel,
41
+ loggedIn: false,
42
+ sortParam: null,
43
+ };
44
+ }
45
+ };
46
+ __decorate([
47
+ property({ type: Object })
48
+ ], HostElement.prototype, "controllerOptions", void 0);
49
+ __decorate([
50
+ property({ type: Boolean })
51
+ ], HostElement.prototype, "suppressHoverPane", void 0);
52
+ __decorate([
53
+ query('tile-hover-pane')
54
+ ], HostElement.prototype, "hoverPane", void 0);
55
+ HostElement = __decorate([
56
+ customElement('host-element')
57
+ ], HostElement);
58
+ describe('Hover Pane Controller', () => {
59
+ let oldMatchMedia;
60
+ let oldOnTouchStart;
61
+ before(() => {
62
+ oldMatchMedia = window.matchMedia;
63
+ oldOnTouchStart = window.ontouchstart;
64
+ window.matchMedia = () => ({ matches: true });
65
+ window.ontouchstart = () => { };
66
+ });
67
+ after(() => {
68
+ window.matchMedia = oldMatchMedia;
69
+ window.ontouchstart = oldOnTouchStart;
70
+ });
71
+ it('should initially provide empty template', async () => {
72
+ var _a;
73
+ const host = await fixture(html `<host-element></host-element>`);
74
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).to.equal(nothing);
75
+ });
76
+ it('should produce a hover pane template after mousemove, and hide it after mouseleave', async () => {
77
+ var _a, _b;
78
78
  const host = await fixture(html `<host-element
79
79
  .controllerOptions=${{ showDelay: 0, hideDelay: 0 }}
80
- ></host-element>`);
81
- host.dispatchEvent(new MouseEvent('mousemove'));
82
- // Need to wait a tick for the event handlers to run
83
- await new Promise(resolve => {
84
- setTimeout(resolve, 0);
85
- });
86
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing); // Is a TemplateResult
87
- host.dispatchEvent(new MouseEvent('mouseleave'));
88
- // Need to wait for the fade out transition
89
- await new Promise(resolve => {
90
- setTimeout(resolve, 150);
91
- });
92
- expect((_b = host.controller) === null || _b === void 0 ? void 0 : _b.getTemplate()).to.equal(nothing);
93
- });
94
- it('should produce a hover pane template after mouseenter, even without mousemove', async () => {
95
- var _a;
80
+ ></host-element>`);
81
+ host.dispatchEvent(new MouseEvent('mousemove'));
82
+ // Need to wait a tick for the event handlers to run
83
+ await new Promise(resolve => {
84
+ setTimeout(resolve, 0);
85
+ });
86
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing); // Is a TemplateResult
87
+ host.dispatchEvent(new MouseEvent('mouseleave'));
88
+ // Need to wait for the fade out transition
89
+ await new Promise(resolve => {
90
+ setTimeout(resolve, 150);
91
+ });
92
+ expect((_b = host.controller) === null || _b === void 0 ? void 0 : _b.getTemplate()).to.equal(nothing);
93
+ });
94
+ it('should produce a hover pane template after mouseenter, even without mousemove', async () => {
95
+ var _a;
96
96
  const host = await fixture(html `<host-element
97
97
  .controllerOptions=${{ showDelay: 0, hideDelay: 0 }}
98
- ></host-element>`);
99
- host.dispatchEvent(new MouseEvent('mouseenter'));
100
- // Need to wait a tick for the event handlers to run
101
- await new Promise(resolve => {
102
- setTimeout(resolve, 0);
103
- });
104
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing); // Is a TemplateResult
105
- });
106
- it('should immediately fade back in if mouse enters while fading out', async () => {
107
- var _a;
98
+ ></host-element>`);
99
+ host.dispatchEvent(new MouseEvent('mouseenter'));
100
+ // Need to wait a tick for the event handlers to run
101
+ await new Promise(resolve => {
102
+ setTimeout(resolve, 0);
103
+ });
104
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing); // Is a TemplateResult
105
+ });
106
+ it('should immediately fade back in if mouse enters while fading out', async () => {
107
+ var _a;
108
108
  const host = await fixture(html `<host-element
109
109
  .controllerOptions=${{ showDelay: 0, hideDelay: 0 }}
110
- ></host-element>`);
111
- // Enter the host element and wait for the show handlers to run
112
- host.dispatchEvent(new MouseEvent('mousemove'));
113
- await new Promise(resolve => {
114
- setTimeout(resolve, 0);
115
- });
116
- // Leave the host element so it begins fading out, but not all the way
117
- host.dispatchEvent(new MouseEvent('mouseleave'));
118
- await new Promise(resolve => {
119
- setTimeout(resolve, 20);
120
- });
121
- // Re-enter the host element and wait long enough that it would disappear
122
- // if the hide were not cancelled
123
- host.dispatchEvent(new MouseEvent('mousemove'));
124
- await new Promise(resolve => {
125
- setTimeout(resolve, 150);
126
- });
127
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing);
128
- });
129
- it('should flip hover pane if it would overflow the viewport', async () => {
130
- var _a, _b, _c, _d, _e;
110
+ ></host-element>`);
111
+ // Enter the host element and wait for the show handlers to run
112
+ host.dispatchEvent(new MouseEvent('mousemove'));
113
+ await new Promise(resolve => {
114
+ setTimeout(resolve, 0);
115
+ });
116
+ // Leave the host element so it begins fading out, but not all the way
117
+ host.dispatchEvent(new MouseEvent('mouseleave'));
118
+ await new Promise(resolve => {
119
+ setTimeout(resolve, 20);
120
+ });
121
+ // Re-enter the host element and wait long enough that it would disappear
122
+ // if the hide were not cancelled
123
+ host.dispatchEvent(new MouseEvent('mousemove'));
124
+ await new Promise(resolve => {
125
+ setTimeout(resolve, 150);
126
+ });
127
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing);
128
+ });
129
+ it('should flip hover pane if it would overflow the viewport', async () => {
130
+ var _a, _b, _c, _d, _e;
131
131
  const host = await fixture(html `<host-element
132
132
  .controllerOptions=${{ showDelay: 0, hideDelay: 0 }}
133
- ></host-element>`);
134
- host.dispatchEvent(new MouseEvent('mousemove', { clientX: 800, clientY: 600 }));
135
- // Need to wait a tick for the event handlers to run
136
- await new Promise(resolve => {
137
- setTimeout(resolve, 0);
138
- });
139
- await host.updateComplete;
140
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing);
141
- expect((_c = (_b = host.getHoverPane()) === null || _b === void 0 ? void 0 : _b.getBoundingClientRect()) === null || _c === void 0 ? void 0 : _c.right).to.be.lessThan(window.innerWidth);
142
- expect((_e = (_d = host.getHoverPane()) === null || _d === void 0 ? void 0 : _d.getBoundingClientRect()) === null || _e === void 0 ? void 0 : _e.bottom).to.be.lessThan(window.innerHeight);
143
- });
144
- it('should gracefully handle undefined hover pane from host element', async () => {
145
- var _a, _b;
133
+ ></host-element>`);
134
+ host.dispatchEvent(new MouseEvent('mousemove', { clientX: 800, clientY: 600 }));
135
+ // Need to wait a tick for the event handlers to run
136
+ await new Promise(resolve => {
137
+ setTimeout(resolve, 0);
138
+ });
139
+ await host.updateComplete;
140
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing);
141
+ expect((_c = (_b = host.getHoverPane()) === null || _b === void 0 ? void 0 : _b.getBoundingClientRect()) === null || _c === void 0 ? void 0 : _c.right).to.be.lessThan(window.innerWidth);
142
+ expect((_e = (_d = host.getHoverPane()) === null || _d === void 0 ? void 0 : _d.getBoundingClientRect()) === null || _e === void 0 ? void 0 : _e.bottom).to.be.lessThan(window.innerHeight);
143
+ });
144
+ it('should gracefully handle undefined hover pane from host element', async () => {
145
+ var _a, _b;
146
146
  const host = await fixture(html `<host-element
147
147
  .controllerOptions=${{ showDelay: 0, hideDelay: 0 }}
148
148
  ?suppressHoverPane=${true}
149
- ></host-element>`);
150
- host.dispatchEvent(new MouseEvent('mousemove'));
151
- // Need to wait a tick for the event handlers to run
152
- await new Promise(resolve => {
153
- setTimeout(resolve, 0);
154
- });
155
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing);
156
- host.dispatchEvent(new MouseEvent('mouseleave'));
157
- await new Promise(resolve => {
158
- setTimeout(resolve, 20);
159
- });
160
- host.dispatchEvent(new MouseEvent('mousemove'));
161
- await new Promise(resolve => {
162
- setTimeout(resolve, 0);
163
- });
164
- host.dispatchEvent(new MouseEvent('mouseleave'));
165
- // Need to wait for the fade out transition
166
- await new Promise(resolve => {
167
- setTimeout(resolve, 150);
168
- });
169
- expect((_b = host.controller) === null || _b === void 0 ? void 0 : _b.getTemplate()).to.equal(nothing);
170
- });
171
- describe('Touch & long-press', () => {
172
- const getTouchStartEvent = (host) => new TouchEvent('touchstart', {
173
- touches: [new Touch({ identifier: 0, target: host })],
174
- });
175
- it('should produce a hover pane after long press', async () => {
176
- var _a;
149
+ ></host-element>`);
150
+ host.dispatchEvent(new MouseEvent('mousemove'));
151
+ // Need to wait a tick for the event handlers to run
152
+ await new Promise(resolve => {
153
+ setTimeout(resolve, 0);
154
+ });
155
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing);
156
+ host.dispatchEvent(new MouseEvent('mouseleave'));
157
+ await new Promise(resolve => {
158
+ setTimeout(resolve, 20);
159
+ });
160
+ host.dispatchEvent(new MouseEvent('mousemove'));
161
+ await new Promise(resolve => {
162
+ setTimeout(resolve, 0);
163
+ });
164
+ host.dispatchEvent(new MouseEvent('mouseleave'));
165
+ // Need to wait for the fade out transition
166
+ await new Promise(resolve => {
167
+ setTimeout(resolve, 150);
168
+ });
169
+ expect((_b = host.controller) === null || _b === void 0 ? void 0 : _b.getTemplate()).to.equal(nothing);
170
+ });
171
+ describe('Touch & long-press', () => {
172
+ const getTouchStartEvent = (host) => new TouchEvent('touchstart', {
173
+ touches: [new Touch({ identifier: 0, target: host })],
174
+ });
175
+ it('should produce a hover pane after long press', async () => {
176
+ var _a;
177
177
  const host = await fixture(html `<host-element
178
- .controllerOptions=${{
179
- showDelay: 0,
180
- longPressDelay: 0,
181
- enableLongPress: true,
178
+ .controllerOptions=${{
179
+ showDelay: 0,
180
+ longPressDelay: 0,
181
+ enableLongPress: true,
182
182
  }}
183
- ></host-element>`);
184
- // Touch the host element and wait for the long press handlers to run
185
- host.dispatchEvent(getTouchStartEvent(host));
186
- await new Promise(resolve => {
187
- setTimeout(resolve, 0);
188
- });
189
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing); // Is a TemplateResult
190
- });
191
- it('should cancel a long press by moving', async () => {
192
- var _a;
183
+ ></host-element>`);
184
+ // Touch the host element and wait for the long press handlers to run
185
+ host.dispatchEvent(getTouchStartEvent(host));
186
+ await new Promise(resolve => {
187
+ setTimeout(resolve, 0);
188
+ });
189
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing); // Is a TemplateResult
190
+ });
191
+ it('should cancel a long press by moving', async () => {
192
+ var _a;
193
193
  const host = await fixture(html `<host-element
194
- .controllerOptions=${{
195
- showDelay: 0,
196
- longPressDelay: 100,
197
- enableLongPress: true,
194
+ .controllerOptions=${{
195
+ showDelay: 0,
196
+ longPressDelay: 100,
197
+ enableLongPress: true,
198
198
  }}
199
- ></host-element>`);
200
- // Touch the host element
201
- host.dispatchEvent(getTouchStartEvent(host));
202
- await new Promise(resolve => {
203
- setTimeout(resolve, 0);
204
- });
205
- // Move the touch point, cancelling the long press
206
- host.dispatchEvent(new TouchEvent('touchmove'));
207
- await new Promise(resolve => {
208
- setTimeout(resolve, 150);
209
- });
210
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).to.equal(nothing);
211
- });
212
- it('should cancel a long press by ending touch', async () => {
213
- var _a;
199
+ ></host-element>`);
200
+ // Touch the host element
201
+ host.dispatchEvent(getTouchStartEvent(host));
202
+ await new Promise(resolve => {
203
+ setTimeout(resolve, 0);
204
+ });
205
+ // Move the touch point, cancelling the long press
206
+ host.dispatchEvent(new TouchEvent('touchmove'));
207
+ await new Promise(resolve => {
208
+ setTimeout(resolve, 150);
209
+ });
210
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).to.equal(nothing);
211
+ });
212
+ it('should cancel a long press by ending touch', async () => {
213
+ var _a;
214
214
  const host = await fixture(html `<host-element
215
- .controllerOptions=${{
216
- showDelay: 0,
217
- longPressDelay: 100,
218
- enableLongPress: true,
215
+ .controllerOptions=${{
216
+ showDelay: 0,
217
+ longPressDelay: 100,
218
+ enableLongPress: true,
219
219
  }}
220
- ></host-element>`);
221
- // Touch the host element
222
- host.dispatchEvent(getTouchStartEvent(host));
223
- await new Promise(resolve => {
224
- setTimeout(resolve, 0);
225
- });
226
- // Lift the touch point, cancelling the long press
227
- host.dispatchEvent(new TouchEvent('touchend'));
228
- await new Promise(resolve => {
229
- setTimeout(resolve, 150);
230
- });
231
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).to.equal(nothing);
232
- });
233
- it('should cancel a long press by cancelling touch (e.g., too many touch points)', async () => {
234
- var _a;
220
+ ></host-element>`);
221
+ // Touch the host element
222
+ host.dispatchEvent(getTouchStartEvent(host));
223
+ await new Promise(resolve => {
224
+ setTimeout(resolve, 0);
225
+ });
226
+ // Lift the touch point, cancelling the long press
227
+ host.dispatchEvent(new TouchEvent('touchend'));
228
+ await new Promise(resolve => {
229
+ setTimeout(resolve, 150);
230
+ });
231
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).to.equal(nothing);
232
+ });
233
+ it('should cancel a long press by cancelling touch (e.g., too many touch points)', async () => {
234
+ var _a;
235
235
  const host = await fixture(html `<host-element
236
- .controllerOptions=${{
237
- showDelay: 0,
238
- longPressDelay: 100,
239
- enableLongPress: true,
236
+ .controllerOptions=${{
237
+ showDelay: 0,
238
+ longPressDelay: 100,
239
+ enableLongPress: true,
240
240
  }}
241
- ></host-element>`);
242
- // Touch the host element
243
- host.dispatchEvent(getTouchStartEvent(host));
244
- await new Promise(resolve => {
245
- setTimeout(resolve, 0);
246
- });
247
- // Cancel the touch point, also cancelling the long press
248
- host.dispatchEvent(new TouchEvent('touchcancel'));
249
- await new Promise(resolve => {
250
- setTimeout(resolve, 150);
251
- });
252
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).to.equal(nothing);
253
- });
254
- it('should close the hover pane on mobile when touching the backdrop', async () => {
255
- var _a, _b, _c, _d;
241
+ ></host-element>`);
242
+ // Touch the host element
243
+ host.dispatchEvent(getTouchStartEvent(host));
244
+ await new Promise(resolve => {
245
+ setTimeout(resolve, 0);
246
+ });
247
+ // Cancel the touch point, also cancelling the long press
248
+ host.dispatchEvent(new TouchEvent('touchcancel'));
249
+ await new Promise(resolve => {
250
+ setTimeout(resolve, 150);
251
+ });
252
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).to.equal(nothing);
253
+ });
254
+ it('should close the hover pane on mobile when touching the backdrop', async () => {
255
+ var _a, _b, _c, _d;
256
256
  const host = await fixture(html `<host-element
257
- .controllerOptions=${{
258
- showDelay: 0,
259
- hideDelay: 0,
260
- longPressDelay: 0,
261
- enableLongPress: true,
262
- mobileBreakpoint: 9999, // Ensure we get the mobile view
257
+ .controllerOptions=${{
258
+ showDelay: 0,
259
+ hideDelay: 0,
260
+ longPressDelay: 0,
261
+ enableLongPress: true,
262
+ mobileBreakpoint: 9999, // Ensure we get the mobile view
263
263
  }}
264
- ></host-element>`);
265
- // Touch the host element
266
- host.dispatchEvent(getTouchStartEvent(host));
267
- await new Promise(resolve => {
268
- setTimeout(resolve, 0);
269
- });
270
- expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing);
271
- await host.updateComplete;
272
- // Touch the backdrop
273
- (_c = (_b = host.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#touch-backdrop')) === null || _c === void 0 ? void 0 : _c.dispatchEvent(new TouchEvent('touchstart'));
274
- await new Promise(resolve => {
275
- setTimeout(resolve, 150);
276
- });
277
- expect((_d = host.controller) === null || _d === void 0 ? void 0 : _d.getTemplate()).to.equal(nothing);
278
- });
279
- });
280
- });
264
+ ></host-element>`);
265
+ // Touch the host element
266
+ host.dispatchEvent(getTouchStartEvent(host));
267
+ await new Promise(resolve => {
268
+ setTimeout(resolve, 0);
269
+ });
270
+ expect((_a = host.controller) === null || _a === void 0 ? void 0 : _a.getTemplate()).not.to.equal(nothing);
271
+ await host.updateComplete;
272
+ // Touch the backdrop
273
+ (_c = (_b = host.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#touch-backdrop')) === null || _c === void 0 ? void 0 : _c.dispatchEvent(new TouchEvent('touchstart'));
274
+ await new Promise(resolve => {
275
+ setTimeout(resolve, 150);
276
+ });
277
+ expect((_d = host.controller) === null || _d === void 0 ? void 0 : _d.getTemplate()).to.equal(nothing);
278
+ });
279
+ });
280
+ });
281
281
  //# sourceMappingURL=hover-pane-controller.test.js.map
@@ -1 +1 @@
1
- import '../../../src/tiles/hover/tile-hover-pane';
1
+ import '../../../src/tiles/hover/tile-hover-pane';