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

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 (396) hide show
  1. package/README.md +33 -0
  2. package/dist/src/app-root.js +0 -2
  3. package/dist/src/app-root.js.map +1 -1
  4. package/dist/src/assets/img/icons/check.d.ts +2 -0
  5. package/dist/src/assets/img/icons/check.js +5 -0
  6. package/dist/src/assets/img/icons/check.js.map +1 -0
  7. package/dist/src/collection-browser.d.ts +2 -1
  8. package/dist/src/collection-browser.js +5 -27
  9. package/dist/src/collection-browser.js.map +1 -1
  10. package/dist/src/collection-facets/facet-row-template.d.ts +38 -0
  11. package/dist/src/collection-facets/facet-row-template.js +200 -0
  12. package/dist/src/collection-facets/facet-row-template.js.map +1 -0
  13. package/dist/src/collection-facets/facet-row.js +11 -186
  14. package/dist/src/collection-facets/facet-row.js.map +1 -1
  15. package/dist/src/collection-facets/models.d.ts +7 -2
  16. package/dist/src/collection-facets/models.js +7 -2
  17. package/dist/src/collection-facets/models.js.map +1 -1
  18. package/dist/src/collection-facets/more-facets-content.d.ts +87 -21
  19. package/dist/src/collection-facets/more-facets-content.js +479 -201
  20. package/dist/src/collection-facets/more-facets-content.js.map +1 -1
  21. package/dist/src/collection-facets/more-facets-scroller.d.ts +85 -0
  22. package/dist/src/collection-facets/more-facets-scroller.js +429 -0
  23. package/dist/src/collection-facets/more-facets-scroller.js.map +1 -0
  24. package/dist/src/collection-facets/page-window.d.ts +73 -0
  25. package/dist/src/collection-facets/page-window.js +202 -0
  26. package/dist/src/collection-facets/page-window.js.map +1 -0
  27. package/dist/src/collection-facets/toggle-switch.js +1 -0
  28. package/dist/src/collection-facets/toggle-switch.js.map +1 -1
  29. package/dist/src/collection-facets.js +3 -2
  30. package/dist/src/collection-facets.js.map +1 -1
  31. package/dist/src/empty-placeholder.d.ts +7 -7
  32. package/dist/src/empty-placeholder.js +29 -15
  33. package/dist/src/empty-placeholder.js.map +1 -1
  34. package/dist/src/expanded-date-picker.js +3 -2
  35. package/dist/src/expanded-date-picker.js.map +1 -1
  36. package/dist/src/locales/es.d.ts +94 -0
  37. package/dist/src/locales/es.js +109 -0
  38. package/dist/src/locales/es.js.map +1 -0
  39. package/dist/src/manage/manage-bar.d.ts +3 -2
  40. package/dist/src/manage/manage-bar.js +6 -7
  41. package/dist/src/manage/manage-bar.js.map +1 -1
  42. package/dist/src/manage/remove-items-modal-content.js +3 -2
  43. package/dist/src/manage/remove-items-modal-content.js.map +1 -1
  44. package/dist/src/models.d.ts +4 -0
  45. package/dist/src/models.js +22 -2
  46. package/dist/src/models.js.map +1 -1
  47. package/dist/src/sort-filter-bar/sort-filter-bar.js +3 -3
  48. package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
  49. package/dist/src/tiles/grid/account-tile.js +3 -2
  50. package/dist/src/tiles/grid/account-tile.js.map +1 -1
  51. package/dist/src/tiles/grid/collection-tile.js +3 -2
  52. package/dist/src/tiles/grid/collection-tile.js.map +1 -1
  53. package/dist/src/tiles/grid/item-tile.js +3 -2
  54. package/dist/src/tiles/grid/item-tile.js.map +1 -1
  55. package/dist/src/tiles/grid/tile-stats.js +3 -2
  56. package/dist/src/tiles/grid/tile-stats.js.map +1 -1
  57. package/dist/src/tiles/list/tile-list-compact-header.js +3 -2
  58. package/dist/src/tiles/list/tile-list-compact-header.js.map +1 -1
  59. package/dist/src/tiles/list/tile-list-compact.js +3 -1
  60. package/dist/src/tiles/list/tile-list-compact.js.map +1 -1
  61. package/dist/src/tiles/list/tile-list.js +3 -2
  62. package/dist/src/tiles/list/tile-list.js.map +1 -1
  63. package/dist/src/tiles/overlay/text-overlay.js +3 -1
  64. package/dist/src/tiles/overlay/text-overlay.js.map +1 -1
  65. package/dist/src/tiles/review-block.js +3 -2
  66. package/dist/src/tiles/review-block.js.map +1 -1
  67. package/dist/src/tiles/tile-dispatcher.d.ts +2 -1
  68. package/dist/src/tiles/tile-dispatcher.js +5 -4
  69. package/dist/src/tiles/tile-dispatcher.js.map +1 -1
  70. package/dist/src/utils/log.d.ts +1 -4
  71. package/dist/src/utils/normalize-filter-text.d.ts +28 -0
  72. package/dist/src/utils/normalize-filter-text.js +35 -0
  73. package/dist/src/utils/normalize-filter-text.js.map +1 -0
  74. package/locales/es.d.ts +1 -0
  75. package/locales/es.js +1 -0
  76. package/package.json +15 -1
  77. package/.editorconfig +0 -29
  78. package/.github/workflows/ci.yml +0 -29
  79. package/.github/workflows/gh-pages-main.yml +0 -41
  80. package/.github/workflows/npm-publish.yml +0 -42
  81. package/.github/workflows/pr-preview.yml +0 -40
  82. package/.husky/pre-commit +0 -1
  83. package/.prettierignore +0 -1
  84. package/dist/src/collection-facets/more-facets-pagination.d.ts +0 -36
  85. package/dist/src/collection-facets/more-facets-pagination.js +0 -260
  86. package/dist/src/collection-facets/more-facets-pagination.js.map +0 -1
  87. package/dist/test/collection-browser.test.d.ts +0 -1
  88. package/dist/test/collection-browser.test.js +0 -1849
  89. package/dist/test/collection-browser.test.js.map +0 -1
  90. package/dist/test/collection-facets/facet-row.test.d.ts +0 -1
  91. package/dist/test/collection-facets/facet-row.test.js +0 -291
  92. package/dist/test/collection-facets/facet-row.test.js.map +0 -1
  93. package/dist/test/collection-facets/facets-template.test.d.ts +0 -1
  94. package/dist/test/collection-facets/facets-template.test.js +0 -95
  95. package/dist/test/collection-facets/facets-template.test.js.map +0 -1
  96. package/dist/test/collection-facets/more-facets-content.test.d.ts +0 -1
  97. package/dist/test/collection-facets/more-facets-content.test.js +0 -159
  98. package/dist/test/collection-facets/more-facets-content.test.js.map +0 -1
  99. package/dist/test/collection-facets/more-facets-pagination.test.d.ts +0 -1
  100. package/dist/test/collection-facets/more-facets-pagination.test.js +0 -126
  101. package/dist/test/collection-facets/more-facets-pagination.test.js.map +0 -1
  102. package/dist/test/collection-facets/toggle-switch.test.d.ts +0 -1
  103. package/dist/test/collection-facets/toggle-switch.test.js +0 -99
  104. package/dist/test/collection-facets/toggle-switch.test.js.map +0 -1
  105. package/dist/test/collection-facets.test.d.ts +0 -2
  106. package/dist/test/collection-facets.test.js +0 -728
  107. package/dist/test/collection-facets.test.js.map +0 -1
  108. package/dist/test/data-source/collection-browser-data-source.test.d.ts +0 -1
  109. package/dist/test/data-source/collection-browser-data-source.test.js +0 -154
  110. package/dist/test/data-source/collection-browser-data-source.test.js.map +0 -1
  111. package/dist/test/empty-placeholder.test.d.ts +0 -1
  112. package/dist/test/empty-placeholder.test.js +0 -57
  113. package/dist/test/empty-placeholder.test.js.map +0 -1
  114. package/dist/test/expanded-date-picker.test.d.ts +0 -1
  115. package/dist/test/expanded-date-picker.test.js +0 -124
  116. package/dist/test/expanded-date-picker.test.js.map +0 -1
  117. package/dist/test/icon-overlay.test.d.ts +0 -1
  118. package/dist/test/icon-overlay.test.js +0 -31
  119. package/dist/test/icon-overlay.test.js.map +0 -1
  120. package/dist/test/image-block.test.d.ts +0 -1
  121. package/dist/test/image-block.test.js +0 -208
  122. package/dist/test/image-block.test.js.map +0 -1
  123. package/dist/test/item-image.test.d.ts +0 -1
  124. package/dist/test/item-image.test.js +0 -187
  125. package/dist/test/item-image.test.js.map +0 -1
  126. package/dist/test/manage/manage-bar.test.d.ts +0 -3
  127. package/dist/test/manage/manage-bar.test.js +0 -216
  128. package/dist/test/manage/manage-bar.test.js.map +0 -1
  129. package/dist/test/manage/remove-items-modal-content.test.d.ts +0 -1
  130. package/dist/test/manage/remove-items-modal-content.test.js +0 -60
  131. package/dist/test/manage/remove-items-modal-content.test.js.map +0 -1
  132. package/dist/test/mediatype-config.test.d.ts +0 -1
  133. package/dist/test/mediatype-config.test.js +0 -11
  134. package/dist/test/mediatype-config.test.js.map +0 -1
  135. package/dist/test/mocks/mock-analytics-handler.d.ts +0 -10
  136. package/dist/test/mocks/mock-analytics-handler.js +0 -16
  137. package/dist/test/mocks/mock-analytics-handler.js.map +0 -1
  138. package/dist/test/mocks/mock-search-responses.d.ts +0 -31
  139. package/dist/test/mocks/mock-search-responses.js +0 -1241
  140. package/dist/test/mocks/mock-search-responses.js.map +0 -1
  141. package/dist/test/mocks/mock-search-service.d.ts +0 -16
  142. package/dist/test/mocks/mock-search-service.js +0 -64
  143. package/dist/test/mocks/mock-search-service.js.map +0 -1
  144. package/dist/test/restoration-state-handler.test.d.ts +0 -1
  145. package/dist/test/restoration-state-handler.test.js +0 -335
  146. package/dist/test/restoration-state-handler.test.js.map +0 -1
  147. package/dist/test/review-block.test.d.ts +0 -1
  148. package/dist/test/review-block.test.js +0 -46
  149. package/dist/test/review-block.test.js.map +0 -1
  150. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +0 -1
  151. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +0 -12
  152. package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js.map +0 -1
  153. package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +0 -1
  154. package/dist/test/sort-filter-bar/alpha-bar.test.js +0 -68
  155. package/dist/test/sort-filter-bar/alpha-bar.test.js.map +0 -1
  156. package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +0 -1
  157. package/dist/test/sort-filter-bar/sort-filter-bar.test.js +0 -326
  158. package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +0 -1
  159. package/dist/test/text-overlay.test.d.ts +0 -1
  160. package/dist/test/text-overlay.test.js +0 -43
  161. package/dist/test/text-overlay.test.js.map +0 -1
  162. package/dist/test/text-snippet-block.test.d.ts +0 -1
  163. package/dist/test/text-snippet-block.test.js +0 -58
  164. package/dist/test/text-snippet-block.test.js.map +0 -1
  165. package/dist/test/tile-stats.test.d.ts +0 -1
  166. package/dist/test/tile-stats.test.js +0 -167
  167. package/dist/test/tile-stats.test.js.map +0 -1
  168. package/dist/test/tiles/grid/account-tile.test.d.ts +0 -1
  169. package/dist/test/tiles/grid/account-tile.test.js +0 -96
  170. package/dist/test/tiles/grid/account-tile.test.js.map +0 -1
  171. package/dist/test/tiles/grid/collection-tile.test.d.ts +0 -1
  172. package/dist/test/tiles/grid/collection-tile.test.js +0 -90
  173. package/dist/test/tiles/grid/collection-tile.test.js.map +0 -1
  174. package/dist/test/tiles/grid/item-tile.test.d.ts +0 -1
  175. package/dist/test/tiles/grid/item-tile.test.js +0 -400
  176. package/dist/test/tiles/grid/item-tile.test.js.map +0 -1
  177. package/dist/test/tiles/grid/search-tile.test.d.ts +0 -1
  178. package/dist/test/tiles/grid/search-tile.test.js +0 -62
  179. package/dist/test/tiles/grid/search-tile.test.js.map +0 -1
  180. package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +0 -1
  181. package/dist/test/tiles/hover/hover-pane-controller.test.js +0 -351
  182. package/dist/test/tiles/hover/hover-pane-controller.test.js.map +0 -1
  183. package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +0 -1
  184. package/dist/test/tiles/hover/tile-hover-pane.test.js +0 -53
  185. package/dist/test/tiles/hover/tile-hover-pane.test.js.map +0 -1
  186. package/dist/test/tiles/list/tile-list-compact-header.test.d.ts +0 -1
  187. package/dist/test/tiles/list/tile-list-compact-header.test.js +0 -36
  188. package/dist/test/tiles/list/tile-list-compact-header.test.js.map +0 -1
  189. package/dist/test/tiles/list/tile-list-compact.test.d.ts +0 -1
  190. package/dist/test/tiles/list/tile-list-compact.test.js +0 -237
  191. package/dist/test/tiles/list/tile-list-compact.test.js.map +0 -1
  192. package/dist/test/tiles/list/tile-list.test.d.ts +0 -1
  193. package/dist/test/tiles/list/tile-list.test.js +0 -460
  194. package/dist/test/tiles/list/tile-list.test.js.map +0 -1
  195. package/dist/test/tiles/tile-dispatcher.test.d.ts +0 -1
  196. package/dist/test/tiles/tile-dispatcher.test.js +0 -246
  197. package/dist/test/tiles/tile-dispatcher.test.js.map +0 -1
  198. package/dist/test/tiles/tile-display-value-provider.test.d.ts +0 -1
  199. package/dist/test/tiles/tile-display-value-provider.test.js +0 -142
  200. package/dist/test/tiles/tile-display-value-provider.test.js.map +0 -1
  201. package/dist/test/tiles/tile-mediatype-icon.test.d.ts +0 -1
  202. package/dist/test/tiles/tile-mediatype-icon.test.js +0 -133
  203. package/dist/test/tiles/tile-mediatype-icon.test.js.map +0 -1
  204. package/dist/test/utils/array-equals.test.d.ts +0 -1
  205. package/dist/test/utils/array-equals.test.js +0 -27
  206. package/dist/test/utils/array-equals.test.js.map +0 -1
  207. package/dist/test/utils/format-count.test.d.ts +0 -1
  208. package/dist/test/utils/format-count.test.js +0 -24
  209. package/dist/test/utils/format-count.test.js.map +0 -1
  210. package/dist/test/utils/format-date.test.d.ts +0 -1
  211. package/dist/test/utils/format-date.test.js +0 -61
  212. package/dist/test/utils/format-date.test.js.map +0 -1
  213. package/dist/test/utils/format-unit-size.test.d.ts +0 -1
  214. package/dist/test/utils/format-unit-size.test.js +0 -18
  215. package/dist/test/utils/format-unit-size.test.js.map +0 -1
  216. package/dist/test/utils/local-date-from-utc.test.d.ts +0 -1
  217. package/dist/test/utils/local-date-from-utc.test.js +0 -27
  218. package/dist/test/utils/local-date-from-utc.test.js.map +0 -1
  219. package/eslint.config.mjs +0 -53
  220. package/index.html +0 -24
  221. package/index.ts +0 -29
  222. package/local.archive.org.cert +0 -86
  223. package/local.archive.org.key +0 -27
  224. package/pnpm-workspace.yaml +0 -30
  225. package/renovate.json +0 -6
  226. package/src/app-root.ts +0 -1284
  227. package/src/assets/img/icons/arrow-left.ts +0 -10
  228. package/src/assets/img/icons/arrow-right.ts +0 -10
  229. package/src/assets/img/icons/chevron.ts +0 -4
  230. package/src/assets/img/icons/close-circle-dark.ts +0 -5
  231. package/src/assets/img/icons/contract.ts +0 -9
  232. package/src/assets/img/icons/empty-query.ts +0 -5
  233. package/src/assets/img/icons/expand.ts +0 -9
  234. package/src/assets/img/icons/eye-closed.ts +0 -5
  235. package/src/assets/img/icons/eye.ts +0 -5
  236. package/src/assets/img/icons/favorite-filled.ts +0 -10
  237. package/src/assets/img/icons/favorite-unfilled.ts +0 -9
  238. package/src/assets/img/icons/filter.ts +0 -10
  239. package/src/assets/img/icons/login-required.ts +0 -18
  240. package/src/assets/img/icons/mediatype/account.ts +0 -14
  241. package/src/assets/img/icons/mediatype/audio.ts +0 -14
  242. package/src/assets/img/icons/mediatype/collection.ts +0 -12
  243. package/src/assets/img/icons/mediatype/data.ts +0 -15
  244. package/src/assets/img/icons/mediatype/etree.ts +0 -14
  245. package/src/assets/img/icons/mediatype/film.ts +0 -14
  246. package/src/assets/img/icons/mediatype/images.ts +0 -13
  247. package/src/assets/img/icons/mediatype/radio.ts +0 -15
  248. package/src/assets/img/icons/mediatype/search.ts +0 -14
  249. package/src/assets/img/icons/mediatype/software.ts +0 -13
  250. package/src/assets/img/icons/mediatype/texts.ts +0 -13
  251. package/src/assets/img/icons/mediatype/tv-commercial.ts +0 -12
  252. package/src/assets/img/icons/mediatype/tv-fact-check.ts +0 -12
  253. package/src/assets/img/icons/mediatype/tv-quote.ts +0 -12
  254. package/src/assets/img/icons/mediatype/tv.ts +0 -14
  255. package/src/assets/img/icons/mediatype/video.ts +0 -14
  256. package/src/assets/img/icons/mediatype/web.ts +0 -13
  257. package/src/assets/img/icons/null-result.ts +0 -5
  258. package/src/assets/img/icons/quote.ts +0 -7
  259. package/src/assets/img/icons/restricted.ts +0 -13
  260. package/src/assets/img/icons/reviews.ts +0 -11
  261. package/src/assets/img/icons/upload.ts +0 -12
  262. package/src/assets/img/icons/views.ts +0 -11
  263. package/src/circular-activity-indicator.ts +0 -64
  264. package/src/collection-browser.ts +0 -3187
  265. package/src/collection-facets/facet-row.ts +0 -309
  266. package/src/collection-facets/facet-tombstone-row.ts +0 -40
  267. package/src/collection-facets/facets-template.ts +0 -85
  268. package/src/collection-facets/models.ts +0 -10
  269. package/src/collection-facets/more-facets-content.ts +0 -644
  270. package/src/collection-facets/more-facets-pagination.ts +0 -294
  271. package/src/collection-facets/smart-facets/dedupe.ts +0 -44
  272. package/src/collection-facets/smart-facets/heuristics/browser-language/browser-language-heuristic.ts +0 -27
  273. package/src/collection-facets/smart-facets/heuristics/index.ts +0 -3
  274. package/src/collection-facets/smart-facets/heuristics/query-keywords/query-keywords-heuristic.ts +0 -17
  275. package/src/collection-facets/smart-facets/heuristics/query-keywords/query-keywords-map.ts +0 -70
  276. package/src/collection-facets/smart-facets/heuristics/wikidata/wikidata-entity-map.ts +0 -79
  277. package/src/collection-facets/smart-facets/heuristics/wikidata/wikidata-heuristic.ts +0 -93
  278. package/src/collection-facets/smart-facets/models.ts +0 -36
  279. package/src/collection-facets/smart-facets/smart-facet-bar.ts +0 -437
  280. package/src/collection-facets/smart-facets/smart-facet-button.ts +0 -145
  281. package/src/collection-facets/smart-facets/smart-facet-dropdown.ts +0 -185
  282. package/src/collection-facets/smart-facets/smart-facet-equals.ts +0 -16
  283. package/src/collection-facets/smart-facets/smart-facet-heuristics.ts +0 -26
  284. package/src/collection-facets/toggle-switch.ts +0 -174
  285. package/src/collection-facets.ts +0 -1013
  286. package/src/data-source/collection-browser-data-source-interface.ts +0 -351
  287. package/src/data-source/collection-browser-data-source.ts +0 -1474
  288. package/src/data-source/collection-browser-query-state.ts +0 -60
  289. package/src/data-source/models.ts +0 -56
  290. package/src/empty-placeholder.ts +0 -192
  291. package/src/expanded-date-picker.ts +0 -191
  292. package/src/language-code-handler/language-code-handler.ts +0 -64
  293. package/src/language-code-handler/language-code-mapping.ts +0 -564
  294. package/src/manage/manage-bar.ts +0 -276
  295. package/src/manage/remove-items-modal-content.ts +0 -102
  296. package/src/mediatype/mediatype-config.ts +0 -146
  297. package/src/models.ts +0 -895
  298. package/src/restoration-state-handler.ts +0 -550
  299. package/src/sort-filter-bar/alpha-bar-tooltip.ts +0 -53
  300. package/src/sort-filter-bar/alpha-bar.ts +0 -252
  301. package/src/sort-filter-bar/img/compact.ts +0 -5
  302. package/src/sort-filter-bar/img/list.ts +0 -5
  303. package/src/sort-filter-bar/img/sort-toggle-disabled.ts +0 -15
  304. package/src/sort-filter-bar/img/sort-toggle-down.ts +0 -17
  305. package/src/sort-filter-bar/img/sort-toggle-up.ts +0 -17
  306. package/src/sort-filter-bar/img/sort-triangle.ts +0 -5
  307. package/src/sort-filter-bar/img/tile.ts +0 -5
  308. package/src/sort-filter-bar/sort-filter-bar.ts +0 -734
  309. package/src/styles/ia-button.ts +0 -139
  310. package/src/styles/item-image-styles.ts +0 -124
  311. package/src/styles/sr-only.ts +0 -18
  312. package/src/styles/tile-action-styles.ts +0 -59
  313. package/src/tiles/base-tile-component.ts +0 -124
  314. package/src/tiles/collection-browser-loading-tile.ts +0 -26
  315. package/src/tiles/grid/account-tile.ts +0 -113
  316. package/src/tiles/grid/collection-tile.ts +0 -184
  317. package/src/tiles/grid/item-tile.ts +0 -347
  318. package/src/tiles/grid/search-tile.ts +0 -90
  319. package/src/tiles/grid/styles/tile-grid-shared-styles.ts +0 -130
  320. package/src/tiles/grid/tile-stats.ts +0 -211
  321. package/src/tiles/hover/hover-pane-controller.ts +0 -638
  322. package/src/tiles/hover/tile-hover-pane.ts +0 -184
  323. package/src/tiles/image-block.ts +0 -162
  324. package/src/tiles/item-image.ts +0 -214
  325. package/src/tiles/list/tile-list-compact-header.ts +0 -112
  326. package/src/tiles/list/tile-list-compact.ts +0 -278
  327. package/src/tiles/list/tile-list.ts +0 -718
  328. package/src/tiles/models.ts +0 -21
  329. package/src/tiles/overlay/icon-overlay.ts +0 -57
  330. package/src/tiles/overlay/text-overlay.ts +0 -79
  331. package/src/tiles/review-block.ts +0 -130
  332. package/src/tiles/text-snippet-block.ts +0 -132
  333. package/src/tiles/tile-dispatcher.ts +0 -637
  334. package/src/tiles/tile-display-value-provider.ts +0 -133
  335. package/src/tiles/tile-mediatype-icon.ts +0 -133
  336. package/src/utils/analytics-events.ts +0 -29
  337. package/src/utils/array-equals.ts +0 -8
  338. package/src/utils/collapse-repeated-quotes.ts +0 -13
  339. package/src/utils/date-filter-field.ts +0 -11
  340. package/src/utils/facet-utils.ts +0 -183
  341. package/src/utils/format-count.ts +0 -95
  342. package/src/utils/format-date.ts +0 -62
  343. package/src/utils/format-unit-size.ts +0 -43
  344. package/src/utils/local-date-from-utc.ts +0 -15
  345. package/src/utils/log.ts +0 -14
  346. package/src/utils/resolve-mediatype.ts +0 -26
  347. package/src/utils/sha1.ts +0 -9
  348. package/test/collection-browser.test.ts +0 -2694
  349. package/test/collection-facets/facet-row.test.ts +0 -421
  350. package/test/collection-facets/facets-template.test.ts +0 -139
  351. package/test/collection-facets/more-facets-content.test.ts +0 -231
  352. package/test/collection-facets/more-facets-pagination.test.ts +0 -201
  353. package/test/collection-facets/toggle-switch.test.ts +0 -164
  354. package/test/collection-facets.test.ts +0 -928
  355. package/test/data-source/collection-browser-data-source.test.ts +0 -193
  356. package/test/empty-placeholder.test.ts +0 -88
  357. package/test/expanded-date-picker.test.ts +0 -201
  358. package/test/icon-overlay.test.ts +0 -38
  359. package/test/image-block.test.ts +0 -247
  360. package/test/item-image.test.ts +0 -220
  361. package/test/manage/manage-bar.test.ts +0 -347
  362. package/test/manage/remove-items-modal-content.test.ts +0 -81
  363. package/test/mediatype-config.test.ts +0 -11
  364. package/test/mocks/mock-analytics-handler.ts +0 -30
  365. package/test/mocks/mock-search-responses.ts +0 -1364
  366. package/test/mocks/mock-search-service.ts +0 -134
  367. package/test/restoration-state-handler.test.ts +0 -480
  368. package/test/review-block.test.ts +0 -62
  369. package/test/sort-filter-bar/alpha-bar-tooltip.test.ts +0 -17
  370. package/test/sort-filter-bar/alpha-bar.test.ts +0 -101
  371. package/test/sort-filter-bar/sort-filter-bar.test.ts +0 -472
  372. package/test/text-overlay.test.ts +0 -55
  373. package/test/text-snippet-block.test.ts +0 -85
  374. package/test/tile-stats.test.ts +0 -191
  375. package/test/tiles/grid/account-tile.test.ts +0 -121
  376. package/test/tiles/grid/collection-tile.test.ts +0 -114
  377. package/test/tiles/grid/item-tile.test.ts +0 -520
  378. package/test/tiles/grid/search-tile.test.ts +0 -75
  379. package/test/tiles/hover/hover-pane-controller.test.ts +0 -482
  380. package/test/tiles/hover/tile-hover-pane.test.ts +0 -80
  381. package/test/tiles/list/tile-list-compact-header.test.ts +0 -43
  382. package/test/tiles/list/tile-list-compact.test.ts +0 -282
  383. package/test/tiles/list/tile-list.test.ts +0 -576
  384. package/test/tiles/tile-dispatcher.test.ts +0 -320
  385. package/test/tiles/tile-display-value-provider.test.ts +0 -172
  386. package/test/tiles/tile-mediatype-icon.test.ts +0 -160
  387. package/test/utils/array-equals.test.ts +0 -31
  388. package/test/utils/format-count.test.ts +0 -32
  389. package/test/utils/format-date.test.ts +0 -89
  390. package/test/utils/format-unit-size.test.ts +0 -21
  391. package/test/utils/local-date-from-utc.test.ts +0 -37
  392. package/tsconfig.json +0 -25
  393. package/types/dompurify.d.ts +0 -1
  394. package/vite.config.ts +0 -29
  395. package/web-dev-server.config.mjs +0 -30
  396. package/web-test-runner.config.mjs +0 -52
