@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 +1 @@
1
- import '../src/tiles/overlay/text-overlay';
1
+ import '../src/tiles/overlay/text-overlay';
@@ -1,43 +1,43 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../src/tiles/overlay/text-overlay';
5
- describe('Text Overlay component', () => {
6
- it('should render initial component', async () => {
7
- var _a, _b, _c, _d;
8
- const el = await fixture(html `<text-overlay></text-overlay>`);
9
- const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
10
- const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
11
- const iconOverlay = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.icon-overlay');
12
- const textOverlay = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.text-overlay');
13
- expect(overlay).to.exist;
14
- expect(noPreview).to.exist;
15
- expect(iconOverlay).to.exist;
16
- expect(textOverlay).to.exist;
17
- });
18
- it('should render component with login-required type', async () => {
19
- var _a, _b, _c, _d, _e;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import '../src/tiles/overlay/text-overlay';
5
+ describe('Text Overlay component', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b, _c, _d;
8
+ const el = await fixture(html `<text-overlay></text-overlay>`);
9
+ const overlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.overlay');
10
+ const noPreview = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.no-preview');
11
+ const iconOverlay = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.icon-overlay');
12
+ const textOverlay = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.text-overlay');
13
+ expect(overlay).to.exist;
14
+ expect(noPreview).to.exist;
15
+ expect(iconOverlay).to.exist;
16
+ expect(textOverlay).to.exist;
17
+ });
18
+ it('should render component with login-required type', async () => {
19
+ var _a, _b, _c, _d, _e;
20
20
  const el = await fixture(html `
21
21
  <text-overlay .type=${'login-required'}></text-overlay>
22
- `);
23
- const iconOverlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.icon-overlay');
24
- const textOverlay = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.text-overlay');
25
- const svgTitle = (_e = (_d = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('svg')) === null || _d === void 0 ? void 0 : _d.querySelector('title')) === null || _e === void 0 ? void 0 : _e.textContent;
26
- expect(iconOverlay).to.exist;
27
- expect(svgTitle).to.equal('Log in to view this item');
28
- expect(textOverlay === null || textOverlay === void 0 ? void 0 : textOverlay.textContent).to.equal('Log in to view this item');
29
- });
30
- it('should render component with content-warning type', async () => {
31
- var _a, _b, _c, _d, _e;
22
+ `);
23
+ const iconOverlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.icon-overlay');
24
+ const textOverlay = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.text-overlay');
25
+ const svgTitle = (_e = (_d = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('svg')) === null || _d === void 0 ? void 0 : _d.querySelector('title')) === null || _e === void 0 ? void 0 : _e.textContent;
26
+ expect(iconOverlay).to.exist;
27
+ expect(svgTitle).to.equal('Log in to view this item');
28
+ expect(textOverlay === null || textOverlay === void 0 ? void 0 : textOverlay.textContent).to.equal('Log in to view this item');
29
+ });
30
+ it('should render component with content-warning type', async () => {
31
+ var _a, _b, _c, _d, _e;
32
32
  const el = await fixture(html `
33
33
  <text-overlay .type=${'content-warning'}></text-overlay>
34
- `);
35
- const iconOverlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.icon-overlay');
36
- const textOverlay = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.text-overlay');
37
- const svgTitle = (_e = (_d = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('svg')) === null || _d === void 0 ? void 0 : _d.querySelector('title')) === null || _e === void 0 ? void 0 : _e.textContent;
38
- expect(iconOverlay).to.exist;
39
- expect(svgTitle).to.equal('Content may be inappropriate');
40
- expect(textOverlay === null || textOverlay === void 0 ? void 0 : textOverlay.textContent).to.equal('Content may be inappropriate');
41
- });
42
- });
34
+ `);
35
+ const iconOverlay = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.icon-overlay');
36
+ const textOverlay = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.text-overlay');
37
+ const svgTitle = (_e = (_d = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('svg')) === null || _d === void 0 ? void 0 : _d.querySelector('title')) === null || _e === void 0 ? void 0 : _e.textContent;
38
+ expect(iconOverlay).to.exist;
39
+ expect(svgTitle).to.equal('Content may be inappropriate');
40
+ expect(textOverlay === null || textOverlay === void 0 ? void 0 : textOverlay.textContent).to.equal('Content may be inappropriate');
41
+ });
42
+ });
43
43
  //# sourceMappingURL=text-overlay.test.js.map
