@internetarchive/collection-browser 2.7.7 → 2.7.8-alpha2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. package/.editorconfig +29 -29
  2. package/.husky/pre-commit +4 -4
  3. package/LICENSE +661 -661
  4. package/README.md +83 -83
  5. package/dist/index.d.ts +13 -13
  6. package/dist/index.js +13 -13
  7. package/dist/src/app-root.d.ts +107 -99
  8. package/dist/src/app-root.js +539 -505
  9. package/dist/src/app-root.js.map +1 -1
  10. package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
  11. package/dist/src/assets/img/icons/arrow-left.js +2 -2
  12. package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
  13. package/dist/src/assets/img/icons/arrow-right.js +2 -2
  14. package/dist/src/assets/img/icons/chevron.d.ts +2 -2
  15. package/dist/src/assets/img/icons/chevron.js +2 -2
  16. package/dist/src/assets/img/icons/contract.d.ts +2 -2
  17. package/dist/src/assets/img/icons/contract.js +2 -2
  18. package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
  19. package/dist/src/assets/img/icons/empty-query.js +2 -2
  20. package/dist/src/assets/img/icons/expand.d.ts +2 -2
  21. package/dist/src/assets/img/icons/expand.js +2 -2
  22. package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
  23. package/dist/src/assets/img/icons/eye-closed.js +2 -2
  24. package/dist/src/assets/img/icons/eye.d.ts +2 -2
  25. package/dist/src/assets/img/icons/eye.js +2 -2
  26. package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
  27. package/dist/src/assets/img/icons/favorite-filled.js +2 -2
  28. package/dist/src/assets/img/icons/favorite-unfilled.d.ts +1 -1
  29. package/dist/src/assets/img/icons/favorite-unfilled.js +2 -2
  30. package/dist/src/assets/img/icons/filter.d.ts +2 -2
  31. package/dist/src/assets/img/icons/filter.js +2 -2
  32. package/dist/src/assets/img/icons/login-required.d.ts +1 -1
  33. package/dist/src/assets/img/icons/login-required.js +2 -2
  34. package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
  35. package/dist/src/assets/img/icons/mediatype/account.js +2 -2
  36. package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
  37. package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
  38. package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
  39. package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
  40. package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
  41. package/dist/src/assets/img/icons/mediatype/data.js +2 -2
  42. package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
  43. package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
  44. package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
  45. package/dist/src/assets/img/icons/mediatype/film.js +2 -2
  46. package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
  47. package/dist/src/assets/img/icons/mediatype/images.js +2 -2
  48. package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
  49. package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
  50. package/dist/src/assets/img/icons/mediatype/search.d.ts +1 -1
  51. package/dist/src/assets/img/icons/mediatype/search.js +2 -2
  52. package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
  53. package/dist/src/assets/img/icons/mediatype/software.js +2 -2
  54. package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
  55. package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
  56. package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
  57. package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
  58. package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
  59. package/dist/src/assets/img/icons/mediatype/video.js +2 -2
  60. package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
  61. package/dist/src/assets/img/icons/mediatype/web.js +2 -2
  62. package/dist/src/assets/img/icons/null-result.d.ts +2 -2
  63. package/dist/src/assets/img/icons/null-result.js +2 -2
  64. package/dist/src/assets/img/icons/restricted.d.ts +1 -1
  65. package/dist/src/assets/img/icons/restricted.js +2 -2
  66. package/dist/src/assets/img/icons/reviews.d.ts +1 -1
  67. package/dist/src/assets/img/icons/reviews.js +2 -2
  68. package/dist/src/assets/img/icons/upload.d.ts +1 -1
  69. package/dist/src/assets/img/icons/upload.js +2 -2
  70. package/dist/src/assets/img/icons/views.d.ts +1 -1
  71. package/dist/src/assets/img/icons/views.js +2 -2
  72. package/dist/src/circular-activity-indicator.d.ts +5 -5
  73. package/dist/src/circular-activity-indicator.js +17 -17
  74. package/dist/src/collection-browser.d.ts +606 -582
  75. package/dist/src/collection-browser.js +1677 -1629
  76. package/dist/src/collection-browser.js.map +1 -1
  77. package/dist/src/collection-facets/facet-row.d.ts +30 -30
  78. package/dist/src/collection-facets/facet-row.js +118 -118
  79. package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
  80. package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
  81. package/dist/src/collection-facets/facets-template.d.ts +13 -13
  82. package/dist/src/collection-facets/facets-template.js +44 -44
  83. package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
  84. package/dist/src/collection-facets/more-facets-content.js +407 -407
  85. package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
  86. package/dist/src/collection-facets/more-facets-pagination.js +196 -196
  87. package/dist/src/collection-facets/smart-facets/dedupe.d.ts +10 -10
  88. package/dist/src/collection-facets/smart-facets/dedupe.js +33 -33
  89. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.d.ts +5 -5
  90. package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.js +23 -23
  91. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.d.ts +5 -5
  92. package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js +44 -44
  93. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.d.ts +5 -5
  94. package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js +172 -172
  95. package/dist/src/collection-facets/smart-facets/models.d.ts +26 -26
  96. package/dist/src/collection-facets/smart-facets/models.js +1 -1
  97. package/dist/src/collection-facets/smart-facets/smart-facet-bar.d.ts +31 -31
  98. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +240 -240
  99. package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +11 -11
  100. package/dist/src/collection-facets/smart-facets/smart-facet-button.js +86 -86
  101. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +16 -16
  102. package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +100 -100
  103. package/dist/src/collection-facets/smart-facets/smart-facet-equals.d.ts +2 -2
  104. package/dist/src/collection-facets/smart-facets/smart-facet-equals.js +12 -12
  105. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.d.ts +5 -5
  106. package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js +15 -15
  107. package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
  108. package/dist/src/collection-facets/toggle-switch.js +94 -94
  109. package/dist/src/collection-facets.d.ts +103 -103
  110. package/dist/src/collection-facets.js +522 -522
  111. package/dist/src/data-source/collection-browser-data-source-interface.d.ts +245 -241
  112. package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
  113. package/dist/src/data-source/collection-browser-data-source-interface.js.map +1 -1
  114. package/dist/src/data-source/collection-browser-data-source.d.ts +377 -373
  115. package/dist/src/data-source/collection-browser-data-source.js +995 -982
  116. package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
  117. package/dist/src/data-source/collection-browser-query-state.d.ts +44 -43
  118. package/dist/src/data-source/collection-browser-query-state.js +1 -1
  119. package/dist/src/data-source/collection-browser-query-state.js.map +1 -1
  120. package/dist/src/data-source/models.d.ts +28 -28
  121. package/dist/src/data-source/models.js +8 -8
  122. package/dist/src/empty-placeholder.d.ts +23 -23
  123. package/dist/src/empty-placeholder.js +79 -79
  124. package/dist/src/expanded-date-picker.d.ts +43 -43
  125. package/dist/src/expanded-date-picker.js +109 -109
  126. package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
  127. package/dist/src/language-code-handler/language-code-handler.js +26 -26
  128. package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
  129. package/dist/src/language-code-handler/language-code-mapping.js +562 -562
  130. package/dist/src/manage/manage-bar.d.ts +58 -35
  131. package/dist/src/manage/manage-bar.js +174 -80
  132. package/dist/src/manage/manage-bar.js.map +1 -1
  133. package/dist/src/manage/remove-items-modal-content.d.ts +9 -0
  134. package/dist/src/manage/remove-items-modal-content.js +104 -0
  135. package/dist/src/manage/remove-items-modal-content.js.map +1 -0
  136. package/dist/src/mediatype/mediatype-config.d.ts +3 -3
  137. package/dist/src/mediatype/mediatype-config.js +91 -91
  138. package/dist/src/models.d.ts +228 -219
  139. package/dist/src/models.js +401 -401
  140. package/dist/src/models.js.map +1 -1
  141. package/dist/src/restoration-state-handler.d.ts +70 -70
  142. package/dist/src/restoration-state-handler.js +363 -363
  143. package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
  144. package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
  145. package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
  146. package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
  147. package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
  148. package/dist/src/sort-filter-bar/img/compact.js +2 -2
  149. package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
  150. package/dist/src/sort-filter-bar/img/list.js +2 -2
  151. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
  152. package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
  153. package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
  154. package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
  155. package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
  156. package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
  157. package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
  158. package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
  159. package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
  160. package/dist/src/sort-filter-bar/img/tile.js +2 -2
  161. package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +223 -223
  162. package/dist/src/sort-filter-bar/sort-filter-bar.js +697 -697
  163. package/dist/src/styles/ia-button.d.ts +2 -2
  164. package/dist/src/styles/ia-button.js +17 -17
  165. package/dist/src/styles/item-image-styles.d.ts +8 -8
  166. package/dist/src/styles/item-image-styles.js +9 -9
  167. package/dist/src/styles/sr-only.d.ts +1 -1
  168. package/dist/src/styles/sr-only.js +2 -2
  169. package/dist/src/tiles/base-tile-component.d.ts +19 -19
  170. package/dist/src/tiles/base-tile-component.js +64 -64
  171. package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
  172. package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
  173. package/dist/src/tiles/grid/account-tile.d.ts +18 -18
  174. package/dist/src/tiles/grid/account-tile.js +72 -72
  175. package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
  176. package/dist/src/tiles/grid/collection-tile.js +80 -80
  177. package/dist/src/tiles/grid/item-tile.d.ts +34 -34
  178. package/dist/src/tiles/grid/item-tile.js +158 -158
  179. package/dist/src/tiles/grid/search-tile.d.ts +10 -10
  180. package/dist/src/tiles/grid/search-tile.js +51 -51
  181. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
  182. package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
  183. package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
  184. package/dist/src/tiles/grid/tile-stats.js +53 -53
  185. package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
  186. package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
  187. package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
  188. package/dist/src/tiles/hover/tile-hover-pane.js +69 -69
  189. package/dist/src/tiles/image-block.d.ts +18 -18
  190. package/dist/src/tiles/image-block.js +89 -89
  191. package/dist/src/tiles/item-image.d.ts +39 -39
  192. package/dist/src/tiles/item-image.js +154 -154
  193. package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
  194. package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
  195. package/dist/src/tiles/list/tile-list-compact.d.ts +19 -19
  196. package/dist/src/tiles/list/tile-list-compact.js +122 -122
  197. package/dist/src/tiles/list/tile-list.d.ts +54 -54
  198. package/dist/src/tiles/list/tile-list.js +323 -323
  199. package/dist/src/tiles/mediatype-icon.d.ts +9 -9
  200. package/dist/src/tiles/mediatype-icon.js +47 -47
  201. package/dist/src/tiles/overlay/icon-overlay.d.ts +8 -8
  202. package/dist/src/tiles/overlay/icon-overlay.js +25 -25
  203. package/dist/src/tiles/overlay/text-overlay.d.ts +9 -9
  204. package/dist/src/tiles/overlay/text-overlay.js +31 -31
  205. package/dist/src/tiles/review-block.d.ts +12 -12
  206. package/dist/src/tiles/review-block.js +56 -56
  207. package/dist/src/tiles/text-snippet-block.d.ts +27 -27
  208. package/dist/src/tiles/text-snippet-block.js +73 -73
  209. package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
  210. package/dist/src/tiles/tile-dispatcher.js +230 -230
  211. package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
  212. package/dist/src/tiles/tile-display-value-provider.js +94 -94
  213. package/dist/src/utils/analytics-events.d.ts +28 -28
  214. package/dist/src/utils/analytics-events.js +30 -30
  215. package/dist/src/utils/array-equals.d.ts +4 -4
  216. package/dist/src/utils/array-equals.js +10 -10
  217. package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
  218. package/dist/src/utils/collapse-repeated-quotes.js +13 -13
  219. package/dist/src/utils/facet-utils.d.ts +83 -83
  220. package/dist/src/utils/facet-utils.js +145 -145
  221. package/dist/src/utils/format-count.d.ts +7 -7
  222. package/dist/src/utils/format-count.js +76 -76
  223. package/dist/src/utils/format-date.d.ts +2 -2
  224. package/dist/src/utils/format-date.js +27 -27
  225. package/dist/src/utils/format-unit-size.d.ts +2 -2
  226. package/dist/src/utils/format-unit-size.js +33 -33
  227. package/dist/src/utils/local-date-from-utc.d.ts +9 -9
  228. package/dist/src/utils/local-date-from-utc.js +15 -15
  229. package/dist/src/utils/log.d.ts +7 -7
  230. package/dist/src/utils/log.js +15 -15
  231. package/dist/src/utils/resolve-mediatype.d.ts +8 -8
  232. package/dist/src/utils/resolve-mediatype.js +23 -23
  233. package/dist/src/utils/sha1.d.ts +2 -2
  234. package/dist/src/utils/sha1.js +8 -8
  235. package/dist/test/collection-browser.test.d.ts +1 -1
  236. package/dist/test/collection-browser.test.js +1309 -1293
  237. package/dist/test/collection-browser.test.js.map +1 -1
  238. package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
  239. package/dist/test/collection-facets/facet-row.test.js +227 -227
  240. package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
  241. package/dist/test/collection-facets/facets-template.test.js +91 -91
  242. package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
  243. package/dist/test/collection-facets/more-facets-content.test.js +141 -141
  244. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
  245. package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
  246. package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
  247. package/dist/test/collection-facets/toggle-switch.test.js +73 -73
  248. package/dist/test/collection-facets.test.d.ts +2 -2
  249. package/dist/test/collection-facets.test.js +690 -690
  250. package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
  251. package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
  252. package/dist/test/empty-placeholder.test.d.ts +1 -1
  253. package/dist/test/empty-placeholder.test.js +63 -63
  254. package/dist/test/expanded-date-picker.test.d.ts +1 -1
  255. package/dist/test/expanded-date-picker.test.js +95 -95
  256. package/dist/test/icon-overlay.test.d.ts +1 -1
  257. package/dist/test/icon-overlay.test.js +24 -24
  258. package/dist/test/image-block.test.d.ts +1 -1
  259. package/dist/test/image-block.test.js +107 -107
  260. package/dist/test/item-image.test.d.ts +1 -1
  261. package/dist/test/item-image.test.js +85 -85
  262. package/dist/test/manage/manage-bar.test.d.ts +2 -1
  263. package/dist/test/manage/manage-bar.test.js +106 -91
  264. package/dist/test/manage/manage-bar.test.js.map +1 -1
  265. package/dist/test/manage/remove-items-modal-content.test.d.ts +1 -0
  266. package/dist/test/manage/remove-items-modal-content.test.js +66 -0
  267. package/dist/test/manage/remove-items-modal-content.test.js.map +1 -0
  268. package/dist/test/mediatype-config.test.d.ts +1 -1
  269. package/dist/test/mediatype-config.test.js +16 -16
  270. package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
  271. package/dist/test/mocks/mock-analytics-handler.js +15 -15
  272. package/dist/test/mocks/mock-search-responses.d.ts +25 -25
  273. package/dist/test/mocks/mock-search-responses.js +942 -942
  274. package/dist/test/mocks/mock-search-service.d.ts +15 -15
  275. package/dist/test/mocks/mock-search-service.js +54 -54
  276. package/dist/test/restoration-state-handler.test.d.ts +1 -1
  277. package/dist/test/restoration-state-handler.test.js +270 -270
  278. package/dist/test/review-block.test.d.ts +1 -1
  279. package/dist/test/review-block.test.js +44 -44
  280. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
  281. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
  282. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
  283. package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
  284. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
  285. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +426 -426
  286. package/dist/test/text-overlay.test.d.ts +1 -1
  287. package/dist/test/text-overlay.test.js +38 -38
  288. package/dist/test/text-snippet-block.test.d.ts +1 -1
  289. package/dist/test/text-snippet-block.test.js +57 -57
  290. package/dist/test/tile-stats.test.d.ts +1 -1
  291. package/dist/test/tile-stats.test.js +81 -81
  292. package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
  293. package/dist/test/tiles/grid/account-tile.test.js +76 -76
  294. package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
  295. package/dist/test/tiles/grid/collection-tile.test.js +73 -73
  296. package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
  297. package/dist/test/tiles/grid/item-tile.test.js +312 -312
  298. package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
  299. package/dist/test/tiles/grid/search-tile.test.js +51 -51
  300. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
  301. package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
  302. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
  303. package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
  304. package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
  305. package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
  306. package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
  307. package/dist/test/tiles/list/tile-list.test.js +297 -297
  308. package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
  309. package/dist/test/tiles/tile-dispatcher.test.js +100 -100
  310. package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
  311. package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
  312. package/dist/test/utils/array-equals.test.d.ts +1 -1
  313. package/dist/test/utils/array-equals.test.js +26 -26
  314. package/dist/test/utils/format-count.test.d.ts +1 -1
  315. package/dist/test/utils/format-count.test.js +23 -23
  316. package/dist/test/utils/format-date.test.d.ts +1 -1
  317. package/dist/test/utils/format-date.test.js +30 -30
  318. package/dist/test/utils/format-unit-size.test.d.ts +1 -1
  319. package/dist/test/utils/format-unit-size.test.js +17 -17
  320. package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
  321. package/dist/test/utils/local-date-from-utc.test.js +26 -26
  322. package/local.archive.org.cert +86 -86
  323. package/local.archive.org.key +27 -27
  324. package/package.json +1 -1
  325. package/renovate.json +6 -6
  326. package/src/app-root.ts +38 -4
  327. package/src/collection-browser.ts +69 -17
  328. package/src/data-source/collection-browser-data-source-interface.ts +5 -0
  329. package/src/data-source/collection-browser-data-source.ts +14 -0
  330. package/src/data-source/collection-browser-query-state.ts +1 -0
  331. package/src/manage/manage-bar.ts +120 -24
  332. package/src/manage/remove-items-modal-content.ts +102 -0
  333. package/src/models.ts +10 -0
  334. package/test/collection-browser.test.ts +23 -0
  335. package/test/manage/manage-bar.test.ts +41 -18
  336. package/test/manage/remove-items-modal-content.test.ts +82 -0
  337. package/web-dev-server.config.mjs +30 -30
  338. package/web-test-runner.config.mjs +41 -41
