@internetarchive/collection-browser 2.7.13 → 2.7.14
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.
- package/.github/workflows/ci.yml +3 -3
- package/.github/workflows/gh-pages-main.yml +2 -2
- package/.github/workflows/pr-preview.yml +2 -2
- package/.prettierignore +1 -0
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/src/app-root.d.ts +1 -1
- package/dist/src/app-root.js +4 -4
- package/dist/src/app-root.js.map +1 -1
- package/dist/src/assets/img/icons/arrow-left.d.ts +1 -1
- package/dist/src/assets/img/icons/arrow-right.d.ts +1 -1
- package/dist/src/assets/img/icons/chevron.d.ts +1 -1
- package/dist/src/assets/img/icons/contract.d.ts +1 -1
- package/dist/src/assets/img/icons/empty-query.d.ts +1 -1
- package/dist/src/assets/img/icons/expand.d.ts +1 -1
- package/dist/src/assets/img/icons/eye-closed.d.ts +1 -1
- package/dist/src/assets/img/icons/eye.d.ts +1 -1
- package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
- package/dist/src/assets/img/icons/favorite-unfilled.d.ts +1 -1
- package/dist/src/assets/img/icons/filter.d.ts +1 -1
- package/dist/src/assets/img/icons/login-required.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/search.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
- package/dist/src/assets/img/icons/null-result.d.ts +1 -1
- package/dist/src/assets/img/icons/restricted.d.ts +1 -1
- package/dist/src/assets/img/icons/reviews.d.ts +1 -1
- package/dist/src/assets/img/icons/upload.d.ts +1 -1
- package/dist/src/assets/img/icons/views.d.ts +1 -1
- package/dist/src/circular-activity-indicator.d.ts +1 -1
- package/dist/src/circular-activity-indicator.js.map +1 -1
- package/dist/src/collection-browser.js +1 -2
- package/dist/src/collection-browser.js.map +1 -1
- package/dist/src/collection-facets/facet-row.js.map +1 -1
- package/dist/src/collection-facets/facet-tombstone-row.d.ts +1 -1
- package/dist/src/collection-facets/facet-tombstone-row.js.map +1 -1
- package/dist/src/collection-facets/facets-template.js +5 -5
- package/dist/src/collection-facets/facets-template.js.map +1 -1
- package/dist/src/collection-facets/more-facets-content.d.ts +1 -1
- package/dist/src/collection-facets/more-facets-content.js +2 -4
- package/dist/src/collection-facets/more-facets-content.js.map +1 -1
- package/dist/src/collection-facets/more-facets-pagination.js +1 -0
- package/dist/src/collection-facets/more-facets-pagination.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/dedupe.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js +1 -1
- package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/models.d.ts +2 -2
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +1 -4
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-button.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js.map +1 -1
- package/dist/src/collection-facets/toggle-switch.d.ts +2 -2
- package/dist/src/collection-facets/toggle-switch.js +2 -2
- package/dist/src/collection-facets/toggle-switch.js.map +1 -1
- package/dist/src/collection-facets.js +2 -3
- package/dist/src/collection-facets.js.map +1 -1
- package/dist/src/data-source/collection-browser-data-source-interface.js.map +1 -1
- package/dist/src/data-source/collection-browser-data-source.js +8 -9
- package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
- package/dist/src/data-source/models.d.ts +2 -2
- package/dist/src/empty-placeholder.d.ts +1 -1
- package/dist/src/empty-placeholder.js +10 -11
- package/dist/src/empty-placeholder.js.map +1 -1
- package/dist/src/expanded-date-picker.js.map +1 -1
- package/dist/src/language-code-handler/language-code-handler.js.map +1 -1
- package/dist/src/language-code-handler/language-code-mapping.js +86 -86
- package/dist/src/language-code-handler/language-code-mapping.js.map +1 -1
- package/dist/src/manage/manage-bar.js +16 -16
- package/dist/src/manage/manage-bar.js.map +1 -1
- package/dist/src/manage/remove-items-modal-content.js.map +1 -1
- package/dist/src/mediatype/mediatype-config.js +1 -0
- package/dist/src/mediatype/mediatype-config.js.map +1 -1
- package/dist/src/models.d.ts +15 -15
- package/dist/src/models.js +3 -3
- package/dist/src/models.js.map +1 -1
- package/dist/src/restoration-state-handler.js +0 -1
- package/dist/src/restoration-state-handler.js.map +1 -1
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +1 -1
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.js.map +1 -1
- package/dist/src/sort-filter-bar/alpha-bar.js +9 -9
- package/dist/src/sort-filter-bar/alpha-bar.js.map +1 -1
- package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
- package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +1 -1
- package/dist/src/sort-filter-bar/sort-filter-bar.js +1 -2
- package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
- package/dist/src/tiles/base-tile-component.js.map +1 -1
- package/dist/src/tiles/collection-browser-loading-tile.d.ts +1 -1
- package/dist/src/tiles/collection-browser-loading-tile.js.map +1 -1
- package/dist/src/tiles/grid/account-tile.js.map +1 -1
- package/dist/src/tiles/grid/collection-tile.js.map +1 -1
- package/dist/src/tiles/grid/item-tile.js +2 -3
- package/dist/src/tiles/grid/item-tile.js.map +1 -1
- package/dist/src/tiles/grid/search-tile.js.map +1 -1
- package/dist/src/tiles/grid/tile-stats.d.ts +1 -1
- package/dist/src/tiles/grid/tile-stats.js +2 -2
- package/dist/src/tiles/grid/tile-stats.js.map +1 -1
- package/dist/src/tiles/hover/hover-pane-controller.js.map +1 -1
- package/dist/src/tiles/hover/tile-hover-pane.d.ts +1 -1
- package/dist/src/tiles/hover/tile-hover-pane.js +3 -1
- package/dist/src/tiles/hover/tile-hover-pane.js.map +1 -1
- package/dist/src/tiles/image-block.d.ts +1 -1
- package/dist/src/tiles/image-block.js +1 -1
- package/dist/src/tiles/image-block.js.map +1 -1
- package/dist/src/tiles/item-image.d.ts +1 -1
- package/dist/src/tiles/item-image.js +2 -2
- package/dist/src/tiles/item-image.js.map +1 -1
- package/dist/src/tiles/list/tile-list-compact-header.d.ts +1 -1
- package/dist/src/tiles/list/tile-list-compact-header.js.map +1 -1
- package/dist/src/tiles/list/tile-list-compact.d.ts +1 -1
- package/dist/src/tiles/list/tile-list-compact.js.map +1 -1
- package/dist/src/tiles/list/tile-list.js +4 -6
- package/dist/src/tiles/list/tile-list.js.map +1 -1
- package/dist/src/tiles/mediatype-icon.d.ts +1 -1
- package/dist/src/tiles/mediatype-icon.js.map +1 -1
- package/dist/src/tiles/overlay/icon-overlay.js.map +1 -1
- package/dist/src/tiles/overlay/text-overlay.js.map +1 -1
- package/dist/src/tiles/review-block.js.map +1 -1
- package/dist/src/tiles/text-snippet-block.js.map +1 -1
- package/dist/src/tiles/tile-dispatcher.d.ts +1 -1
- package/dist/src/tiles/tile-dispatcher.js.map +1 -1
- package/dist/src/tiles/tile-display-value-provider.js.map +1 -1
- package/dist/src/utils/facet-utils.js.map +1 -1
- package/dist/src/utils/format-count.d.ts +2 -2
- package/dist/src/utils/format-count.js +0 -1
- package/dist/src/utils/format-count.js.map +1 -1
- package/dist/src/utils/format-date.d.ts +1 -1
- package/dist/src/utils/format-date.js.map +1 -1
- package/dist/src/utils/format-unit-size.js.map +1 -1
- package/dist/src/utils/log.js +1 -3
- package/dist/src/utils/log.js.map +1 -1
- package/dist/src/utils/resolve-mediatype.js.map +1 -1
- package/dist/test/collection-browser.test.js +4 -3
- package/dist/test/collection-browser.test.js.map +1 -1
- package/dist/test/collection-facets/facet-row.test.js +4 -1
- package/dist/test/collection-facets/facet-row.test.js.map +1 -1
- package/dist/test/collection-facets/facets-template.test.js.map +1 -1
- package/dist/test/collection-facets/more-facets-content.test.js +0 -1
- package/dist/test/collection-facets/more-facets-content.test.js.map +1 -1
- package/dist/test/collection-facets/more-facets-pagination.test.js +0 -1
- package/dist/test/collection-facets/more-facets-pagination.test.js.map +1 -1
- package/dist/test/collection-facets/toggle-switch.test.js +12 -3
- package/dist/test/collection-facets/toggle-switch.test.js.map +1 -1
- package/dist/test/collection-facets.test.js +4 -4
- package/dist/test/collection-facets.test.js.map +1 -1
- package/dist/test/data-source/collection-browser-data-source.test.js.map +1 -1
- package/dist/test/empty-placeholder.test.js +0 -1
- package/dist/test/empty-placeholder.test.js.map +1 -1
- package/dist/test/expanded-date-picker.test.js +4 -3
- package/dist/test/expanded-date-picker.test.js.map +1 -1
- package/dist/test/icon-overlay.test.js +0 -1
- package/dist/test/icon-overlay.test.js.map +1 -1
- package/dist/test/image-block.test.js +0 -1
- package/dist/test/image-block.test.js.map +1 -1
- package/dist/test/item-image.test.js +0 -1
- package/dist/test/item-image.test.js.map +1 -1
- package/dist/test/manage/manage-bar.test.js +2 -3
- package/dist/test/manage/manage-bar.test.js.map +1 -1
- package/dist/test/manage/remove-items-modal-content.test.js +0 -1
- package/dist/test/manage/remove-items-modal-content.test.js.map +1 -1
- package/dist/test/mocks/mock-search-responses.js.map +1 -1
- package/dist/test/mocks/mock-search-service.js.map +1 -1
- package/dist/test/restoration-state-handler.test.js.map +1 -1
- package/dist/test/review-block.test.js +0 -1
- package/dist/test/review-block.test.js.map +1 -1
- package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js.map +1 -1
- package/dist/test/sort-filter-bar/alpha-bar.test.js.map +1 -1
- package/dist/test/sort-filter-bar/sort-filter-bar.test.js +0 -1
- package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +1 -1
- package/dist/test/text-overlay.test.js +0 -1
- package/dist/test/text-overlay.test.js.map +1 -1
- package/dist/test/text-snippet-block.test.js +0 -1
- package/dist/test/text-snippet-block.test.js.map +1 -1
- package/dist/test/tile-stats.test.js +22 -23
- package/dist/test/tile-stats.test.js.map +1 -1
- package/dist/test/tiles/grid/account-tile.test.js +0 -1
- package/dist/test/tiles/grid/account-tile.test.js.map +1 -1
- package/dist/test/tiles/grid/collection-tile.test.js +0 -1
- package/dist/test/tiles/grid/collection-tile.test.js.map +1 -1
- package/dist/test/tiles/grid/item-tile.test.js +0 -1
- package/dist/test/tiles/grid/item-tile.test.js.map +1 -1
- package/dist/test/tiles/grid/search-tile.test.js +0 -1
- package/dist/test/tiles/grid/search-tile.test.js.map +1 -1
- package/dist/test/tiles/hover/hover-pane-controller.test.js.map +1 -1
- package/dist/test/tiles/hover/tile-hover-pane.test.js.map +1 -1
- package/dist/test/tiles/list/tile-list-compact.test.js +0 -1
- package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
- package/dist/test/tiles/list/tile-list.test.js +0 -1
- package/dist/test/tiles/list/tile-list.test.js.map +1 -1
- package/dist/test/tiles/tile-dispatcher.test.js.map +1 -1
- package/dist/test/utils/format-count.test.js.map +1 -1
- package/dist/test/utils/format-date.test.js.map +1 -1
- package/dist/test/utils/local-date-from-utc.test.js.map +1 -1
- package/eslint.config.mjs +53 -0
- package/index.html +0 -3
- package/package.json +41 -39
- package/src/app-root.ts +21 -22
- package/src/collection-browser.ts +36 -38
- package/src/collection-facets/facets-template.ts +7 -6
- package/src/collection-facets/more-facets-content.ts +11 -13
- package/src/collection-facets/more-facets-pagination.ts +3 -2
- package/src/collection-facets/smart-facets/dedupe.ts +2 -2
- package/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.ts +1 -1
- package/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.ts +6 -6
- package/src/collection-facets/smart-facets/smart-facet-bar.ts +6 -8
- package/src/collection-facets/smart-facets/smart-facet-button.ts +5 -3
- package/src/collection-facets/smart-facets/smart-facet-dropdown.ts +4 -4
- package/src/collection-facets/smart-facets/smart-facet-heuristics.ts +1 -1
- package/src/collection-facets/toggle-switch.ts +2 -2
- package/src/collection-facets.ts +18 -19
- package/src/data-source/collection-browser-data-source-interface.ts +5 -1
- package/src/data-source/collection-browser-data-source.ts +37 -34
- package/src/empty-placeholder.ts +19 -16
- package/src/expanded-date-picker.ts +1 -1
- package/src/language-code-handler/language-code-handler.ts +1 -1
- package/src/manage/manage-bar.ts +23 -20
- package/src/manage/remove-items-modal-content.ts +2 -2
- package/src/mediatype/mediatype-config.ts +1 -0
- package/src/models.ts +3 -3
- package/src/restoration-state-handler.ts +14 -15
- package/src/sort-filter-bar/alpha-bar.ts +16 -17
- package/src/sort-filter-bar/sort-filter-bar.ts +14 -15
- package/src/tiles/grid/account-tile.ts +1 -1
- package/src/tiles/grid/collection-tile.ts +1 -1
- package/src/tiles/grid/item-tile.ts +9 -9
- package/src/tiles/grid/tile-stats.ts +4 -4
- package/src/tiles/hover/hover-pane-controller.ts +1 -1
- package/src/tiles/hover/tile-hover-pane.ts +4 -2
- package/src/tiles/item-image.ts +1 -1
- package/src/tiles/list/tile-list-compact.ts +2 -2
- package/src/tiles/list/tile-list.ts +22 -24
- package/src/tiles/tile-dispatcher.ts +5 -5
- package/src/tiles/tile-display-value-provider.ts +4 -4
- package/src/utils/facet-utils.ts +6 -6
- package/src/utils/format-count.ts +2 -3
- package/src/utils/format-date.ts +1 -1
- package/src/utils/format-unit-size.ts +1 -1
- package/src/utils/log.ts +1 -3
- package/test/collection-browser.test.ts +125 -124
- package/test/collection-facets/facet-row.test.ts +31 -28
- package/test/collection-facets/facets-template.test.ts +9 -9
- package/test/collection-facets/more-facets-content.test.ts +14 -15
- package/test/collection-facets/more-facets-pagination.test.ts +18 -19
- package/test/collection-facets/toggle-switch.test.ts +28 -18
- package/test/collection-facets.test.ts +46 -39
- package/test/data-source/collection-browser-data-source.test.ts +2 -2
- package/test/empty-placeholder.test.ts +6 -7
- package/test/expanded-date-picker.test.ts +25 -20
- package/test/icon-overlay.test.ts +0 -1
- package/test/image-block.test.ts +6 -7
- package/test/item-image.test.ts +0 -1
- package/test/manage/manage-bar.test.ts +19 -16
- package/test/manage/remove-items-modal-content.test.ts +4 -5
- package/test/mocks/mock-search-responses.ts +2 -1
- package/test/mocks/mock-search-service.ts +1 -1
- package/test/restoration-state-handler.test.ts +12 -12
- package/test/review-block.test.ts +1 -2
- package/test/sort-filter-bar/alpha-bar-tooltip.test.ts +1 -1
- package/test/sort-filter-bar/alpha-bar.test.ts +5 -5
- package/test/sort-filter-bar/sort-filter-bar.test.ts +38 -39
- package/test/text-overlay.test.ts +0 -1
- package/test/text-snippet-block.test.ts +5 -6
- package/test/tile-stats.test.ts +26 -35
- package/test/tiles/grid/account-tile.test.ts +2 -3
- package/test/tiles/grid/collection-tile.test.ts +3 -4
- package/test/tiles/grid/item-tile.test.ts +13 -14
- package/test/tiles/grid/search-tile.test.ts +1 -2
- package/test/tiles/hover/hover-pane-controller.test.ts +15 -15
- package/test/tiles/hover/tile-hover-pane.test.ts +5 -5
- package/test/tiles/list/tile-list-compact.test.ts +1 -2
- package/test/tiles/list/tile-list.test.ts +10 -11
- package/test/tiles/tile-dispatcher.test.ts +5 -5
- package/test/utils/format-count.test.ts +1 -1
- package/test/utils/format-date.test.ts +1 -1
- package/test/utils/local-date-from-utc.test.ts +1 -1
- package/tsconfig.json +0 -1
|
@@ -87,7 +87,7 @@ export class RestorationStateHandler
|
|
|
87
87
|
|
|
88
88
|
private persistQueryStateToUrl(
|
|
89
89
|
state: RestorationState,
|
|
90
|
-
forceReplace = false
|
|
90
|
+
forceReplace = false,
|
|
91
91
|
) {
|
|
92
92
|
const url = new URL(window.location.href);
|
|
93
93
|
const oldParams = new URLSearchParams(url.searchParams);
|
|
@@ -145,10 +145,9 @@ export class RestorationStateHandler
|
|
|
145
145
|
|
|
146
146
|
if (state.selectedFacets) {
|
|
147
147
|
for (const [facetName, facetValues] of Object.entries(
|
|
148
|
-
state.selectedFacets
|
|
148
|
+
state.selectedFacets,
|
|
149
149
|
)) {
|
|
150
150
|
const facetEntries = Object.entries(facetValues);
|
|
151
|
-
// eslint-disable-next-line no-continue
|
|
152
151
|
if (facetEntries.length === 0) continue;
|
|
153
152
|
for (const [key, data] of facetEntries) {
|
|
154
153
|
const notValue = data.state === 'hidden';
|
|
@@ -165,7 +164,7 @@ export class RestorationStateHandler
|
|
|
165
164
|
if (state.minSelectedDate && state.maxSelectedDate) {
|
|
166
165
|
newParams.append(
|
|
167
166
|
'and[]',
|
|
168
|
-
`year:[${state.minSelectedDate} TO ${state.maxSelectedDate}]
|
|
167
|
+
`year:[${state.minSelectedDate} TO ${state.maxSelectedDate}]`,
|
|
169
168
|
);
|
|
170
169
|
}
|
|
171
170
|
|
|
@@ -221,7 +220,7 @@ export class RestorationStateHandler
|
|
|
221
220
|
facets: state.selectedFacets,
|
|
222
221
|
},
|
|
223
222
|
'',
|
|
224
|
-
url
|
|
223
|
+
url,
|
|
225
224
|
);
|
|
226
225
|
}
|
|
227
226
|
|
|
@@ -318,18 +317,18 @@ export class RestorationStateHandler
|
|
|
318
317
|
if (minDate && maxDate) {
|
|
319
318
|
restorationState.minSelectedDate = minDate.substring(
|
|
320
319
|
1,
|
|
321
|
-
minDate.length
|
|
320
|
+
minDate.length,
|
|
322
321
|
);
|
|
323
322
|
restorationState.maxSelectedDate = maxDate.substring(
|
|
324
323
|
0,
|
|
325
|
-
maxDate.length - 1
|
|
324
|
+
maxDate.length - 1,
|
|
326
325
|
);
|
|
327
326
|
} else {
|
|
328
327
|
this.setSelectedFacetState(
|
|
329
328
|
restorationState.selectedFacets,
|
|
330
329
|
field as FacetOption,
|
|
331
330
|
value,
|
|
332
|
-
'selected'
|
|
331
|
+
'selected',
|
|
333
332
|
);
|
|
334
333
|
}
|
|
335
334
|
break;
|
|
@@ -345,7 +344,7 @@ export class RestorationStateHandler
|
|
|
345
344
|
restorationState.selectedFacets,
|
|
346
345
|
field as FacetOption,
|
|
347
346
|
value,
|
|
348
|
-
'selected'
|
|
347
|
+
'selected',
|
|
349
348
|
);
|
|
350
349
|
}
|
|
351
350
|
});
|
|
@@ -358,7 +357,7 @@ export class RestorationStateHandler
|
|
|
358
357
|
restorationState.selectedFacets,
|
|
359
358
|
field as FacetOption,
|
|
360
359
|
value,
|
|
361
|
-
'hidden'
|
|
360
|
+
'hidden',
|
|
362
361
|
);
|
|
363
362
|
});
|
|
364
363
|
}
|
|
@@ -408,13 +407,13 @@ export class RestorationStateHandler
|
|
|
408
407
|
private paramsMatch(
|
|
409
408
|
searchParams1: URLSearchParams,
|
|
410
409
|
searchParams2: URLSearchParams,
|
|
411
|
-
keys: string[]
|
|
410
|
+
keys: string[],
|
|
412
411
|
): boolean {
|
|
413
412
|
return keys.every(key =>
|
|
414
413
|
arrayEquals(
|
|
415
414
|
searchParams1.getAll(key).sort(),
|
|
416
|
-
searchParams2.getAll(key).sort()
|
|
417
|
-
)
|
|
415
|
+
searchParams2.getAll(key).sort(),
|
|
416
|
+
),
|
|
418
417
|
);
|
|
419
418
|
}
|
|
420
419
|
|
|
@@ -423,7 +422,7 @@ export class RestorationStateHandler
|
|
|
423
422
|
* when loading state from the URL.
|
|
424
423
|
*/
|
|
425
424
|
private removeRecognizedParams(
|
|
426
|
-
searchParams: URLSearchParams
|
|
425
|
+
searchParams: URLSearchParams,
|
|
427
426
|
): URLSearchParams {
|
|
428
427
|
// Remove all of our standard params
|
|
429
428
|
searchParams.delete('query');
|
|
@@ -464,7 +463,7 @@ export class RestorationStateHandler
|
|
|
464
463
|
selectedFacets: SelectedFacets,
|
|
465
464
|
field: FacetOption,
|
|
466
465
|
value: string,
|
|
467
|
-
state: FacetState
|
|
466
|
+
state: FacetState,
|
|
468
467
|
): void {
|
|
469
468
|
const facet = selectedFacets[field];
|
|
470
469
|
if (!facet) return; // Unrecognized facet group, ignore it.
|
|
@@ -33,19 +33,18 @@ export class AlphaBar extends LitElement {
|
|
|
33
33
|
<section id="container" aria-label=${this.ariaLandmarkLabel ?? nothing}>
|
|
34
34
|
<ul>
|
|
35
35
|
${this.alphabet.map(
|
|
36
|
-
letter =>
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
`
|
|
36
|
+
letter => html`
|
|
37
|
+
<li
|
|
38
|
+
class=${letter === this.selectedUppercaseLetter
|
|
39
|
+
? 'selected'
|
|
40
|
+
: nothing}
|
|
41
|
+
@mousemove=${this.handleMouseMove}
|
|
42
|
+
@mouseleave=${this.handleMouseLeave}
|
|
43
|
+
>
|
|
44
|
+
${this.letterButtonTemplate(letter)}
|
|
45
|
+
${this.tooltipTemplate(letter)}
|
|
46
|
+
</li>
|
|
47
|
+
`,
|
|
49
48
|
)}
|
|
50
49
|
</ul>
|
|
51
50
|
</section>
|
|
@@ -87,7 +86,7 @@ export class AlphaBar extends LitElement {
|
|
|
87
86
|
this.dispatchEvent(
|
|
88
87
|
new CustomEvent('letterChanged', {
|
|
89
88
|
detail: { selectedLetter: this.selectedUppercaseLetter },
|
|
90
|
-
})
|
|
89
|
+
}),
|
|
91
90
|
);
|
|
92
91
|
}
|
|
93
92
|
|
|
@@ -127,10 +126,10 @@ export class AlphaBar extends LitElement {
|
|
|
127
126
|
// (but not including any scrollbar).
|
|
128
127
|
const bodyStyle = getComputedStyle(document.body);
|
|
129
128
|
const bodyMarginLeft = parseFloat(
|
|
130
|
-
bodyStyle.getPropertyValue('margin-left')
|
|
129
|
+
bodyStyle.getPropertyValue('margin-left'),
|
|
131
130
|
);
|
|
132
131
|
const bodyMarginRight = parseFloat(
|
|
133
|
-
bodyStyle.getPropertyValue('margin-right')
|
|
132
|
+
bodyStyle.getPropertyValue('margin-right'),
|
|
134
133
|
);
|
|
135
134
|
const bodyWidthWithMargin =
|
|
136
135
|
document.body.clientWidth + bodyMarginLeft + bodyMarginRight;
|
|
@@ -155,7 +154,7 @@ export class AlphaBar extends LitElement {
|
|
|
155
154
|
left -= overflowAmt;
|
|
156
155
|
this.tooltip.style.setProperty(
|
|
157
156
|
'--tooltipArrowOffset',
|
|
158
|
-
`${overflowAmt}px
|
|
157
|
+
`${overflowAmt}px`,
|
|
159
158
|
);
|
|
160
159
|
}
|
|
161
160
|
|
|
@@ -228,7 +228,7 @@ export class SortFilterBar
|
|
|
228
228
|
|
|
229
229
|
if (changed.has('resizeObserver') || changed.has('enableSortOptionsSlot')) {
|
|
230
230
|
const oldObserver = changed.get(
|
|
231
|
-
'resizeObserver'
|
|
231
|
+
'resizeObserver',
|
|
232
232
|
) as SharedResizeObserverInterface;
|
|
233
233
|
if (oldObserver) this.disconnectResizeObserver(oldObserver);
|
|
234
234
|
this.setupResizeObserver();
|
|
@@ -239,12 +239,12 @@ export class SortFilterBar
|
|
|
239
239
|
if (this.dropdownBackdropVisible) {
|
|
240
240
|
document.addEventListener(
|
|
241
241
|
'keydown',
|
|
242
|
-
this.boundSortBarSelectorEscapeListener
|
|
242
|
+
this.boundSortBarSelectorEscapeListener,
|
|
243
243
|
);
|
|
244
244
|
} else {
|
|
245
245
|
document.removeEventListener(
|
|
246
246
|
'keydown',
|
|
247
|
-
this.boundSortBarSelectorEscapeListener
|
|
247
|
+
this.boundSortBarSelectorEscapeListener,
|
|
248
248
|
);
|
|
249
249
|
}
|
|
250
250
|
}
|
|
@@ -267,7 +267,7 @@ export class SortFilterBar
|
|
|
267
267
|
}
|
|
268
268
|
|
|
269
269
|
private disconnectResizeObserver(
|
|
270
|
-
resizeObserver: SharedResizeObserverInterface
|
|
270
|
+
resizeObserver: SharedResizeObserverInterface,
|
|
271
271
|
) {
|
|
272
272
|
if (this.sortSelectorContainer) {
|
|
273
273
|
resizeObserver.removeObserver({
|
|
@@ -430,7 +430,7 @@ export class SortFilterBar
|
|
|
430
430
|
.filter(opt => opt.shownInSortBar)
|
|
431
431
|
.filter(opt => this.showRelevance || opt.field !== SortField.relevance)
|
|
432
432
|
.filter(
|
|
433
|
-
opt => this.showDateFavorited || opt.field !== SortField.datefavorited
|
|
433
|
+
opt => this.showDateFavorited || opt.field !== SortField.datefavorited,
|
|
434
434
|
);
|
|
435
435
|
|
|
436
436
|
return html`
|
|
@@ -439,12 +439,11 @@ export class SortFilterBar
|
|
|
439
439
|
class=${this.mobileSelectorVisible ? 'visible' : 'hidden'}
|
|
440
440
|
>
|
|
441
441
|
${this.getSortDropdown({
|
|
442
|
-
displayName: html`${SORT_OPTIONS[this.finalizedSortField]
|
|
443
|
-
.displayName}`,
|
|
442
|
+
displayName: html`${SORT_OPTIONS[this.finalizedSortField].displayName}`,
|
|
444
443
|
id: 'mobile-dropdown',
|
|
445
444
|
selected: true,
|
|
446
445
|
dropdownOptions: displayedOptions.map(opt =>
|
|
447
|
-
this.getDropdownOption(opt.field)
|
|
446
|
+
this.getDropdownOption(opt.field),
|
|
448
447
|
),
|
|
449
448
|
selectedOption: this.finalizedSortField,
|
|
450
449
|
onOptionSelected: this.mobileSortChanged,
|
|
@@ -452,7 +451,7 @@ export class SortFilterBar
|
|
|
452
451
|
this.dropdownBackdropVisible = this.mobileDropdown.open;
|
|
453
452
|
this.mobileDropdown.classList.toggle(
|
|
454
453
|
'open',
|
|
455
|
-
this.mobileDropdown.open
|
|
454
|
+
this.mobileDropdown.open,
|
|
456
455
|
);
|
|
457
456
|
},
|
|
458
457
|
})}
|
|
@@ -479,7 +478,7 @@ export class SortFilterBar
|
|
|
479
478
|
displayName?: TemplateResult;
|
|
480
479
|
selected?: boolean;
|
|
481
480
|
onClick?: (e: Event) => void;
|
|
482
|
-
}
|
|
481
|
+
},
|
|
483
482
|
): TemplateResult {
|
|
484
483
|
const isSelected =
|
|
485
484
|
options?.selected ?? this.finalizedSortField === sortField;
|
|
@@ -759,7 +758,7 @@ export class SortFilterBar
|
|
|
759
758
|
/** Toggles the current sort direction between 'asc' and 'desc' */
|
|
760
759
|
private toggleSortDirection() {
|
|
761
760
|
this.setSortDirection(
|
|
762
|
-
this.finalizedSortDirection === 'desc' ? 'asc' : 'desc'
|
|
761
|
+
this.finalizedSortDirection === 'desc' ? 'asc' : 'desc',
|
|
763
762
|
);
|
|
764
763
|
}
|
|
765
764
|
|
|
@@ -896,14 +895,14 @@ export class SortFilterBar
|
|
|
896
895
|
}
|
|
897
896
|
|
|
898
897
|
private titleLetterChanged(
|
|
899
|
-
e: CustomEvent<{ selectedLetter: string | undefined }
|
|
898
|
+
e: CustomEvent<{ selectedLetter: string | undefined }>,
|
|
900
899
|
) {
|
|
901
900
|
this.selectedTitleFilter = e.detail.selectedLetter ?? null;
|
|
902
901
|
this.emitTitleLetterChangedEvent();
|
|
903
902
|
}
|
|
904
903
|
|
|
905
904
|
private creatorLetterChanged(
|
|
906
|
-
e: CustomEvent<{ selectedLetter: string | undefined }
|
|
905
|
+
e: CustomEvent<{ selectedLetter: string | undefined }>,
|
|
907
906
|
) {
|
|
908
907
|
this.selectedCreatorFilter = e.detail.selectedLetter ?? null;
|
|
909
908
|
this.emitCreatorLetterChangedEvent();
|
|
@@ -914,7 +913,7 @@ export class SortFilterBar
|
|
|
914
913
|
'titleLetterChanged',
|
|
915
914
|
{
|
|
916
915
|
detail: { selectedLetter: this.selectedTitleFilter },
|
|
917
|
-
}
|
|
916
|
+
},
|
|
918
917
|
);
|
|
919
918
|
this.dispatchEvent(event);
|
|
920
919
|
}
|
|
@@ -924,7 +923,7 @@ export class SortFilterBar
|
|
|
924
923
|
'creatorLetterChanged',
|
|
925
924
|
{
|
|
926
925
|
detail: { selectedLetter: this.selectedCreatorFilter },
|
|
927
|
-
}
|
|
926
|
+
},
|
|
928
927
|
);
|
|
929
928
|
this.dispatchEvent(event);
|
|
930
929
|
}
|
|
@@ -87,7 +87,7 @@ export class AccountTile extends BaseTileComponent {
|
|
|
87
87
|
e.preventDefault();
|
|
88
88
|
const event = new CustomEvent<{ x: number; y: number }>(
|
|
89
89
|
'infoButtonPressed',
|
|
90
|
-
{ detail: { x: e.clientX, y: e.clientY } }
|
|
90
|
+
{ detail: { x: e.clientX, y: e.clientY } },
|
|
91
91
|
);
|
|
92
92
|
this.dispatchEvent(event);
|
|
93
93
|
}
|
|
@@ -99,7 +99,7 @@ export class CollectionTile extends BaseTileComponent {
|
|
|
99
99
|
e.preventDefault();
|
|
100
100
|
const event = new CustomEvent<{ x: number; y: number }>(
|
|
101
101
|
'infoButtonPressed',
|
|
102
|
-
{ detail: { x: e.clientX, y: e.clientY } }
|
|
102
|
+
{ detail: { x: e.clientX, y: e.clientY } },
|
|
103
103
|
);
|
|
104
104
|
this.dispatchEvent(event);
|
|
105
105
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/* eslint-disable import/no-duplicates */
|
|
2
1
|
import { css, CSSResultGroup, html, nothing, TemplateResult } from 'lit';
|
|
3
2
|
import { customElement, property } from 'lit/decorators.js';
|
|
4
3
|
import { ifDefined } from 'lit/directives/if-defined.js';
|
|
@@ -202,12 +201,13 @@ export class ItemTile extends BaseTileComponent {
|
|
|
202
201
|
<ul class="capture-dates">
|
|
203
202
|
${map(
|
|
204
203
|
this.model.captureDates,
|
|
205
|
-
date =>
|
|
206
|
-
|
|
207
|
-
this.
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
204
|
+
date =>
|
|
205
|
+
html`<li>
|
|
206
|
+
${this.displayValueProvider.webArchivesCaptureLink(
|
|
207
|
+
this.model!.title,
|
|
208
|
+
date,
|
|
209
|
+
)}
|
|
210
|
+
</li>`,
|
|
211
211
|
)}
|
|
212
212
|
</ul>
|
|
213
213
|
`;
|
|
@@ -215,7 +215,7 @@ export class ItemTile extends BaseTileComponent {
|
|
|
215
215
|
|
|
216
216
|
private get isSortedByDate(): boolean {
|
|
217
217
|
return ['date', 'reviewdate', 'addeddate', 'publicdate'].includes(
|
|
218
|
-
this.effectiveSort?.field as string
|
|
218
|
+
this.effectiveSort?.field as string,
|
|
219
219
|
);
|
|
220
220
|
}
|
|
221
221
|
|
|
@@ -234,7 +234,7 @@ export class ItemTile extends BaseTileComponent {
|
|
|
234
234
|
e.preventDefault();
|
|
235
235
|
const event = new CustomEvent<{ x: number; y: number }>(
|
|
236
236
|
'infoButtonPressed',
|
|
237
|
-
{ detail: { x: e.clientX, y: e.clientY } }
|
|
237
|
+
{ detail: { x: e.clientX, y: e.clientY } },
|
|
238
238
|
);
|
|
239
239
|
this.dispatchEvent(event);
|
|
240
240
|
}
|
|
@@ -29,7 +29,7 @@ export class TileStats extends LitElement {
|
|
|
29
29
|
const formattedReviewCount = formatCount(
|
|
30
30
|
this.commentCount,
|
|
31
31
|
'short',
|
|
32
|
-
'short'
|
|
32
|
+
'short',
|
|
33
33
|
);
|
|
34
34
|
|
|
35
35
|
const uploadsOrViewsTitle =
|
|
@@ -57,10 +57,10 @@ export class TileStats extends LitElement {
|
|
|
57
57
|
</span>
|
|
58
58
|
${formatCount(
|
|
59
59
|
this.mediatype === 'account'
|
|
60
|
-
? this.itemCount ?? 0
|
|
61
|
-
: this.viewCount ?? 0,
|
|
60
|
+
? (this.itemCount ?? 0)
|
|
61
|
+
: (this.viewCount ?? 0),
|
|
62
|
+
'short',
|
|
62
63
|
'short',
|
|
63
|
-
'short'
|
|
64
64
|
)}
|
|
65
65
|
</p>
|
|
66
66
|
</li>
|
|
@@ -151,7 +151,7 @@ export class HoverPaneController implements HoverPaneControllerInterface {
|
|
|
151
151
|
HoverPaneProviderInterface &
|
|
152
152
|
HTMLElement,
|
|
153
153
|
/** Options for adjusting the hover pane behavior (offsets, delays, etc.) */
|
|
154
|
-
options: HoverPaneControllerOptions = {}
|
|
154
|
+
options: HoverPaneControllerOptions = {},
|
|
155
155
|
) {
|
|
156
156
|
this.mobileBreakpoint = options.mobileBreakpoint ?? this.mobileBreakpoint;
|
|
157
157
|
this.offsetX = options.offsetX ?? this.offsetX;
|
|
@@ -26,7 +26,7 @@ export class TileHoverPane extends LitElement {
|
|
|
26
26
|
|
|
27
27
|
@property({ type: Number }) mobileBreakpoint?: number;
|
|
28
28
|
|
|
29
|
-
@property({ type: Number }) currentWidth?:
|
|
29
|
+
@property({ type: Number }) currentWidth?: number;
|
|
30
30
|
|
|
31
31
|
@property({ type: Object })
|
|
32
32
|
collectionTitles?: CollectionTitles;
|
|
@@ -95,7 +95,9 @@ export class TileHoverPane extends LitElement {
|
|
|
95
95
|
visibility: hidden;
|
|
96
96
|
opacity: 0;
|
|
97
97
|
transform: translateY(8px);
|
|
98
|
-
transition:
|
|
98
|
+
transition:
|
|
99
|
+
opacity 0.1s ease-in,
|
|
100
|
+
transform 0.1s ease-in;
|
|
99
101
|
--image-width: auto;
|
|
100
102
|
}
|
|
101
103
|
|
package/src/tiles/item-image.ts
CHANGED
|
@@ -73,7 +73,7 @@ export class TileListCompact extends BaseTileComponent {
|
|
|
73
73
|
|
|
74
74
|
return this.displayValueProvider.itemPageUrl(
|
|
75
75
|
this.model.identifier,
|
|
76
|
-
this.model.mediatype === 'collection'
|
|
76
|
+
this.model.mediatype === 'collection',
|
|
77
77
|
);
|
|
78
78
|
}
|
|
79
79
|
|
|
@@ -155,7 +155,7 @@ export class TileListCompact extends BaseTileComponent {
|
|
|
155
155
|
|
|
156
156
|
private get isSortedByDate(): boolean {
|
|
157
157
|
return ['date', 'reviewdate', 'addeddate', 'publicdate'].includes(
|
|
158
|
-
this.effectiveSort?.field as string
|
|
158
|
+
this.effectiveSort?.field as string,
|
|
159
159
|
);
|
|
160
160
|
}
|
|
161
161
|
|
|
@@ -90,7 +90,7 @@ export class TileList extends BaseTileComponent {
|
|
|
90
90
|
const isCollection = this.model.mediatype === 'collection';
|
|
91
91
|
const href = this.displayValueProvider.itemPageUrl(
|
|
92
92
|
this.model.identifier,
|
|
93
|
-
isCollection
|
|
93
|
+
isCollection,
|
|
94
94
|
);
|
|
95
95
|
|
|
96
96
|
return html`<a href=${href}>
|
|
@@ -149,7 +149,7 @@ export class TileList extends BaseTileComponent {
|
|
|
149
149
|
: this.detailsLink(
|
|
150
150
|
this.model.identifier,
|
|
151
151
|
this.model.title,
|
|
152
|
-
this.model.mediatype === 'collection'
|
|
152
|
+
this.model.mediatype === 'collection',
|
|
153
153
|
);
|
|
154
154
|
}
|
|
155
155
|
|
|
@@ -203,7 +203,7 @@ export class TileList extends BaseTileComponent {
|
|
|
203
203
|
${this.labelTemplate(msg('By'))}
|
|
204
204
|
${join(
|
|
205
205
|
map(this.model.creators, id => this.searchLink('creator', id)),
|
|
206
|
-
', '
|
|
206
|
+
', ',
|
|
207
207
|
)}
|
|
208
208
|
</div>
|
|
209
209
|
`;
|
|
@@ -233,7 +233,7 @@ export class TileList extends BaseTileComponent {
|
|
|
233
233
|
) {
|
|
234
234
|
return this.metadataTemplate(
|
|
235
235
|
formatDate(this.date, 'long'),
|
|
236
|
-
this.displayValueProvider.dateLabel
|
|
236
|
+
this.displayValueProvider.dateLabel,
|
|
237
237
|
);
|
|
238
238
|
}
|
|
239
239
|
return nothing;
|
|
@@ -253,7 +253,7 @@ export class TileList extends BaseTileComponent {
|
|
|
253
253
|
|
|
254
254
|
return this.metadataTemplate(
|
|
255
255
|
`${formatCount(viewCount, this.formatSize)}`,
|
|
256
|
-
msg('Views')
|
|
256
|
+
msg('Views'),
|
|
257
257
|
);
|
|
258
258
|
}
|
|
259
259
|
|
|
@@ -274,7 +274,7 @@ export class TileList extends BaseTileComponent {
|
|
|
274
274
|
${this.labelTemplate(msg('Topics'))}
|
|
275
275
|
${join(
|
|
276
276
|
map(this.model.subjects, id => this.searchLink('subject', id)),
|
|
277
|
-
', '
|
|
277
|
+
', ',
|
|
278
278
|
)}
|
|
279
279
|
</div>
|
|
280
280
|
`;
|
|
@@ -296,10 +296,10 @@ export class TileList extends BaseTileComponent {
|
|
|
296
296
|
return this.metadataTemplate(
|
|
297
297
|
// Sanitize away any HTML tags and convert line breaks to spaces.
|
|
298
298
|
unsafeHTML(
|
|
299
|
-
DOMPurify.sanitize(this.model?.description?.replace(/\n/g, ' ') ?? '')
|
|
299
|
+
DOMPurify.sanitize(this.model?.description?.replace(/\n/g, ' ') ?? ''),
|
|
300
300
|
),
|
|
301
301
|
'',
|
|
302
|
-
'description'
|
|
302
|
+
'description',
|
|
303
303
|
);
|
|
304
304
|
}
|
|
305
305
|
|
|
@@ -340,19 +340,20 @@ export class TileList extends BaseTileComponent {
|
|
|
340
340
|
<ul class="capture-dates">
|
|
341
341
|
${map(
|
|
342
342
|
this.model.captureDates,
|
|
343
|
-
date =>
|
|
344
|
-
|
|
345
|
-
this.
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
343
|
+
date =>
|
|
344
|
+
html`<li>
|
|
345
|
+
${this.displayValueProvider.webArchivesCaptureLink(
|
|
346
|
+
this.model!.title,
|
|
347
|
+
date,
|
|
348
|
+
)}
|
|
349
|
+
</li>`,
|
|
349
350
|
)}
|
|
350
351
|
</ul>
|
|
351
352
|
`;
|
|
352
353
|
}
|
|
353
354
|
|
|
354
355
|
// Utility functions
|
|
355
|
-
// eslint-disable-next-line
|
|
356
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
356
357
|
private metadataTemplate(text: any, label = '', id?: string) {
|
|
357
358
|
if (!text) return nothing;
|
|
358
359
|
return html`
|
|
@@ -375,28 +376,25 @@ export class TileList extends BaseTileComponent {
|
|
|
375
376
|
const query = encodeURIComponent(`${field}:"${searchTerm}"`);
|
|
376
377
|
// No whitespace after closing tag
|
|
377
378
|
// Note: single ' for href='' to wrap " in query var gets changed back by yarn format
|
|
378
|
-
|
|
379
|
-
/* eslint-disable lit/no-invalid-html */
|
|
380
379
|
return html`<a
|
|
381
380
|
href="${this.baseNavigationUrl}/search?query=${query}"
|
|
382
381
|
rel="nofollow"
|
|
383
382
|
>
|
|
384
383
|
${DOMPurify.sanitize(searchTerm)}</a
|
|
385
384
|
>`;
|
|
386
|
-
/* eslint-enable lit/no-invalid-html */
|
|
387
385
|
}
|
|
388
386
|
|
|
389
387
|
private detailsLink(
|
|
390
388
|
identifier?: string,
|
|
391
389
|
text?: string,
|
|
392
|
-
isCollection = false
|
|
390
|
+
isCollection = false,
|
|
393
391
|
): TemplateResult | typeof nothing {
|
|
394
392
|
if (!identifier) return nothing;
|
|
395
393
|
|
|
396
394
|
const linkText = text ?? identifier;
|
|
397
395
|
const linkHref = this.displayValueProvider.itemPageUrl(
|
|
398
396
|
identifier,
|
|
399
|
-
isCollection
|
|
397
|
+
isCollection,
|
|
400
398
|
);
|
|
401
399
|
|
|
402
400
|
return html`<a href=${linkHref}> ${DOMPurify.sanitize(linkText)} </a>`;
|
|
@@ -417,7 +415,7 @@ export class TileList extends BaseTileComponent {
|
|
|
417
415
|
default:
|
|
418
416
|
return this.displayValueProvider.itemPageUrl(
|
|
419
417
|
this.model.mediatype,
|
|
420
|
-
true
|
|
418
|
+
true,
|
|
421
419
|
);
|
|
422
420
|
}
|
|
423
421
|
}
|
|
@@ -447,8 +445,8 @@ export class TileList extends BaseTileComponent {
|
|
|
447
445
|
this.detailsLink(
|
|
448
446
|
collection,
|
|
449
447
|
this.collectionTitles?.get(collection) ?? collection,
|
|
450
|
-
true
|
|
451
|
-
)
|
|
448
|
+
true,
|
|
449
|
+
),
|
|
452
450
|
);
|
|
453
451
|
}
|
|
454
452
|
}
|
|
@@ -664,7 +662,7 @@ export class TileList extends BaseTileComponent {
|
|
|
664
662
|
/*
|
|
665
663
|
* With the exception of the title line, allow these to wrap if
|
|
666
664
|
* the space becomes too small to accommodate them together.
|
|
667
|
-
*
|
|
665
|
+
*
|
|
668
666
|
* The title line is excluded because it contains the mediatype icon
|
|
669
667
|
* which we don't want to wrap.
|
|
670
668
|
*/
|
|
@@ -60,7 +60,7 @@ export class TileDispatcher
|
|
|
60
60
|
@property({ type: Boolean }) enableHoverPane = false;
|
|
61
61
|
|
|
62
62
|
@property({ type: String }) manageCheckTitle = msg(
|
|
63
|
-
'Remove this item from the list'
|
|
63
|
+
'Remove this item from the list',
|
|
64
64
|
);
|
|
65
65
|
|
|
66
66
|
private hoverPaneController?: HoverPaneControllerInterface;
|
|
@@ -155,7 +155,7 @@ export class TileDispatcher
|
|
|
155
155
|
|
|
156
156
|
return this.displayValueProvider.itemPageUrl(
|
|
157
157
|
this.model.identifier,
|
|
158
|
-
this.model.mediatype === 'collection'
|
|
158
|
+
this.model.mediatype === 'collection',
|
|
159
159
|
);
|
|
160
160
|
}
|
|
161
161
|
|
|
@@ -229,7 +229,7 @@ export class TileDispatcher
|
|
|
229
229
|
updated(props: PropertyValues) {
|
|
230
230
|
if (props.has('resizeObserver')) {
|
|
231
231
|
const previousObserver = props.get(
|
|
232
|
-
'resizeObserver'
|
|
232
|
+
'resizeObserver',
|
|
233
233
|
) as SharedResizeObserverInterface;
|
|
234
234
|
this.stopResizeObservation(previousObserver);
|
|
235
235
|
this.startResizeObservation();
|
|
@@ -247,7 +247,7 @@ export class TileDispatcher
|
|
|
247
247
|
}
|
|
248
248
|
|
|
249
249
|
this.dispatchEvent(
|
|
250
|
-
new CustomEvent('resultSelected', { detail: this.model })
|
|
250
|
+
new CustomEvent('resultSelected', { detail: this.model }),
|
|
251
251
|
);
|
|
252
252
|
}
|
|
253
253
|
|
|
@@ -263,7 +263,7 @@ export class TileDispatcher
|
|
|
263
263
|
}
|
|
264
264
|
|
|
265
265
|
private tileInfoButtonPressed(
|
|
266
|
-
e: CustomEvent<{ x: number; y: number }
|
|
266
|
+
e: CustomEvent<{ x: number; y: number }>,
|
|
267
267
|
): void {
|
|
268
268
|
this.hoverPaneController?.toggleHoverPane({
|
|
269
269
|
coords: e.detail,
|
|
@@ -26,7 +26,7 @@ export class TileDisplayValueProvider {
|
|
|
26
26
|
collectionPagePath?: string;
|
|
27
27
|
sortParam?: SortParam;
|
|
28
28
|
creatorFilter?: string;
|
|
29
|
-
} = {}
|
|
29
|
+
} = {},
|
|
30
30
|
) {
|
|
31
31
|
this.model = options.model;
|
|
32
32
|
this.baseNavigationUrl = options.baseNavigationUrl;
|
|
@@ -55,7 +55,7 @@ export class TileDisplayValueProvider {
|
|
|
55
55
|
.normalize('NFD')
|
|
56
56
|
.replace(/[^A-Z]+/gi, '')
|
|
57
57
|
.toUpperCase()
|
|
58
|
-
.startsWith(firstLetter)
|
|
58
|
+
.startsWith(firstLetter),
|
|
59
59
|
);
|
|
60
60
|
}
|
|
61
61
|
|
|
@@ -98,7 +98,7 @@ export class TileDisplayValueProvider {
|
|
|
98
98
|
*/
|
|
99
99
|
itemPageUrl(
|
|
100
100
|
identifier?: string,
|
|
101
|
-
isCollection = false
|
|
101
|
+
isCollection = false,
|
|
102
102
|
): string | typeof nothing {
|
|
103
103
|
if (!identifier || this.baseNavigationUrl == null) return nothing;
|
|
104
104
|
const basePath = isCollection ? this.collectionPagePath : '/details/';
|
|
@@ -115,7 +115,7 @@ export class TileDisplayValueProvider {
|
|
|
115
115
|
.replace(/[TZ:-]/g, '')
|
|
116
116
|
.replace(/\..*/, '');
|
|
117
117
|
const captureHref = `https://web.archive.org/web/${captureDateStr}/${encodeURIComponent(
|
|
118
|
-
url
|
|
118
|
+
url,
|
|
119
119
|
)}`;
|
|
120
120
|
const captureText = formatDate(date, 'long');
|
|
121
121
|
|