@@ -1 +1 @@
1
- import '../src/tiles/text-snippet-block';
1
+ import '../src/tiles/text-snippet-block';
@@ -1,64 +1,64 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../src/tiles/text-snippet-block';
5
- describe('TextSnippetBlock component', () => {
6
- it('should render initial component', async () => {
7
- var _a, _b;
8
- const el = await fixture(html `<text-snippet-block></text-snippet-block>`);
9
- // No content if no snippets
10
- expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.children.length).to.equal(0);
11
- // Content appears if there are snippets
12
- el.snippets = ['text'];
13
- await el.updateComplete;
14
- const container = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.container');
15
- expect(container).to.exist;
16
- });
17
- it('should render marked snippets', async () => {
18
- var _a;
19
- const snippets = [
20
- 'some {{{snippet}}} text',
21
- 'some {{{other}}} {{{snippet}}} text',
22
- ];
23
- const el = await fixture(html `<text-snippet-block .snippets=${snippets}></text-snippet-block>`);
24
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.snippet-view');
25
- // Has the correct number of snippets and highlights
26
- expect(container === null || container === void 0 ? void 0 : container.children.length).to.equal(snippets.length);
27
- expect(container === null || container === void 0 ? void 0 : container.querySelectorAll('mark').length).to.equal(3);
28
- });
29
- it('should render marked snippets containing newlines', async () => {
30
- var _a;
31
- const snippets = [
32
- 'some {{{snippet}}} text',
33
- 'some {{{other}}} {{{snippet\n text}}}',
34
- ];
35
- const el = await fixture(html `<text-snippet-block .snippets=${snippets}></text-snippet-block>`);
36
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.snippet-view');
37
- // Has the correct number of snippets and highlights
38
- expect(container === null || container === void 0 ? void 0 : container.children.length).to.equal(snippets.length);
39
- expect(container === null || container === void 0 ? void 0 : container.querySelectorAll('mark').length).to.equal(3);
40
- });
41
- it('should render correctly in grid mode', async () => {
42
- var _a;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import '../src/tiles/text-snippet-block';
5
+ describe('TextSnippetBlock component', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b;
8
+ const el = await fixture(html `<text-snippet-block></text-snippet-block>`);
9
+ // No content if no snippets
10
+ expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.children.length).to.equal(0);
11
+ // Content appears if there are snippets
12
+ el.snippets = ['text'];
13
+ await el.updateComplete;
14
+ const container = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.container');
15
+ expect(container).to.exist;
16
+ });
17
+ it('should render marked snippets', async () => {
18
+ var _a;
19
+ const snippets = [
20
+ 'some {{{snippet}}} text',
21
+ 'some {{{other}}} {{{snippet}}} text',
22
+ ];
23
+ const el = await fixture(html `<text-snippet-block .snippets=${snippets}></text-snippet-block>`);
24
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.snippet-view');
25
+ // Has the correct number of snippets and highlights
26
+ expect(container === null || container === void 0 ? void 0 : container.children.length).to.equal(snippets.length);
27
+ expect(container === null || container === void 0 ? void 0 : container.querySelectorAll('mark').length).to.equal(3);
28
+ });
29
+ it('should render marked snippets containing newlines', async () => {
30
+ var _a;
31
+ const snippets = [
32
+ 'some {{{snippet}}} text',
33
+ 'some {{{other}}} {{{snippet\n text}}}',
34
+ ];
35
+ const el = await fixture(html `<text-snippet-block .snippets=${snippets}></text-snippet-block>`);
36
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.snippet-view');
37
+ // Has the correct number of snippets and highlights
38
+ expect(container === null || container === void 0 ? void 0 : container.children.length).to.equal(snippets.length);
39
+ expect(container === null || container === void 0 ? void 0 : container.querySelectorAll('mark').length).to.equal(3);
40
+ });
41
+ it('should render correctly in grid mode', async () => {
42
+ var _a;
43
43
  const el = await fixture(html `<text-snippet-block
44
44
  viewsize="grid"
45
45
  .snippets=${['text']}
46
- ></text-snippet-block>`);
47
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.snippet-view');
48
- // Applies the right container classes
49
- expect(container === null || container === void 0 ? void 0 : container.classList.contains('grid')).to.be.true;
50
- expect(container === null || container === void 0 ? void 0 : container.classList.contains('list')).to.be.false;
51
- });
52
- it('should render correctly in list mode', async () => {
53
- var _a;
46
+ ></text-snippet-block>`);
47
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.snippet-view');
48
+ // Applies the right container classes
49
+ expect(container === null || container === void 0 ? void 0 : container.classList.contains('grid')).to.be.true;
50
+ expect(container === null || container === void 0 ? void 0 : container.classList.contains('list')).to.be.false;
51
+ });
52
+ it('should render correctly in list mode', async () => {
53
+ var _a;
54
54
  const el = await fixture(html `<text-snippet-block
55
55
  viewsize="list"
56
56
  .snippets=${['text']}
57
- ></text-snippet-block>`);
58
- const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.snippet-view');
59
- // Applies the right container classes
60
- expect(container === null || container === void 0 ? void 0 : container.classList.contains('list')).to.be.true;
61
- expect(container === null || container === void 0 ? void 0 : container.classList.contains('grid')).to.be.false;
62
- });
63
- });
57
+ ></text-snippet-block>`);
58
+ const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.snippet-view');
59
+ // Applies the right container classes
60
+ expect(container === null || container === void 0 ? void 0 : container.classList.contains('list')).to.be.true;
61
+ expect(container === null || container === void 0 ? void 0 : container.classList.contains('grid')).to.be.false;
62
+ });
63
+ });
64
64
  //# sourceMappingURL=text-snippet-block.test.js.map