@@ -1,45 +1,45 @@
1
- // If the query contains X word but Y facet isn't selected, recommend facet Y
2
- export class QueryKeywordsHeuristic {
3
- async getRecommendedFacets(query) {
4
- const recommendations = [];
5
- for (const [keyword, facets] of Object.entries(QueryKeywordsHeuristic.KEYWORDS)) {
6
- if (query.includes(keyword)) {
7
- recommendations.push(...facets);
8
- }
9
- }
10
- return recommendations;
11
- }
12
- }
13
- QueryKeywordsHeuristic.KEYWORDS = {
14
- text: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
15
- book: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
16
- pdf: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
17
- epub: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
18
- audio: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
19
- song: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
20
- music: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
21
- listen: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
22
- podcast: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
23
- radio: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
24
- stream: [
25
- { facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] },
26
- { facets: [{ facetType: 'mediatype', bucketKey: 'movies' }] },
27
- ],
28
- video: [{ facets: [{ facetType: 'mediatype', bucketKey: 'movies' }] }],
29
- movie: [{ facets: [{ facetType: 'mediatype', bucketKey: 'movies' }] }],
30
- film: [{ facets: [{ facetType: 'mediatype', bucketKey: 'movies' }] }],
31
- image: [{ facets: [{ facetType: 'mediatype', bucketKey: 'image' }] }],
32
- photo: [{ facets: [{ facetType: 'mediatype', bucketKey: 'image' }] }],
33
- picture: [{ facets: [{ facetType: 'mediatype', bucketKey: 'image' }] }],
34
- software: [{ facets: [{ facetType: 'mediatype', bucketKey: 'software' }] }],
35
- app: [{ facets: [{ facetType: 'mediatype', bucketKey: 'software' }] }],
36
- program: [{ facets: [{ facetType: 'mediatype', bucketKey: 'software' }] }],
37
- game: [{ facets: [{ facetType: 'mediatype', bucketKey: 'software' }] }],
38
- etree: [{ facets: [{ facetType: 'mediatype', bucketKey: 'etree' }] }],
39
- concert: [{ facets: [{ facetType: 'mediatype', bucketKey: 'etree' }] }],
40
- 'live music': [
41
- { facets: [{ facetType: 'mediatype', bucketKey: 'etree' }] },
42
- ],
43
- dataset: [{ facets: [{ facetType: 'mediatype', bucketKey: 'data' }] }],
44
- };
1
+ // If the query contains X word but Y facet isn't selected, recommend facet Y
2
+ export class QueryKeywordsHeuristic {
3
+ async getRecommendedFacets(query) {
4
+ const recommendations = [];
5
+ for (const [keyword, facets] of Object.entries(QueryKeywordsHeuristic.KEYWORDS)) {
6
+ if (query.includes(keyword)) {
7
+ recommendations.push(...facets);
8
+ }
9
+ }
10
+ return recommendations;
11
+ }
12
+ }
13
+ QueryKeywordsHeuristic.KEYWORDS = {
14
+ text: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
15
+ book: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
16
+ pdf: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
17
+ epub: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
18
+ audio: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
19
+ song: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
20
+ music: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
21
+ listen: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
22
+ podcast: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
23
+ radio: [{ facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] }],
24
+ stream: [
25
+ { facets: [{ facetType: 'mediatype', bucketKey: 'audio' }] },
26
+ { facets: [{ facetType: 'mediatype', bucketKey: 'movies' }] },
27
+ ],
28
+ video: [{ facets: [{ facetType: 'mediatype', bucketKey: 'movies' }] }],
29
+ movie: [{ facets: [{ facetType: 'mediatype', bucketKey: 'movies' }] }],
30
+ film: [{ facets: [{ facetType: 'mediatype', bucketKey: 'movies' }] }],
31
+ image: [{ facets: [{ facetType: 'mediatype', bucketKey: 'image' }] }],
32
+ photo: [{ facets: [{ facetType: 'mediatype', bucketKey: 'image' }] }],
33
+ picture: [{ facets: [{ facetType: 'mediatype', bucketKey: 'image' }] }],
34
+ software: [{ facets: [{ facetType: 'mediatype', bucketKey: 'software' }] }],
35
+ app: [{ facets: [{ facetType: 'mediatype', bucketKey: 'software' }] }],
36
+ program: [{ facets: [{ facetType: 'mediatype', bucketKey: 'software' }] }],
37
+ game: [{ facets: [{ facetType: 'mediatype', bucketKey: 'software' }] }],
38
+ etree: [{ facets: [{ facetType: 'mediatype', bucketKey: 'etree' }] }],
39
+ concert: [{ facets: [{ facetType: 'mediatype', bucketKey: 'etree' }] }],
40
+ 'live music': [
41
+ { facets: [{ facetType: 'mediatype', bucketKey: 'etree' }] },
42
+ ],
43
+ dataset: [{ facets: [{ facetType: 'mediatype', bucketKey: 'data' }] }],
44
+ };
45
45
  //# sourceMappingURL=query-keywords-heuristic.js.map
