@internetarchive/collection-browser 3.0.7-alpha-webdev7989.0 → 3.1.1-alpha-webdev6778.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.
- package/dist/src/app-root.js +606 -606
- package/dist/src/app-root.js.map +1 -1
- package/dist/src/collection-browser.d.ts +9 -0
- package/dist/src/collection-browser.js +689 -682
- package/dist/src/collection-browser.js.map +1 -1
- package/dist/src/collection-facets/models.js.map +1 -1
- package/dist/src/collection-facets/more-facets-content.d.ts +1 -0
- package/dist/src/collection-facets/more-facets-content.js +122 -118
- package/dist/src/collection-facets/more-facets-content.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +75 -75
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +54 -54
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js.map +1 -1
- package/dist/src/collection-facets.d.ts +1 -0
- package/dist/src/collection-facets.js +269 -265
- 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 +27 -13
- package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
- package/dist/src/data-source/collection-browser-query-state.d.ts +1 -0
- package/dist/src/data-source/collection-browser-query-state.js.map +1 -1
- package/dist/src/data-source/models.d.ts +1 -1
- package/dist/src/data-source/models.js.map +1 -1
- package/dist/src/expanded-date-picker.js +52 -52
- package/dist/src/expanded-date-picker.js.map +1 -1
- package/dist/src/manage/manage-bar.js +77 -77
- package/dist/src/manage/manage-bar.js.map +1 -1
- package/dist/src/models.js.map +1 -1
- package/dist/src/sort-filter-bar/sort-filter-bar.js +376 -376
- package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
- package/dist/src/tiles/grid/collection-tile.js +77 -77
- package/dist/src/tiles/grid/collection-tile.js.map +1 -1
- package/dist/src/tiles/grid/item-tile.js +139 -139
- package/dist/src/tiles/grid/item-tile.js.map +1 -1
- package/dist/src/tiles/grid/search-tile.js +42 -42
- package/dist/src/tiles/grid/search-tile.js.map +1 -1
- package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +119 -119
- package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js.map +1 -1
- package/dist/src/tiles/list/tile-list.js +297 -297
- package/dist/src/tiles/list/tile-list.js.map +1 -1
- package/dist/src/tiles/tile-dispatcher.js +200 -200
- package/dist/src/tiles/tile-dispatcher.js.map +1 -1
- package/dist/src/utils/analytics-events.js.map +1 -1
- package/dist/test/collection-browser.test.js +196 -183
- package/dist/test/collection-browser.test.js.map +1 -1
- package/dist/test/sort-filter-bar/sort-filter-bar.test.js +37 -37
- package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +1 -1
- package/dist/test/tiles/list/tile-list.test.js +113 -113
- package/dist/test/tiles/list/tile-list.test.js.map +1 -1
- package/package.json +2 -2
- package/src/app-root.ts +1140 -1140
- package/src/collection-browser.ts +2802 -2788
- package/src/collection-facets/models.ts +10 -10
- package/src/collection-facets/more-facets-content.ts +639 -636
- package/src/collection-facets/smart-facets/smart-facet-bar.ts +437 -437
- package/src/collection-facets/smart-facets/smart-facet-dropdown.ts +185 -185
- package/src/collection-facets.ts +995 -992
- package/src/data-source/collection-browser-data-source-interface.ts +333 -333
- package/src/data-source/collection-browser-data-source.ts +1401 -1391
- package/src/data-source/collection-browser-query-state.ts +65 -64
- package/src/data-source/models.ts +1 -1
- package/src/expanded-date-picker.ts +191 -191
- package/src/manage/manage-bar.ts +247 -247
- package/src/models.ts +870 -870
- package/src/sort-filter-bar/sort-filter-bar.ts +1283 -1283
- package/src/tiles/grid/collection-tile.ts +162 -162
- package/src/tiles/grid/item-tile.ts +339 -339
- package/src/tiles/grid/search-tile.ts +90 -90
- package/src/tiles/grid/styles/tile-grid-shared-styles.ts +130 -130
- package/src/tiles/list/tile-list.ts +696 -696
- package/src/tiles/tile-dispatcher.ts +486 -486
- package/src/utils/analytics-events.ts +29 -29
- package/test/collection-browser.test.ts +2359 -2340
- package/test/sort-filter-bar/sort-filter-bar.test.ts +885 -885
- package/test/tiles/list/tile-list.test.ts +497 -497
|
@@ -358,32 +358,32 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
358
358
|
this.setPlaceholderType();
|
|
359
359
|
}
|
|
360
360
|
render() {
|
|
361
|
-
return html `
|
|
361
|
+
return html `
|
|
362
362
|
${this.showSmartFacetBar && this.placeholderType === null
|
|
363
|
-
? html `<smart-facet-bar
|
|
364
|
-
.query=${this.baseQuery}
|
|
365
|
-
.aggregations=${this.dataSource.aggregations}
|
|
366
|
-
.selectedFacets=${this.selectedFacets}
|
|
367
|
-
.collectionTitles=${this.dataSource.collectionTitles}
|
|
368
|
-
.filterToggleShown=${!this.mobileView}
|
|
369
|
-
.filterToggleActive=${this.facetPaneVisible}
|
|
370
|
-
.label=${this.smartFacetBarLabel}
|
|
371
|
-
@facetsChanged=${this.facetsChanged}
|
|
363
|
+
? html `<smart-facet-bar
|
|
364
|
+
.query=${this.baseQuery}
|
|
365
|
+
.aggregations=${this.dataSource.aggregations}
|
|
366
|
+
.selectedFacets=${this.selectedFacets}
|
|
367
|
+
.collectionTitles=${this.dataSource.collectionTitles}
|
|
368
|
+
.filterToggleShown=${!this.mobileView}
|
|
369
|
+
.filterToggleActive=${this.facetPaneVisible}
|
|
370
|
+
.label=${this.smartFacetBarLabel}
|
|
371
|
+
@facetsChanged=${this.facetsChanged}
|
|
372
372
|
@filtersToggled=${() => {
|
|
373
373
|
this.facetPaneVisible = !this.facetPaneVisible;
|
|
374
374
|
this.emitFacetPaneVisibilityChanged();
|
|
375
|
-
}}
|
|
375
|
+
}}
|
|
376
376
|
></smart-facet-bar>`
|
|
377
|
-
: nothing}
|
|
378
|
-
|
|
379
|
-
<div
|
|
380
|
-
id="content-container"
|
|
381
|
-
class=${this.mobileView ? 'mobile' : 'desktop'}
|
|
382
|
-
>
|
|
377
|
+
: nothing}
|
|
378
|
+
|
|
379
|
+
<div
|
|
380
|
+
id="content-container"
|
|
381
|
+
class=${this.mobileView ? 'mobile' : 'desktop'}
|
|
382
|
+
>
|
|
383
383
|
${this.placeholderType
|
|
384
384
|
? this.emptyPlaceholderTemplate
|
|
385
|
-
: this.collectionBrowserTemplate}
|
|
386
|
-
</div>
|
|
385
|
+
: this.collectionBrowserTemplate}
|
|
386
|
+
</div>
|
|
387
387
|
`;
|
|
388
388
|
}
|
|
389
389
|
/**
|
|
@@ -427,23 +427,23 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
427
427
|
*/
|
|
428
428
|
get emptyPlaceholderTemplate() {
|
|
429
429
|
var _a;
|
|
430
|
-
return html `
|
|
431
|
-
<empty-placeholder
|
|
432
|
-
.placeholderType=${this.placeholderType}
|
|
433
|
-
?isMobileView=${this.mobileView}
|
|
434
|
-
?isCollection=${!!this.withinCollection}
|
|
435
|
-
.detailMessage=${(_a = this.dataSource.queryErrorMessage) !== null && _a !== void 0 ? _a : ''}
|
|
436
|
-
.baseNavigationUrl=${this.baseNavigationUrl}
|
|
437
|
-
></empty-placeholder>
|
|
430
|
+
return html `
|
|
431
|
+
<empty-placeholder
|
|
432
|
+
.placeholderType=${this.placeholderType}
|
|
433
|
+
?isMobileView=${this.mobileView}
|
|
434
|
+
?isCollection=${!!this.withinCollection}
|
|
435
|
+
.detailMessage=${(_a = this.dataSource.queryErrorMessage) !== null && _a !== void 0 ? _a : ''}
|
|
436
|
+
.baseNavigationUrl=${this.baseNavigationUrl}
|
|
437
|
+
></empty-placeholder>
|
|
438
438
|
`;
|
|
439
439
|
}
|
|
440
440
|
/**
|
|
441
441
|
* Top-level template for rendering the left (facets) and right (results) columns.
|
|
442
442
|
*/
|
|
443
443
|
get collectionBrowserTemplate() {
|
|
444
|
-
return html `
|
|
445
|
-
<div id="left-column-scroll-sentinel"></div>
|
|
446
|
-
${this.leftColumnTemplate} ${this.rightColumnTemplate}
|
|
444
|
+
return html `
|
|
445
|
+
<div id="left-column-scroll-sentinel"></div>
|
|
446
|
+
${this.leftColumnTemplate} ${this.rightColumnTemplate}
|
|
447
447
|
`;
|
|
448
448
|
}
|
|
449
449
|
/**
|
|
@@ -462,33 +462,33 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
462
462
|
* accordion-style facets.
|
|
463
463
|
*/
|
|
464
464
|
get mobileLeftColumnTemplate() {
|
|
465
|
-
return html `
|
|
466
|
-
<div
|
|
467
|
-
id="left-column"
|
|
468
|
-
class="column${this.isResizeToMobile ? ' preload' : ''}"
|
|
469
|
-
>
|
|
470
|
-
${this.facetTopViewSlot} ${this.resultsCountTemplate}
|
|
471
|
-
<div id="facets-header-container">${this.mobileFacetsTemplate}</div>
|
|
472
|
-
</div>
|
|
465
|
+
return html `
|
|
466
|
+
<div
|
|
467
|
+
id="left-column"
|
|
468
|
+
class="column${this.isResizeToMobile ? ' preload' : ''}"
|
|
469
|
+
>
|
|
470
|
+
${this.facetTopViewSlot} ${this.resultsCountTemplate}
|
|
471
|
+
<div id="facets-header-container">${this.mobileFacetsTemplate}</div>
|
|
472
|
+
</div>
|
|
473
473
|
`;
|
|
474
474
|
}
|
|
475
475
|
/**
|
|
476
476
|
* Template for the desktop version of the left column, displaying the facets sidebar.
|
|
477
477
|
*/
|
|
478
478
|
get desktopLeftColumnTemplate() {
|
|
479
|
-
return html `
|
|
480
|
-
<div id="left-column" class="column" ?hidden=${!this.facetPaneVisible}>
|
|
481
|
-
${this.facetTopViewSlot}
|
|
482
|
-
<div id="facets-header-container">
|
|
483
|
-
<h2 id="facets-header" class="sr-only">${msg('Filters')}</h2>
|
|
484
|
-
${this.resultsCountTemplate} ${this.clearFiltersBtnTemplate(false)}
|
|
485
|
-
</div>
|
|
486
|
-
<div id="facets-container" aria-labelledby="facets-header">
|
|
487
|
-
${this.facetsTemplate}
|
|
488
|
-
<div id="facets-scroll-sentinel"></div>
|
|
489
|
-
</div>
|
|
490
|
-
<div id="facets-bottom-fade"></div>
|
|
491
|
-
</div>
|
|
479
|
+
return html `
|
|
480
|
+
<div id="left-column" class="column" ?hidden=${!this.facetPaneVisible}>
|
|
481
|
+
${this.facetTopViewSlot}
|
|
482
|
+
<div id="facets-header-container">
|
|
483
|
+
<h2 id="facets-header" class="sr-only">${msg('Filters')}</h2>
|
|
484
|
+
${this.resultsCountTemplate} ${this.clearFiltersBtnTemplate(false)}
|
|
485
|
+
</div>
|
|
486
|
+
<div id="facets-container" aria-labelledby="facets-header">
|
|
487
|
+
${this.facetsTemplate}
|
|
488
|
+
<div id="facets-scroll-sentinel"></div>
|
|
489
|
+
</div>
|
|
490
|
+
<div id="facets-bottom-fade"></div>
|
|
491
|
+
</div>
|
|
492
492
|
`;
|
|
493
493
|
}
|
|
494
494
|
/**
|
|
@@ -496,8 +496,8 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
496
496
|
* - mainly used to render userlists
|
|
497
497
|
*/
|
|
498
498
|
get facetTopViewSlot() {
|
|
499
|
-
return html `<div id="facet-top-view">
|
|
500
|
-
<slot name="facet-top-slot"></slot>
|
|
499
|
+
return html `<div id="facet-top-view">
|
|
500
|
+
<slot name="facet-top-slot"></slot>
|
|
501
501
|
</div>`;
|
|
502
502
|
}
|
|
503
503
|
/**
|
|
@@ -512,15 +512,15 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
512
512
|
const resultsCount = (_a = this.totalResults) === null || _a === void 0 ? void 0 : _a.toLocaleString();
|
|
513
513
|
const resultsLabel = this.totalResults === 1 ? 'Result' : 'Results';
|
|
514
514
|
// Added data-testid for Playwright testing
|
|
515
|
-
return html `
|
|
516
|
-
<div id="results-total" data-testid="results-total">
|
|
517
|
-
<span id="big-results-count">
|
|
518
|
-
${shouldShowSearching ? html `Searching…` : resultsCount}
|
|
519
|
-
</span>
|
|
520
|
-
<span id="big-results-label">
|
|
521
|
-
${shouldShowSearching ? nothing : resultsLabel}
|
|
522
|
-
</span>
|
|
523
|
-
</div>
|
|
515
|
+
return html `
|
|
516
|
+
<div id="results-total" data-testid="results-total">
|
|
517
|
+
<span id="big-results-count">
|
|
518
|
+
${shouldShowSearching ? html `Searching…` : resultsCount}
|
|
519
|
+
</span>
|
|
520
|
+
<span id="big-results-label">
|
|
521
|
+
${shouldShowSearching ? nothing : resultsLabel}
|
|
522
|
+
</span>
|
|
523
|
+
</div>
|
|
524
524
|
`;
|
|
525
525
|
}
|
|
526
526
|
/**
|
|
@@ -533,45 +533,45 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
533
533
|
'full-width': !this.facetPaneVisible,
|
|
534
534
|
'smart-results-spacing': !!this.showSmartResults,
|
|
535
535
|
});
|
|
536
|
-
return html `
|
|
537
|
-
<div id="right-column" class=${rightColumnClasses}>
|
|
536
|
+
return html `
|
|
537
|
+
<div id="right-column" class=${rightColumnClasses}>
|
|
538
538
|
${this.showSmartResults
|
|
539
539
|
? html `<slot name="smart-results"></slot>`
|
|
540
|
-
: nothing}
|
|
541
|
-
<section id="results">
|
|
542
|
-
<h2 class="results-section-heading">
|
|
543
|
-
<slot name="results-heading"></slot>
|
|
544
|
-
</h2>
|
|
545
|
-
<div id="cb-top-view">
|
|
546
|
-
<slot name="cb-top-slot"></slot>
|
|
547
|
-
</div>
|
|
540
|
+
: nothing}
|
|
541
|
+
<section id="results">
|
|
542
|
+
<h2 class="results-section-heading">
|
|
543
|
+
<slot name="results-heading"></slot>
|
|
544
|
+
</h2>
|
|
545
|
+
<div id="cb-top-view">
|
|
546
|
+
<slot name="cb-top-slot"></slot>
|
|
547
|
+
</div>
|
|
548
548
|
${this.isManageView
|
|
549
549
|
? this.manageBarTemplate
|
|
550
|
-
: this.sortFilterBarTemplate}
|
|
551
|
-
<slot name="cb-results"></slot>
|
|
550
|
+
: this.sortFilterBarTemplate}
|
|
551
|
+
<slot name="cb-results"></slot>
|
|
552
552
|
${this.displayMode === `list-compact` && this.totalResults
|
|
553
553
|
? this.listHeaderTemplate
|
|
554
|
-
: nothing}
|
|
555
|
-
${this.suppressResultTiles ? nothing : this.infiniteScrollerTemplate}
|
|
556
|
-
</section>
|
|
557
|
-
</div>
|
|
554
|
+
: nothing}
|
|
555
|
+
${this.suppressResultTiles ? nothing : this.infiniteScrollerTemplate}
|
|
556
|
+
</section>
|
|
557
|
+
</div>
|
|
558
558
|
`;
|
|
559
559
|
}
|
|
560
560
|
/**
|
|
561
561
|
* Template for the infinite scroller widget that contains the result tiles.
|
|
562
562
|
*/
|
|
563
563
|
get infiniteScrollerTemplate() {
|
|
564
|
-
return html `<infinite-scroller
|
|
565
|
-
class=${this.infiniteScrollerClasses}
|
|
566
|
-
itemCount=${this.placeholderType ? 0 : nothing}
|
|
567
|
-
ariaLandmarkLabel="Search results"
|
|
568
|
-
.cellProvider=${this}
|
|
569
|
-
.placeholderCellTemplate=${this.placeholderCellTemplate}
|
|
570
|
-
@scrollThresholdReached=${this.scrollThresholdReached}
|
|
571
|
-
@visibleCellsChanged=${this.visibleCellsChanged}
|
|
564
|
+
return html `<infinite-scroller
|
|
565
|
+
class=${this.infiniteScrollerClasses}
|
|
566
|
+
itemCount=${this.placeholderType ? 0 : nothing}
|
|
567
|
+
ariaLandmarkLabel="Search results"
|
|
568
|
+
.cellProvider=${this}
|
|
569
|
+
.placeholderCellTemplate=${this.placeholderCellTemplate}
|
|
570
|
+
@scrollThresholdReached=${this.scrollThresholdReached}
|
|
571
|
+
@visibleCellsChanged=${this.visibleCellsChanged}
|
|
572
572
|
>${this.displayMode === 'grid'
|
|
573
573
|
? html `<slot name="result-last-tile" slot="result-last-tile"></slot>`
|
|
574
|
-
: nothing}
|
|
574
|
+
: nothing}
|
|
575
575
|
</infinite-scroller>`;
|
|
576
576
|
}
|
|
577
577
|
/**
|
|
@@ -612,32 +612,32 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
612
612
|
}
|
|
613
613
|
// We only show relevance sort if a search query is currently defined
|
|
614
614
|
sortFieldAvailability.relevance = this.isRelevanceSortAvailable;
|
|
615
|
-
return html `
|
|
616
|
-
<sort-filter-bar
|
|
617
|
-
.defaultSortField=${this.defaultSortField}
|
|
618
|
-
.defaultSortDirection=${this.defaultSortDirection}
|
|
619
|
-
.defaultViewSort=${defaultViewSort}
|
|
620
|
-
.defaultDateSort=${defaultDateSort}
|
|
621
|
-
.selectedSort=${this.selectedSort}
|
|
622
|
-
.sortDirection=${this.sortDirection}
|
|
623
|
-
.sortFieldAvailability=${sortFieldAvailability}
|
|
624
|
-
.displayMode=${this.displayMode}
|
|
625
|
-
.selectedTitleFilter=${this.selectedTitleFilter}
|
|
626
|
-
.selectedCreatorFilter=${this.selectedCreatorFilter}
|
|
627
|
-
.prefixFilterCountMap=${this.dataSource.prefixFilterCountMap}
|
|
628
|
-
.resizeObserver=${this.resizeObserver}
|
|
629
|
-
.enableSortOptionsSlot=${this.enableSortOptionsSlot}
|
|
630
|
-
.suppressDisplayModes=${this.suppressDisplayModes}
|
|
631
|
-
@sortChanged=${this.userChangedSort}
|
|
632
|
-
@displayModeChanged=${this.displayModeChanged}
|
|
633
|
-
@titleLetterChanged=${this.titleLetterSelected}
|
|
634
|
-
@creatorLetterChanged=${this.creatorLetterSelected}
|
|
635
|
-
>
|
|
636
|
-
${this.tileBlurCheckboxTemplate}
|
|
637
|
-
<slot name="sort-options-left" slot="sort-options-left"></slot>
|
|
638
|
-
<slot name="sort-options" slot="sort-options"></slot>
|
|
639
|
-
<slot name="sort-options-right" slot="sort-options-right"></slot>
|
|
640
|
-
</sort-filter-bar>
|
|
615
|
+
return html `
|
|
616
|
+
<sort-filter-bar
|
|
617
|
+
.defaultSortField=${this.defaultSortField}
|
|
618
|
+
.defaultSortDirection=${this.defaultSortDirection}
|
|
619
|
+
.defaultViewSort=${defaultViewSort}
|
|
620
|
+
.defaultDateSort=${defaultDateSort}
|
|
621
|
+
.selectedSort=${this.selectedSort}
|
|
622
|
+
.sortDirection=${this.sortDirection}
|
|
623
|
+
.sortFieldAvailability=${sortFieldAvailability}
|
|
624
|
+
.displayMode=${this.displayMode}
|
|
625
|
+
.selectedTitleFilter=${this.selectedTitleFilter}
|
|
626
|
+
.selectedCreatorFilter=${this.selectedCreatorFilter}
|
|
627
|
+
.prefixFilterCountMap=${this.dataSource.prefixFilterCountMap}
|
|
628
|
+
.resizeObserver=${this.resizeObserver}
|
|
629
|
+
.enableSortOptionsSlot=${this.enableSortOptionsSlot}
|
|
630
|
+
.suppressDisplayModes=${this.suppressDisplayModes}
|
|
631
|
+
@sortChanged=${this.userChangedSort}
|
|
632
|
+
@displayModeChanged=${this.displayModeChanged}
|
|
633
|
+
@titleLetterChanged=${this.titleLetterSelected}
|
|
634
|
+
@creatorLetterChanged=${this.creatorLetterSelected}
|
|
635
|
+
>
|
|
636
|
+
${this.tileBlurCheckboxTemplate}
|
|
637
|
+
<slot name="sort-options-left" slot="sort-options-left"></slot>
|
|
638
|
+
<slot name="sort-options" slot="sort-options"></slot>
|
|
639
|
+
<slot name="sort-options-right" slot="sort-options-right"></slot>
|
|
640
|
+
</sort-filter-bar>
|
|
641
641
|
`;
|
|
642
642
|
}
|
|
643
643
|
/**
|
|
@@ -649,20 +649,20 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
649
649
|
// Only show the checkbox for @archive.org users
|
|
650
650
|
if (!((_a = this.dataSource.sessionContext) === null || _a === void 0 ? void 0 : _a.is_archive_user))
|
|
651
651
|
return nothing;
|
|
652
|
-
return html `
|
|
653
|
-
<label
|
|
654
|
-
id="tile-blur-label"
|
|
655
|
-
for="tile-blur-check"
|
|
656
|
-
slot="sort-options-right"
|
|
657
|
-
>
|
|
658
|
-
${msg('Blurring')}
|
|
659
|
-
<input
|
|
660
|
-
id="tile-blur-check"
|
|
661
|
-
type="checkbox"
|
|
662
|
-
?checked=${!this.shouldSuppressTileBlurring}
|
|
663
|
-
@change=${this.tileBlurCheckboxChanged}
|
|
664
|
-
/>
|
|
665
|
-
</label>
|
|
652
|
+
return html `
|
|
653
|
+
<label
|
|
654
|
+
id="tile-blur-label"
|
|
655
|
+
for="tile-blur-check"
|
|
656
|
+
slot="sort-options-right"
|
|
657
|
+
>
|
|
658
|
+
${msg('Blurring')}
|
|
659
|
+
<input
|
|
660
|
+
id="tile-blur-check"
|
|
661
|
+
type="checkbox"
|
|
662
|
+
?checked=${!this.shouldSuppressTileBlurring}
|
|
663
|
+
@change=${this.tileBlurCheckboxChanged}
|
|
664
|
+
/>
|
|
665
|
+
</label>
|
|
666
666
|
`;
|
|
667
667
|
}
|
|
668
668
|
/**
|
|
@@ -688,27 +688,27 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
688
688
|
* showing the management view. This generally replaces the sort bar when present.
|
|
689
689
|
*/
|
|
690
690
|
get manageBarTemplate() {
|
|
691
|
-
return html `
|
|
692
|
-
<manage-bar
|
|
693
|
-
.label=${this.manageViewLabel}
|
|
694
|
-
.modalManager=${this.modalManager}
|
|
695
|
-
.selectedItems=${this.dataSource.checkedTileModels}
|
|
696
|
-
.manageViewModalMsg=${this.manageViewModalMsg}
|
|
697
|
-
showSelectAll
|
|
698
|
-
showUnselectAll
|
|
699
|
-
?showItemManageButton=${this.pageContext === 'search'}
|
|
700
|
-
?removeAllowed=${this.dataSource.checkedTileModels.length !== 0}
|
|
701
|
-
@removeItems=${this.handleRemoveItems}
|
|
702
|
-
@manageItems=${this.handleManageItems}
|
|
703
|
-
@selectAll=${() => this.dataSource.checkAllTiles()}
|
|
704
|
-
@unselectAll=${() => this.dataSource.uncheckAllTiles()}
|
|
691
|
+
return html `
|
|
692
|
+
<manage-bar
|
|
693
|
+
.label=${this.manageViewLabel}
|
|
694
|
+
.modalManager=${this.modalManager}
|
|
695
|
+
.selectedItems=${this.dataSource.checkedTileModels}
|
|
696
|
+
.manageViewModalMsg=${this.manageViewModalMsg}
|
|
697
|
+
showSelectAll
|
|
698
|
+
showUnselectAll
|
|
699
|
+
?showItemManageButton=${this.pageContext === 'search'}
|
|
700
|
+
?removeAllowed=${this.dataSource.checkedTileModels.length !== 0}
|
|
701
|
+
@removeItems=${this.handleRemoveItems}
|
|
702
|
+
@manageItems=${this.handleManageItems}
|
|
703
|
+
@selectAll=${() => this.dataSource.checkAllTiles()}
|
|
704
|
+
@unselectAll=${() => this.dataSource.uncheckAllTiles()}
|
|
705
705
|
@cancel=${() => {
|
|
706
706
|
this.isManageView = false;
|
|
707
707
|
this.dataSource.uncheckAllTiles();
|
|
708
708
|
if (this.searchResultsLoading)
|
|
709
709
|
this.dataSource.resetPages();
|
|
710
|
-
}}
|
|
711
|
-
></manage-bar>
|
|
710
|
+
}}
|
|
711
|
+
></manage-bar>
|
|
712
712
|
`;
|
|
713
713
|
}
|
|
714
714
|
/**
|
|
@@ -956,15 +956,15 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
956
956
|
label: target.open ? 'open' : 'closed',
|
|
957
957
|
});
|
|
958
958
|
};
|
|
959
|
-
return html `
|
|
960
|
-
<details id="mobile-filter-collapse" @toggle=${toggleFacetsVisible}>
|
|
961
|
-
<summary>
|
|
962
|
-
<span class="collapser-icon">${chevronIcon}</span>
|
|
963
|
-
<h2>${msg('Filters')}</h2>
|
|
964
|
-
${this.clearFiltersBtnTemplate(true)}
|
|
965
|
-
</summary>
|
|
966
|
-
${this.facetsTemplate}
|
|
967
|
-
</details>
|
|
959
|
+
return html `
|
|
960
|
+
<details id="mobile-filter-collapse" @toggle=${toggleFacetsVisible}>
|
|
961
|
+
<summary>
|
|
962
|
+
<span class="collapser-icon">${chevronIcon}</span>
|
|
963
|
+
<h2>${msg('Filters')}</h2>
|
|
964
|
+
${this.clearFiltersBtnTemplate(true)}
|
|
965
|
+
</summary>
|
|
966
|
+
${this.facetsTemplate}
|
|
967
|
+
</details>
|
|
968
968
|
`;
|
|
969
969
|
}
|
|
970
970
|
/**
|
|
@@ -974,10 +974,10 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
974
974
|
if (FACETLESS_PAGE_ELEMENTS.includes(this.profileElement))
|
|
975
975
|
return nothing;
|
|
976
976
|
if (this.facetLoadStrategy === 'off') {
|
|
977
|
-
return html `
|
|
978
|
-
<p class="facets-message">
|
|
979
|
-
${msg('Facets are temporarily unavailable.')}
|
|
980
|
-
</p>
|
|
977
|
+
return html `
|
|
978
|
+
<p class="facets-message">
|
|
979
|
+
${msg('Facets are temporarily unavailable.')}
|
|
980
|
+
</p>
|
|
981
981
|
`;
|
|
982
982
|
}
|
|
983
983
|
// We switch to TV facet ordering & date picker if we are in a TV collection or showing TV search results
|
|
@@ -986,44 +986,45 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
986
986
|
const facetDisplayOrder = shouldUseTvInterface
|
|
987
987
|
? tvFacetDisplayOrder
|
|
988
988
|
: defaultFacetDisplayOrder;
|
|
989
|
-
const facets = html `
|
|
990
|
-
<collection-facets
|
|
991
|
-
.collectionPagePath=${this.collectionPagePath}
|
|
992
|
-
.parentCollections=${this.dataSource.parentCollections}
|
|
993
|
-
.pageSpecifierParams=${this.dataSource.pageSpecifierParams}
|
|
994
|
-
.searchService=${this.searchService}
|
|
995
|
-
.featureFeedbackService=${this.featureFeedbackService}
|
|
996
|
-
.recaptchaManager=${this.recaptchaManager}
|
|
997
|
-
.resizeObserver=${this.resizeObserver}
|
|
998
|
-
.searchType=${this.searchType}
|
|
999
|
-
.aggregations=${this.dataSource.aggregations}
|
|
1000
|
-
.histogramAggregation=${this.dataSource.histogramAggregation}
|
|
1001
|
-
.minSelectedDate=${this.minSelectedDate}
|
|
1002
|
-
.maxSelectedDate=${this.maxSelectedDate}
|
|
1003
|
-
.selectedFacets=${this.selectedFacets}
|
|
1004
|
-
.baseNavigationUrl=${this.baseNavigationUrl}
|
|
1005
|
-
.collectionTitles=${this.dataSource.collectionTitles}
|
|
1006
|
-
.tvChannelAliases=${this.dataSource.tvChannelAliases}
|
|
1007
|
-
.showHistogramDatePicker=${this.showHistogramDatePicker}
|
|
1008
|
-
.allowExpandingDatePicker=${!this.mobileView}
|
|
1009
|
-
.allowDatePickerMonths=${shouldUseTvInterface}
|
|
1010
|
-
.contentWidth=${this.contentWidth}
|
|
1011
|
-
.query=${this.baseQuery}
|
|
1012
|
-
.
|
|
1013
|
-
.
|
|
1014
|
-
.
|
|
1015
|
-
.
|
|
1016
|
-
.
|
|
1017
|
-
.
|
|
1018
|
-
|
|
1019
|
-
?
|
|
1020
|
-
?
|
|
1021
|
-
?
|
|
1022
|
-
|
|
1023
|
-
@
|
|
1024
|
-
@
|
|
1025
|
-
|
|
1026
|
-
|
|
989
|
+
const facets = html `
|
|
990
|
+
<collection-facets
|
|
991
|
+
.collectionPagePath=${this.collectionPagePath}
|
|
992
|
+
.parentCollections=${this.dataSource.parentCollections}
|
|
993
|
+
.pageSpecifierParams=${this.dataSource.pageSpecifierParams}
|
|
994
|
+
.searchService=${this.searchService}
|
|
995
|
+
.featureFeedbackService=${this.featureFeedbackService}
|
|
996
|
+
.recaptchaManager=${this.recaptchaManager}
|
|
997
|
+
.resizeObserver=${this.resizeObserver}
|
|
998
|
+
.searchType=${this.searchType}
|
|
999
|
+
.aggregations=${this.dataSource.aggregations}
|
|
1000
|
+
.histogramAggregation=${this.dataSource.histogramAggregation}
|
|
1001
|
+
.minSelectedDate=${this.minSelectedDate}
|
|
1002
|
+
.maxSelectedDate=${this.maxSelectedDate}
|
|
1003
|
+
.selectedFacets=${this.selectedFacets}
|
|
1004
|
+
.baseNavigationUrl=${this.baseNavigationUrl}
|
|
1005
|
+
.collectionTitles=${this.dataSource.collectionTitles}
|
|
1006
|
+
.tvChannelAliases=${this.dataSource.tvChannelAliases}
|
|
1007
|
+
.showHistogramDatePicker=${this.showHistogramDatePicker}
|
|
1008
|
+
.allowExpandingDatePicker=${!this.mobileView}
|
|
1009
|
+
.allowDatePickerMonths=${shouldUseTvInterface}
|
|
1010
|
+
.contentWidth=${this.contentWidth}
|
|
1011
|
+
.query=${this.baseQuery}
|
|
1012
|
+
.identifiers=${this.identifiers}
|
|
1013
|
+
.filterMap=${this.dataSource.filterMap}
|
|
1014
|
+
.isManageView=${this.isManageView}
|
|
1015
|
+
.modalManager=${this.modalManager}
|
|
1016
|
+
.analyticsHandler=${this.analyticsHandler}
|
|
1017
|
+
.facetDisplayOrder=${facetDisplayOrder}
|
|
1018
|
+
.isTvSearch=${shouldUseTvInterface}
|
|
1019
|
+
?collapsableFacets=${this.mobileView}
|
|
1020
|
+
?facetsLoading=${this.facetsLoading}
|
|
1021
|
+
?histogramAggregationLoading=${this.facetsLoading}
|
|
1022
|
+
?suppressMediatypeFacets=${this.suppressMediatypeFacets}
|
|
1023
|
+
@facetClick=${this.facetClickHandler}
|
|
1024
|
+
@facetsChanged=${this.facetsChanged}
|
|
1025
|
+
@histogramDateRangeUpdated=${this.histogramDateRangeUpdated}
|
|
1026
|
+
>
|
|
1027
|
+
</collection-facets>
|
|
1027
1028
|
`;
|
|
1028
1029
|
// If we are using one of the opt-in facet load strategies, we may need to wrap the
|
|
1029
1030
|
// desktop view facets in a <details> widget so that patrons can opt into loading them.
|
|
@@ -1031,20 +1032,20 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
1031
1032
|
const showDesktopOptInWidget = this.facetLoadStrategy === 'opt-in' ||
|
|
1032
1033
|
(this.facetLoadStrategy === 'opt-in-or-login' && !this.loggedIn);
|
|
1033
1034
|
if (showDesktopOptInWidget && !this.mobileView) {
|
|
1034
|
-
return html `
|
|
1035
|
-
<details
|
|
1036
|
-
class="desktop-facets-dropdown"
|
|
1035
|
+
return html `
|
|
1036
|
+
<details
|
|
1037
|
+
class="desktop-facets-dropdown"
|
|
1037
1038
|
@toggle=${(e) => {
|
|
1038
1039
|
const target = e.target;
|
|
1039
1040
|
this.collapsibleFacetsVisible = target.open;
|
|
1040
|
-
}}
|
|
1041
|
-
>
|
|
1042
|
-
<summary>
|
|
1043
|
-
<span class="collapser-icon">${chevronIcon}</span>
|
|
1044
|
-
<h2>${msg('Filters')}</h2>
|
|
1045
|
-
</summary>
|
|
1046
|
-
${facets}
|
|
1047
|
-
</details>
|
|
1041
|
+
}}
|
|
1042
|
+
>
|
|
1043
|
+
<summary>
|
|
1044
|
+
<span class="collapser-icon">${chevronIcon}</span>
|
|
1045
|
+
<h2>${msg('Filters')}</h2>
|
|
1046
|
+
</summary>
|
|
1047
|
+
${facets}
|
|
1048
|
+
</details>
|
|
1048
1049
|
`;
|
|
1049
1050
|
}
|
|
1050
1051
|
// Otherwise, just render the facets component bare
|
|
@@ -1064,34 +1065,34 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
1064
1065
|
mobile,
|
|
1065
1066
|
});
|
|
1066
1067
|
const buttonText = mobile ? 'Clear all' : 'Clear all filters';
|
|
1067
|
-
return html `
|
|
1068
|
-
<div class="clear-filters-btn-row">
|
|
1068
|
+
return html `
|
|
1069
|
+
<div class="clear-filters-btn-row">
|
|
1069
1070
|
${mobile
|
|
1070
1071
|
? html `<span class="clear-filters-btn-separator"> </span>`
|
|
1071
|
-
: nothing}
|
|
1072
|
-
<button class=${buttonClasses} @click=${this.clearFilters}>
|
|
1073
|
-
${buttonText}
|
|
1074
|
-
</button>
|
|
1075
|
-
</div>
|
|
1072
|
+
: nothing}
|
|
1073
|
+
<button class=${buttonClasses} @click=${this.clearFilters}>
|
|
1074
|
+
${buttonText}
|
|
1075
|
+
</button>
|
|
1076
|
+
</div>
|
|
1076
1077
|
`;
|
|
1077
1078
|
}
|
|
1078
1079
|
/**
|
|
1079
1080
|
* Template for the table header content that appears atop the compact list view.
|
|
1080
1081
|
*/
|
|
1081
1082
|
get listHeaderTemplate() {
|
|
1082
|
-
return html `
|
|
1083
|
-
<div id="list-header">
|
|
1084
|
-
<tile-dispatcher
|
|
1085
|
-
.tileDisplayMode=${'list-header'}
|
|
1086
|
-
.resizeObserver=${this.resizeObserver}
|
|
1087
|
-
.sortParam=${this.sortParam}
|
|
1088
|
-
.defaultSortParam=${this.defaultSortParam}
|
|
1089
|
-
.mobileBreakpoint=${this.mobileBreakpoint}
|
|
1090
|
-
.loggedIn=${this.loggedIn}
|
|
1091
|
-
.suppressBlurring=${this.shouldSuppressTileBlurring}
|
|
1092
|
-
>
|
|
1093
|
-
</tile-dispatcher>
|
|
1094
|
-
</div>
|
|
1083
|
+
return html `
|
|
1084
|
+
<div id="list-header">
|
|
1085
|
+
<tile-dispatcher
|
|
1086
|
+
.tileDisplayMode=${'list-header'}
|
|
1087
|
+
.resizeObserver=${this.resizeObserver}
|
|
1088
|
+
.sortParam=${this.sortParam}
|
|
1089
|
+
.defaultSortParam=${this.defaultSortParam}
|
|
1090
|
+
.mobileBreakpoint=${this.mobileBreakpoint}
|
|
1091
|
+
.loggedIn=${this.loggedIn}
|
|
1092
|
+
.suppressBlurring=${this.shouldSuppressTileBlurring}
|
|
1093
|
+
>
|
|
1094
|
+
</tile-dispatcher>
|
|
1095
|
+
</div>
|
|
1095
1096
|
`;
|
|
1096
1097
|
}
|
|
1097
1098
|
/**
|
|
@@ -1220,6 +1221,7 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
1220
1221
|
(_a = this.infiniteScroller) === null || _a === void 0 ? void 0 : _a.reload();
|
|
1221
1222
|
}
|
|
1222
1223
|
if (changed.has('baseQuery') ||
|
|
1224
|
+
changed.has('identifiers') ||
|
|
1223
1225
|
changed.has('searchType') ||
|
|
1224
1226
|
changed.has('withinCollection')) {
|
|
1225
1227
|
// Unless this query/search type update is from the initial page load or the
|
|
@@ -1256,6 +1258,7 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
1256
1258
|
this.persistState();
|
|
1257
1259
|
}
|
|
1258
1260
|
if (changed.has('baseQuery') ||
|
|
1261
|
+
changed.has('identifiers') ||
|
|
1259
1262
|
changed.has('minSelectedDate') ||
|
|
1260
1263
|
changed.has('maxSelectedDate') ||
|
|
1261
1264
|
changed.has('selectedFacets') ||
|
|
@@ -1278,6 +1281,7 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
1278
1281
|
}
|
|
1279
1282
|
this.updateFacetReadiness();
|
|
1280
1283
|
if (changed.has('baseQuery') ||
|
|
1284
|
+
changed.has('identifiers') ||
|
|
1281
1285
|
changed.has('searchType') ||
|
|
1282
1286
|
changed.has('selectedTitleFilter') ||
|
|
1283
1287
|
changed.has('selectedCreatorFilter') ||
|
|
@@ -1459,7 +1463,7 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
1459
1463
|
*/
|
|
1460
1464
|
emitSearchError() {
|
|
1461
1465
|
this.dispatchEvent(new CustomEvent('searchError', {
|
|
1462
|
-
detail: this.dataSource.queryErrorMessage
|
|
1466
|
+
detail: this.dataSource.queryErrorMessage,
|
|
1463
1467
|
}));
|
|
1464
1468
|
}
|
|
1465
1469
|
/**
|
|
@@ -1829,27 +1833,27 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
1829
1833
|
const model = this.tileModelAtCellIndex(index);
|
|
1830
1834
|
if (!model)
|
|
1831
1835
|
return undefined;
|
|
1832
|
-
return html `
|
|
1833
|
-
<tile-dispatcher
|
|
1834
|
-
.collectionPagePath=${this.collectionPagePath}
|
|
1835
|
-
.baseNavigationUrl=${this.baseNavigationUrl}
|
|
1836
|
-
.baseImageUrl=${this.baseImageUrl}
|
|
1837
|
-
.model=${model}
|
|
1838
|
-
.tileDisplayMode=${this.displayMode}
|
|
1839
|
-
.resizeObserver=${this.resizeObserver}
|
|
1840
|
-
.collectionTitles=${this.dataSource.collectionTitles}
|
|
1841
|
-
.sortParam=${this.sortParam}
|
|
1842
|
-
.defaultSortParam=${this.defaultSortParam}
|
|
1843
|
-
.creatorFilter=${this.selectedCreatorFilter}
|
|
1844
|
-
.mobileBreakpoint=${this.mobileBreakpoint}
|
|
1845
|
-
.loggedIn=${this.loggedIn}
|
|
1846
|
-
.suppressBlurring=${this.shouldSuppressTileBlurring}
|
|
1847
|
-
.isManageView=${this.isManageView}
|
|
1848
|
-
?showTvClips=${this.isTVCollection || this.searchType === SearchType.TV}
|
|
1849
|
-
?enableHoverPane=${true}
|
|
1850
|
-
@resultSelected=${(e) => this.resultSelected(e)}
|
|
1851
|
-
>
|
|
1852
|
-
</tile-dispatcher>
|
|
1836
|
+
return html `
|
|
1837
|
+
<tile-dispatcher
|
|
1838
|
+
.collectionPagePath=${this.collectionPagePath}
|
|
1839
|
+
.baseNavigationUrl=${this.baseNavigationUrl}
|
|
1840
|
+
.baseImageUrl=${this.baseImageUrl}
|
|
1841
|
+
.model=${model}
|
|
1842
|
+
.tileDisplayMode=${this.displayMode}
|
|
1843
|
+
.resizeObserver=${this.resizeObserver}
|
|
1844
|
+
.collectionTitles=${this.dataSource.collectionTitles}
|
|
1845
|
+
.sortParam=${this.sortParam}
|
|
1846
|
+
.defaultSortParam=${this.defaultSortParam}
|
|
1847
|
+
.creatorFilter=${this.selectedCreatorFilter}
|
|
1848
|
+
.mobileBreakpoint=${this.mobileBreakpoint}
|
|
1849
|
+
.loggedIn=${this.loggedIn}
|
|
1850
|
+
.suppressBlurring=${this.shouldSuppressTileBlurring}
|
|
1851
|
+
.isManageView=${this.isManageView}
|
|
1852
|
+
?showTvClips=${this.isTVCollection || this.searchType === SearchType.TV}
|
|
1853
|
+
?enableHoverPane=${true}
|
|
1854
|
+
@resultSelected=${(e) => this.resultSelected(e)}
|
|
1855
|
+
>
|
|
1856
|
+
</tile-dispatcher>
|
|
1853
1857
|
`;
|
|
1854
1858
|
}
|
|
1855
1859
|
/**
|
|
@@ -1885,441 +1889,441 @@ let CollectionBrowser = class CollectionBrowser extends LitElement {
|
|
|
1885
1889
|
static get styles() {
|
|
1886
1890
|
return [
|
|
1887
1891
|
srOnlyStyle,
|
|
1888
|
-
css `
|
|
1889
|
-
:host {
|
|
1890
|
-
display: block;
|
|
1891
|
-
--leftColumnWidth: 18rem;
|
|
1892
|
-
--leftColumnPaddingTop: 2rem;
|
|
1893
|
-
--leftColumnPaddingRight: 2.5rem;
|
|
1894
|
-
}
|
|
1895
|
-
|
|
1896
|
-
#facet-top-view {
|
|
1897
|
-
display: flex;
|
|
1898
|
-
}
|
|
1899
|
-
|
|
1900
|
-
/**
|
|
1901
|
-
* When page width resizes from desktop to mobile, use this class to
|
|
1902
|
-
* disable expand/collapse transition when loading.
|
|
1903
|
-
*/
|
|
1904
|
-
.preload * {
|
|
1905
|
-
transition: none !important;
|
|
1906
|
-
-webkit-transition: none !important;
|
|
1907
|
-
-moz-transition: none !important;
|
|
1908
|
-
-ms-transition: none !important;
|
|
1909
|
-
-o-transition: none !important;
|
|
1910
|
-
}
|
|
1911
|
-
|
|
1912
|
-
#content-container {
|
|
1913
|
-
display: flex;
|
|
1914
|
-
}
|
|
1915
|
-
|
|
1916
|
-
empty-placeholder {
|
|
1917
|
-
margin-top: var(--placeholderMarginTop, 0);
|
|
1918
|
-
}
|
|
1919
|
-
|
|
1920
|
-
.collapser-icon {
|
|
1921
|
-
display: inline-block;
|
|
1922
|
-
}
|
|
1923
|
-
|
|
1924
|
-
.collapser-icon svg {
|
|
1925
|
-
display: inline-block;
|
|
1926
|
-
width: 12px;
|
|
1927
|
-
height: 12px;
|
|
1928
|
-
transition: transform 0.2s ease-out;
|
|
1929
|
-
}
|
|
1930
|
-
|
|
1931
|
-
#mobile-filter-collapse {
|
|
1932
|
-
width: 100%;
|
|
1933
|
-
}
|
|
1934
|
-
|
|
1935
|
-
#mobile-filter-collapse > summary {
|
|
1936
|
-
cursor: pointer;
|
|
1937
|
-
list-style: none;
|
|
1938
|
-
}
|
|
1939
|
-
|
|
1940
|
-
#mobile-filter-collapse[open] > summary {
|
|
1941
|
-
margin-bottom: 10px;
|
|
1942
|
-
}
|
|
1943
|
-
|
|
1944
|
-
#mobile-filter-collapse h2 {
|
|
1945
|
-
display: inline-block;
|
|
1946
|
-
margin: 0;
|
|
1947
|
-
font-size: 2rem;
|
|
1948
|
-
}
|
|
1949
|
-
|
|
1950
|
-
#mobile-filter-collapse[open] svg {
|
|
1951
|
-
transform: rotate(90deg);
|
|
1952
|
-
}
|
|
1953
|
-
|
|
1954
|
-
#content-container.mobile {
|
|
1955
|
-
display: block;
|
|
1956
|
-
}
|
|
1957
|
-
|
|
1958
|
-
#right-column {
|
|
1959
|
-
flex: 1;
|
|
1960
|
-
position: relative;
|
|
1961
|
-
min-height: 90vh;
|
|
1962
|
-
border-right: 1px solid rgb(232, 232, 232);
|
|
1963
|
-
margin-top: var(--rightColumnMarginTop, 0);
|
|
1964
|
-
padding-top: var(--rightColumnPaddingTop, 2rem);
|
|
1965
|
-
background: #fff;
|
|
1966
|
-
}
|
|
1967
|
-
|
|
1968
|
-
#left-column:not([hidden]) + #right-column {
|
|
1969
|
-
border-left: 1px solid rgb(232, 232, 232);
|
|
1970
|
-
}
|
|
1971
|
-
|
|
1972
|
-
#right-column.smart-results-spacing {
|
|
1973
|
-
padding-top: 0.5rem;
|
|
1974
|
-
border-right: none;
|
|
1975
|
-
background: transparent;
|
|
1976
|
-
min-width: 0;
|
|
1977
|
-
}
|
|
1978
|
-
|
|
1979
|
-
#results {
|
|
1980
|
-
background: #fff;
|
|
1981
|
-
padding-left: 1rem;
|
|
1982
|
-
padding-right: 1rem;
|
|
1983
|
-
}
|
|
1984
|
-
|
|
1985
|
-
#right-column.smart-results-spacing #results {
|
|
1986
|
-
border-radius: 10px 10px 0px 0px;
|
|
1987
|
-
padding-top: 0.5rem;
|
|
1988
|
-
margin-top: 1rem;
|
|
1989
|
-
}
|
|
1990
|
-
|
|
1991
|
-
.mobile #right-column {
|
|
1992
|
-
border-left: none;
|
|
1993
|
-
}
|
|
1994
|
-
|
|
1995
|
-
.mobile #results {
|
|
1996
|
-
padding: 5px 5px 0;
|
|
1997
|
-
}
|
|
1998
|
-
|
|
1999
|
-
#left-column {
|
|
2000
|
-
width: var(--leftColumnWidth, 18rem);
|
|
2001
|
-
/* Prevents Safari from shrinking col at first draw */
|
|
2002
|
-
min-width: var(--leftColumnWidth, 18rem);
|
|
2003
|
-
padding-top: var(--leftColumnPaddingTop, 2rem);
|
|
2004
|
-
/* Reduced padding by 0.2rem to add the invisible border in the rule below */
|
|
2005
|
-
padding-right: calc(var(--leftColumnPaddingRight, 2.5rem) - 0.2rem);
|
|
2006
|
-
border-right: 0.2rem solid transparent; /* Pads to the right of the scrollbar a bit */
|
|
2007
|
-
z-index: 1;
|
|
2008
|
-
}
|
|
2009
|
-
|
|
2010
|
-
.desktop #left-column {
|
|
2011
|
-
top: 0;
|
|
2012
|
-
position: sticky;
|
|
2013
|
-
height: calc(100vh - 2rem);
|
|
2014
|
-
max-height: calc(100vh - 2rem);
|
|
2015
|
-
overflow-x: hidden;
|
|
2016
|
-
overflow-y: scroll;
|
|
2017
|
-
|
|
2018
|
-
/*
|
|
2019
|
-
* Firefox doesn't support any of the -webkit-scrollbar stuff below, but
|
|
2020
|
-
* does at least give us a tiny bit of control over width & color.
|
|
2021
|
-
*/
|
|
2022
|
-
scrollbar-width: thin;
|
|
2023
|
-
scrollbar-color: transparent transparent;
|
|
2024
|
-
}
|
|
2025
|
-
.desktop #left-column:hover {
|
|
2026
|
-
scrollbar-color: auto;
|
|
2027
|
-
}
|
|
2028
|
-
.desktop #left-column::-webkit-scrollbar {
|
|
2029
|
-
appearance: none;
|
|
2030
|
-
width: 6px;
|
|
2031
|
-
}
|
|
2032
|
-
.desktop #left-column::-webkit-scrollbar-button {
|
|
2033
|
-
height: 3px;
|
|
2034
|
-
background: transparent;
|
|
2035
|
-
}
|
|
2036
|
-
.desktop #left-column::-webkit-scrollbar-corner {
|
|
2037
|
-
background: transparent;
|
|
2038
|
-
}
|
|
2039
|
-
.desktop #left-column::-webkit-scrollbar-thumb {
|
|
2040
|
-
border-radius: 4px;
|
|
2041
|
-
}
|
|
2042
|
-
.desktop #left-column:hover::-webkit-scrollbar-thumb {
|
|
2043
|
-
background: rgba(0, 0, 0, 0.15);
|
|
2044
|
-
}
|
|
2045
|
-
.desktop #left-column:hover::-webkit-scrollbar-thumb:hover {
|
|
2046
|
-
background: rgba(0, 0, 0, 0.2);
|
|
2047
|
-
}
|
|
2048
|
-
.desktop #left-column:hover::-webkit-scrollbar-thumb:active {
|
|
2049
|
-
background: rgba(0, 0, 0, 0.3);
|
|
2050
|
-
}
|
|
2051
|
-
|
|
2052
|
-
#facets-bottom-fade {
|
|
2053
|
-
background: linear-gradient(
|
|
2054
|
-
to bottom,
|
|
2055
|
-
#f5f5f700 0%,
|
|
2056
|
-
#f5f5f7c0 50%,
|
|
2057
|
-
#f5f5f7 80%,
|
|
2058
|
-
#f5f5f7 100%
|
|
2059
|
-
);
|
|
2060
|
-
position: fixed;
|
|
2061
|
-
bottom: 0;
|
|
2062
|
-
height: 50px;
|
|
2063
|
-
/* Wide enough to cover the content, but leave the scrollbar uncovered */
|
|
2064
|
-
width: calc(
|
|
2065
|
-
var(--leftColumnWidth) + var(--leftColumnPaddingRight) - 10px
|
|
2066
|
-
);
|
|
2067
|
-
z-index: 2;
|
|
2068
|
-
pointer-events: none;
|
|
2069
|
-
transition: height 0.1s ease;
|
|
2070
|
-
}
|
|
2071
|
-
#facets-bottom-fade.hidden {
|
|
2072
|
-
height: 0;
|
|
2073
|
-
}
|
|
2074
|
-
|
|
2075
|
-
.facets-message {
|
|
2076
|
-
font-size: 1.4rem;
|
|
2077
|
-
}
|
|
2078
|
-
|
|
2079
|
-
.desktop-facets-dropdown > summary {
|
|
2080
|
-
cursor: pointer;
|
|
2081
|
-
list-style: none;
|
|
2082
|
-
}
|
|
2083
|
-
|
|
2084
|
-
.desktop-facets-dropdown h2 {
|
|
2085
|
-
display: inline-block;
|
|
2086
|
-
margin: 0;
|
|
2087
|
-
font-size: 1.6rem;
|
|
2088
|
-
}
|
|
2089
|
-
|
|
2090
|
-
.desktop-facets-dropdown[open] > summary {
|
|
2091
|
-
margin-bottom: 10px;
|
|
2092
|
-
}
|
|
2093
|
-
|
|
2094
|
-
.desktop-facets-dropdown[open] svg {
|
|
2095
|
-
transform: rotate(90deg);
|
|
2096
|
-
}
|
|
2097
|
-
|
|
2098
|
-
.desktop #left-column-scroll-sentinel {
|
|
2099
|
-
width: 1px;
|
|
2100
|
-
height: 100vh;
|
|
2101
|
-
background: transparent;
|
|
2102
|
-
}
|
|
2103
|
-
|
|
2104
|
-
.desktop #facets-scroll-sentinel {
|
|
2105
|
-
width: 1px;
|
|
2106
|
-
height: 1px;
|
|
2107
|
-
background: transparent;
|
|
2108
|
-
}
|
|
2109
|
-
|
|
2110
|
-
#facets-header-container {
|
|
2111
|
-
display: flex;
|
|
2112
|
-
justify-content: space-between;
|
|
2113
|
-
align-items: flex-start;
|
|
2114
|
-
clear: both;
|
|
2115
|
-
}
|
|
2116
|
-
|
|
2117
|
-
.desktop #facets-header-container {
|
|
2118
|
-
flex-wrap: wrap;
|
|
2119
|
-
}
|
|
2120
|
-
|
|
2121
|
-
.mobile #left-column {
|
|
2122
|
-
width: 100%;
|
|
2123
|
-
min-width: 0;
|
|
2124
|
-
padding: 5px 0;
|
|
2125
|
-
border: 0;
|
|
2126
|
-
}
|
|
2127
|
-
|
|
2128
|
-
.clear-filters-btn-row {
|
|
2129
|
-
display: inline-block;
|
|
2130
|
-
}
|
|
2131
|
-
|
|
2132
|
-
.desktop .clear-filters-btn-row {
|
|
2133
|
-
width: 100%;
|
|
2134
|
-
}
|
|
2135
|
-
|
|
2136
|
-
.clear-filters-btn {
|
|
2137
|
-
display: inline-block;
|
|
2138
|
-
appearance: none;
|
|
2139
|
-
margin: 0;
|
|
2140
|
-
padding: 0;
|
|
2141
|
-
border: 0;
|
|
2142
|
-
background: none;
|
|
2143
|
-
color: var(--ia-theme-link-color);
|
|
2144
|
-
font-size: 1.4rem;
|
|
2145
|
-
font-family: inherit;
|
|
2146
|
-
cursor: pointer;
|
|
2147
|
-
}
|
|
2148
|
-
|
|
2149
|
-
.clear-filters-btn:hover {
|
|
2150
|
-
text-decoration: underline;
|
|
2151
|
-
}
|
|
2152
|
-
|
|
2153
|
-
.clear-filters-btn-separator {
|
|
2154
|
-
display: inline-block;
|
|
2155
|
-
margin-left: 5px;
|
|
2156
|
-
border-left: 1px solid #2c2c2c;
|
|
2157
|
-
font-size: 1.4rem;
|
|
2158
|
-
line-height: 1.3rem;
|
|
2159
|
-
}
|
|
2160
|
-
|
|
2161
|
-
#facets-container {
|
|
2162
|
-
position: relative;
|
|
2163
|
-
max-height: 0;
|
|
2164
|
-
transition: max-height 0.2s ease-in-out;
|
|
2165
|
-
z-index: 1;
|
|
2166
|
-
margin-top: var(--facetsContainerMarginTop, 5rem);
|
|
2167
|
-
padding-bottom: 2rem;
|
|
2168
|
-
}
|
|
2169
|
-
|
|
2170
|
-
.desktop #facets-container {
|
|
2171
|
-
width: 18rem;
|
|
2172
|
-
}
|
|
2173
|
-
|
|
2174
|
-
.mobile #facets-container {
|
|
2175
|
-
overflow: hidden;
|
|
2176
|
-
padding-bottom: 0;
|
|
2177
|
-
padding-left: 10px;
|
|
2178
|
-
padding-right: 10px;
|
|
2179
|
-
}
|
|
2180
|
-
|
|
2181
|
-
#facets-container.expanded {
|
|
2182
|
-
max-height: 2000px;
|
|
2183
|
-
}
|
|
2184
|
-
|
|
2185
|
-
.results-section-heading {
|
|
2186
|
-
margin: 0.5rem 0.3rem;
|
|
2187
|
-
font-size: 2rem;
|
|
2188
|
-
line-height: 25px;
|
|
2189
|
-
}
|
|
2190
|
-
|
|
2191
|
-
#results-total {
|
|
2192
|
-
display: flex;
|
|
2193
|
-
align-items: baseline;
|
|
2194
|
-
}
|
|
2195
|
-
|
|
2196
|
-
.mobile #results-total {
|
|
2197
|
-
position: absolute;
|
|
2198
|
-
right: 10px;
|
|
2199
|
-
}
|
|
2200
|
-
|
|
2201
|
-
#big-results-count {
|
|
2202
|
-
font-size: 2.4rem;
|
|
2203
|
-
font-weight: 500;
|
|
2204
|
-
margin-right: 5px;
|
|
2205
|
-
}
|
|
2206
|
-
|
|
2207
|
-
.mobile #big-results-count {
|
|
2208
|
-
font-size: 2rem;
|
|
2209
|
-
}
|
|
2210
|
-
|
|
2211
|
-
#big-results-label {
|
|
2212
|
-
font-size: 1.4rem;
|
|
2213
|
-
font-weight: 200;
|
|
2214
|
-
}
|
|
2215
|
-
|
|
2216
|
-
#list-header {
|
|
2217
|
-
max-height: 4.2rem;
|
|
2218
|
-
}
|
|
2219
|
-
|
|
2220
|
-
.loading-cover {
|
|
2221
|
-
position: absolute;
|
|
2222
|
-
top: 0;
|
|
2223
|
-
left: 0;
|
|
2224
|
-
width: 100%;
|
|
2225
|
-
height: 100%;
|
|
2226
|
-
display: flex;
|
|
2227
|
-
justify-content: center;
|
|
2228
|
-
z-index: 1;
|
|
2229
|
-
padding-top: 50px;
|
|
2230
|
-
}
|
|
2231
|
-
|
|
2232
|
-
#tile-blur-label {
|
|
2233
|
-
display: flex;
|
|
2234
|
-
align-items: center;
|
|
2235
|
-
column-gap: 5px;
|
|
2236
|
-
}
|
|
2237
|
-
|
|
2238
|
-
#tile-blur-check {
|
|
2239
|
-
margin: 0 5px 0 0;
|
|
2240
|
-
width: 15px;
|
|
2241
|
-
}
|
|
2242
|
-
|
|
2243
|
-
circular-activity-indicator {
|
|
2244
|
-
width: 30px;
|
|
2245
|
-
height: 30px;
|
|
2246
|
-
}
|
|
2247
|
-
|
|
2248
|
-
sort-filter-bar {
|
|
2249
|
-
display: block;
|
|
2250
|
-
margin-bottom: 4rem;
|
|
2251
|
-
}
|
|
2252
|
-
|
|
2253
|
-
infinite-scroller {
|
|
2254
|
-
display: block;
|
|
2255
|
-
--infiniteScrollerRowGap: var(--collectionBrowserRowGap, 1.7rem);
|
|
2256
|
-
--infiniteScrollerColGap: var(--collectionBrowserColGap, 1.7rem);
|
|
2257
|
-
}
|
|
2258
|
-
|
|
2259
|
-
infinite-scroller.list-compact {
|
|
2260
|
-
--infiniteScrollerCellMinWidth: var(
|
|
2261
|
-
--collectionBrowserCellMinWidth,
|
|
2262
|
-
100%
|
|
2263
|
-
);
|
|
2264
|
-
--infiniteScrollerCellMinHeight: 45px; /* override infinite scroller component */
|
|
2265
|
-
--infiniteScrollerCellMaxHeight: 56px;
|
|
2266
|
-
--infiniteScrollerRowGap: 10px;
|
|
2267
|
-
}
|
|
2268
|
-
|
|
2269
|
-
infinite-scroller.list-detail {
|
|
2270
|
-
--infiniteScrollerCellMinWidth: var(
|
|
2271
|
-
--collectionBrowserCellMinWidth,
|
|
2272
|
-
100%
|
|
2273
|
-
);
|
|
2274
|
-
--infiniteScrollerCellMinHeight: var(
|
|
2275
|
-
--collectionBrowserCellMinHeight,
|
|
2276
|
-
5rem
|
|
2277
|
-
);
|
|
2278
|
-
/*
|
|
2279
|
-
30px in spec, compensating for a -4px margin
|
|
2280
|
-
to align title with top of item image
|
|
2281
|
-
src/tiles/list/tile-list.ts
|
|
2282
|
-
*/
|
|
2283
|
-
--infiniteScrollerRowGap: 34px;
|
|
2284
|
-
}
|
|
2285
|
-
|
|
2286
|
-
.mobile infinite-scroller.list-detail {
|
|
2287
|
-
--infiniteScrollerRowGap: 24px;
|
|
2288
|
-
}
|
|
2289
|
-
|
|
2290
|
-
infinite-scroller.grid {
|
|
2291
|
-
--infiniteScrollerCellMinWidth: var(
|
|
2292
|
-
--collectionBrowserCellMinWidth,
|
|
2293
|
-
17rem
|
|
2294
|
-
);
|
|
2295
|
-
--infiniteScrollerCellMaxWidth: var(
|
|
2296
|
-
--collectionBrowserCellMaxWidth,
|
|
2297
|
-
1fr
|
|
2298
|
-
);
|
|
2299
|
-
}
|
|
2300
|
-
|
|
2301
|
-
/* Allow tiles to shrink a bit further at smaller viewport widths */
|
|
2302
|
-
@media screen and (max-width: 880px) {
|
|
2303
|
-
infinite-scroller.grid {
|
|
2304
|
-
--infiniteScrollerCellMinWidth: var(
|
|
2305
|
-
--collectionBrowserCellMinWidth,
|
|
2306
|
-
15rem
|
|
2307
|
-
);
|
|
2308
|
-
}
|
|
2309
|
-
}
|
|
2310
|
-
/* At very small widths, maintain a 2-tile layout as far as it can reasonably go */
|
|
2311
|
-
@media screen and (max-width: 360px) {
|
|
2312
|
-
infinite-scroller.grid {
|
|
2313
|
-
--infiniteScrollerCellMinWidth: var(
|
|
2314
|
-
--collectionBrowserCellMinWidth,
|
|
2315
|
-
12rem
|
|
2316
|
-
);
|
|
2317
|
-
}
|
|
2318
|
-
}
|
|
2319
|
-
|
|
2320
|
-
infinite-scroller.hidden {
|
|
2321
|
-
display: none;
|
|
2322
|
-
}
|
|
1892
|
+
css `
|
|
1893
|
+
:host {
|
|
1894
|
+
display: block;
|
|
1895
|
+
--leftColumnWidth: 18rem;
|
|
1896
|
+
--leftColumnPaddingTop: 2rem;
|
|
1897
|
+
--leftColumnPaddingRight: 2.5rem;
|
|
1898
|
+
}
|
|
1899
|
+
|
|
1900
|
+
#facet-top-view {
|
|
1901
|
+
display: flex;
|
|
1902
|
+
}
|
|
1903
|
+
|
|
1904
|
+
/**
|
|
1905
|
+
* When page width resizes from desktop to mobile, use this class to
|
|
1906
|
+
* disable expand/collapse transition when loading.
|
|
1907
|
+
*/
|
|
1908
|
+
.preload * {
|
|
1909
|
+
transition: none !important;
|
|
1910
|
+
-webkit-transition: none !important;
|
|
1911
|
+
-moz-transition: none !important;
|
|
1912
|
+
-ms-transition: none !important;
|
|
1913
|
+
-o-transition: none !important;
|
|
1914
|
+
}
|
|
1915
|
+
|
|
1916
|
+
#content-container {
|
|
1917
|
+
display: flex;
|
|
1918
|
+
}
|
|
1919
|
+
|
|
1920
|
+
empty-placeholder {
|
|
1921
|
+
margin-top: var(--placeholderMarginTop, 0);
|
|
1922
|
+
}
|
|
1923
|
+
|
|
1924
|
+
.collapser-icon {
|
|
1925
|
+
display: inline-block;
|
|
1926
|
+
}
|
|
1927
|
+
|
|
1928
|
+
.collapser-icon svg {
|
|
1929
|
+
display: inline-block;
|
|
1930
|
+
width: 12px;
|
|
1931
|
+
height: 12px;
|
|
1932
|
+
transition: transform 0.2s ease-out;
|
|
1933
|
+
}
|
|
1934
|
+
|
|
1935
|
+
#mobile-filter-collapse {
|
|
1936
|
+
width: 100%;
|
|
1937
|
+
}
|
|
1938
|
+
|
|
1939
|
+
#mobile-filter-collapse > summary {
|
|
1940
|
+
cursor: pointer;
|
|
1941
|
+
list-style: none;
|
|
1942
|
+
}
|
|
1943
|
+
|
|
1944
|
+
#mobile-filter-collapse[open] > summary {
|
|
1945
|
+
margin-bottom: 10px;
|
|
1946
|
+
}
|
|
1947
|
+
|
|
1948
|
+
#mobile-filter-collapse h2 {
|
|
1949
|
+
display: inline-block;
|
|
1950
|
+
margin: 0;
|
|
1951
|
+
font-size: 2rem;
|
|
1952
|
+
}
|
|
1953
|
+
|
|
1954
|
+
#mobile-filter-collapse[open] svg {
|
|
1955
|
+
transform: rotate(90deg);
|
|
1956
|
+
}
|
|
1957
|
+
|
|
1958
|
+
#content-container.mobile {
|
|
1959
|
+
display: block;
|
|
1960
|
+
}
|
|
1961
|
+
|
|
1962
|
+
#right-column {
|
|
1963
|
+
flex: 1;
|
|
1964
|
+
position: relative;
|
|
1965
|
+
min-height: 90vh;
|
|
1966
|
+
border-right: 1px solid rgb(232, 232, 232);
|
|
1967
|
+
margin-top: var(--rightColumnMarginTop, 0);
|
|
1968
|
+
padding-top: var(--rightColumnPaddingTop, 2rem);
|
|
1969
|
+
background: #fff;
|
|
1970
|
+
}
|
|
1971
|
+
|
|
1972
|
+
#left-column:not([hidden]) + #right-column {
|
|
1973
|
+
border-left: 1px solid rgb(232, 232, 232);
|
|
1974
|
+
}
|
|
1975
|
+
|
|
1976
|
+
#right-column.smart-results-spacing {
|
|
1977
|
+
padding-top: 0.5rem;
|
|
1978
|
+
border-right: none;
|
|
1979
|
+
background: transparent;
|
|
1980
|
+
min-width: 0;
|
|
1981
|
+
}
|
|
1982
|
+
|
|
1983
|
+
#results {
|
|
1984
|
+
background: #fff;
|
|
1985
|
+
padding-left: 1rem;
|
|
1986
|
+
padding-right: 1rem;
|
|
1987
|
+
}
|
|
1988
|
+
|
|
1989
|
+
#right-column.smart-results-spacing #results {
|
|
1990
|
+
border-radius: 10px 10px 0px 0px;
|
|
1991
|
+
padding-top: 0.5rem;
|
|
1992
|
+
margin-top: 1rem;
|
|
1993
|
+
}
|
|
1994
|
+
|
|
1995
|
+
.mobile #right-column {
|
|
1996
|
+
border-left: none;
|
|
1997
|
+
}
|
|
1998
|
+
|
|
1999
|
+
.mobile #results {
|
|
2000
|
+
padding: 5px 5px 0;
|
|
2001
|
+
}
|
|
2002
|
+
|
|
2003
|
+
#left-column {
|
|
2004
|
+
width: var(--leftColumnWidth, 18rem);
|
|
2005
|
+
/* Prevents Safari from shrinking col at first draw */
|
|
2006
|
+
min-width: var(--leftColumnWidth, 18rem);
|
|
2007
|
+
padding-top: var(--leftColumnPaddingTop, 2rem);
|
|
2008
|
+
/* Reduced padding by 0.2rem to add the invisible border in the rule below */
|
|
2009
|
+
padding-right: calc(var(--leftColumnPaddingRight, 2.5rem) - 0.2rem);
|
|
2010
|
+
border-right: 0.2rem solid transparent; /* Pads to the right of the scrollbar a bit */
|
|
2011
|
+
z-index: 1;
|
|
2012
|
+
}
|
|
2013
|
+
|
|
2014
|
+
.desktop #left-column {
|
|
2015
|
+
top: 0;
|
|
2016
|
+
position: sticky;
|
|
2017
|
+
height: calc(100vh - 2rem);
|
|
2018
|
+
max-height: calc(100vh - 2rem);
|
|
2019
|
+
overflow-x: hidden;
|
|
2020
|
+
overflow-y: scroll;
|
|
2021
|
+
|
|
2022
|
+
/*
|
|
2023
|
+
* Firefox doesn't support any of the -webkit-scrollbar stuff below, but
|
|
2024
|
+
* does at least give us a tiny bit of control over width & color.
|
|
2025
|
+
*/
|
|
2026
|
+
scrollbar-width: thin;
|
|
2027
|
+
scrollbar-color: transparent transparent;
|
|
2028
|
+
}
|
|
2029
|
+
.desktop #left-column:hover {
|
|
2030
|
+
scrollbar-color: auto;
|
|
2031
|
+
}
|
|
2032
|
+
.desktop #left-column::-webkit-scrollbar {
|
|
2033
|
+
appearance: none;
|
|
2034
|
+
width: 6px;
|
|
2035
|
+
}
|
|
2036
|
+
.desktop #left-column::-webkit-scrollbar-button {
|
|
2037
|
+
height: 3px;
|
|
2038
|
+
background: transparent;
|
|
2039
|
+
}
|
|
2040
|
+
.desktop #left-column::-webkit-scrollbar-corner {
|
|
2041
|
+
background: transparent;
|
|
2042
|
+
}
|
|
2043
|
+
.desktop #left-column::-webkit-scrollbar-thumb {
|
|
2044
|
+
border-radius: 4px;
|
|
2045
|
+
}
|
|
2046
|
+
.desktop #left-column:hover::-webkit-scrollbar-thumb {
|
|
2047
|
+
background: rgba(0, 0, 0, 0.15);
|
|
2048
|
+
}
|
|
2049
|
+
.desktop #left-column:hover::-webkit-scrollbar-thumb:hover {
|
|
2050
|
+
background: rgba(0, 0, 0, 0.2);
|
|
2051
|
+
}
|
|
2052
|
+
.desktop #left-column:hover::-webkit-scrollbar-thumb:active {
|
|
2053
|
+
background: rgba(0, 0, 0, 0.3);
|
|
2054
|
+
}
|
|
2055
|
+
|
|
2056
|
+
#facets-bottom-fade {
|
|
2057
|
+
background: linear-gradient(
|
|
2058
|
+
to bottom,
|
|
2059
|
+
#f5f5f700 0%,
|
|
2060
|
+
#f5f5f7c0 50%,
|
|
2061
|
+
#f5f5f7 80%,
|
|
2062
|
+
#f5f5f7 100%
|
|
2063
|
+
);
|
|
2064
|
+
position: fixed;
|
|
2065
|
+
bottom: 0;
|
|
2066
|
+
height: 50px;
|
|
2067
|
+
/* Wide enough to cover the content, but leave the scrollbar uncovered */
|
|
2068
|
+
width: calc(
|
|
2069
|
+
var(--leftColumnWidth) + var(--leftColumnPaddingRight) - 10px
|
|
2070
|
+
);
|
|
2071
|
+
z-index: 2;
|
|
2072
|
+
pointer-events: none;
|
|
2073
|
+
transition: height 0.1s ease;
|
|
2074
|
+
}
|
|
2075
|
+
#facets-bottom-fade.hidden {
|
|
2076
|
+
height: 0;
|
|
2077
|
+
}
|
|
2078
|
+
|
|
2079
|
+
.facets-message {
|
|
2080
|
+
font-size: 1.4rem;
|
|
2081
|
+
}
|
|
2082
|
+
|
|
2083
|
+
.desktop-facets-dropdown > summary {
|
|
2084
|
+
cursor: pointer;
|
|
2085
|
+
list-style: none;
|
|
2086
|
+
}
|
|
2087
|
+
|
|
2088
|
+
.desktop-facets-dropdown h2 {
|
|
2089
|
+
display: inline-block;
|
|
2090
|
+
margin: 0;
|
|
2091
|
+
font-size: 1.6rem;
|
|
2092
|
+
}
|
|
2093
|
+
|
|
2094
|
+
.desktop-facets-dropdown[open] > summary {
|
|
2095
|
+
margin-bottom: 10px;
|
|
2096
|
+
}
|
|
2097
|
+
|
|
2098
|
+
.desktop-facets-dropdown[open] svg {
|
|
2099
|
+
transform: rotate(90deg);
|
|
2100
|
+
}
|
|
2101
|
+
|
|
2102
|
+
.desktop #left-column-scroll-sentinel {
|
|
2103
|
+
width: 1px;
|
|
2104
|
+
height: 100vh;
|
|
2105
|
+
background: transparent;
|
|
2106
|
+
}
|
|
2107
|
+
|
|
2108
|
+
.desktop #facets-scroll-sentinel {
|
|
2109
|
+
width: 1px;
|
|
2110
|
+
height: 1px;
|
|
2111
|
+
background: transparent;
|
|
2112
|
+
}
|
|
2113
|
+
|
|
2114
|
+
#facets-header-container {
|
|
2115
|
+
display: flex;
|
|
2116
|
+
justify-content: space-between;
|
|
2117
|
+
align-items: flex-start;
|
|
2118
|
+
clear: both;
|
|
2119
|
+
}
|
|
2120
|
+
|
|
2121
|
+
.desktop #facets-header-container {
|
|
2122
|
+
flex-wrap: wrap;
|
|
2123
|
+
}
|
|
2124
|
+
|
|
2125
|
+
.mobile #left-column {
|
|
2126
|
+
width: 100%;
|
|
2127
|
+
min-width: 0;
|
|
2128
|
+
padding: 5px 0;
|
|
2129
|
+
border: 0;
|
|
2130
|
+
}
|
|
2131
|
+
|
|
2132
|
+
.clear-filters-btn-row {
|
|
2133
|
+
display: inline-block;
|
|
2134
|
+
}
|
|
2135
|
+
|
|
2136
|
+
.desktop .clear-filters-btn-row {
|
|
2137
|
+
width: 100%;
|
|
2138
|
+
}
|
|
2139
|
+
|
|
2140
|
+
.clear-filters-btn {
|
|
2141
|
+
display: inline-block;
|
|
2142
|
+
appearance: none;
|
|
2143
|
+
margin: 0;
|
|
2144
|
+
padding: 0;
|
|
2145
|
+
border: 0;
|
|
2146
|
+
background: none;
|
|
2147
|
+
color: var(--ia-theme-link-color);
|
|
2148
|
+
font-size: 1.4rem;
|
|
2149
|
+
font-family: inherit;
|
|
2150
|
+
cursor: pointer;
|
|
2151
|
+
}
|
|
2152
|
+
|
|
2153
|
+
.clear-filters-btn:hover {
|
|
2154
|
+
text-decoration: underline;
|
|
2155
|
+
}
|
|
2156
|
+
|
|
2157
|
+
.clear-filters-btn-separator {
|
|
2158
|
+
display: inline-block;
|
|
2159
|
+
margin-left: 5px;
|
|
2160
|
+
border-left: 1px solid #2c2c2c;
|
|
2161
|
+
font-size: 1.4rem;
|
|
2162
|
+
line-height: 1.3rem;
|
|
2163
|
+
}
|
|
2164
|
+
|
|
2165
|
+
#facets-container {
|
|
2166
|
+
position: relative;
|
|
2167
|
+
max-height: 0;
|
|
2168
|
+
transition: max-height 0.2s ease-in-out;
|
|
2169
|
+
z-index: 1;
|
|
2170
|
+
margin-top: var(--facetsContainerMarginTop, 5rem);
|
|
2171
|
+
padding-bottom: 2rem;
|
|
2172
|
+
}
|
|
2173
|
+
|
|
2174
|
+
.desktop #facets-container {
|
|
2175
|
+
width: 18rem;
|
|
2176
|
+
}
|
|
2177
|
+
|
|
2178
|
+
.mobile #facets-container {
|
|
2179
|
+
overflow: hidden;
|
|
2180
|
+
padding-bottom: 0;
|
|
2181
|
+
padding-left: 10px;
|
|
2182
|
+
padding-right: 10px;
|
|
2183
|
+
}
|
|
2184
|
+
|
|
2185
|
+
#facets-container.expanded {
|
|
2186
|
+
max-height: 2000px;
|
|
2187
|
+
}
|
|
2188
|
+
|
|
2189
|
+
.results-section-heading {
|
|
2190
|
+
margin: 0.5rem 0.3rem;
|
|
2191
|
+
font-size: 2rem;
|
|
2192
|
+
line-height: 25px;
|
|
2193
|
+
}
|
|
2194
|
+
|
|
2195
|
+
#results-total {
|
|
2196
|
+
display: flex;
|
|
2197
|
+
align-items: baseline;
|
|
2198
|
+
}
|
|
2199
|
+
|
|
2200
|
+
.mobile #results-total {
|
|
2201
|
+
position: absolute;
|
|
2202
|
+
right: 10px;
|
|
2203
|
+
}
|
|
2204
|
+
|
|
2205
|
+
#big-results-count {
|
|
2206
|
+
font-size: 2.4rem;
|
|
2207
|
+
font-weight: 500;
|
|
2208
|
+
margin-right: 5px;
|
|
2209
|
+
}
|
|
2210
|
+
|
|
2211
|
+
.mobile #big-results-count {
|
|
2212
|
+
font-size: 2rem;
|
|
2213
|
+
}
|
|
2214
|
+
|
|
2215
|
+
#big-results-label {
|
|
2216
|
+
font-size: 1.4rem;
|
|
2217
|
+
font-weight: 200;
|
|
2218
|
+
}
|
|
2219
|
+
|
|
2220
|
+
#list-header {
|
|
2221
|
+
max-height: 4.2rem;
|
|
2222
|
+
}
|
|
2223
|
+
|
|
2224
|
+
.loading-cover {
|
|
2225
|
+
position: absolute;
|
|
2226
|
+
top: 0;
|
|
2227
|
+
left: 0;
|
|
2228
|
+
width: 100%;
|
|
2229
|
+
height: 100%;
|
|
2230
|
+
display: flex;
|
|
2231
|
+
justify-content: center;
|
|
2232
|
+
z-index: 1;
|
|
2233
|
+
padding-top: 50px;
|
|
2234
|
+
}
|
|
2235
|
+
|
|
2236
|
+
#tile-blur-label {
|
|
2237
|
+
display: flex;
|
|
2238
|
+
align-items: center;
|
|
2239
|
+
column-gap: 5px;
|
|
2240
|
+
}
|
|
2241
|
+
|
|
2242
|
+
#tile-blur-check {
|
|
2243
|
+
margin: 0 5px 0 0;
|
|
2244
|
+
width: 15px;
|
|
2245
|
+
}
|
|
2246
|
+
|
|
2247
|
+
circular-activity-indicator {
|
|
2248
|
+
width: 30px;
|
|
2249
|
+
height: 30px;
|
|
2250
|
+
}
|
|
2251
|
+
|
|
2252
|
+
sort-filter-bar {
|
|
2253
|
+
display: block;
|
|
2254
|
+
margin-bottom: 4rem;
|
|
2255
|
+
}
|
|
2256
|
+
|
|
2257
|
+
infinite-scroller {
|
|
2258
|
+
display: block;
|
|
2259
|
+
--infiniteScrollerRowGap: var(--collectionBrowserRowGap, 1.7rem);
|
|
2260
|
+
--infiniteScrollerColGap: var(--collectionBrowserColGap, 1.7rem);
|
|
2261
|
+
}
|
|
2262
|
+
|
|
2263
|
+
infinite-scroller.list-compact {
|
|
2264
|
+
--infiniteScrollerCellMinWidth: var(
|
|
2265
|
+
--collectionBrowserCellMinWidth,
|
|
2266
|
+
100%
|
|
2267
|
+
);
|
|
2268
|
+
--infiniteScrollerCellMinHeight: 45px; /* override infinite scroller component */
|
|
2269
|
+
--infiniteScrollerCellMaxHeight: 56px;
|
|
2270
|
+
--infiniteScrollerRowGap: 10px;
|
|
2271
|
+
}
|
|
2272
|
+
|
|
2273
|
+
infinite-scroller.list-detail {
|
|
2274
|
+
--infiniteScrollerCellMinWidth: var(
|
|
2275
|
+
--collectionBrowserCellMinWidth,
|
|
2276
|
+
100%
|
|
2277
|
+
);
|
|
2278
|
+
--infiniteScrollerCellMinHeight: var(
|
|
2279
|
+
--collectionBrowserCellMinHeight,
|
|
2280
|
+
5rem
|
|
2281
|
+
);
|
|
2282
|
+
/*
|
|
2283
|
+
30px in spec, compensating for a -4px margin
|
|
2284
|
+
to align title with top of item image
|
|
2285
|
+
src/tiles/list/tile-list.ts
|
|
2286
|
+
*/
|
|
2287
|
+
--infiniteScrollerRowGap: 34px;
|
|
2288
|
+
}
|
|
2289
|
+
|
|
2290
|
+
.mobile infinite-scroller.list-detail {
|
|
2291
|
+
--infiniteScrollerRowGap: 24px;
|
|
2292
|
+
}
|
|
2293
|
+
|
|
2294
|
+
infinite-scroller.grid {
|
|
2295
|
+
--infiniteScrollerCellMinWidth: var(
|
|
2296
|
+
--collectionBrowserCellMinWidth,
|
|
2297
|
+
17rem
|
|
2298
|
+
);
|
|
2299
|
+
--infiniteScrollerCellMaxWidth: var(
|
|
2300
|
+
--collectionBrowserCellMaxWidth,
|
|
2301
|
+
1fr
|
|
2302
|
+
);
|
|
2303
|
+
}
|
|
2304
|
+
|
|
2305
|
+
/* Allow tiles to shrink a bit further at smaller viewport widths */
|
|
2306
|
+
@media screen and (max-width: 880px) {
|
|
2307
|
+
infinite-scroller.grid {
|
|
2308
|
+
--infiniteScrollerCellMinWidth: var(
|
|
2309
|
+
--collectionBrowserCellMinWidth,
|
|
2310
|
+
15rem
|
|
2311
|
+
);
|
|
2312
|
+
}
|
|
2313
|
+
}
|
|
2314
|
+
/* At very small widths, maintain a 2-tile layout as far as it can reasonably go */
|
|
2315
|
+
@media screen and (max-width: 360px) {
|
|
2316
|
+
infinite-scroller.grid {
|
|
2317
|
+
--infiniteScrollerCellMinWidth: var(
|
|
2318
|
+
--collectionBrowserCellMinWidth,
|
|
2319
|
+
12rem
|
|
2320
|
+
);
|
|
2321
|
+
}
|
|
2322
|
+
}
|
|
2323
|
+
|
|
2324
|
+
infinite-scroller.hidden {
|
|
2325
|
+
display: none;
|
|
2326
|
+
}
|
|
2323
2327
|
`,
|
|
2324
2328
|
];
|
|
2325
2329
|
}
|
|
@@ -2348,6 +2352,9 @@ __decorate([
|
|
|
2348
2352
|
__decorate([
|
|
2349
2353
|
property({ type: String })
|
|
2350
2354
|
], CollectionBrowser.prototype, "baseQuery", void 0);
|
|
2355
|
+
__decorate([
|
|
2356
|
+
property({ type: Array })
|
|
2357
|
+
], CollectionBrowser.prototype, "identifiers", void 0);
|
|
2351
2358
|
__decorate([
|
|
2352
2359
|
property({ type: String })
|
|
2353
2360
|
], CollectionBrowser.prototype, "displayMode", void 0);
|