@@ -1 +1 @@
1
- import '../src/tiles/grid/tile-stats';
1
+ import '../src/tiles/grid/tile-stats';
@@ -1,20 +1,20 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import { html } from 'lit';
4
- import '../src/tiles/grid/tile-stats';
5
- describe('Tile Stats', () => {
6
- it('should render initial component', async () => {
7
- var _a, _b;
8
- const el = await fixture(html `<tile-stats></tile-stats>`);
9
- const itemStats = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-stats');
10
- const statsRow = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#stats-row');
11
- const statsRowCount = statsRow === null || statsRow === void 0 ? void 0 : statsRow.childElementCount;
12
- expect(itemStats).to.exist;
13
- expect(statsRow).to.exist;
14
- expect(statsRowCount).to.equal(4);
15
- });
16
- it('should render component with value', async () => {
17
- var _a, _b, _c, _d, _e, _f, _g;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import { html } from 'lit';
4
+ import '../src/tiles/grid/tile-stats';
5
+ describe('Tile Stats', () => {
6
+ it('should render initial component', async () => {
7
+ var _a, _b;
8
+ const el = await fixture(html `<tile-stats></tile-stats>`);
9
+ const itemStats = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-stats');
10
+ const statsRow = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#stats-row');
11
+ const statsRowCount = statsRow === null || statsRow === void 0 ? void 0 : statsRow.childElementCount;
12
+ expect(itemStats).to.exist;
13
+ expect(statsRow).to.exist;
14
+ expect(statsRowCount).to.equal(4);
15
+ });
16
+ it('should render component with value', async () => {
17
+ var _a, _b, _c, _d, _e, _f, _g;
18
18
  const el = await fixture(html `
19
19
  <tile-stats
20
20
  .mediatype=${'account'}
@@ -23,23 +23,23 @@ describe('Tile Stats', () => {
23
23
  .commentCount=${3}
24
24
  >
25
25
  </tile-stats>
26
- `);
27
- const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
28
- const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
29
- // get second column item in stats row
30
- const itemStatCount = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent;
31
- // get third column item in stats row
32
- const favoritesStatCount = (_e = (_d = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _d === void 0 ? void 0 : _d.querySelector('.status-text')) === null || _e === void 0 ? void 0 : _e.textContent;
33
- // get fourth column item in stats row
34
- const reviewsStatCount = (_g = (_f = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _f === void 0 ? void 0 : _f.querySelector('.status-text')) === null || _g === void 0 ? void 0 : _g.textContent;
35
- expect(mediatypeStat).to.exist;
36
- // Snapshot testing - reference: https://open-wc.org/docs/testing/semantic-dom-diff/#snapshot-testing
37
- expect(itemStatCount).to.equalSnapshot(1);
38
- expect(favoritesStatCount).to.equalSnapshot(2);
39
- expect(reviewsStatCount).to.equalSnapshot(3);
40
- });
41
- it('should render view count for non-account items', async () => {
42
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
26
+ `);
27
+ const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
28
+ const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
29
+ // get second column item in stats row
30
+ const itemStatCount = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent;
31
+ // get third column item in stats row
32
+ const favoritesStatCount = (_e = (_d = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _d === void 0 ? void 0 : _d.querySelector('.status-text')) === null || _e === void 0 ? void 0 : _e.textContent;
33
+ // get fourth column item in stats row
34
+ const reviewsStatCount = (_g = (_f = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _f === void 0 ? void 0 : _f.querySelector('.status-text')) === null || _g === void 0 ? void 0 : _g.textContent;
35
+ expect(mediatypeStat).to.exist;
36
+ // Snapshot testing - reference: https://open-wc.org/docs/testing/semantic-dom-diff/#snapshot-testing
37
+ expect(itemStatCount).to.equalSnapshot(1);
38
+ expect(favoritesStatCount).to.equalSnapshot(2);
39
+ expect(reviewsStatCount).to.equalSnapshot(3);
40
+ });
41
+ it('should render view count for non-account items', async () => {
42
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
43
43
  const el = await fixture(html `
44
44
  <tile-stats
45
45
  .mediatype=${'texts'}
@@ -48,57 +48,57 @@ describe('Tile Stats', () => {
48
48
  .commentCount=${6}
49
49
  >
50
50
  </tile-stats>
51
- `);
52
- const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
53
- const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
54
- // get second column item in stats row
55
- const viewStatCount = (_d = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent) === null || _d === void 0 ? void 0 : _d.trim();
56
- // get third column item in stats row
57
- const favoritesStatCount = (_g = (_f = (_e = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _e === void 0 ? void 0 : _e.querySelector('.status-text')) === null || _f === void 0 ? void 0 : _f.textContent) === null || _g === void 0 ? void 0 : _g.trim();
58
- // get fourth column item in stats row
59
- const reviewsStatCount = (_k = (_j = (_h = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _h === void 0 ? void 0 : _h.querySelector('.status-text')) === null || _j === void 0 ? void 0 : _j.textContent) === null || _k === void 0 ? void 0 : _k.trim();
60
- expect(mediatypeStat).to.exist;
61
- expect(viewStatCount).to.match(/Views:\s+4/);
62
- expect(favoritesStatCount).to.match(/Favorites:\s+5/);
63
- expect(reviewsStatCount).to.match(/Reviews:\s+6/);
64
- });
65
- it('handles missing counts gracefully', async () => {
66
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
51
+ `);
52
+ const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
53
+ const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
54
+ // get second column item in stats row
55
+ const viewStatCount = (_d = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent) === null || _d === void 0 ? void 0 : _d.trim();
56
+ // get third column item in stats row
57
+ const favoritesStatCount = (_g = (_f = (_e = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _e === void 0 ? void 0 : _e.querySelector('.status-text')) === null || _f === void 0 ? void 0 : _f.textContent) === null || _g === void 0 ? void 0 : _g.trim();
58
+ // get fourth column item in stats row
59
+ const reviewsStatCount = (_k = (_j = (_h = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _h === void 0 ? void 0 : _h.querySelector('.status-text')) === null || _j === void 0 ? void 0 : _j.textContent) === null || _k === void 0 ? void 0 : _k.trim();
60
+ expect(mediatypeStat).to.exist;
61
+ expect(viewStatCount).to.match(/Views:\s+4/);
62
+ expect(favoritesStatCount).to.match(/Favorites:\s+5/);
63
+ expect(reviewsStatCount).to.match(/Reviews:\s+6/);
64
+ });
65
+ it('handles missing counts gracefully', async () => {
66
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
67
67
  const el = await fixture(html `
68
68
  <tile-stats .mediatype=${'texts'} .favCount=${5} .commentCount=${6}>
69
69
  </tile-stats>
70
- `);
71
- const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
72
- const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
73
- // get second column item in stats row
74
- const viewStatCount = (_d = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent) === null || _d === void 0 ? void 0 : _d.trim();
75
- // get third column item in stats row
76
- const favoritesStatCount = (_g = (_f = (_e = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _e === void 0 ? void 0 : _e.querySelector('.status-text')) === null || _f === void 0 ? void 0 : _f.textContent) === null || _g === void 0 ? void 0 : _g.trim();
77
- // get fourth column item in stats row
78
- const reviewsStatCount = (_k = (_j = (_h = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _h === void 0 ? void 0 : _h.querySelector('.status-text')) === null || _j === void 0 ? void 0 : _j.textContent) === null || _k === void 0 ? void 0 : _k.trim();
79
- expect(mediatypeStat).to.exist;
80
- expect(viewStatCount).to.match(/Views:\s+0/);
81
- expect(favoritesStatCount).to.match(/Favorites:\s+5/);
82
- expect(reviewsStatCount).to.match(/Reviews:\s+6/);
83
- });
84
- it('handles missing counts gracefully for accounts', async () => {
85
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
70
+ `);
71
+ const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
72
+ const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
73
+ // get second column item in stats row
74
+ const viewStatCount = (_d = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent) === null || _d === void 0 ? void 0 : _d.trim();
75
+ // get third column item in stats row
76
+ const favoritesStatCount = (_g = (_f = (_e = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _e === void 0 ? void 0 : _e.querySelector('.status-text')) === null || _f === void 0 ? void 0 : _f.textContent) === null || _g === void 0 ? void 0 : _g.trim();
77
+ // get fourth column item in stats row
78
+ const reviewsStatCount = (_k = (_j = (_h = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _h === void 0 ? void 0 : _h.querySelector('.status-text')) === null || _j === void 0 ? void 0 : _j.textContent) === null || _k === void 0 ? void 0 : _k.trim();
79
+ expect(mediatypeStat).to.exist;
80
+ expect(viewStatCount).to.match(/Views:\s+0/);
81
+ expect(favoritesStatCount).to.match(/Favorites:\s+5/);
82
+ expect(reviewsStatCount).to.match(/Reviews:\s+6/);
83
+ });
84
+ it('handles missing counts gracefully for accounts', async () => {
85
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
86
86
  const el = await fixture(html `
87
87
  <tile-stats .mediatype=${'account'} .favCount=${5} .commentCount=${6}>
88
88
  </tile-stats>
89
- `);
90
- const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
91
- const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
92
- // get second column item in stats row
93
- const itemStatCount = (_d = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent) === null || _d === void 0 ? void 0 : _d.trim();
94
- // get third column item in stats row
95
- const favoritesStatCount = (_g = (_f = (_e = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _e === void 0 ? void 0 : _e.querySelector('.status-text')) === null || _f === void 0 ? void 0 : _f.textContent) === null || _g === void 0 ? void 0 : _g.trim();
96
- // get fourth column item in stats row
97
- const reviewsStatCount = (_k = (_j = (_h = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _h === void 0 ? void 0 : _h.querySelector('.status-text')) === null || _j === void 0 ? void 0 : _j.textContent) === null || _k === void 0 ? void 0 : _k.trim();
98
- expect(mediatypeStat).to.exist;
99
- expect(itemStatCount).to.match(/Uploads:\s+0/);
100
- expect(favoritesStatCount).to.match(/Favorites:\s+5/);
101
- expect(reviewsStatCount).to.match(/Reviews:\s+6/);
102
- });
103
- });
89
+ `);
90
+ const statsRow = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#stats-row');
91
+ const mediatypeStat = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(0);
92
+ // get second column item in stats row
93
+ const itemStatCount = (_d = (_c = (_b = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(1)) === null || _b === void 0 ? void 0 : _b.querySelector('.status-text')) === null || _c === void 0 ? void 0 : _c.textContent) === null || _d === void 0 ? void 0 : _d.trim();
94
+ // get third column item in stats row
95
+ const favoritesStatCount = (_g = (_f = (_e = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(2)) === null || _e === void 0 ? void 0 : _e.querySelector('.status-text')) === null || _f === void 0 ? void 0 : _f.textContent) === null || _g === void 0 ? void 0 : _g.trim();
96
+ // get fourth column item in stats row
97
+ const reviewsStatCount = (_k = (_j = (_h = statsRow === null || statsRow === void 0 ? void 0 : statsRow.children.item(3)) === null || _h === void 0 ? void 0 : _h.querySelector('.status-text')) === null || _j === void 0 ? void 0 : _j.textContent) === null || _k === void 0 ? void 0 : _k.trim();
98
+ expect(mediatypeStat).to.exist;
99
+ expect(itemStatCount).to.match(/Uploads:\s+0/);
100
+ expect(favoritesStatCount).to.match(/Favorites:\s+5/);
101
+ expect(reviewsStatCount).to.match(/Reviews:\s+6/);
102
+ });
103
+ });
104
104
  //# sourceMappingURL=tile-stats.test.js.map
@@ -1 +1 @@
1
- import '../../../src/tiles/grid/account-tile';
1
+ import '../../../src/tiles/grid/account-tile';
@@ -1,97 +1,97 @@
1
- /* eslint-disable import/no-duplicates */
2
- import { expect, fixture } from '@open-wc/testing';
3
- import sinon from 'sinon';
4
- import { html } from 'lit';
5
- import '../../../src/tiles/grid/account-tile';
6
- describe('Account Tile', () => {
7
- it('should render initial component', async () => {
8
- var _a, _b, _c, _d;
9
- const el = await fixture(html `<account-tile></account-tile>`);
10
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
11
- const itemImage = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('image-block');
12
- const itemArchivist = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.archivist-since');
13
- const tileStats = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('tile-stats');
14
- expect(itemInfo).to.exist;
15
- expect(itemImage).to.exist;
16
- expect(itemArchivist).to.exist;
17
- expect(tileStats).to.exist;
18
- });
19
- it('should render with title element', async () => {
20
- var _a, _b, _c;
1
+ /* eslint-disable import/no-duplicates */
2
+ import { expect, fixture } from '@open-wc/testing';
3
+ import sinon from 'sinon';
4
+ import { html } from 'lit';
5
+ import '../../../src/tiles/grid/account-tile';
6
+ describe('Account Tile', () => {
7
+ it('should render initial component', async () => {
8
+ var _a, _b, _c, _d;
9
+ const el = await fixture(html `<account-tile></account-tile>`);
10
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
11
+ const itemImage = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('image-block');
12
+ const itemArchivist = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.archivist-since');
13
+ const tileStats = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('tile-stats');
14
+ expect(itemInfo).to.exist;
15
+ expect(itemImage).to.exist;
16
+ expect(itemArchivist).to.exist;
17
+ expect(tileStats).to.exist;
18
+ });
19
+ it('should render with title element', async () => {
20
+ var _a, _b, _c;
21
21
  const el = await fixture(html `
22
22
  <account-tile
23
- .model=${{
24
- identifier: '@jack-sparrow',
23
+ .model=${{
24
+ identifier: '@jack-sparrow',
25
25
  }}
26
26
  >
27
27
  </account-tile>
28
- `);
29
- await el.updateComplete;
30
- const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
31
- const accountTitle = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#title');
32
- expect(itemInfo).to.exist;
33
- expect(accountTitle).to.exist;
34
- expect((_c = accountTitle === null || accountTitle === void 0 ? void 0 : accountTitle.querySelector('.truncated')) === null || _c === void 0 ? void 0 : _c.textContent).to.equal('@jack-sparrow');
35
- });
36
- it('should render with archivist-since date element', async () => {
37
- var _a;
28
+ `);
29
+ await el.updateComplete;
30
+ const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
31
+ const accountTitle = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#title');
32
+ expect(itemInfo).to.exist;
33
+ expect(accountTitle).to.exist;
34
+ expect((_c = accountTitle === null || accountTitle === void 0 ? void 0 : accountTitle.querySelector('.truncated')) === null || _c === void 0 ? void 0 : _c.textContent).to.equal('@jack-sparrow');
35
+ });
36
+ it('should render with archivist-since date element', async () => {
37
+ var _a;
38
38
  const el = await fixture(html `
39
39
  <account-tile
40
- .model=${{
41
- dateAdded: new Date('2022-02-02'),
40
+ .model=${{
41
+ dateAdded: new Date('2022-02-02'),
42
42
  }}
43
43
  >
44
44
  </account-tile>
45
- `);
46
- await el.updateComplete;
47
- const itemArchivist = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.archivist-since');
48
- expect(itemArchivist === null || itemArchivist === void 0 ? void 0 : itemArchivist.textContent).contains('Archivist since 2022');
49
- });
50
- it('should render with tile-stats element', async () => {
51
- var _a, _b;
45
+ `);
46
+ await el.updateComplete;
47
+ const itemArchivist = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.archivist-since');
48
+ expect(itemArchivist === null || itemArchivist === void 0 ? void 0 : itemArchivist.textContent).contains('Archivist since 2022');
49
+ });
50
+ it('should render with tile-stats element', async () => {
51
+ var _a, _b;
52
52
  const el = await fixture(html `
53
53
  <account-tile
54
- .model=${{
55
- identifier: '@jack-sparrow',
56
- mediatype: 'account',
57
- itemCount: 999,
58
- favCount: 100,
59
- commentCount: 3,
54
+ .model=${{
55
+ identifier: '@jack-sparrow',
56
+ mediatype: 'account',
57
+ itemCount: 999,
58
+ favCount: 100,
59
+ commentCount: 3,
60
60
  }}
61
61
  >
62
62
  </account-tile>
63
- `);
64
- await el.updateComplete;
65
- const tileStats = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('tile-stats');
66
- const statsElements = (_b = tileStats === null || tileStats === void 0 ? void 0 : tileStats.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#stats-row');
67
- expect(tileStats).to.exist;
68
- expect(statsElements).to.exist;
69
- const downloads = statsElements === null || statsElements === void 0 ? void 0 : statsElements.querySelectorAll('.col')[1].querySelector('.status-text');
70
- expect(downloads === null || downloads === void 0 ? void 0 : downloads.textContent).contains(999);
71
- const favorites = statsElements === null || statsElements === void 0 ? void 0 : statsElements.querySelectorAll('.col')[2].querySelector('.status-text');
72
- expect(favorites === null || favorites === void 0 ? void 0 : favorites.textContent).contains(100);
73
- const reviewCounts = statsElements === null || statsElements === void 0 ? void 0 : statsElements.querySelectorAll('.col')[3].querySelector('.status-text');
74
- expect(reviewCounts === null || reviewCounts === void 0 ? void 0 : reviewCounts.textContent).contains(3);
75
- });
76
- it('should render info button when showInfoButton flag is set', async () => {
77
- var _a;
63
+ `);
64
+ await el.updateComplete;
65
+ const tileStats = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('tile-stats');
66
+ const statsElements = (_b = tileStats === null || tileStats === void 0 ? void 0 : tileStats.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#stats-row');
67
+ expect(tileStats).to.exist;
68
+ expect(statsElements).to.exist;
69
+ const downloads = statsElements === null || statsElements === void 0 ? void 0 : statsElements.querySelectorAll('.col')[1].querySelector('.status-text');
70
+ expect(downloads === null || downloads === void 0 ? void 0 : downloads.textContent).contains(999);
71
+ const favorites = statsElements === null || statsElements === void 0 ? void 0 : statsElements.querySelectorAll('.col')[2].querySelector('.status-text');
72
+ expect(favorites === null || favorites === void 0 ? void 0 : favorites.textContent).contains(100);
73
+ const reviewCounts = statsElements === null || statsElements === void 0 ? void 0 : statsElements.querySelectorAll('.col')[3].querySelector('.status-text');
74
+ expect(reviewCounts === null || reviewCounts === void 0 ? void 0 : reviewCounts.textContent).contains(3);
75
+ });
76
+ it('should render info button when showInfoButton flag is set', async () => {
77
+ var _a;
78
78
  const el = await fixture(html `
79
79
  <account-tile ?showInfoButton=${true}> </account-tile>
80
- `);
81
- const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
82
- expect(infoButton).to.exist;
83
- });
84
- it('should dispatch event when info button tapped', async () => {
85
- var _a;
86
- const infoButtonSpy = sinon.spy();
80
+ `);
81
+ const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
82
+ expect(infoButton).to.exist;
83
+ });
84
+ it('should dispatch event when info button tapped', async () => {
85
+ var _a;
86
+ const infoButtonSpy = sinon.spy();
87
87
  const el = await fixture(html `
88
88
  <account-tile ?showInfoButton=${true} @infoButtonPressed=${infoButtonSpy}>
89
89
  </account-tile>
90
- `);
91
- const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
92
- infoButton.click();
93
- await el.updateComplete;
94
- expect(infoButtonSpy.callCount).to.equal(1);
95
- });
96
- });
90
+ `);
91
+ const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
92
+ infoButton.click();
93
+ await el.updateComplete;
94
+ expect(infoButtonSpy.callCount).to.equal(1);
95
+ });
96
+ });
97
97
  //# sourceMappingURL=account-tile.test.js.map
@@ -1 +1 @@
1
- import '../../../src/tiles/grid/collection-tile';
1
+ import '../../../src/tiles/grid/collection-tile';