@@ -1,5 +1,5 @@
1
- import type { SmartQueryHeuristic, SmartFacet } from '../models';
2
- export declare class WikidataHeuristic implements SmartQueryHeuristic {
3
- private static readonly ENTITIES;
4
- getRecommendedFacets(query: string): Promise<SmartFacet[]>;
5
- }
1
+ import type { SmartQueryHeuristic, SmartFacet } from '../models';
2
+ export declare class WikidataHeuristic implements SmartQueryHeuristic {
3
+ private static readonly ENTITIES;
4
+ getRecommendedFacets(query: string): Promise<SmartFacet[]>;
5
+ }
@@ -1,173 +1,173 @@
1
- // If wikidata describes the top query result as X, recommend facet Y, e.g.:
2
- // X Y
3
- // written work mt:texts
4
- // film mt:movies
5
- // author mt:texts and creator:<query>
6
- // filmmaker mt:movies and creator:<query>
7
- // photographer mt:image and creator:<query>
8
- // visual artist mt:image and creator:<query>
9
- // etc.
10
- export class WikidataHeuristic {
11
- async getRecommendedFacets(query) {
12
- var _a;
13
- const recommendations = [];
14
- try {
15
- const urlQuery = encodeURIComponent(query);
16
- const wikidataResponse = await fetch(`https://www.wikidata.org/w/api.php?action=wbsearchentities&search=${urlQuery}&format=json&language=en&uselang=en&origin=*&type=item&limit=5`);
17
- const searchResults = await wikidataResponse.json();
18
- for (const [keyword, facets] of Object.entries(WikidataHeuristic.ENTITIES)) {
19
- const keywordRegex = new RegExp(`\\b${keyword}\\b`);
20
- if (keywordRegex.test((_a = searchResults.search[0]) === null || _a === void 0 ? void 0 : _a.description)) {
21
- const entityName = searchResults.search[0].label;
22
- recommendations.push(...facets.map(sf => {
23
- var _a;
24
- return ({
25
- label: (_a = sf.label) === null || _a === void 0 ? void 0 : _a.replace('__QUERY', entityName),
26
- facets: sf.facets.map(f => {
27
- var _a;
28
- const replaced = {
29
- ...f,
30
- bucketKey: f.bucketKey.replace('__QUERY', query),
31
- };
32
- if (f.displayText) {
33
- replaced.displayText = (_a = replaced.displayText) === null || _a === void 0 ? void 0 : _a.replace('__QUERY', entityName);
34
- }
35
- return replaced;
36
- }),
37
- });
38
- }));
39
- }
40
- }
41
- return recommendations;
42
- }
43
- catch (err) {
44
- return [];
45
- }
46
- }
47
- }
48
- WikidataHeuristic.ENTITIES = {
49
- 'written work': [
50
- { facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] },
51
- ],
52
- literature: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
53
- book: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
54
- novel: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
55
- filmmaker: [
56
- {
57
- label: 'Films by __QUERY',
58
- facets: [
59
- { facetType: 'mediatype', bucketKey: 'movies' },
60
- { facetType: 'creator', bucketKey: '__QUERY' },
61
- ],
62
- },
63
- ],
64
- author: [
65
- {
66
- label: 'Writing by __QUERY',
67
- facets: [
68
- { facetType: 'mediatype', bucketKey: 'texts' },
69
- { facetType: 'creator', bucketKey: '__QUERY' },
70
- ],
71
- },
72
- ],
73
- writer: [
74
- {
75
- label: 'Writing by __QUERY',
76
- facets: [
77
- { facetType: 'mediatype', bucketKey: 'texts' },
78
- { facetType: 'creator', bucketKey: '__QUERY' },
79
- ],
80
- },
81
- ],
82
- poet: [
83
- {
84
- label: 'Writing by __QUERY',
85
- facets: [
86
- { facetType: 'mediatype', bucketKey: 'texts' },
87
- { facetType: 'creator', bucketKey: '__QUERY' },
88
- ],
89
- },
90
- ],
91
- photographer: [
92
- {
93
- label: 'Images by __QUERY',
94
- facets: [
95
- { facetType: 'mediatype', bucketKey: 'image' },
96
- { facetType: 'creator', bucketKey: '__QUERY' },
97
- ],
98
- },
99
- ],
100
- painter: [
101
- {
102
- label: 'Images by __QUERY',
103
- facets: [
104
- { facetType: 'mediatype', bucketKey: 'image' },
105
- { facetType: 'creator', bucketKey: '__QUERY' },
106
- ],
107
- },
108
- ],
109
- 'visual artist': [
110
- {
111
- label: 'Images by __QUERY',
112
- facets: [
113
- { facetType: 'mediatype', bucketKey: 'image' },
114
- { facetType: 'creator', bucketKey: '__QUERY' },
115
- ],
116
- },
117
- ],
118
- 'graphic artist': [
119
- {
120
- label: 'Images by __QUERY',
121
- facets: [
122
- { facetType: 'mediatype', bucketKey: 'image' },
123
- { facetType: 'creator', bucketKey: '__QUERY' },
124
- ],
125
- },
126
- ],
127
- singer: [
128
- {
129
- label: 'Music by __QUERY',
130
- facets: [
131
- { facetType: 'mediatype', bucketKey: 'audio' },
132
- { facetType: 'creator', bucketKey: '__QUERY' },
133
- ],
134
- },
135
- ],
136
- songwriter: [
137
- {
138
- label: 'Music by __QUERY',
139
- facets: [
140
- { facetType: 'mediatype', bucketKey: 'audio' },
141
- { facetType: 'creator', bucketKey: '__QUERY' },
142
- ],
143
- },
144
- ],
145
- musician: [
146
- {
147
- label: 'Music by __QUERY',
148
- facets: [
149
- { facetType: 'mediatype', bucketKey: 'audio' },
150
- { facetType: 'creator', bucketKey: '__QUERY' },
151
- ],
152
- },
153
- ],
154
- composer: [
155
- {
156
- label: 'Music by __QUERY',
157
- facets: [
158
- { facetType: 'mediatype', bucketKey: 'audio' },
159
- { facetType: 'creator', bucketKey: '__QUERY' },
160
- ],
161
- },
162
- ],
163
- pianist: [
164
- {
165
- label: 'Music by __QUERY',
166
- facets: [
167
- { facetType: 'mediatype', bucketKey: 'audio' },
168
- { facetType: 'creator', bucketKey: '__QUERY' },
169
- ],
170
- },
171
- ],
172
- };
1
+ // If wikidata describes the top query result as X, recommend facet Y, e.g.:
2
+ // X Y
3
+ // written work mt:texts
4
+ // film mt:movies
5
+ // author mt:texts and creator:<query>
6
+ // filmmaker mt:movies and creator:<query>
7
+ // photographer mt:image and creator:<query>
8
+ // visual artist mt:image and creator:<query>
9
+ // etc.
10
+ export class WikidataHeuristic {
11
+ async getRecommendedFacets(query) {
12
+ var _a;
13
+ const recommendations = [];
14
+ try {
15
+ const urlQuery = encodeURIComponent(query);
16
+ const wikidataResponse = await fetch(`https://www.wikidata.org/w/api.php?action=wbsearchentities&search=${urlQuery}&format=json&language=en&uselang=en&origin=*&type=item&limit=5`);
17
+ const searchResults = await wikidataResponse.json();
18
+ for (const [keyword, facets] of Object.entries(WikidataHeuristic.ENTITIES)) {
19
+ const keywordRegex = new RegExp(`\\b${keyword}\\b`);
20
+ if (keywordRegex.test((_a = searchResults.search[0]) === null || _a === void 0 ? void 0 : _a.description)) {
21
+ const entityName = searchResults.search[0].label;
22
+ recommendations.push(...facets.map(sf => {
23
+ var _a;
24
+ return ({
25
+ label: (_a = sf.label) === null || _a === void 0 ? void 0 : _a.replace('__QUERY', entityName),
26
+ facets: sf.facets.map(f => {
27
+ var _a;
28
+ const replaced = {
29
+ ...f,
30
+ bucketKey: f.bucketKey.replace('__QUERY', query),
31
+ };
32
+ if (f.displayText) {
33
+ replaced.displayText = (_a = replaced.displayText) === null || _a === void 0 ? void 0 : _a.replace('__QUERY', entityName);
34
+ }
35
+ return replaced;
36
+ }),
37
+ });
38
+ }));
39
+ }
40
+ }
41
+ return recommendations;
42
+ }
43
+ catch (err) {
44
+ return [];
45
+ }
46
+ }
47
+ }
48
+ WikidataHeuristic.ENTITIES = {
49
+ 'written work': [
50
+ { facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] },
51
+ ],
52
+ literature: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
53
+ book: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
54
+ novel: [{ facets: [{ facetType: 'mediatype', bucketKey: 'texts' }] }],
55
+ filmmaker: [
56
+ {
57
+ label: 'Films by __QUERY',
58
+ facets: [
59
+ { facetType: 'mediatype', bucketKey: 'movies' },
60
+ { facetType: 'creator', bucketKey: '__QUERY' },
61
+ ],
62
+ },
63
+ ],
64
+ author: [
65
+ {
66
+ label: 'Writing by __QUERY',
67
+ facets: [
68
+ { facetType: 'mediatype', bucketKey: 'texts' },
69
+ { facetType: 'creator', bucketKey: '__QUERY' },
70
+ ],
71
+ },
72
+ ],
73
+ writer: [
74
+ {
75
+ label: 'Writing by __QUERY',
76
+ facets: [
77
+ { facetType: 'mediatype', bucketKey: 'texts' },
78
+ { facetType: 'creator', bucketKey: '__QUERY' },
79
+ ],
80
+ },
81
+ ],
82
+ poet: [
83
+ {
84
+ label: 'Writing by __QUERY',
85
+ facets: [
86
+ { facetType: 'mediatype', bucketKey: 'texts' },
87
+ { facetType: 'creator', bucketKey: '__QUERY' },
88
+ ],
89
+ },
90
+ ],
91
+ photographer: [
92
+ {
93
+ label: 'Images by __QUERY',
94
+ facets: [
95
+ { facetType: 'mediatype', bucketKey: 'image' },
96
+ { facetType: 'creator', bucketKey: '__QUERY' },
97
+ ],
98
+ },
99
+ ],
100
+ painter: [
101
+ {
102
+ label: 'Images by __QUERY',
103
+ facets: [
104
+ { facetType: 'mediatype', bucketKey: 'image' },
105
+ { facetType: 'creator', bucketKey: '__QUERY' },
106
+ ],
107
+ },
108
+ ],
109
+ 'visual artist': [
110
+ {
111
+ label: 'Images by __QUERY',
112
+ facets: [
113
+ { facetType: 'mediatype', bucketKey: 'image' },
114
+ { facetType: 'creator', bucketKey: '__QUERY' },
115
+ ],
116
+ },
117
+ ],
118
+ 'graphic artist': [
119
+ {
120
+ label: 'Images by __QUERY',
121
+ facets: [
122
+ { facetType: 'mediatype', bucketKey: 'image' },
123
+ { facetType: 'creator', bucketKey: '__QUERY' },
124
+ ],
125
+ },
126
+ ],
127
+ singer: [
128
+ {
129
+ label: 'Music by __QUERY',
130
+ facets: [
131
+ { facetType: 'mediatype', bucketKey: 'audio' },
132
+ { facetType: 'creator', bucketKey: '__QUERY' },
133
+ ],
134
+ },
135
+ ],
136
+ songwriter: [
137
+ {
138
+ label: 'Music by __QUERY',
139
+ facets: [
140
+ { facetType: 'mediatype', bucketKey: 'audio' },
141
+ { facetType: 'creator', bucketKey: '__QUERY' },
142
+ ],
143
+ },
144
+ ],
145
+ musician: [
146
+ {
147
+ label: 'Music by __QUERY',
148
+ facets: [
149
+ { facetType: 'mediatype', bucketKey: 'audio' },
150
+ { facetType: 'creator', bucketKey: '__QUERY' },
151
+ ],
152
+ },
153
+ ],
154
+ composer: [
155
+ {
156
+ label: 'Music by __QUERY',
157
+ facets: [
158
+ { facetType: 'mediatype', bucketKey: 'audio' },
159
+ { facetType: 'creator', bucketKey: '__QUERY' },
160
+ ],
161
+ },
162
+ ],
163
+ pianist: [
164
+ {
165
+ label: 'Music by __QUERY',
166
+ facets: [
167
+ { facetType: 'mediatype', bucketKey: 'audio' },
168
+ { facetType: 'creator', bucketKey: '__QUERY' },
169
+ ],
170
+ },
171
+ ],
172
+ };
173
173
  //# sourceMappingURL=wikidata-heuristic.js.map