@@ -3,33 +3,46 @@ import { __decorate } from "tslib";
3
3
  import { css, html, LitElement, nothing, } from 'lit';
4
4
  import { customElement, property } from 'lit/decorators.js';
5
5
  import { choose } from 'lit/directives/choose.js';
6
- import { msg } from '@lit/localize';
6
+ import { localized, msg } from '@lit/localize';
7
7
  import emptyQueryIcon from './assets/img/icons/empty-query';
8
8
  import nullResultIcon from './assets/img/icons/null-result';
9
- let EmptyPlaceholder = class EmptyPlaceholder extends LitElement {
9
+ let EmptyPlaceholder = EmptyPlaceholder_1 = class EmptyPlaceholder extends LitElement {
10
10
  constructor() {
11
11
  super(...arguments);
12
12
  this.placeholderType = null;
13
13
  this.detailMessage = '';
14
14
  }
15
- static { EmptyPlaceholder_1 = this; }
16
- static { this.MESSAGE_EMPTY_QUERY = msg('To begin searching, enter a search term in the box above and hit "Go".'); }
17
- static { this.MESSAGE_NO_SEARCH_RESULTS = msg('Your search did not match any items in the Archive. ' +
18
- 'Try different keywords or a more general search.'); }
19
- static { this.MESSAGE_NO_COLLECTION_RESULTS = msg('Your search did not match any items in this collection. ' +
20
- 'Try different keywords or a more general search.'); }
21
- static { this.MESSAGE_NO_VIEWABLE_MEMBERS = msg('This collection contains no viewable items.'); }
22
- static { this.MESSAGE_QUERY_ERROR = msg(html `The search engine encountered an error, which might be related to your
15
+ static get MESSAGE_EMPTY_QUERY() {
16
+ return msg('To begin searching, enter a search term in the box above and hit "Go".');
17
+ }
18
+ static get MESSAGE_NO_SEARCH_RESULTS() {
19
+ return msg('Your search did not match any items in the Archive. Try different keywords or a more general search.');
20
+ }
21
+ static get MESSAGE_NO_COLLECTION_RESULTS() {
22
+ return msg('Your search did not match any items in this collection. Try different keywords or a more general search.');
23
+ }
24
+ static get MESSAGE_NO_VIEWABLE_MEMBERS() {
25
+ return msg('This collection contains no viewable items.');
26
+ }
27
+ static get MESSAGE_QUERY_ERROR() {
28
+ // prettier-ignore
29
+ return msg(html `The search engine encountered an error, which might be related to your
23
30
  search query.
24
31
  <a
25
32
  href="https://help.archive.org/help/search-building-powerful-complex-queries/"
26
33
  >
27
34
  Tips for constructing search queries.
28
- </a> `); }
29
- static { this.MESSAGE_COLLECTION_ERROR = msg(html `The search engine encountered an error while loading this collection.
35
+ </a> `);
36
+ }
37
+ static get MESSAGE_COLLECTION_ERROR() {
38
+ // prettier-ignore
39
+ return msg(html `The search engine encountered an error while loading this collection.
30
40
  If the problem persists, please let us know at
31
- <a href="mailto:info@archive.org">info@archive.org</a>.`); }
32
- static { this.QUERY_ERROR_DETAILS_MESSAGE = msg('Error details:'); }
41
+ <a href="mailto:info@archive.org">info@archive.org</a>.`);
42
+ }
43
+ static get QUERY_ERROR_DETAILS_MESSAGE() {
44
+ return msg('Error details:');
45
+ }
33
46
  render() {
34
47
  return this.placeholderType ? html `${this.placeholderTemplate}` : nothing;
35
48
  }
@@ -160,7 +173,8 @@ __decorate([
160
173
  property({ type: String })
161
174
  ], EmptyPlaceholder.prototype, "detailMessage", void 0);
162
175
  EmptyPlaceholder = EmptyPlaceholder_1 = __decorate([
163
- customElement('empty-placeholder')
176
+ customElement('empty-placeholder'),
177
+ localized()
164
178
  ], EmptyPlaceholder);
165
179
  export { EmptyPlaceholder };
166
180
  //# sourceMappingURL=empty-placeholder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"empty-placeholder.js","sourceRoot":"","sources":["../../src/empty-placeholder.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n css,\n html,\n LitElement,\n CSSResultGroup,\n nothing,\n TemplateResult,\n} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { choose } from 'lit/directives/choose.js';\nimport { msg } from '@lit/localize';\n\nimport emptyQueryIcon from './assets/img/icons/empty-query';\nimport nullResultIcon from './assets/img/icons/null-result';\n\nexport type PlaceholderType =\n | 'empty-query'\n | 'empty-collection'\n | 'no-results'\n | 'query-error'\n | 'collection-error'\n | null;\n@customElement('empty-placeholder')\nexport class EmptyPlaceholder extends LitElement {\n private static readonly MESSAGE_EMPTY_QUERY = msg(\n 'To begin searching, enter a search term in the box above and hit \"Go\".',\n );\n\n private static readonly MESSAGE_NO_SEARCH_RESULTS = msg(\n 'Your search did not match any items in the Archive. ' +\n 'Try different keywords or a more general search.',\n );\n\n private static readonly MESSAGE_NO_COLLECTION_RESULTS = msg(\n 'Your search did not match any items in this collection. ' +\n 'Try different keywords or a more general search.',\n );\n\n private static readonly MESSAGE_NO_VIEWABLE_MEMBERS = msg(\n 'This collection contains no viewable items.',\n );\n\n private static readonly MESSAGE_QUERY_ERROR = msg(\n html`The search engine encountered an error, which might be related to your\n search query.\n <a\n href=\"https://help.archive.org/help/search-building-powerful-complex-queries/\"\n >\n Tips for constructing search queries.\n </a> `,\n );\n\n private static readonly MESSAGE_COLLECTION_ERROR = msg(\n html`The search engine encountered an error while loading this collection.\n If the problem persists, please let us know at\n <a href=\"mailto:info@archive.org\">info@archive.org</a>.`,\n );\n\n private static readonly QUERY_ERROR_DETAILS_MESSAGE = msg('Error details:');\n\n @property({ type: String }) placeholderType: PlaceholderType = null;\n\n @property({ type: Boolean }) isMobileView?: false;\n\n @property({ type: Boolean }) isCollection?: false;\n\n @property({ type: String }) detailMessage?: string = '';\n\n render() {\n return this.placeholderType ? html`${this.placeholderTemplate}` : nothing;\n }\n\n private get placeholderTemplate(): TemplateResult {\n return html`\n <div\n class=\"placeholder ${this.placeholderType} ${this.isMobileView\n ? 'mobile'\n : 'desktop'}\"\n >\n ${choose(this.placeholderType, [\n ['empty-query', () => this.emptyQueryTemplate],\n ['empty-collection', () => this.emptyCollectionTemplate],\n ['no-results', () => this.noResultsTemplate],\n ['query-error', () => this.queryErrorTemplate],\n ['collection-error', () => this.collectionErrorTemplate],\n ])}\n </div>\n `;\n }\n\n private get emptyQueryTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"empty-query-text-msg\">\n ${EmptyPlaceholder.MESSAGE_EMPTY_QUERY}\n </h2>\n <div>${emptyQueryIcon}</div>\n `;\n }\n\n private get emptyCollectionTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"empty-collection-text-msg\">\n ${EmptyPlaceholder.MESSAGE_NO_VIEWABLE_MEMBERS}\n </h2>\n <div>${nullResultIcon}</div>\n `;\n }\n\n private get noResultsTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"empty-results-text-msg\">\n ${this.isCollection\n ? EmptyPlaceholder.MESSAGE_NO_COLLECTION_RESULTS\n : EmptyPlaceholder.MESSAGE_NO_SEARCH_RESULTS}\n </h2>\n <div>${nullResultIcon}</div>\n `;\n }\n\n private get queryErrorTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"error-query-text-msg\">\n ${EmptyPlaceholder.MESSAGE_QUERY_ERROR}\n </h2>\n <div>${nullResultIcon}</div>\n <p class=\"error-details\">\n ${EmptyPlaceholder.QUERY_ERROR_DETAILS_MESSAGE} ${this.detailMessage}\n </p>\n `;\n }\n\n private get collectionErrorTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"error-collection-text-msg\">\n ${EmptyPlaceholder.MESSAGE_COLLECTION_ERROR}\n </h2>\n <div>${nullResultIcon}</div>\n <p class=\"error-details\">\n ${EmptyPlaceholder.QUERY_ERROR_DETAILS_MESSAGE} ${this.detailMessage}\n </p>\n `;\n }\n\n static get styles(): CSSResultGroup {\n return css`\n :host {\n text-align: center;\n width: 100%;\n }\n\n a {\n text-decoration: none;\n }\n a:link {\n color: var(--ia-theme-link-color, #4b64ff);\n }\n a:hover {\n text-decoration: underline;\n }\n\n .placeholder {\n display: block;\n }\n\n .desktop svg {\n max-height: 40rem;\n }\n .desktop .title,\n .desktop .error-details {\n margin: 4rem 0;\n }\n\n .mobile svg {\n max-height: 20rem;\n }\n .mobile .title,\n .mobile .error-details {\n margin: 2rem 0.5;\n }\n\n .error-details {\n font-size: 1.2rem;\n word-break: break-word;\n }\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"empty-placeholder.js","sourceRoot":"","sources":["../../src/empty-placeholder.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n css,\n html,\n LitElement,\n CSSResultGroup,\n nothing,\n TemplateResult,\n} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { choose } from 'lit/directives/choose.js';\nimport { localized, msg } from '@lit/localize';\n\nimport emptyQueryIcon from './assets/img/icons/empty-query';\nimport nullResultIcon from './assets/img/icons/null-result';\n\nexport type PlaceholderType =\n | 'empty-query'\n | 'empty-collection'\n | 'no-results'\n | 'query-error'\n | 'collection-error'\n | null;\n@customElement('empty-placeholder')\n@localized()\nexport class EmptyPlaceholder extends LitElement {\n private static get MESSAGE_EMPTY_QUERY() {\n return msg(\n 'To begin searching, enter a search term in the box above and hit \"Go\".',\n );\n }\n\n private static get MESSAGE_NO_SEARCH_RESULTS() {\n return msg(\n 'Your search did not match any items in the Archive. Try different keywords or a more general search.',\n );\n }\n\n private static get MESSAGE_NO_COLLECTION_RESULTS() {\n return msg(\n 'Your search did not match any items in this collection. Try different keywords or a more general search.',\n );\n }\n\n private static get MESSAGE_NO_VIEWABLE_MEMBERS() {\n return msg('This collection contains no viewable items.');\n }\n\n private static get MESSAGE_QUERY_ERROR() {\n // prettier-ignore\n return msg(\n html`The search engine encountered an error, which might be related to your\n search query.\n <a\n href=\"https://help.archive.org/help/search-building-powerful-complex-queries/\"\n >\n Tips for constructing search queries.\n </a> `,\n );\n }\n\n private static get MESSAGE_COLLECTION_ERROR() {\n // prettier-ignore\n return msg(\n html`The search engine encountered an error while loading this collection.\n If the problem persists, please let us know at\n <a href=\"mailto:info@archive.org\">info@archive.org</a>.`,\n );\n }\n\n private static get QUERY_ERROR_DETAILS_MESSAGE() {\n return msg('Error details:');\n }\n\n @property({ type: String }) placeholderType: PlaceholderType = null;\n\n @property({ type: Boolean }) isMobileView?: false;\n\n @property({ type: Boolean }) isCollection?: false;\n\n @property({ type: String }) detailMessage?: string = '';\n\n render() {\n return this.placeholderType ? html`${this.placeholderTemplate}` : nothing;\n }\n\n private get placeholderTemplate(): TemplateResult {\n return html`\n <div\n class=\"placeholder ${this.placeholderType} ${this.isMobileView\n ? 'mobile'\n : 'desktop'}\"\n >\n ${choose(this.placeholderType, [\n ['empty-query', () => this.emptyQueryTemplate],\n ['empty-collection', () => this.emptyCollectionTemplate],\n ['no-results', () => this.noResultsTemplate],\n ['query-error', () => this.queryErrorTemplate],\n ['collection-error', () => this.collectionErrorTemplate],\n ])}\n </div>\n `;\n }\n\n private get emptyQueryTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"empty-query-text-msg\">\n ${EmptyPlaceholder.MESSAGE_EMPTY_QUERY}\n </h2>\n <div>${emptyQueryIcon}</div>\n `;\n }\n\n private get emptyCollectionTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"empty-collection-text-msg\">\n ${EmptyPlaceholder.MESSAGE_NO_VIEWABLE_MEMBERS}\n </h2>\n <div>${nullResultIcon}</div>\n `;\n }\n\n private get noResultsTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"empty-results-text-msg\">\n ${this.isCollection\n ? EmptyPlaceholder.MESSAGE_NO_COLLECTION_RESULTS\n : EmptyPlaceholder.MESSAGE_NO_SEARCH_RESULTS}\n </h2>\n <div>${nullResultIcon}</div>\n `;\n }\n\n private get queryErrorTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"error-query-text-msg\">\n ${EmptyPlaceholder.MESSAGE_QUERY_ERROR}\n </h2>\n <div>${nullResultIcon}</div>\n <p class=\"error-details\">\n ${EmptyPlaceholder.QUERY_ERROR_DETAILS_MESSAGE} ${this.detailMessage}\n </p>\n `;\n }\n\n private get collectionErrorTemplate(): TemplateResult {\n // Added data-testid for Playwright testing\n return html`\n <h2 class=\"title\" data-testid=\"error-collection-text-msg\">\n ${EmptyPlaceholder.MESSAGE_COLLECTION_ERROR}\n </h2>\n <div>${nullResultIcon}</div>\n <p class=\"error-details\">\n ${EmptyPlaceholder.QUERY_ERROR_DETAILS_MESSAGE} ${this.detailMessage}\n </p>\n `;\n }\n\n static get styles(): CSSResultGroup {\n return css`\n :host {\n text-align: center;\n width: 100%;\n }\n\n a {\n text-decoration: none;\n }\n a:link {\n color: var(--ia-theme-link-color, #4b64ff);\n }\n a:hover {\n text-decoration: underline;\n }\n\n .placeholder {\n display: block;\n }\n\n .desktop svg {\n max-height: 40rem;\n }\n .desktop .title,\n .desktop .error-details {\n margin: 4rem 0;\n }\n\n .mobile svg {\n max-height: 20rem;\n }\n .mobile .title,\n .mobile .error-details {\n margin: 2rem 0.5;\n }\n\n .error-details {\n font-size: 1.2rem;\n word-break: break-word;\n }\n `;\n }\n}\n"]}
@@ -2,7 +2,7 @@ import { __decorate } from "tslib";
2
2
  import { css, html, LitElement, nothing, } from 'lit';
3
3
  import { customElement, property } from 'lit/decorators.js';
4
4
  import { ifDefined } from 'lit/directives/if-defined.js';
5
- import { msg } from '@lit/localize';
5
+ import { localized, msg } from '@lit/localize';
6
6
  import { analyticsActions, analyticsCategories, } from './utils/analytics-events';
7
7
  import '@internetarchive/elements/ia-histogram-date-range/ia-histogram-date-range';
8
8
  let ExpandedDatePicker = class ExpandedDatePicker extends LitElement {
@@ -172,7 +172,8 @@ __decorate([
172
172
  property({ type: Object, attribute: false })
173
173
  ], ExpandedDatePicker.prototype, "analyticsHandler", void 0);
174
174
  ExpandedDatePicker = __decorate([
175
- customElement('expanded-date-picker')
175
+ customElement('expanded-date-picker'),
176
+ localized()
176
177
  ], ExpandedDatePicker);
177
178
  export { ExpandedDatePicker };
178
179
  //# sourceMappingURL=expanded-date-picker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"expanded-date-picker.js","sourceRoot":"","sources":["../../src/expanded-date-picker.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n css,\n html,\n LitElement,\n CSSResultGroup,\n TemplateResult,\n nothing,\n} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { msg } from '@lit/localize';\nimport type { ModalManagerInterface } from '@internetarchive/modal-manager';\nimport type { AnalyticsManagerInterface } from '@internetarchive/analytics-manager';\nimport {\n BarScalingOption,\n BinSnappingInterval,\n} from '@internetarchive/elements/ia-histogram-date-range/models';\nimport {\n analyticsActions,\n analyticsCategories,\n} from './utils/analytics-events';\n\nimport '@internetarchive/elements/ia-histogram-date-range/ia-histogram-date-range';\n\n@customElement('expanded-date-picker')\nexport class ExpandedDatePicker extends LitElement {\n @property({ type: String }) minDate?: string;\n\n @property({ type: String }) maxDate?: string;\n\n @property({ type: String }) minSelectedDate?: string;\n\n @property({ type: String }) maxSelectedDate?: string;\n\n @property({ type: Array }) buckets?: number[];\n\n @property({ type: String }) customDateFormat?: string;\n\n @property({ type: String }) customTooltipDateFormat?: string;\n\n @property({ type: String }) customTooltipLabel?: string;\n\n @property({ type: String }) binSnapping: BinSnappingInterval = 'none';\n\n @property({ type: String }) barScaling: BarScalingOption = 'logarithmic';\n\n @property({ type: Object, attribute: false })\n modalManager?: ModalManagerInterface;\n\n @property({ type: Object, attribute: false })\n analyticsHandler?: AnalyticsManagerInterface;\n\n render(): TemplateResult {\n return html`\n <div id=\"container\">\n <ia-histogram-date-range\n id=\"date-picker\"\n .minDate=${this.minDate}\n .maxDate=${this.maxDate}\n .minSelectedDate=${this.minSelectedDate ?? this.minDate}\n .maxSelectedDate=${this.maxSelectedDate ?? this.maxDate}\n dateFormat=${ifDefined(this.customDateFormat)}\n tooltipDateFormat=${ifDefined(this.customTooltipDateFormat)}\n tooltipLabel=${ifDefined(this.customTooltipLabel)}\n .binSnapping=${this.binSnapping}\n .barScaling=${this.barScaling ?? nothing}\n .updateDelay=${0}\n updateWhileFocused\n missingDataMessage=\"...\"\n .width=${560}\n .height=${120}\n .bins=${this.buckets}\n @histogramDateRangeUpdated=${this.histogramDateRangeUpdated}\n >\n <button\n id=\"apply-btn\"\n slot=\"inputs-right-side\"\n @click=${this.applyBtnClicked}\n >\n ${msg('Apply date range')}\n </button>\n </ia-histogram-date-range>\n </div>\n `;\n }\n\n connectedCallback(): void {\n super.connectedCallback?.();\n this.setupEscapeListener();\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback?.();\n this.removeEscapeListener();\n }\n\n /**\n * Add an event listener to close the date picker modal when the Esc key is pressed\n */\n private setupEscapeListener() {\n document.addEventListener('keydown', this.boundEscapeListener);\n }\n\n /**\n * Remove the Esc key listener that was previously added\n */\n private removeEscapeListener() {\n document.removeEventListener('keydown', this.boundEscapeListener);\n }\n\n /**\n * Closes the modal dialog if the given event is pressing the Esc key.\n * Arrow function to ensure `this` remains bound to the current component.\n */\n private boundEscapeListener = (e: KeyboardEvent) => {\n if (e.key === 'Escape') {\n this.closeModal();\n }\n };\n\n /**\n * When the histogram is updated, keep track of the newly selected date range.\n * We don't commit to the new range until the apply button is clicked.\n */\n private histogramDateRangeUpdated(\n e: CustomEvent<{\n minDate: string;\n maxDate: string;\n }>,\n ): void {\n this.minSelectedDate = e.detail.minDate;\n this.maxSelectedDate = e.detail.maxDate;\n }\n\n /**\n * When the Apply button is clicked, emit the current date range and close the modal.\n */\n private applyBtnClicked(): void {\n const event = new CustomEvent('histogramDateRangeApplied', {\n detail: {\n minDate: this.minSelectedDate,\n maxDate: this.maxSelectedDate,\n },\n });\n this.dispatchEvent(event);\n this.closeModal();\n\n this.analyticsHandler?.sendEvent({\n category: analyticsCategories.default,\n action: analyticsActions.histogramChangedFromModal,\n label: window.location.href,\n });\n }\n\n /**\n * Closes the modal associated with this component (if it exists) and dispatches a\n * modalClosed event.\n */\n private closeModal(): void {\n if (this.modalManager) {\n this.modalManager.closeModal();\n this.dispatchEvent(new CustomEvent('modalClosed'));\n }\n }\n\n static get styles(): CSSResultGroup {\n return css`\n #container {\n display: flex;\n justify-content: center;\n padding: 40px 10px 10px;\n overflow: hidden;\n }\n\n #date-picker {\n --histogramDateRangeInputWidth: 50px;\n --histogramDateRangeInputRowMargin: 5px 0 0 0;\n }\n\n #apply-btn {\n margin: 0 0 0 5px;\n padding: 8px 10px;\n border: 0;\n border-radius: 4px;\n background: var(--primaryButtonBGColor, #194880);\n color: white;\n cursor: pointer;\n }\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"expanded-date-picker.js","sourceRoot":"","sources":["../../src/expanded-date-picker.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n css,\n html,\n LitElement,\n CSSResultGroup,\n TemplateResult,\n nothing,\n} from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { localized, msg } from '@lit/localize';\nimport type { ModalManagerInterface } from '@internetarchive/modal-manager';\nimport type { AnalyticsManagerInterface } from '@internetarchive/analytics-manager';\nimport {\n BarScalingOption,\n BinSnappingInterval,\n} from '@internetarchive/elements/ia-histogram-date-range/models';\nimport {\n analyticsActions,\n analyticsCategories,\n} from './utils/analytics-events';\n\nimport '@internetarchive/elements/ia-histogram-date-range/ia-histogram-date-range';\n\n@customElement('expanded-date-picker')\n@localized()\nexport class ExpandedDatePicker extends LitElement {\n @property({ type: String }) minDate?: string;\n\n @property({ type: String }) maxDate?: string;\n\n @property({ type: String }) minSelectedDate?: string;\n\n @property({ type: String }) maxSelectedDate?: string;\n\n @property({ type: Array }) buckets?: number[];\n\n @property({ type: String }) customDateFormat?: string;\n\n @property({ type: String }) customTooltipDateFormat?: string;\n\n @property({ type: String }) customTooltipLabel?: string;\n\n @property({ type: String }) binSnapping: BinSnappingInterval = 'none';\n\n @property({ type: String }) barScaling: BarScalingOption = 'logarithmic';\n\n @property({ type: Object, attribute: false })\n modalManager?: ModalManagerInterface;\n\n @property({ type: Object, attribute: false })\n analyticsHandler?: AnalyticsManagerInterface;\n\n render(): TemplateResult {\n return html`\n <div id=\"container\">\n <ia-histogram-date-range\n id=\"date-picker\"\n .minDate=${this.minDate}\n .maxDate=${this.maxDate}\n .minSelectedDate=${this.minSelectedDate ?? this.minDate}\n .maxSelectedDate=${this.maxSelectedDate ?? this.maxDate}\n dateFormat=${ifDefined(this.customDateFormat)}\n tooltipDateFormat=${ifDefined(this.customTooltipDateFormat)}\n tooltipLabel=${ifDefined(this.customTooltipLabel)}\n .binSnapping=${this.binSnapping}\n .barScaling=${this.barScaling ?? nothing}\n .updateDelay=${0}\n updateWhileFocused\n missingDataMessage=\"...\"\n .width=${560}\n .height=${120}\n .bins=${this.buckets}\n @histogramDateRangeUpdated=${this.histogramDateRangeUpdated}\n >\n <button\n id=\"apply-btn\"\n slot=\"inputs-right-side\"\n @click=${this.applyBtnClicked}\n >\n ${msg('Apply date range')}\n </button>\n </ia-histogram-date-range>\n </div>\n `;\n }\n\n connectedCallback(): void {\n super.connectedCallback?.();\n this.setupEscapeListener();\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback?.();\n this.removeEscapeListener();\n }\n\n /**\n * Add an event listener to close the date picker modal when the Esc key is pressed\n */\n private setupEscapeListener() {\n document.addEventListener('keydown', this.boundEscapeListener);\n }\n\n /**\n * Remove the Esc key listener that was previously added\n */\n private removeEscapeListener() {\n document.removeEventListener('keydown', this.boundEscapeListener);\n }\n\n /**\n * Closes the modal dialog if the given event is pressing the Esc key.\n * Arrow function to ensure `this` remains bound to the current component.\n */\n private boundEscapeListener = (e: KeyboardEvent) => {\n if (e.key === 'Escape') {\n this.closeModal();\n }\n };\n\n /**\n * When the histogram is updated, keep track of the newly selected date range.\n * We don't commit to the new range until the apply button is clicked.\n */\n private histogramDateRangeUpdated(\n e: CustomEvent<{\n minDate: string;\n maxDate: string;\n }>,\n ): void {\n this.minSelectedDate = e.detail.minDate;\n this.maxSelectedDate = e.detail.maxDate;\n }\n\n /**\n * When the Apply button is clicked, emit the current date range and close the modal.\n */\n private applyBtnClicked(): void {\n const event = new CustomEvent('histogramDateRangeApplied', {\n detail: {\n minDate: this.minSelectedDate,\n maxDate: this.maxSelectedDate,\n },\n });\n this.dispatchEvent(event);\n this.closeModal();\n\n this.analyticsHandler?.sendEvent({\n category: analyticsCategories.default,\n action: analyticsActions.histogramChangedFromModal,\n label: window.location.href,\n });\n }\n\n /**\n * Closes the modal associated with this component (if it exists) and dispatches a\n * modalClosed event.\n */\n private closeModal(): void {\n if (this.modalManager) {\n this.modalManager.closeModal();\n this.dispatchEvent(new CustomEvent('modalClosed'));\n }\n }\n\n static get styles(): CSSResultGroup {\n return css`\n #container {\n display: flex;\n justify-content: center;\n padding: 40px 10px 10px;\n overflow: hidden;\n }\n\n #date-picker {\n --histogramDateRangeInputWidth: 50px;\n --histogramDateRangeInputRowMargin: 5px 0 0 0;\n }\n\n #apply-btn {\n margin: 0 0 0 5px;\n padding: 8px 10px;\n border: 0;\n border-radius: 4px;\n background: var(--primaryButtonBGColor, #194880);\n color: white;\n cursor: pointer;\n }\n `;\n }\n}\n"]}
@@ -0,0 +1,94 @@
1
+ export declare const templates: {
2
+ h13064d5156c615de: import("lit").TemplateResult<1>;
3
+ h920c92659184f0bc: import("lit").TemplateResult<1>;
4
+ s01a8d1dbd588ac19: string;
5
+ s03c4a59d394f8285: string;
6
+ s04a2e4a6caf07c66: string;
7
+ s08118dc8355966af: string;
8
+ s087d0e07b52a8c19: import("@lit/localize").StrResult;
9
+ s087d1507b52a97fe: import("@lit/localize").StrResult;
10
+ s087d1707b52a9b64: import("@lit/localize").StrResult;
11
+ s089297421a0eedd6: string;
12
+ s09134b07b5aacab4: string;
13
+ s10badbbb7458756b: import("@lit/localize").StrResult;
14
+ s10c473ba9d85039c: string;
15
+ s1348f0497a99fe1b: string;
16
+ s16a6528db8e36fe5: string;
17
+ s1895d4e46cff35f9: string;
18
+ s2037bf213b8e419b: string;
19
+ s22759aae8f547d20: string;
20
+ s24d45627f1e95f7a: string;
21
+ s2805bb246d30384a: string;
22
+ s2ceb11be2290bb1b: string;
23
+ s320992e58900cc86: import("@lit/localize").StrResult;
24
+ s322628256693c6d8: string;
25
+ s350e83d078cf47d6: string;
26
+ s355c4153fe27a589: string;
27
+ s3f5390ecd7d14626: string;
28
+ s4369ef9b51b71a0b: string;
29
+ s471bd7615c164fb6: string;
30
+ s4bfc4d609ee1ab33: string;
31
+ s4c1025a7d399cd6b: string;
32
+ s4e1b7bc897f8c089: string;
33
+ s4f11a5992a021fa2: string;
34
+ s4f7142f34f35ed6d: string;
35
+ s5b528a7f6c0c40af: string;
36
+ s5c225a179e34f704: string;
37
+ s5f43af3669b1e098: string;
38
+ s60ca4026935af5bd: string;
39
+ s6d3b5b0561ba34c9: string;
40
+ s6fc9985cacb3eaa2: import("@lit/localize").StrResult;
41
+ s76f86c7568d51abc: string;
42
+ s77fd410a7f33bb55: string;
43
+ s7ac239996dd6d909: import("@lit/localize").StrResult;
44
+ s7f3437809d931336: string;
45
+ s84d3dbcd121dd01b: string;
46
+ s879330fe73e46610: import("@lit/localize").StrResult;
47
+ s8865f02d9ebbd0f5: string;
48
+ s8ca015950940c078: string;
49
+ s8e68b824b99140a1: string;
50
+ s8ef9b6c2af31a130: string;
51
+ s8f87ca21cd0e0907: import("@lit/localize").StrResult;
52
+ s91c95e3f33defa93: string;
53
+ s984a5e18d85b6d57: import("@lit/localize").StrResult;
54
+ s99181a7e454a7a81: string;
55
+ s99f110d27e30b289: string;
56
+ s9b288e9b7f945b0c: string;
57
+ sa4610b7e117b7870: string;
58
+ sa508c606cd13dcc5: string;
59
+ sa731b8677f830182: string;
60
+ sa8beb6b1182241ac: string;
61
+ sab1e212a875eb996: string;
62
+ sb0ff4efb0328eb4b: string;
63
+ sb200fe325d3e0ab3: string;
64
+ sb3f922fbbc355ef7: string;
65
+ sb5228c24c24cc18a: string;
66
+ sb58c82618718d16e: string;
67
+ sb5b8614f47ae519d: string;
68
+ sb7adab38b780c834: import("@lit/localize").StrResult;
69
+ sb89d8d8bc0c08e98: string;
70
+ sc32bb2e1a8047c9a: string;
71
+ sc6432b98425e5737: string;
72
+ sc6d075ebd993b94b: import("@lit/localize").StrResult;
73
+ sc81c9ceea4c97767: string;
74
+ scc44d457ed96108c: string;
75
+ sd0b6082239185272: string;
76
+ sd0d55e8a5b30ddbc: string;
77
+ sd1d0f1053fc888f0: string;
78
+ sd2223afb7d6b100d: string;
79
+ sd2dc41d0d42a188b: string;
80
+ sd58c6c0227ea9fc3: string;
81
+ sd733957613ccaa59: import("@lit/localize").StrResult;
82
+ sd8adbc60f2886b80: string;
83
+ sddc27cc22328fbf0: import("@lit/localize").StrResult;
84
+ sdf6c22ec03252c91: import("@lit/localize").StrResult;
85
+ se1c1137c3638e1eb: string;
86
+ se871c20e39ace2a5: string;
87
+ se9ab756faba48167: string;
88
+ sea80c016fb691d2e: string;
89
+ sebd0f6fd006a98ac: string;
90
+ see0d40a42ac78160: import("@lit/localize").StrResult;
91
+ sf95b96048b8e537d: import("@lit/localize").StrResult;
92
+ sfaa12ceed0995556: import("@lit/localize").StrResult;
93
+ sfc4264fee3bf9b72: string;
94
+ };
@@ -0,0 +1,109 @@
1
+ // Do not modify this file by hand!
2
+ // Re-generate this file by running lit-localize
3
+ import { html } from 'lit';
4
+ import { str } from '@lit/localize';
5
+ /* eslint-disable no-irregular-whitespace */
6
+ /* eslint-disable @typescript-eslint/no-explicit-any */
7
+ export const templates = {
8
+ h13064d5156c615de: html `El motor de búsqueda encontró un error al cargar esta
9
+ colección. Si el problema continúa, avísanos en
10
+ <a href="mailto:info@archive.org">info@archive.org</a>.`,
11
+ h920c92659184f0bc: html `El motor de búsqueda encontró un error, que puede
12
+ tener que ver con tu búsqueda.
13
+ <a
14
+ href="https://help.archive.org/help/search-building-powerful-complex-queries/"
15
+ >
16
+ Consejos para construir búsquedas.
17
+ </a> `,
18
+ s01a8d1dbd588ac19: `Mostrar la página anterior de valores`,
19
+ s03c4a59d394f8285: `Deseleccionar todo`,
20
+ s04a2e4a6caf07c66: `Selecciona los elementos que quieres quitar`,
21
+ s08118dc8355966af: `Tu búsqueda no coincide con ningún elemento de esta colección. Prueba con otras palabras o una búsqueda más general.`,
22
+ s087d0e07b52a8c19: str `${0}B`,
23
+ s087d1507b52a97fe: str `${0}K`,
24
+ s087d1707b52a9b64: str `${0}M`,
25
+ s089297421a0eedd6: `reseñas`,
26
+ s09134b07b5aacab4: `Por`,
27
+ s10badbbb7458756b: str `Buscar ${0}…`,
28
+ s10c473ba9d85039c: `Aplicar el rango de fechas`,
29
+ s1348f0497a99fe1b: `Quitar este elemento de la lista`,
30
+ s16a6528db8e36fe5: `Mostrar la página siguiente de valores`,
31
+ s1895d4e46cff35f9: `Ocultos:`,
32
+ s2037bf213b8e419b: `Error: no se pudieron quitar los elementos`,
33
+ s22759aae8f547d20: `Borrar el filtro`,
34
+ s24d45627f1e95f7a: `favoritos`,
35
+ s2805bb246d30384a: `Seleccionados:`,
36
+ s2ceb11be2290bb1b: `Cancelar`,
37
+ s320992e58900cc86: str `${0} seleccionados`,
38
+ s322628256693c6d8: `No se pudieron cargar las opciones, inténtalo de nuevo más tarde`,
39
+ s350e83d078cf47d6: `Gestionar los elementos en Item Manager`,
40
+ s355c4153fe27a589: `No se han encontrado valores que coincidan.`,
41
+ s3f5390ecd7d14626: `Colecciones`,
42
+ s4369ef9b51b71a0b: `Pulsa la flecha abajo para ver la vista previa del elemento`,
43
+ s471bd7615c164fb6: `Año de publicación`,
44
+ s4bfc4d609ee1ab33: `Archivado`,
45
+ s4c1025a7d399cd6b: `Más filtros de:`,
46
+ s4e1b7bc897f8c089: `Quitar elementos`,
47
+ s4f11a5992a021fa2: `Filtrar por cadena`,
48
+ s4f7142f34f35ed6d: `Inicia sesión para ver este elemento`,
49
+ s5b528a7f6c0c40af: `Volumen`,
50
+ s5c225a179e34f704: `Valoración media`,
51
+ s5f43af3669b1e098: `Fuente`,
52
+ s60ca4026935af5bd: `Forma parte de`,
53
+ s6d3b5b0561ba34c9: `Publicado`,
54
+ s6fc9985cacb3eaa2: str `Ver ${0}`,
55
+ s76f86c7568d51abc: `Lo sentimos, no se pudieron cargar estos valores. Inténtalo de nuevo más tarde.`,
56
+ s77fd410a7f33bb55: `Los filtros no están disponibles temporalmente.`,
57
+ s7ac239996dd6d909: str `${0} millones`,
58
+ s7f3437809d931336: `Reseñas`,
59
+ s84d3dbcd121dd01b: `descendente`,
60
+ s879330fe73e46610: str `Deseleccionar ${0}`,
61
+ s8865f02d9ebbd0f5: `Temas`,
62
+ s8ca015950940c078: `clips`,
63
+ s8e68b824b99140a1: `ascendente`,
64
+ s8ef9b6c2af31a130: `Visualizaciones semanales`,
65
+ s8f87ca21cd0e0907: str `Ver más: ${0}`,
66
+ s91c95e3f33defa93: `Tipo de medio:`,
67
+ s984a5e18d85b6d57: str `${0} ${1}`,
68
+ s99181a7e454a7a81: `Ampliar el histograma de fechas`,
69
+ s99f110d27e30b289: `Título`,
70
+ s9b288e9b7f945b0c: `Ordenar por:`,
71
+ sa4610b7e117b7870: `Para empezar a buscar, escribe un término en el cuadro de arriba y pulsa "Ir".`,
72
+ sa508c606cd13dcc5: `Filtrar por programa`,
73
+ sa731b8677f830182: `El contenido puede ser inapropiado`,
74
+ sa8beb6b1182241ac: `Filtros`,
75
+ sab1e212a875eb996: `Tu búsqueda no coincide con ningún elemento del Archive. Prueba con otras palabras o una búsqueda más general.`,
76
+ sb0ff4efb0328eb4b: `Detalles del error:`,
77
+ sb200fe325d3e0ab3: `La opción de orden actual no tiene direcciones`,
78
+ sb3f922fbbc355ef7: `Creador`,
79
+ sb5228c24c24cc18a: `Esta colección no contiene elementos que se puedan ver.`,
80
+ sb58c82618718d16e: `Quitar los elementos seleccionados`,
81
+ sb5b8614f47ae519d: `subidas`,
82
+ sb7adab38b780c834: str `Cambiar a orden ${0}`,
83
+ sb89d8d8bc0c08e98: `Reseñado`,
84
+ sc32bb2e1a8047c9a: `Filtrar por:`,
85
+ sc6432b98425e5737: `Pulsa la flecha arriba para salir de la vista previa del elemento`,
86
+ sc6d075ebd993b94b: str `Nota: ${0} puede tardar unos minutos en dejar de aparecer en tu ${1}.`,
87
+ sc81c9ceea4c97767: `Quitando los elementos seleccionados...`,
88
+ scc44d457ed96108c: `Visualizaciones totales`,
89
+ sd0b6082239185272: `Seleccionar todo`,
90
+ sd0d55e8a5b30ddbc: `Más información`,
91
+ sd1d0f1053fc888f0: `filtro de rango`,
92
+ sd2223afb7d6b100d: `Tipo`,
93
+ sd2dc41d0d42a188b: `¿Seguro que quieres quitar estos elementos?`,
94
+ sd58c6c0227ea9fc3: `Selecciona un rango de fechas`,
95
+ sd733957613ccaa59: str `Valores de ${0}`,
96
+ sd8adbc60f2886b80: `Número`,
97
+ sddc27cc22328fbf0: str `${0} mil millones`,
98
+ sdf6c22ec03252c91: str `Filtrar ${0}`,
99
+ se1c1137c3638e1eb: `Fecha de publicación`,
100
+ se871c20e39ace2a5: `Añadido`,
101
+ se9ab756faba48167: `Se ha producido un error al quitar los elementos. Inténtalo de nuevo dentro de unos minutos.`,
102
+ sea80c016fb691d2e: `de 5 estrellas`,
103
+ sebd0f6fd006a98ac: `visualizaciones totales`,
104
+ see0d40a42ac78160: str `Mostrar ${0}`,
105
+ sf95b96048b8e537d: str `${0} mil`,
106
+ sfaa12ceed0995556: str `Archivista desde ${0}`,
107
+ sfc4264fee3bf9b72: `Difuminado`,
108
+ };
109
+ //# sourceMappingURL=es.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"es.js","sourceRoot":"","sources":["../../../src/locales/es.ts"],"names":[],"mappings":"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","sourcesContent":["// Do not modify this file by hand!\n// Re-generate this file by running lit-localize\n\nimport { html } from 'lit';\nimport { str } from '@lit/localize';\n\n/* eslint-disable no-irregular-whitespace */\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport const templates = {\n h13064d5156c615de: html`El motor de búsqueda encontró un error al cargar esta\n colección. Si el problema continúa, avísanos en\n <a href=\"mailto:info@archive.org\">info@archive.org</a>.`,\n h920c92659184f0bc: html`El motor de búsqueda encontró un error, que puede\n tener que ver con tu búsqueda.\n <a\n href=\"https://help.archive.org/help/search-building-powerful-complex-queries/\"\n >\n Consejos para construir búsquedas.\n </a> `,\n s01a8d1dbd588ac19: `Mostrar la página anterior de valores`,\n s03c4a59d394f8285: `Deseleccionar todo`,\n s04a2e4a6caf07c66: `Selecciona los elementos que quieres quitar`,\n s08118dc8355966af: `Tu búsqueda no coincide con ningún elemento de esta colección. Prueba con otras palabras o una búsqueda más general.`,\n s087d0e07b52a8c19: str`${0}B`,\n s087d1507b52a97fe: str`${0}K`,\n s087d1707b52a9b64: str`${0}M`,\n s089297421a0eedd6: `reseñas`,\n s09134b07b5aacab4: `Por`,\n s10badbbb7458756b: str`Buscar ${0}…`,\n s10c473ba9d85039c: `Aplicar el rango de fechas`,\n s1348f0497a99fe1b: `Quitar este elemento de la lista`,\n s16a6528db8e36fe5: `Mostrar la página siguiente de valores`,\n s1895d4e46cff35f9: `Ocultos:`,\n s2037bf213b8e419b: `Error: no se pudieron quitar los elementos`,\n s22759aae8f547d20: `Borrar el filtro`,\n s24d45627f1e95f7a: `favoritos`,\n s2805bb246d30384a: `Seleccionados:`,\n s2ceb11be2290bb1b: `Cancelar`,\n s320992e58900cc86: str`${0} seleccionados`,\n s322628256693c6d8: `No se pudieron cargar las opciones, inténtalo de nuevo más tarde`,\n s350e83d078cf47d6: `Gestionar los elementos en Item Manager`,\n s355c4153fe27a589: `No se han encontrado valores que coincidan.`,\n s3f5390ecd7d14626: `Colecciones`,\n s4369ef9b51b71a0b: `Pulsa la flecha abajo para ver la vista previa del elemento`,\n s471bd7615c164fb6: `Año de publicación`,\n s4bfc4d609ee1ab33: `Archivado`,\n s4c1025a7d399cd6b: `Más filtros de:`,\n s4e1b7bc897f8c089: `Quitar elementos`,\n s4f11a5992a021fa2: `Filtrar por cadena`,\n s4f7142f34f35ed6d: `Inicia sesión para ver este elemento`,\n s5b528a7f6c0c40af: `Volumen`,\n s5c225a179e34f704: `Valoración media`,\n s5f43af3669b1e098: `Fuente`,\n s60ca4026935af5bd: `Forma parte de`,\n s6d3b5b0561ba34c9: `Publicado`,\n s6fc9985cacb3eaa2: str`Ver ${0}`,\n s76f86c7568d51abc: `Lo sentimos, no se pudieron cargar estos valores. Inténtalo de nuevo más tarde.`,\n s77fd410a7f33bb55: `Los filtros no están disponibles temporalmente.`,\n s7ac239996dd6d909: str`${0} millones`,\n s7f3437809d931336: `Reseñas`,\n s84d3dbcd121dd01b: `descendente`,\n s879330fe73e46610: str`Deseleccionar ${0}`,\n s8865f02d9ebbd0f5: `Temas`,\n s8ca015950940c078: `clips`,\n s8e68b824b99140a1: `ascendente`,\n s8ef9b6c2af31a130: `Visualizaciones semanales`,\n s8f87ca21cd0e0907: str`Ver más: ${0}`,\n s91c95e3f33defa93: `Tipo de medio:`,\n s984a5e18d85b6d57: str`${0} ${1}`,\n s99181a7e454a7a81: `Ampliar el histograma de fechas`,\n s99f110d27e30b289: `Título`,\n s9b288e9b7f945b0c: `Ordenar por:`,\n sa4610b7e117b7870: `Para empezar a buscar, escribe un término en el cuadro de arriba y pulsa \"Ir\".`,\n sa508c606cd13dcc5: `Filtrar por programa`,\n sa731b8677f830182: `El contenido puede ser inapropiado`,\n sa8beb6b1182241ac: `Filtros`,\n sab1e212a875eb996: `Tu búsqueda no coincide con ningún elemento del Archive. Prueba con otras palabras o una búsqueda más general.`,\n sb0ff4efb0328eb4b: `Detalles del error:`,\n sb200fe325d3e0ab3: `La opción de orden actual no tiene direcciones`,\n sb3f922fbbc355ef7: `Creador`,\n sb5228c24c24cc18a: `Esta colección no contiene elementos que se puedan ver.`,\n sb58c82618718d16e: `Quitar los elementos seleccionados`,\n sb5b8614f47ae519d: `subidas`,\n sb7adab38b780c834: str`Cambiar a orden ${0}`,\n sb89d8d8bc0c08e98: `Reseñado`,\n sc32bb2e1a8047c9a: `Filtrar por:`,\n sc6432b98425e5737: `Pulsa la flecha arriba para salir de la vista previa del elemento`,\n sc6d075ebd993b94b: str`Nota: ${0} puede tardar unos minutos en dejar de aparecer en tu ${1}.`,\n sc81c9ceea4c97767: `Quitando los elementos seleccionados...`,\n scc44d457ed96108c: `Visualizaciones totales`,\n sd0b6082239185272: `Seleccionar todo`,\n sd0d55e8a5b30ddbc: `Más información`,\n sd1d0f1053fc888f0: `filtro de rango`,\n sd2223afb7d6b100d: `Tipo`,\n sd2dc41d0d42a188b: `¿Seguro que quieres quitar estos elementos?`,\n sd58c6c0227ea9fc3: `Selecciona un rango de fechas`,\n sd733957613ccaa59: str`Valores de ${0}`,\n sd8adbc60f2886b80: `Número`,\n sddc27cc22328fbf0: str`${0} mil millones`,\n sdf6c22ec03252c91: str`Filtrar ${0}`,\n se1c1137c3638e1eb: `Fecha de publicación`,\n se871c20e39ace2a5: `Añadido`,\n se9ab756faba48167: `Se ha producido un error al quitar los elementos. Inténtalo de nuevo dentro de unos minutos.`,\n sea80c016fb691d2e: `de 5 estrellas`,\n sebd0f6fd006a98ac: `visualizaciones totales`,\n see0d40a42ac78160: str`Mostrar ${0}`,\n sf95b96048b8e537d: str`${0} mil`,\n sfaa12ceed0995556: str`Archivista desde ${0}`,\n sfc4264fee3bf9b72: `Difuminado`,\n};\n"]}
@@ -5,9 +5,10 @@ import { PageElementName } from '@internetarchive/search-service';
5
5
  import './remove-items-modal-content';
6
6
  export declare class ManageBar extends LitElement {
7
7
  /**
8
- * The label displayed in front of the management buttons
8
+ * The label displayed in front of the management buttons. Defaults to a
9
+ * localized "Select items to remove".
9
10
  */
10
- label: string;
11
+ label?: string;
11
12
  /**
12
13
  * The shared modal manager component for displaying modal dialogs on this page
13
14
  */
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { msg, str } from '@lit/localize';
2
+ import { localized, msg, str } from '@lit/localize';
3
3
  import { LitElement, html, css } from 'lit';
4
4
  import { customElement, property } from 'lit/decorators.js';
5
5
  import { when } from 'lit/directives/when.js';
@@ -9,10 +9,6 @@ import './remove-items-modal-content';
9
9
  let ManageBar = class ManageBar extends LitElement {
10
10
  constructor() {
11
11
  super(...arguments);
12
- /**
13
- * The label displayed in front of the management buttons
14
- */
15
- this.label = msg('Select items to remove');
16
12
  /**
17
13
  * Array of items that have been selected for management
18
14
  */
@@ -37,7 +33,9 @@ let ManageBar = class ManageBar extends LitElement {
37
33
  render() {
38
34
  return html `
39
35
  <div class="manage-container">
40
- <span class="manage-label">${this.label}</span>
36
+ <span class="manage-label"
37
+ >${this.label ?? msg('Select items to remove')}</span
38
+ >
41
39
  <div class="manage-buttons">
42
40
  <button class="ia-button dark" @click=${this.cancelClicked}>
43
41
  ${msg('Cancel')}
@@ -247,7 +245,8 @@ __decorate([
247
245
  property({ type: Boolean })
248
246
  ], ManageBar.prototype, "removeAllowed", void 0);
249
247
  ManageBar = __decorate([
250
- customElement('manage-bar')
248
+ customElement('manage-bar'),
249
+ localized()
251
250
  ], ManageBar);
252
251
  export { ManageBar };
253
252
  //# sourceMappingURL=manage-bar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"manage-bar.js","sourceRoot":"","sources":["../../../src/manage/manage-bar.ts"],"names":[],"mappings":"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","sourcesContent":["import { msg, str } from '@lit/localize';\nimport { LitElement, html, css, TemplateResult, CSSResultGroup } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { when } from 'lit/directives/when.js';\nimport {\n ModalConfig,\n type ModalManagerInterface,\n} from '@internetarchive/modal-manager';\nimport type { ManageableItem } from '../models';\nimport { PageElementName } from '@internetarchive/search-service';\nimport iaButtonStyle from '../styles/ia-button';\nimport './remove-items-modal-content';\n\n@customElement('manage-bar')\nexport class ManageBar extends LitElement {\n /**\n * The label displayed in front of the management buttons\n */\n @property({ type: String }) label = msg('Select items to remove');\n\n /**\n * The shared modal manager component for displaying modal dialogs on this page\n */\n @property({ type: Object }) modalManager?: ModalManagerInterface;\n\n /**\n * Array of items that have been selected for management\n */\n @property({ type: Array }) selectedItems: Array<ManageableItem> = [];\n\n /**\n * Which section of the profile page searches are for (e.g., uploads, reviews, ...)\n */\n @property({ type: String }) profileElement?: PageElementName;\n\n /**\n * Whether to show the \"Select All\" button (default false)\n */\n @property({ type: Boolean }) showSelectAll = false;\n\n /**\n * Whether to show the \"Unselect All\" button (default false)\n */\n @property({ type: Boolean }) showUnselectAll = false;\n\n /**\n * Whether to show \"Item Manager the items\" button (default false)\n */\n @property({ type: Boolean }) showItemManageButton = false;\n\n /**\n * Whether to active delete button for selectable items\n */\n @property({ type: Boolean }) removeAllowed = false;\n\n render(): TemplateResult {\n return html`\n <div class=\"manage-container\">\n <span class=\"manage-label\">${this.label}</span>\n <div class=\"manage-buttons\">\n <button class=\"ia-button dark\" @click=${this.cancelClicked}>\n ${msg('Cancel')}\n </button>\n <button\n class=\"ia-button danger\"\n ?disabled=${!this.removeAllowed}\n @click=${this.showRemoveItemsModal}\n >\n ${msg('Remove selected items')} (${this.selectedItems.length})...\n </button>\n ${when(\n this.showItemManageButton,\n () =>\n html` <button\n class=\"ia-button warning\"\n ?disabled=${!this.removeAllowed}\n @click=${this.manageItemsClicked}\n >\n ${msg('Item Manager the items')} (${this.selectedItems.length})\n </button>`,\n )}\n <div class=\"selection-buttons\">\n ${when(\n this.showSelectAll,\n () =>\n html` <button\n class=\"ia-button link select-all-btn\"\n @click=${this.selectAllClicked}\n >\n ${msg('Select all')}\n </button>`,\n )}\n ${when(\n this.showUnselectAll,\n () =>\n html` <button\n class=\"ia-button link unselect-all-btn\"\n @click=${this.unselectAllClicked}\n >\n ${msg('Unselect all')}\n </button>`,\n )}\n </div>\n </div>\n </div>\n `;\n }\n\n /**\n * Message to show in the manage view modal, depending on context.\n */\n private get manageViewModalMsg(): string {\n const pluralize = this.selectedItems.length > 1;\n const subject = pluralize ? 'these items' : 'this item';\n\n let listName = '';\n\n switch (this.profileElement) {\n case 'uploads':\n listName = 'uploads list';\n break;\n case 'web_archives':\n listName = 'web archives list';\n break;\n case 'favorites':\n listName = 'favorites list';\n break;\n default:\n return '';\n }\n\n return msg(\n str`Note: It may take a few minutes for ${subject} to stop appearing in your ${listName}.`,\n );\n }\n\n private cancelClicked(): void {\n this.dispatchEvent(new CustomEvent('cancel'));\n }\n\n private removeItemsClicked(): void {\n this.dispatchEvent(new CustomEvent('removeItems'));\n }\n\n private manageItemsClicked(): void {\n this.dispatchEvent(new CustomEvent('manageItems'));\n }\n\n private selectAllClicked(): void {\n this.dispatchEvent(new CustomEvent('selectAll'));\n }\n\n private unselectAllClicked(): void {\n this.dispatchEvent(new CustomEvent('unselectAll'));\n }\n\n /**\n * Shows a modal dialog confirming the list of items to be removed\n * @param items Which items to list in the modal\n */\n private showRemoveItemsModal(): void {\n const customModalContent = html`\n <remove-items-modal-content\n .items=${this.selectedItems}\n .message=${this.manageViewModalMsg}\n @confirm=${() => this.removeItemsClicked()}\n ></remove-items-modal-content>\n `;\n\n const config = new ModalConfig({\n showProcessingIndicator: false,\n processingImageMode: 'processing',\n bodyColor: '#fff',\n headerColor: '#194880',\n showHeaderLogo: false,\n closeOnBackdropClick: true,\n title: html`${msg('Are you sure you want to remove these items?')}`,\n });\n\n this.modalManager?.classList.add('remove-items');\n this.modalManager?.showModal({\n config,\n customModalContent,\n userClosedModalCallback: () => {\n this.modalManager?.classList.remove('remove-items');\n },\n });\n }\n\n /**\n * Shows a modal dialog indicating that item removal is being processed\n */\n showRemoveItemsProcessingModal(): void {\n const config = new ModalConfig({\n showProcessingIndicator: true,\n processingImageMode: 'processing',\n bodyColor: '#fff',\n headerColor: '#194880',\n showHeaderLogo: false,\n closeOnBackdropClick: true,\n title: html`${msg('Removing selected items...')}`,\n });\n\n this.modalManager?.classList.add('remove-items');\n this.modalManager?.showModal({\n config,\n userClosedModalCallback: () => {\n this.modalManager?.classList.remove('remove-items');\n },\n });\n }\n\n /**\n * Shows a modal dialog indicating that an error occurred while removing items\n */\n showRemoveItemsErrorModal(): void {\n const config = new ModalConfig({\n showProcessingIndicator: false,\n processingImageMode: 'processing',\n bodyColor: '#fff',\n headerColor: '#691916',\n showHeaderLogo: false,\n closeOnBackdropClick: true,\n title: html`${msg('Error: unable to remove items')}`,\n message: html`${msg(\n 'An error occurred while removing items. Please try again in a few minutes.',\n )}`,\n });\n\n this.modalManager?.classList.add('remove-items');\n this.modalManager?.showModal({\n config,\n userClosedModalCallback: () => {\n this.modalManager?.classList.remove('remove-items');\n },\n });\n }\n\n static get styles(): CSSResultGroup {\n return css`\n ${iaButtonStyle}\n .manage-container {\n display: flex;\n align-items: center;\n column-gap: 5px;\n padding: 20px 0 20px;\n flex-wrap: wrap;\n }\n\n .manage-label {\n display: inline-block;\n font-weight: bold;\n font-size: 1.8rem;\n padding-right: 10px;\n }\n\n .manage-buttons {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n column-gap: 5px;\n }\n\n .selection-buttons {\n display: inherit;\n }\n\n .ia-button,\n button {\n padding: 6px 12px;\n font-size: 1.4rem;\n margin: 3px 0;\n }\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"manage-bar.js","sourceRoot":"","sources":["../../../src/manage/manage-bar.ts"],"names":[],"mappings":"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","sourcesContent":["import { localized, msg, str } from '@lit/localize';\nimport { LitElement, html, css, TemplateResult, CSSResultGroup } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { when } from 'lit/directives/when.js';\nimport {\n ModalConfig,\n type ModalManagerInterface,\n} from '@internetarchive/modal-manager';\nimport type { ManageableItem } from '../models';\nimport { PageElementName } from '@internetarchive/search-service';\nimport iaButtonStyle from '../styles/ia-button';\nimport './remove-items-modal-content';\n\n@customElement('manage-bar')\n@localized()\nexport class ManageBar extends LitElement {\n /**\n * The label displayed in front of the management buttons. Defaults to a\n * localized \"Select items to remove\".\n */\n @property({ type: String }) label?: string;\n\n /**\n * The shared modal manager component for displaying modal dialogs on this page\n */\n @property({ type: Object }) modalManager?: ModalManagerInterface;\n\n /**\n * Array of items that have been selected for management\n */\n @property({ type: Array }) selectedItems: Array<ManageableItem> = [];\n\n /**\n * Which section of the profile page searches are for (e.g., uploads, reviews, ...)\n */\n @property({ type: String }) profileElement?: PageElementName;\n\n /**\n * Whether to show the \"Select All\" button (default false)\n */\n @property({ type: Boolean }) showSelectAll = false;\n\n /**\n * Whether to show the \"Unselect All\" button (default false)\n */\n @property({ type: Boolean }) showUnselectAll = false;\n\n /**\n * Whether to show \"Item Manager the items\" button (default false)\n */\n @property({ type: Boolean }) showItemManageButton = false;\n\n /**\n * Whether to active delete button for selectable items\n */\n @property({ type: Boolean }) removeAllowed = false;\n\n render(): TemplateResult {\n return html`\n <div class=\"manage-container\">\n <span class=\"manage-label\"\n >${this.label ?? msg('Select items to remove')}</span\n >\n <div class=\"manage-buttons\">\n <button class=\"ia-button dark\" @click=${this.cancelClicked}>\n ${msg('Cancel')}\n </button>\n <button\n class=\"ia-button danger\"\n ?disabled=${!this.removeAllowed}\n @click=${this.showRemoveItemsModal}\n >\n ${msg('Remove selected items')} (${this.selectedItems.length})...\n </button>\n ${when(\n this.showItemManageButton,\n () =>\n html` <button\n class=\"ia-button warning\"\n ?disabled=${!this.removeAllowed}\n @click=${this.manageItemsClicked}\n >\n ${msg('Item Manager the items')} (${this.selectedItems.length})\n </button>`,\n )}\n <div class=\"selection-buttons\">\n ${when(\n this.showSelectAll,\n () =>\n html` <button\n class=\"ia-button link select-all-btn\"\n @click=${this.selectAllClicked}\n >\n ${msg('Select all')}\n </button>`,\n )}\n ${when(\n this.showUnselectAll,\n () =>\n html` <button\n class=\"ia-button link unselect-all-btn\"\n @click=${this.unselectAllClicked}\n >\n ${msg('Unselect all')}\n </button>`,\n )}\n </div>\n </div>\n </div>\n `;\n }\n\n /**\n * Message to show in the manage view modal, depending on context.\n */\n private get manageViewModalMsg(): string {\n const pluralize = this.selectedItems.length > 1;\n const subject = pluralize ? 'these items' : 'this item';\n\n let listName = '';\n\n switch (this.profileElement) {\n case 'uploads':\n listName = 'uploads list';\n break;\n case 'web_archives':\n listName = 'web archives list';\n break;\n case 'favorites':\n listName = 'favorites list';\n break;\n default:\n return '';\n }\n\n return msg(\n str`Note: It may take a few minutes for ${subject} to stop appearing in your ${listName}.`,\n );\n }\n\n private cancelClicked(): void {\n this.dispatchEvent(new CustomEvent('cancel'));\n }\n\n private removeItemsClicked(): void {\n this.dispatchEvent(new CustomEvent('removeItems'));\n }\n\n private manageItemsClicked(): void {\n this.dispatchEvent(new CustomEvent('manageItems'));\n }\n\n private selectAllClicked(): void {\n this.dispatchEvent(new CustomEvent('selectAll'));\n }\n\n private unselectAllClicked(): void {\n this.dispatchEvent(new CustomEvent('unselectAll'));\n }\n\n /**\n * Shows a modal dialog confirming the list of items to be removed\n * @param items Which items to list in the modal\n */\n private showRemoveItemsModal(): void {\n const customModalContent = html`\n <remove-items-modal-content\n .items=${this.selectedItems}\n .message=${this.manageViewModalMsg}\n @confirm=${() => this.removeItemsClicked()}\n ></remove-items-modal-content>\n `;\n\n const config = new ModalConfig({\n showProcessingIndicator: false,\n processingImageMode: 'processing',\n bodyColor: '#fff',\n headerColor: '#194880',\n showHeaderLogo: false,\n closeOnBackdropClick: true,\n title: html`${msg('Are you sure you want to remove these items?')}`,\n });\n\n this.modalManager?.classList.add('remove-items');\n this.modalManager?.showModal({\n config,\n customModalContent,\n userClosedModalCallback: () => {\n this.modalManager?.classList.remove('remove-items');\n },\n });\n }\n\n /**\n * Shows a modal dialog indicating that item removal is being processed\n */\n showRemoveItemsProcessingModal(): void {\n const config = new ModalConfig({\n showProcessingIndicator: true,\n processingImageMode: 'processing',\n bodyColor: '#fff',\n headerColor: '#194880',\n showHeaderLogo: false,\n closeOnBackdropClick: true,\n title: html`${msg('Removing selected items...')}`,\n });\n\n this.modalManager?.classList.add('remove-items');\n this.modalManager?.showModal({\n config,\n userClosedModalCallback: () => {\n this.modalManager?.classList.remove('remove-items');\n },\n });\n }\n\n /**\n * Shows a modal dialog indicating that an error occurred while removing items\n */\n showRemoveItemsErrorModal(): void {\n const config = new ModalConfig({\n showProcessingIndicator: false,\n processingImageMode: 'processing',\n bodyColor: '#fff',\n headerColor: '#691916',\n showHeaderLogo: false,\n closeOnBackdropClick: true,\n title: html`${msg('Error: unable to remove items')}`,\n message: html`${msg(\n 'An error occurred while removing items. Please try again in a few minutes.',\n )}`,\n });\n\n this.modalManager?.classList.add('remove-items');\n this.modalManager?.showModal({\n config,\n userClosedModalCallback: () => {\n this.modalManager?.classList.remove('remove-items');\n },\n });\n }\n\n static get styles(): CSSResultGroup {\n return css`\n ${iaButtonStyle}\n .manage-container {\n display: flex;\n align-items: center;\n column-gap: 5px;\n padding: 20px 0 20px;\n flex-wrap: wrap;\n }\n\n .manage-label {\n display: inline-block;\n font-weight: bold;\n font-size: 1.8rem;\n padding-right: 10px;\n }\n\n .manage-buttons {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n column-gap: 5px;\n }\n\n .selection-buttons {\n display: inherit;\n }\n\n .ia-button,\n button {\n padding: 6px 12px;\n font-size: 1.4rem;\n margin: 3px 0;\n }\n `;\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { LitElement, html, css, nothing } from 'lit';
3
3
  import { customElement, property } from 'lit/decorators.js';
4
- import { msg } from '@lit/localize';
4
+ import { localized, msg } from '@lit/localize';
5
5
  import { map } from 'lit/directives/map.js';
6
6
  let RemoveItemsModalContent = class RemoveItemsModalContent extends LitElement {
7
7
  constructor() {
@@ -98,7 +98,8 @@ __decorate([
98
98
  property({ type: String })
99
99
  ], RemoveItemsModalContent.prototype, "message", void 0);
100
100
  RemoveItemsModalContent = __decorate([
101
- customElement('remove-items-modal-content')
101
+ customElement('remove-items-modal-content'),
102
+ localized()
102
103
  ], RemoveItemsModalContent);
103
104
  export { RemoveItemsModalContent };
104
105
  //# sourceMappingURL=remove-items-modal-content.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remove-items-modal-content.js","sourceRoot":"","sources":["../../../src/manage/remove-items-modal-content.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAA6B,MAAM,KAAK,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAIrC,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,UAAU;IAAhD;;QACuB,UAAK,GAAqB,EAAE,CAAC;IA6F3D,CAAC;IAzFC,MAAM;QACJ,OAAO,IAAI,CAAA;;UAEL,GAAG,CACH,IAAI,CAAC,KAAK,EACV,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAA;;yCAEM,KAAK,IAAI,YAAY;wCACtB,IAAI,IAAI,EAAE;;WAEvC,CACF;;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA,sBAAsB,IAAI,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,OAAO;;kDAE3B,IAAI,CAAC,qBAAqB;YAChE,GAAG,CAAC,cAAc,CAAC;;;KAG1B,CAAC;IACJ,CAAC;IAEO,qBAAqB;QAC3B,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAA8B,SAAS,EAAE;YACtD,MAAM,EAAE;gBACN,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB;SACF,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,MAAM;QACf,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsDT,CAAC;IACJ,CAAC;CACF,CAAA;AA7F6B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;sDAA8B;AAE7B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;wDAAkB;AAHlC,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CA8FnC","sourcesContent":["import { LitElement, html, css, nothing, TemplateResult, CSSResult } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { msg } from '@lit/localize';\nimport { map } from 'lit/directives/map.js';\nimport type { ManageableItem } from '../models';\n\n@customElement('remove-items-modal-content')\nexport class RemoveItemsModalContent extends LitElement {\n @property({ type: Object }) items: ManageableItem[] = [];\n\n @property({ type: String }) message?: string;\n\n render(): TemplateResult {\n return html`\n <ul>\n ${map(\n this.items,\n ({ title, date }) => html`\n <li>\n <span class=\"item-title\">${title ?? '[untitled]'}</span>\n <span class=\"item-date\">${date ?? ''}</span>\n </li>\n `,\n )}\n </ul>\n ${this.message ? html`<p class=\"message\">${this.message}</p>` : nothing}\n <div class=\"button-bar\">\n <button class=\"remove-items-btn\" @click=${this.removeItemsBtnClicked}>\n ${msg('Remove items')}\n </button>\n </div>\n `;\n }\n\n private removeItemsBtnClicked(): void {\n this.dispatchEvent(\n new CustomEvent<{ items: ManageableItem[] }>('confirm', {\n detail: {\n items: this.items,\n },\n }),\n );\n }\n\n static get styles(): CSSResult {\n return css`\n ul {\n margin: 0;\n padding: 0 10px;\n font-size: 1.4rem;\n list-style-type: none;\n max-height: min(400px, 40vh);\n overflow-y: auto;\n }\n\n li {\n display: flex;\n justify-content: space-between;\n padding: 2px 0;\n }\n li:not(:last-of-type) {\n border-bottom: 1px solid rgb(232, 232, 232);\n }\n\n .item-title {\n word-break: break-word;\n }\n\n .item-date {\n white-space: nowrap;\n }\n\n .message {\n font-size: 1.4rem;\n padding: 5px 10px;\n }\n\n .button-bar {\n display: flex;\n justify-content: center;\n margin: 10px 5px;\n }\n\n .remove-items-btn {\n margin-bottom: 10px;\n padding: 10px;\n border: 1px solid var(--primaryErrorCTABorder, #d43f3a);\n border-radius: 4px;\n color: white;\n background: var(--primaryErrorCTAFill, #d9534f);\n appearance: none;\n cursor: pointer;\n }\n .remove-items-btn:hover {\n background: rgba(var(--primaryErrorCTAFillRGB, 229, 28, 38), 0.9);\n }\n .remove-items-btn:active {\n background: rgba(var(--primaryErrorCTAFillRGB, 229, 28, 38), 0.7);\n }\n `;\n }\n}\n"]}
1
+ {"version":3,"file":"remove-items-modal-content.js","sourceRoot":"","sources":["../../../src/manage/remove-items-modal-content.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAA6B,MAAM,KAAK,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAKrC,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,UAAU;IAAhD;;QACuB,UAAK,GAAqB,EAAE,CAAC;IA6F3D,CAAC;IAzFC,MAAM;QACJ,OAAO,IAAI,CAAA;;UAEL,GAAG,CACH,IAAI,CAAC,KAAK,EACV,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAA;;yCAEM,KAAK,IAAI,YAAY;wCACtB,IAAI,IAAI,EAAE;;WAEvC,CACF;;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA,sBAAsB,IAAI,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,OAAO;;kDAE3B,IAAI,CAAC,qBAAqB;YAChE,GAAG,CAAC,cAAc,CAAC;;;KAG1B,CAAC;IACJ,CAAC;IAEO,qBAAqB;QAC3B,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAA8B,SAAS,EAAE;YACtD,MAAM,EAAE;gBACN,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB;SACF,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,MAAM;QACf,OAAO,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAsDT,CAAC;IACJ,CAAC;CACF,CAAA;AA7F6B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;sDAA8B;AAE7B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;wDAAkB;AAHlC,uBAAuB;IAFnC,aAAa,CAAC,4BAA4B,CAAC;IAC3C,SAAS,EAAE;GACC,uBAAuB,CA8FnC","sourcesContent":["import { LitElement, html, css, nothing, TemplateResult, CSSResult } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { localized, msg } from '@lit/localize';\nimport { map } from 'lit/directives/map.js';\nimport type { ManageableItem } from '../models';\n\n@customElement('remove-items-modal-content')\n@localized()\nexport class RemoveItemsModalContent extends LitElement {\n @property({ type: Object }) items: ManageableItem[] = [];\n\n @property({ type: String }) message?: string;\n\n render(): TemplateResult {\n return html`\n <ul>\n ${map(\n this.items,\n ({ title, date }) => html`\n <li>\n <span class=\"item-title\">${title ?? '[untitled]'}</span>\n <span class=\"item-date\">${date ?? ''}</span>\n </li>\n `,\n )}\n </ul>\n ${this.message ? html`<p class=\"message\">${this.message}</p>` : nothing}\n <div class=\"button-bar\">\n <button class=\"remove-items-btn\" @click=${this.removeItemsBtnClicked}>\n ${msg('Remove items')}\n </button>\n </div>\n `;\n }\n\n private removeItemsBtnClicked(): void {\n this.dispatchEvent(\n new CustomEvent<{ items: ManageableItem[] }>('confirm', {\n detail: {\n items: this.items,\n },\n }),\n );\n }\n\n static get styles(): CSSResult {\n return css`\n ul {\n margin: 0;\n padding: 0 10px;\n font-size: 1.4rem;\n list-style-type: none;\n max-height: min(400px, 40vh);\n overflow-y: auto;\n }\n\n li {\n display: flex;\n justify-content: space-between;\n padding: 2px 0;\n }\n li:not(:last-of-type) {\n border-bottom: 1px solid rgb(232, 232, 232);\n }\n\n .item-title {\n word-break: break-word;\n }\n\n .item-date {\n white-space: nowrap;\n }\n\n .message {\n font-size: 1.4rem;\n padding: 5px 10px;\n }\n\n .button-bar {\n display: flex;\n justify-content: center;\n margin: 10px 5px;\n }\n\n .remove-items-btn {\n margin-bottom: 10px;\n padding: 10px;\n border: 1px solid var(--primaryErrorCTABorder, #d43f3a);\n border-radius: 4px;\n color: white;\n background: var(--primaryErrorCTAFill, #d9534f);\n appearance: none;\n cursor: pointer;\n }\n .remove-items-btn:hover {\n background: rgba(var(--primaryErrorCTAFillRGB, 229, 28, 38), 0.9);\n }\n .remove-items-btn:active {\n background: rgba(var(--primaryErrorCTAFillRGB, 229, 28, 38), 0.7);\n }\n `;\n }\n}\n"]}
@@ -255,6 +255,10 @@ export declare const tvFacetDisplayOrder: FacetOption[];
255
255
  * Human-readable titles for each facet group.
256
256
  */
257
257
  export declare const facetTitles: Record<FacetOption, string>;
258
+ /**
259
+ * Human-readable plural titles for each facet group, for referring to its values.
260
+ */
261
+ export declare const facetPluralTitles: Record<FacetOption, string>;
258
262
  /**
259
263
  * The default sort type to use for each facet type
260
264
  */
@@ -5,8 +5,12 @@ import { resolveMediatype } from './utils/resolve-mediatype';
5
5
  import { loginRequiredIcon } from './assets/img/icons/login-required';
6
6
  import { restrictedIcon } from './assets/img/icons/restricted';
7
7
  export const TILE_OVERLAY_TEXT = {
8
- 'login-required': msg('Log in to view this item'),
9
- 'content-warning': msg('Content may be inappropriate'),
8
+ get 'login-required'() {
9
+ return msg('Log in to view this item');
10
+ },
11
+ get 'content-warning'() {
12
+ return msg('Content may be inappropriate');
13
+ },
10
14
  };
11
15
  export const TILE_OVERLAY_ICONS = {
12
16
  'login-required': loginRequiredIcon,
@@ -429,6 +433,22 @@ export const facetTitles = {
429
433
  person: 'Person',
430
434
  sponsor: 'Sponsor',
431
435
  };
436
+ /**
437
+ * Human-readable plural titles for each facet group, for referring to its values.
438
+ */
439
+ export const facetPluralTitles = {
440
+ subject: 'Subjects',
441
+ lending: 'Availability',
442
+ mediatype: 'Media Types',
443
+ language: 'Languages',
444
+ creator: 'Creators',
445
+ collection: 'Collections',
446
+ year: 'Years',
447
+ clip_type: 'Clip Types',
448
+ program: 'Programs',
449
+ person: 'People',
450
+ sponsor: 'Sponsors',
451
+ };
432
452
  /**
433
453
  * The default sort type to use for each facet type
434
454
  */