@@ -1,26 +1,26 @@
1
- import type { FacetEventDetails, FacetOption } from '../../models';
2
- export interface FacetRef {
3
- facetType: FacetOption;
4
- bucketKey: string;
5
- displayText?: string;
6
- }
7
- interface LabeledSmartFacet {
8
- label: string;
9
- facets: FacetRef[];
10
- selected?: boolean;
11
- }
12
- interface UnlabeledSmartFacet {
13
- label?: string;
14
- facets: [FacetRef];
15
- selected?: boolean;
16
- }
17
- export declare type SmartFacet = LabeledSmartFacet | UnlabeledSmartFacet;
18
- export interface SmartFacetEvent {
19
- smartFacet: SmartFacet;
20
- details: FacetEventDetails[];
21
- }
22
- export declare type KeywordFacetMap = Record<string, SmartFacet[]>;
23
- export interface SmartQueryHeuristic {
24
- getRecommendedFacets(query: string): Promise<SmartFacet[]>;
25
- }
26
- export {};
1
+ import type { FacetEventDetails, FacetOption } from '../../models';
2
+ export interface FacetRef {
3
+ facetType: FacetOption;
4
+ bucketKey: string;
5
+ displayText?: string;
6
+ }
7
+ interface LabeledSmartFacet {
8
+ label: string;
9
+ facets: FacetRef[];
10
+ selected?: boolean;
11
+ }
12
+ interface UnlabeledSmartFacet {
13
+ label?: string;
14
+ facets: [FacetRef];
15
+ selected?: boolean;
16
+ }
17
+ export declare type SmartFacet = LabeledSmartFacet | UnlabeledSmartFacet;
18
+ export interface SmartFacetEvent {
19
+ smartFacet: SmartFacet;
20
+ details: FacetEventDetails[];
21
+ }
22
+ export declare type KeywordFacetMap = Record<string, SmartFacet[]>;
23
+ export interface SmartQueryHeuristic {
24
+ getRecommendedFacets(query: string): Promise<SmartFacet[]>;
25
+ }
26
+ export {};
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=models.js.map
@@ -1,31 +1,31 @@
1
- import { LitElement, TemplateResult, CSSResultGroup, PropertyValues } from 'lit';
2
- import type { Aggregation } from '@internetarchive/search-service';
3
- import type { CollectionTitles } from '../../data-source/models';
4
- import type { SelectedFacets } from '../../models';
5
- import './smart-facet-button';
6
- import './smart-facet-dropdown';
7
- export declare class SmartFacetBar extends LitElement {
8
- query?: string;
9
- aggregations?: Record<string, Aggregation>;
10
- selectedFacets?: SelectedFacets;
11
- /** The map from collection identifiers to their titles */
12
- collectionTitles?: CollectionTitles;
13
- filterToggleActive: boolean;
14
- private heuristicRecs;
15
- private smartFacets;
16
- private lastAggregations?;
17
- render(): TemplateResult<1>;
18
- protected willUpdate(changed: PropertyValues): void;
19
- private updateSmartFacets;
20
- private makeSmartFacet;
21
- private smartFacetButton;
22
- private smartFacetDropdown;
23
- private get filtersToggleTemplate();
24
- private get facetsToDisplay();
25
- private toSmartFacet;
26
- private facetClicked;
27
- private facetDropdownClicked;
28
- private onDropdownClick;
29
- private filterToggleClicked;
30
- static get styles(): CSSResultGroup;
31
- }
1
+ import { LitElement, TemplateResult, CSSResultGroup, PropertyValues } from 'lit';
2
+ import type { Aggregation } from '@internetarchive/search-service';
3
+ import type { CollectionTitles } from '../../data-source/models';
4
+ import type { SelectedFacets } from '../../models';
5
+ import './smart-facet-button';
6
+ import './smart-facet-dropdown';
7
+ export declare class SmartFacetBar extends LitElement {
8
+ query?: string;
9
+ aggregations?: Record<string, Aggregation>;
10
+ selectedFacets?: SelectedFacets;
11
+ /** The map from collection identifiers to their titles */
12
+ collectionTitles?: CollectionTitles;
13
+ filterToggleActive: boolean;
14
+ private heuristicRecs;
15
+ private smartFacets;
16
+ private lastAggregations?;
17
+ render(): TemplateResult<1>;
18
+ protected willUpdate(changed: PropertyValues): void;
19
+ private updateSmartFacets;
20
+ private makeSmartFacet;
21
+ private smartFacetButton;
22
+ private smartFacetDropdown;
23
+ private get filtersToggleTemplate();
24
+ private get facetsToDisplay();
25
+ private toSmartFacet;
26
+ private facetClicked;
27
+ private facetDropdownClicked;
28
+ private onDropdownClick;
29
+ private filterToggleClicked;
30
+ static get styles(): CSSResultGroup;
31
+ }