@internetarchive/collection-browser 1.8.0 → 1.9.0-alpha2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +29 -29
- package/.github/workflows/ci.yml +26 -26
- package/.github/workflows/gh-pages-main.yml +39 -39
- package/.github/workflows/npm-publish.yml +39 -39
- package/.github/workflows/pr-preview.yml +38 -38
- package/.husky/pre-commit +4 -4
- package/LICENSE +661 -661
- package/README.md +83 -83
- package/dist/index.d.ts +9 -9
- package/dist/index.js +9 -9
- package/dist/src/app-root.d.ts +54 -54
- package/dist/src/app-root.js +293 -293
- package/dist/src/assets/img/icons/arrow-left.d.ts +2 -2
- package/dist/src/assets/img/icons/arrow-left.js +2 -2
- package/dist/src/assets/img/icons/arrow-right.d.ts +2 -2
- package/dist/src/assets/img/icons/arrow-right.js +2 -2
- package/dist/src/assets/img/icons/chevron.d.ts +2 -2
- package/dist/src/assets/img/icons/chevron.js +2 -2
- package/dist/src/assets/img/icons/contract.d.ts +2 -2
- package/dist/src/assets/img/icons/contract.js +2 -2
- package/dist/src/assets/img/icons/empty-query.d.ts +2 -2
- package/dist/src/assets/img/icons/empty-query.js +2 -2
- package/dist/src/assets/img/icons/expand.d.ts +2 -2
- package/dist/src/assets/img/icons/expand.js +2 -2
- package/dist/src/assets/img/icons/eye-closed.d.ts +2 -2
- package/dist/src/assets/img/icons/eye-closed.js +2 -2
- package/dist/src/assets/img/icons/eye.d.ts +2 -2
- package/dist/src/assets/img/icons/eye.js +2 -2
- package/dist/src/assets/img/icons/favorite-filled.d.ts +1 -1
- package/dist/src/assets/img/icons/favorite-filled.js +2 -2
- package/dist/src/assets/img/icons/login-required.d.ts +1 -1
- package/dist/src/assets/img/icons/login-required.js +2 -2
- package/dist/src/assets/img/icons/mediatype/account.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/account.js +2 -2
- package/dist/src/assets/img/icons/mediatype/audio.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/audio.js +2 -2
- package/dist/src/assets/img/icons/mediatype/collection.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/collection.js +2 -2
- package/dist/src/assets/img/icons/mediatype/data.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/data.js +2 -2
- package/dist/src/assets/img/icons/mediatype/etree.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/etree.js +2 -2
- package/dist/src/assets/img/icons/mediatype/film.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/film.js +2 -2
- package/dist/src/assets/img/icons/mediatype/images.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/images.js +2 -2
- package/dist/src/assets/img/icons/mediatype/radio.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/radio.js +2 -2
- package/dist/src/assets/img/icons/mediatype/software.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/software.js +2 -2
- package/dist/src/assets/img/icons/mediatype/texts.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/texts.js +2 -2
- package/dist/src/assets/img/icons/mediatype/tv.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/tv.js +2 -2
- package/dist/src/assets/img/icons/mediatype/video.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/video.js +2 -2
- package/dist/src/assets/img/icons/mediatype/web.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/web.js +2 -2
- package/dist/src/assets/img/icons/null-result.d.ts +2 -2
- package/dist/src/assets/img/icons/null-result.js +2 -2
- package/dist/src/assets/img/icons/restricted.d.ts +1 -1
- package/dist/src/assets/img/icons/restricted.js +2 -2
- package/dist/src/assets/img/icons/reviews.d.ts +1 -1
- package/dist/src/assets/img/icons/reviews.js +2 -2
- package/dist/src/assets/img/icons/upload.d.ts +1 -1
- package/dist/src/assets/img/icons/upload.js +2 -2
- package/dist/src/assets/img/icons/views.d.ts +1 -1
- package/dist/src/assets/img/icons/views.js +2 -2
- package/dist/src/circular-activity-indicator.d.ts +5 -5
- package/dist/src/circular-activity-indicator.js +17 -17
- package/dist/src/collection-browser.d.ts +469 -469
- package/dist/src/collection-browser.js +1677 -1653
- package/dist/src/collection-browser.js.map +1 -1
- package/dist/src/collection-facets/facet-tombstone-row.d.ts +5 -5
- package/dist/src/collection-facets/facet-tombstone-row.js +15 -15
- package/dist/src/collection-facets/facets-template.d.ts +20 -20
- package/dist/src/collection-facets/facets-template.js +152 -152
- package/dist/src/collection-facets/more-facets-content.d.ts +77 -77
- package/dist/src/collection-facets/more-facets-content.js +359 -359
- package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
- package/dist/src/collection-facets/more-facets-pagination.js +196 -196
- package/dist/src/collection-facets/toggle-switch.d.ts +41 -41
- package/dist/src/collection-facets/toggle-switch.js +94 -94
- package/dist/src/collection-facets.d.ts +99 -99
- package/dist/src/collection-facets.js +471 -471
- package/dist/src/empty-placeholder.d.ts +21 -21
- package/dist/src/empty-placeholder.js +69 -69
- package/dist/src/expanded-date-picker.d.ts +43 -43
- package/dist/src/expanded-date-picker.js +109 -109
- package/dist/src/language-code-handler/language-code-handler.d.ts +37 -37
- package/dist/src/language-code-handler/language-code-handler.js +26 -26
- package/dist/src/language-code-handler/language-code-mapping.d.ts +1 -1
- package/dist/src/language-code-handler/language-code-mapping.js +562 -562
- package/dist/src/mediatype/mediatype-config.d.ts +3 -3
- package/dist/src/mediatype/mediatype-config.js +85 -85
- package/dist/src/models.d.ts +162 -149
- package/dist/src/models.js +256 -195
- package/dist/src/models.js.map +1 -1
- package/dist/src/restoration-state-handler.d.ts +70 -63
- package/dist/src/restoration-state-handler.js +355 -326
- package/dist/src/restoration-state-handler.js.map +1 -1
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
- package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
- package/dist/src/sort-filter-bar/alpha-bar.js +128 -128
- package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/compact.js +2 -2
- package/dist/src/sort-filter-bar/img/list.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/list.js +2 -2
- package/dist/src/sort-filter-bar/img/sort-toggle-disabled.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-disabled.js +2 -2
- package/dist/src/sort-filter-bar/img/sort-toggle-down.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-down.js +2 -2
- package/dist/src/sort-filter-bar/img/sort-toggle-up.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-toggle-up.js +2 -2
- package/dist/src/sort-filter-bar/img/sort-triangle.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/sort-triangle.js +2 -2
- package/dist/src/sort-filter-bar/img/tile.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/tile.js +2 -2
- package/dist/src/sort-filter-bar/sort-filter-bar.d.ts +201 -199
- package/dist/src/sort-filter-bar/sort-filter-bar.js +622 -617
- package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
- package/dist/src/styles/item-image-styles.d.ts +8 -8
- package/dist/src/styles/item-image-styles.js +9 -9
- package/dist/src/styles/sr-only.d.ts +1 -1
- package/dist/src/styles/sr-only.js +2 -2
- package/dist/src/tiles/base-tile-component.d.ts +18 -18
- package/dist/src/tiles/base-tile-component.js +59 -59
- package/dist/src/tiles/collection-browser-loading-tile.d.ts +5 -5
- package/dist/src/tiles/collection-browser-loading-tile.js +15 -15
- package/dist/src/tiles/grid/account-tile.d.ts +18 -18
- package/dist/src/tiles/grid/account-tile.js +72 -72
- package/dist/src/tiles/grid/collection-tile.d.ts +15 -15
- package/dist/src/tiles/grid/collection-tile.js +80 -80
- package/dist/src/tiles/grid/item-tile.d.ts +27 -27
- package/dist/src/tiles/grid/item-tile.js +134 -134
- package/dist/src/tiles/grid/styles/tile-grid-shared-styles.d.ts +1 -1
- package/dist/src/tiles/grid/styles/tile-grid-shared-styles.js +8 -8
- package/dist/src/tiles/grid/tile-stats.d.ts +11 -11
- package/dist/src/tiles/grid/tile-stats.js +48 -48
- package/dist/src/tiles/hover/hover-pane-controller.d.ts +219 -219
- package/dist/src/tiles/hover/hover-pane-controller.js +352 -352
- package/dist/src/tiles/hover/tile-hover-pane.d.ts +15 -15
- package/dist/src/tiles/hover/tile-hover-pane.js +38 -38
- package/dist/src/tiles/image-block.d.ts +17 -17
- package/dist/src/tiles/image-block.js +72 -72
- package/dist/src/tiles/item-image.d.ts +35 -35
- package/dist/src/tiles/item-image.js +117 -117
- package/dist/src/tiles/list/tile-list-compact-header.d.ts +6 -6
- package/dist/src/tiles/list/tile-list-compact-header.js +38 -38
- package/dist/src/tiles/list/tile-list-compact.d.ts +15 -15
- package/dist/src/tiles/list/tile-list-compact.js +114 -114
- package/dist/src/tiles/list/tile-list.d.ts +46 -46
- package/dist/src/tiles/list/tile-list.js +298 -298
- package/dist/src/tiles/mediatype-icon.d.ts +9 -9
- package/dist/src/tiles/mediatype-icon.js +47 -47
- package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
- package/dist/src/tiles/overlay/icon-overlay.js +40 -40
- package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
- package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
- package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
- package/dist/src/tiles/overlay/text-overlay.js +42 -42
- package/dist/src/tiles/text-snippet-block.d.ts +27 -27
- package/dist/src/tiles/text-snippet-block.js +73 -73
- package/dist/src/tiles/tile-dispatcher.d.ts +50 -50
- package/dist/src/tiles/tile-dispatcher.js +185 -185
- package/dist/src/tiles/tile-display-value-provider.d.ts +43 -43
- package/dist/src/tiles/tile-display-value-provider.js +80 -80
- package/dist/src/utils/analytics-events.d.ts +24 -24
- package/dist/src/utils/analytics-events.js +26 -26
- package/dist/src/utils/array-equals.d.ts +4 -4
- package/dist/src/utils/array-equals.js +10 -10
- package/dist/src/utils/format-count.d.ts +7 -7
- package/dist/src/utils/format-count.js +76 -76
- package/dist/src/utils/format-date.d.ts +2 -2
- package/dist/src/utils/format-date.js +25 -25
- package/dist/src/utils/format-unit-size.d.ts +2 -2
- package/dist/src/utils/format-unit-size.js +33 -33
- package/dist/src/utils/local-date-from-utc.d.ts +9 -9
- package/dist/src/utils/local-date-from-utc.js +15 -15
- package/dist/src/utils/sha1.d.ts +2 -2
- package/dist/src/utils/sha1.js +8 -8
- package/dist/test/collection-browser.test.d.ts +1 -1
- package/dist/test/collection-browser.test.js +808 -808
- package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
- package/dist/test/collection-facets/facets-template.test.js +134 -134
- package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
- package/dist/test/collection-facets/more-facets-content.test.js +133 -133
- package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
- package/dist/test/collection-facets/more-facets-pagination.test.js +117 -117
- package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
- package/dist/test/collection-facets/toggle-switch.test.js +73 -73
- package/dist/test/collection-facets.test.d.ts +2 -2
- package/dist/test/collection-facets.test.js +645 -645
- package/dist/test/empty-placeholder.test.d.ts +1 -1
- package/dist/test/empty-placeholder.test.js +56 -56
- package/dist/test/expanded-date-picker.test.d.ts +1 -1
- package/dist/test/expanded-date-picker.test.js +95 -95
- package/dist/test/icon-overlay.test.d.ts +1 -1
- package/dist/test/icon-overlay.test.js +24 -24
- package/dist/test/image-block.test.d.ts +1 -1
- package/dist/test/image-block.test.js +48 -48
- package/dist/test/item-image.test.d.ts +1 -1
- package/dist/test/item-image.test.js +84 -84
- package/dist/test/mediatype-config.test.d.ts +1 -1
- package/dist/test/mediatype-config.test.js +16 -16
- package/dist/test/mocks/mock-analytics-handler.d.ts +10 -10
- package/dist/test/mocks/mock-analytics-handler.js +15 -15
- package/dist/test/mocks/mock-collection-name-cache.d.ts +9 -9
- package/dist/test/mocks/mock-collection-name-cache.js +17 -17
- package/dist/test/mocks/mock-search-responses.d.ts +19 -19
- package/dist/test/mocks/mock-search-responses.js +623 -623
- package/dist/test/mocks/mock-search-service.d.ts +15 -15
- package/dist/test/mocks/mock-search-service.js +48 -48
- package/dist/test/restoration-state-handler.test.d.ts +1 -1
- package/dist/test/restoration-state-handler.test.js +270 -218
- package/dist/test/restoration-state-handler.test.js.map +1 -1
- package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
- package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
- package/dist/test/sort-filter-bar/alpha-bar.test.d.ts +1 -1
- package/dist/test/sort-filter-bar/alpha-bar.test.js +73 -73
- package/dist/test/sort-filter-bar/sort-filter-bar.test.d.ts +1 -1
- package/dist/test/sort-filter-bar/sort-filter-bar.test.js +378 -378
- package/dist/test/text-overlay.test.d.ts +1 -1
- package/dist/test/text-overlay.test.js +48 -48
- package/dist/test/text-snippet-block.test.d.ts +1 -1
- package/dist/test/text-snippet-block.test.js +57 -57
- package/dist/test/tile-stats.test.d.ts +1 -1
- package/dist/test/tile-stats.test.js +33 -33
- package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/account-tile.test.js +76 -76
- package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/collection-tile.test.js +73 -73
- package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/item-tile.test.js +254 -254
- package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
- package/dist/test/tiles/hover/hover-pane-controller.test.js +257 -257
- package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
- package/dist/test/tiles/hover/tile-hover-pane.test.js +13 -13
- package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
- package/dist/test/tiles/list/tile-list-compact.test.js +143 -143
- package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
- package/dist/test/tiles/list/tile-list.test.js +242 -242
- package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
- package/dist/test/tiles/tile-dispatcher.test.js +67 -67
- package/dist/test/tiles/tile-display-value-provider.test.d.ts +1 -1
- package/dist/test/tiles/tile-display-value-provider.test.js +141 -141
- package/dist/test/utils/array-equals.test.d.ts +1 -1
- package/dist/test/utils/array-equals.test.js +26 -26
- package/dist/test/utils/format-count.test.d.ts +1 -1
- package/dist/test/utils/format-count.test.js +23 -23
- package/dist/test/utils/format-date.test.d.ts +1 -1
- package/dist/test/utils/format-date.test.js +17 -17
- package/dist/test/utils/format-unit-size.test.d.ts +1 -1
- package/dist/test/utils/format-unit-size.test.js +17 -17
- package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
- package/dist/test/utils/local-date-from-utc.test.js +26 -26
- package/local.archive.org.cert +86 -86
- package/local.archive.org.key +27 -27
- package/package.json +1 -1
- package/renovate.json +6 -6
- package/src/collection-browser.ts +42 -8
- package/src/models.ts +193 -109
- package/src/restoration-state-handler.ts +66 -40
- package/src/sort-filter-bar/sort-filter-bar.ts +34 -27
- package/test/restoration-state-handler.test.ts +68 -1
- package/tsconfig.json +21 -21
- package/web-dev-server.config.mjs +30 -30
- package/web-test-runner.config.mjs +41 -41
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { LitElement, CSSResultGroup } from 'lit';
|
|
2
|
-
export declare class FacetTombstoneRow extends LitElement {
|
|
3
|
-
render(): import("lit-html").TemplateResult<1>;
|
|
4
|
-
static get styles(): CSSResultGroup;
|
|
5
|
-
}
|
|
1
|
+
import { LitElement, CSSResultGroup } from 'lit';
|
|
2
|
+
export declare class FacetTombstoneRow extends LitElement {
|
|
3
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
4
|
+
static get styles(): CSSResultGroup;
|
|
5
|
+
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { css, html, LitElement } from 'lit';
|
|
3
|
-
import { customElement } from 'lit/decorators.js';
|
|
4
|
-
let FacetTombstoneRow = class FacetTombstoneRow extends LitElement {
|
|
5
|
-
render() {
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { css, html, LitElement } from 'lit';
|
|
3
|
+
import { customElement } from 'lit/decorators.js';
|
|
4
|
+
let FacetTombstoneRow = class FacetTombstoneRow extends LitElement {
|
|
5
|
+
render() {
|
|
6
6
|
return html `
|
|
7
7
|
<div id="row">
|
|
8
8
|
<input type="checkbox" disabled />
|
|
9
9
|
<div class="tombstone-line"></div>
|
|
10
10
|
<div class="tombstone-line"></div>
|
|
11
11
|
</div>
|
|
12
|
-
`;
|
|
13
|
-
}
|
|
14
|
-
static get styles() {
|
|
12
|
+
`;
|
|
13
|
+
}
|
|
14
|
+
static get styles() {
|
|
15
15
|
return css `
|
|
16
16
|
#row {
|
|
17
17
|
display: grid;
|
|
@@ -33,11 +33,11 @@ let FacetTombstoneRow = class FacetTombstoneRow extends LitElement {
|
|
|
33
33
|
height: 15px;
|
|
34
34
|
margin: 0;
|
|
35
35
|
}
|
|
36
|
-
`;
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
FacetTombstoneRow = __decorate([
|
|
40
|
-
customElement('facet-tombstone-row')
|
|
41
|
-
], FacetTombstoneRow);
|
|
42
|
-
export { FacetTombstoneRow };
|
|
36
|
+
`;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
FacetTombstoneRow = __decorate([
|
|
40
|
+
customElement('facet-tombstone-row')
|
|
41
|
+
], FacetTombstoneRow);
|
|
42
|
+
export { FacetTombstoneRow };
|
|
43
43
|
//# sourceMappingURL=facet-tombstone-row.js.map
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { LitElement, TemplateResult, CSSResultGroup } from 'lit';
|
|
2
|
-
import type { CollectionNameCacheInterface } from '@internetarchive/collection-name-cache';
|
|
3
|
-
import { FacetGroup, SelectedFacets } from '../models';
|
|
4
|
-
export declare class FacetsTemplate extends LitElement {
|
|
5
|
-
facetGroup?: FacetGroup;
|
|
6
|
-
selectedFacets?: SelectedFacets;
|
|
7
|
-
renderOn?: string;
|
|
8
|
-
collectionPagePath: string;
|
|
9
|
-
collectionNameCache?: CollectionNameCacheInterface;
|
|
10
|
-
private facetClicked;
|
|
11
|
-
private facetChecked;
|
|
12
|
-
private facetUnchecked;
|
|
13
|
-
/** Returns the composed facet state corresponding to a positive or negative facet's checked state */
|
|
14
|
-
private getFacetState;
|
|
15
|
-
private dispatchFacetClickEvent;
|
|
16
|
-
private dispatchSelectedFacetsChanged;
|
|
17
|
-
private getFacetsTemplate;
|
|
18
|
-
render(): TemplateResult<1>;
|
|
19
|
-
static get styles(): CSSResultGroup;
|
|
20
|
-
}
|
|
1
|
+
import { LitElement, TemplateResult, CSSResultGroup } from 'lit';
|
|
2
|
+
import type { CollectionNameCacheInterface } from '@internetarchive/collection-name-cache';
|
|
3
|
+
import { FacetGroup, SelectedFacets } from '../models';
|
|
4
|
+
export declare class FacetsTemplate extends LitElement {
|
|
5
|
+
facetGroup?: FacetGroup;
|
|
6
|
+
selectedFacets?: SelectedFacets;
|
|
7
|
+
renderOn?: string;
|
|
8
|
+
collectionPagePath: string;
|
|
9
|
+
collectionNameCache?: CollectionNameCacheInterface;
|
|
10
|
+
private facetClicked;
|
|
11
|
+
private facetChecked;
|
|
12
|
+
private facetUnchecked;
|
|
13
|
+
/** Returns the composed facet state corresponding to a positive or negative facet's checked state */
|
|
14
|
+
private getFacetState;
|
|
15
|
+
private dispatchFacetClickEvent;
|
|
16
|
+
private dispatchSelectedFacetsChanged;
|
|
17
|
+
private getFacetsTemplate;
|
|
18
|
+
render(): TemplateResult<1>;
|
|
19
|
+
static get styles(): CSSResultGroup;
|
|
20
|
+
}
|
|
@@ -1,130 +1,130 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
2
|
-
import { css, html, LitElement } from 'lit';
|
|
3
|
-
import { customElement, property } from 'lit/decorators.js';
|
|
4
|
-
import { repeat } from 'lit/directives/repeat.js';
|
|
5
|
-
import eyeIcon from '../assets/img/icons/eye';
|
|
6
|
-
import eyeClosedIcon from '../assets/img/icons/eye-closed';
|
|
7
|
-
import { getDefaultSelectedFacets, } from '../models';
|
|
8
|
-
let FacetsTemplate = class FacetsTemplate extends LitElement {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
|
-
this.collectionPagePath = '/details/';
|
|
12
|
-
}
|
|
13
|
-
facetClicked(e, count, negative) {
|
|
14
|
-
const target = e.target;
|
|
15
|
-
const { checked, name, value } = target;
|
|
16
|
-
if (checked) {
|
|
17
|
-
this.facetChecked(name, value, count, negative);
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
this.facetUnchecked(name, value);
|
|
21
|
-
}
|
|
22
|
-
this.dispatchFacetClickEvent(name, this.getFacetState(checked, negative), negative);
|
|
23
|
-
}
|
|
24
|
-
facetChecked(key, value, count, negative) {
|
|
25
|
-
const { selectedFacets } = this;
|
|
26
|
-
let newFacets;
|
|
27
|
-
if (selectedFacets) {
|
|
28
|
-
newFacets = {
|
|
29
|
-
...selectedFacets,
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
newFacets = getDefaultSelectedFacets();
|
|
34
|
-
}
|
|
35
|
-
newFacets[key][value] = {
|
|
36
|
-
state: this.getFacetState(true, negative),
|
|
37
|
-
count,
|
|
38
|
-
};
|
|
39
|
-
this.selectedFacets = newFacets;
|
|
40
|
-
this.dispatchSelectedFacetsChanged();
|
|
41
|
-
}
|
|
42
|
-
facetUnchecked(key, value) {
|
|
43
|
-
const { selectedFacets } = this;
|
|
44
|
-
let newFacets;
|
|
45
|
-
if (selectedFacets) {
|
|
46
|
-
newFacets = {
|
|
47
|
-
...selectedFacets,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
newFacets = getDefaultSelectedFacets();
|
|
52
|
-
}
|
|
53
|
-
delete newFacets[key][value];
|
|
54
|
-
this.selectedFacets = newFacets;
|
|
55
|
-
this.dispatchSelectedFacetsChanged();
|
|
56
|
-
}
|
|
57
|
-
/** Returns the composed facet state corresponding to a positive or negative facet's checked state */
|
|
58
|
-
getFacetState(checked, negative) {
|
|
59
|
-
let state;
|
|
60
|
-
if (checked) {
|
|
61
|
-
state = negative ? 'hidden' : 'selected';
|
|
62
|
-
}
|
|
63
|
-
else {
|
|
64
|
-
state = 'none';
|
|
65
|
-
}
|
|
66
|
-
return state;
|
|
67
|
-
}
|
|
68
|
-
dispatchFacetClickEvent(key, state, negative) {
|
|
69
|
-
const event = new CustomEvent('facetClick', {
|
|
70
|
-
detail: { key, state, negative },
|
|
71
|
-
composed: true,
|
|
72
|
-
});
|
|
73
|
-
this.dispatchEvent(event);
|
|
74
|
-
}
|
|
75
|
-
dispatchSelectedFacetsChanged() {
|
|
76
|
-
const event = new CustomEvent('selectedFacetsChanged', {
|
|
77
|
-
detail: this.selectedFacets,
|
|
78
|
-
bubbles: true,
|
|
79
|
-
composed: true,
|
|
80
|
-
});
|
|
81
|
-
this.dispatchEvent(event);
|
|
82
|
-
}
|
|
83
|
-
getFacetsTemplate(facetGroup) {
|
|
84
|
-
let facetsBucket = facetGroup === null || facetGroup === void 0 ? void 0 : facetGroup.buckets;
|
|
85
|
-
/**
|
|
86
|
-
* sorting FacetBucket before render page / modal
|
|
87
|
-
* - first, selected items should be at top having sorted
|
|
88
|
-
* - second, suppressed/hidden items should be after selected having sorted
|
|
89
|
-
* - and then no-selected / not suppressed items should render having sorted
|
|
90
|
-
*/
|
|
91
|
-
facetsBucket = [
|
|
92
|
-
...facetsBucket
|
|
93
|
-
.filter(x => x.state === 'selected')
|
|
94
|
-
.sort((a, b) => (a.count < b.count ? 1 : -1)),
|
|
95
|
-
...facetsBucket
|
|
96
|
-
.filter(x => x.state === 'hidden')
|
|
97
|
-
.sort((a, b) => (a.count < b.count ? 1 : -1)),
|
|
98
|
-
...facetsBucket.filter(x => x.state === 'none'),
|
|
99
|
-
];
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { css, html, LitElement } from 'lit';
|
|
3
|
+
import { customElement, property } from 'lit/decorators.js';
|
|
4
|
+
import { repeat } from 'lit/directives/repeat.js';
|
|
5
|
+
import eyeIcon from '../assets/img/icons/eye';
|
|
6
|
+
import eyeClosedIcon from '../assets/img/icons/eye-closed';
|
|
7
|
+
import { getDefaultSelectedFacets, } from '../models';
|
|
8
|
+
let FacetsTemplate = class FacetsTemplate extends LitElement {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this.collectionPagePath = '/details/';
|
|
12
|
+
}
|
|
13
|
+
facetClicked(e, count, negative) {
|
|
14
|
+
const target = e.target;
|
|
15
|
+
const { checked, name, value } = target;
|
|
16
|
+
if (checked) {
|
|
17
|
+
this.facetChecked(name, value, count, negative);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
this.facetUnchecked(name, value);
|
|
21
|
+
}
|
|
22
|
+
this.dispatchFacetClickEvent(name, this.getFacetState(checked, negative), negative);
|
|
23
|
+
}
|
|
24
|
+
facetChecked(key, value, count, negative) {
|
|
25
|
+
const { selectedFacets } = this;
|
|
26
|
+
let newFacets;
|
|
27
|
+
if (selectedFacets) {
|
|
28
|
+
newFacets = {
|
|
29
|
+
...selectedFacets,
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
newFacets = getDefaultSelectedFacets();
|
|
34
|
+
}
|
|
35
|
+
newFacets[key][value] = {
|
|
36
|
+
state: this.getFacetState(true, negative),
|
|
37
|
+
count,
|
|
38
|
+
};
|
|
39
|
+
this.selectedFacets = newFacets;
|
|
40
|
+
this.dispatchSelectedFacetsChanged();
|
|
41
|
+
}
|
|
42
|
+
facetUnchecked(key, value) {
|
|
43
|
+
const { selectedFacets } = this;
|
|
44
|
+
let newFacets;
|
|
45
|
+
if (selectedFacets) {
|
|
46
|
+
newFacets = {
|
|
47
|
+
...selectedFacets,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
newFacets = getDefaultSelectedFacets();
|
|
52
|
+
}
|
|
53
|
+
delete newFacets[key][value];
|
|
54
|
+
this.selectedFacets = newFacets;
|
|
55
|
+
this.dispatchSelectedFacetsChanged();
|
|
56
|
+
}
|
|
57
|
+
/** Returns the composed facet state corresponding to a positive or negative facet's checked state */
|
|
58
|
+
getFacetState(checked, negative) {
|
|
59
|
+
let state;
|
|
60
|
+
if (checked) {
|
|
61
|
+
state = negative ? 'hidden' : 'selected';
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
state = 'none';
|
|
65
|
+
}
|
|
66
|
+
return state;
|
|
67
|
+
}
|
|
68
|
+
dispatchFacetClickEvent(key, state, negative) {
|
|
69
|
+
const event = new CustomEvent('facetClick', {
|
|
70
|
+
detail: { key, state, negative },
|
|
71
|
+
composed: true,
|
|
72
|
+
});
|
|
73
|
+
this.dispatchEvent(event);
|
|
74
|
+
}
|
|
75
|
+
dispatchSelectedFacetsChanged() {
|
|
76
|
+
const event = new CustomEvent('selectedFacetsChanged', {
|
|
77
|
+
detail: this.selectedFacets,
|
|
78
|
+
bubbles: true,
|
|
79
|
+
composed: true,
|
|
80
|
+
});
|
|
81
|
+
this.dispatchEvent(event);
|
|
82
|
+
}
|
|
83
|
+
getFacetsTemplate(facetGroup) {
|
|
84
|
+
let facetsBucket = facetGroup === null || facetGroup === void 0 ? void 0 : facetGroup.buckets;
|
|
85
|
+
/**
|
|
86
|
+
* sorting FacetBucket before render page / modal
|
|
87
|
+
* - first, selected items should be at top having sorted
|
|
88
|
+
* - second, suppressed/hidden items should be after selected having sorted
|
|
89
|
+
* - and then no-selected / not suppressed items should render having sorted
|
|
90
|
+
*/
|
|
91
|
+
facetsBucket = [
|
|
92
|
+
...facetsBucket
|
|
93
|
+
.filter(x => x.state === 'selected')
|
|
94
|
+
.sort((a, b) => (a.count < b.count ? 1 : -1)),
|
|
95
|
+
...facetsBucket
|
|
96
|
+
.filter(x => x.state === 'hidden')
|
|
97
|
+
.sort((a, b) => (a.count < b.count ? 1 : -1)),
|
|
98
|
+
...facetsBucket.filter(x => x.state === 'none'),
|
|
99
|
+
];
|
|
100
100
|
return html `
|
|
101
101
|
<div class="facets-on-${this.renderOn}">
|
|
102
|
-
${repeat(facetsBucket, bucket => `${facetGroup.key}:${bucket.key}`, bucket => {
|
|
103
|
-
var _a, _b;
|
|
104
|
-
const showOnlyCheckboxId = `${facetGroup.key}:${bucket.key}-show-only`;
|
|
105
|
-
const negativeCheckboxId = `${facetGroup.key}:${bucket.key}-negative`;
|
|
106
|
-
// for collections, we need to asynchronously load the collection name
|
|
107
|
-
// so we use the `async-collection-name` widget and for the rest, we have
|
|
108
|
-
// a static value to use
|
|
109
|
-
const bucketTextDisplay = facetGroup.key !== 'collection'
|
|
110
|
-
? html `${(_a = bucket.displayText) !== null && _a !== void 0 ? _a : bucket.key}`
|
|
102
|
+
${repeat(facetsBucket, bucket => `${facetGroup.key}:${bucket.key}`, bucket => {
|
|
103
|
+
var _a, _b;
|
|
104
|
+
const showOnlyCheckboxId = `${facetGroup.key}:${bucket.key}-show-only`;
|
|
105
|
+
const negativeCheckboxId = `${facetGroup.key}:${bucket.key}-negative`;
|
|
106
|
+
// for collections, we need to asynchronously load the collection name
|
|
107
|
+
// so we use the `async-collection-name` widget and for the rest, we have
|
|
108
|
+
// a static value to use
|
|
109
|
+
const bucketTextDisplay = facetGroup.key !== 'collection'
|
|
110
|
+
? html `${(_a = bucket.displayText) !== null && _a !== void 0 ? _a : bucket.key}`
|
|
111
111
|
: html `<a href="${this.collectionPagePath}${bucket.key}">
|
|
112
112
|
<async-collection-name
|
|
113
113
|
.collectionNameCache=${this.collectionNameCache}
|
|
114
114
|
.identifier=${bucket.key}
|
|
115
115
|
placeholder="-"
|
|
116
116
|
></async-collection-name>
|
|
117
|
-
</a> `;
|
|
118
|
-
const facetHidden = bucket.state === 'hidden';
|
|
119
|
-
const facetSelected = bucket.state === 'selected';
|
|
120
|
-
const titleText = `${facetGroup.key}: ${(_b = bucket.displayText) !== null && _b !== void 0 ? _b : bucket.key}`;
|
|
121
|
-
const onlyShowText = facetSelected
|
|
122
|
-
? `Show all ${facetGroup.key}s`
|
|
123
|
-
: `Only show ${titleText}`;
|
|
124
|
-
const hideText = `Hide ${titleText}`;
|
|
125
|
-
const unhideText = `Unhide ${titleText}`;
|
|
126
|
-
const showHideText = facetHidden ? unhideText : hideText;
|
|
127
|
-
const ariaLabel = `${titleText}, ${bucket.count} results`;
|
|
117
|
+
</a> `;
|
|
118
|
+
const facetHidden = bucket.state === 'hidden';
|
|
119
|
+
const facetSelected = bucket.state === 'selected';
|
|
120
|
+
const titleText = `${facetGroup.key}: ${(_b = bucket.displayText) !== null && _b !== void 0 ? _b : bucket.key}`;
|
|
121
|
+
const onlyShowText = facetSelected
|
|
122
|
+
? `Show all ${facetGroup.key}s`
|
|
123
|
+
: `Only show ${titleText}`;
|
|
124
|
+
const hideText = `Hide ${titleText}`;
|
|
125
|
+
const unhideText = `Unhide ${titleText}`;
|
|
126
|
+
const showHideText = facetHidden ? unhideText : hideText;
|
|
127
|
+
const ariaLabel = `${titleText}, ${bucket.count} results`;
|
|
128
128
|
return html `
|
|
129
129
|
<div class="facet-row">
|
|
130
130
|
<div class="facet-checkbox">
|
|
@@ -132,8 +132,8 @@ let FacetsTemplate = class FacetsTemplate extends LitElement {
|
|
|
132
132
|
type="checkbox"
|
|
133
133
|
.name=${facetGroup.key}
|
|
134
134
|
.value=${bucket.key}
|
|
135
|
-
@click=${(e) => {
|
|
136
|
-
this.facetClicked(e, bucket.count, false);
|
|
135
|
+
@click=${(e) => {
|
|
136
|
+
this.facetClicked(e, bucket.count, false);
|
|
137
137
|
}}
|
|
138
138
|
.checked=${facetSelected}
|
|
139
139
|
class="select-facet-checkbox"
|
|
@@ -145,8 +145,8 @@ let FacetsTemplate = class FacetsTemplate extends LitElement {
|
|
|
145
145
|
id=${negativeCheckboxId}
|
|
146
146
|
.name=${facetGroup.key}
|
|
147
147
|
.value=${bucket.key}
|
|
148
|
-
@click=${(e) => {
|
|
149
|
-
this.facetClicked(e, bucket.count, true);
|
|
148
|
+
@click=${(e) => {
|
|
149
|
+
this.facetClicked(e, bucket.count, true);
|
|
150
150
|
}}
|
|
151
151
|
.checked=${facetHidden}
|
|
152
152
|
class="hide-facet-checkbox"
|
|
@@ -172,15 +172,15 @@ let FacetsTemplate = class FacetsTemplate extends LitElement {
|
|
|
172
172
|
</div>
|
|
173
173
|
</label>
|
|
174
174
|
</div>
|
|
175
|
-
`;
|
|
175
|
+
`;
|
|
176
176
|
})}
|
|
177
177
|
</div>
|
|
178
|
-
`;
|
|
179
|
-
}
|
|
180
|
-
render() {
|
|
181
|
-
return html `${this.getFacetsTemplate(this.facetGroup)}`;
|
|
182
|
-
}
|
|
183
|
-
static get styles() {
|
|
178
|
+
`;
|
|
179
|
+
}
|
|
180
|
+
render() {
|
|
181
|
+
return html `${this.getFacetsTemplate(this.facetGroup)}`;
|
|
182
|
+
}
|
|
183
|
+
static get styles() {
|
|
184
184
|
return css `
|
|
185
185
|
@media (max-width: 560px) {
|
|
186
186
|
.facets-on-modal {
|
|
@@ -281,26 +281,26 @@ let FacetsTemplate = class FacetsTemplate extends LitElement {
|
|
|
281
281
|
a:hover {
|
|
282
282
|
text-decoration: underline;
|
|
283
283
|
}
|
|
284
|
-
`;
|
|
285
|
-
}
|
|
286
|
-
};
|
|
287
|
-
__decorate([
|
|
288
|
-
property({ type: Object })
|
|
289
|
-
], FacetsTemplate.prototype, "facetGroup", void 0);
|
|
290
|
-
__decorate([
|
|
291
|
-
property({ type: Object })
|
|
292
|
-
], FacetsTemplate.prototype, "selectedFacets", void 0);
|
|
293
|
-
__decorate([
|
|
294
|
-
property({ type: String })
|
|
295
|
-
], FacetsTemplate.prototype, "renderOn", void 0);
|
|
296
|
-
__decorate([
|
|
297
|
-
property({ type: String })
|
|
298
|
-
], FacetsTemplate.prototype, "collectionPagePath", void 0);
|
|
299
|
-
__decorate([
|
|
300
|
-
property({ type: Object })
|
|
301
|
-
], FacetsTemplate.prototype, "collectionNameCache", void 0);
|
|
302
|
-
FacetsTemplate = __decorate([
|
|
303
|
-
customElement('facets-template')
|
|
304
|
-
], FacetsTemplate);
|
|
305
|
-
export { FacetsTemplate };
|
|
284
|
+
`;
|
|
285
|
+
}
|
|
286
|
+
};
|
|
287
|
+
__decorate([
|
|
288
|
+
property({ type: Object })
|
|
289
|
+
], FacetsTemplate.prototype, "facetGroup", void 0);
|
|
290
|
+
__decorate([
|
|
291
|
+
property({ type: Object })
|
|
292
|
+
], FacetsTemplate.prototype, "selectedFacets", void 0);
|
|
293
|
+
__decorate([
|
|
294
|
+
property({ type: String })
|
|
295
|
+
], FacetsTemplate.prototype, "renderOn", void 0);
|
|
296
|
+
__decorate([
|
|
297
|
+
property({ type: String })
|
|
298
|
+
], FacetsTemplate.prototype, "collectionPagePath", void 0);
|
|
299
|
+
__decorate([
|
|
300
|
+
property({ type: Object })
|
|
301
|
+
], FacetsTemplate.prototype, "collectionNameCache", void 0);
|
|
302
|
+
FacetsTemplate = __decorate([
|
|
303
|
+
customElement('facets-template')
|
|
304
|
+
], FacetsTemplate);
|
|
305
|
+
export { FacetsTemplate };
|
|
306
306
|
//# sourceMappingURL=facets-template.js.map
|
|
@@ -1,77 +1,77 @@
|
|
|
1
|
-
import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
|
|
2
|
-
import { Aggregation, SearchServiceInterface, SearchType, AggregationSortType, FilterMap } from '@internetarchive/search-service';
|
|
3
|
-
import type { CollectionNameCacheInterface } from '@internetarchive/collection-name-cache';
|
|
4
|
-
import type { ModalManagerInterface } from '@internetarchive/modal-manager';
|
|
5
|
-
import type { AnalyticsManagerInterface } from '@internetarchive/analytics-manager';
|
|
6
|
-
import { SelectedFacets, FacetGroup, FacetOption } from '../models';
|
|
7
|
-
import '@internetarchive/ia-activity-indicator/ia-activity-indicator';
|
|
8
|
-
import './more-facets-pagination';
|
|
9
|
-
import './facets-template';
|
|
10
|
-
import './toggle-switch';
|
|
11
|
-
export declare class MoreFacetsContent extends LitElement {
|
|
12
|
-
facetKey?: FacetOption;
|
|
13
|
-
facetAggregationKey?: FacetOption;
|
|
14
|
-
query?: string;
|
|
15
|
-
filterMap?: FilterMap;
|
|
16
|
-
modalManager?: ModalManagerInterface;
|
|
17
|
-
searchService?: SearchServiceInterface;
|
|
18
|
-
searchType?: SearchType;
|
|
19
|
-
withinCollection?: string;
|
|
20
|
-
collectionNameCache?: CollectionNameCacheInterface;
|
|
21
|
-
selectedFacets?: SelectedFacets;
|
|
22
|
-
sortedBy: AggregationSortType;
|
|
23
|
-
analyticsHandler?: AnalyticsManagerInterface;
|
|
24
|
-
aggregations?: Record<string, Aggregation>;
|
|
25
|
-
facetGroup?: FacetGroup[];
|
|
26
|
-
facetGroupTitle?: String;
|
|
27
|
-
pageNumber: number;
|
|
28
|
-
/**
|
|
29
|
-
* Facets are loading on popup
|
|
30
|
-
*/
|
|
31
|
-
facetsLoading: boolean;
|
|
32
|
-
paginationSize: number;
|
|
33
|
-
facetsType: string;
|
|
34
|
-
private facetsPerPage;
|
|
35
|
-
updated(changed: PropertyValues): void;
|
|
36
|
-
firstUpdated(): void;
|
|
37
|
-
/**
|
|
38
|
-
* Close more facets modal on Escape click
|
|
39
|
-
*/
|
|
40
|
-
private setupEscapeListeners;
|
|
41
|
-
/**
|
|
42
|
-
* Get specific facets data from search-service API based of currently query params
|
|
43
|
-
* - this.aggregations - hold result of search service and being used for further processing.
|
|
44
|
-
*/
|
|
45
|
-
updateSpecificFacets(): Promise<void>;
|
|
46
|
-
private pageNumberClicked;
|
|
47
|
-
/**
|
|
48
|
-
* Combines the selected facets with the aggregations to create a single list of facets
|
|
49
|
-
*/
|
|
50
|
-
private get mergedFacets();
|
|
51
|
-
/**
|
|
52
|
-
* Converts the selected facets to a `FacetGroup` array,
|
|
53
|
-
* which is easier to work with
|
|
54
|
-
*/
|
|
55
|
-
private get selectedFacetGroups();
|
|
56
|
-
/**
|
|
57
|
-
* Converts the raw `aggregations` to `FacetGroups`, which are easier to use
|
|
58
|
-
*/
|
|
59
|
-
private get aggregationFacetGroups();
|
|
60
|
-
/**
|
|
61
|
-
* for collections, we need to asynchronously load the collection name
|
|
62
|
-
* so we use the `async-collection-name` widget and for the rest, we have a static value to use
|
|
63
|
-
*
|
|
64
|
-
* @param castedBuckets
|
|
65
|
-
*/
|
|
66
|
-
private preloadCollectionNames;
|
|
67
|
-
private get getMoreFacetsTemplate();
|
|
68
|
-
private get loaderTemplate();
|
|
69
|
-
private get facetsPaginationTemplate();
|
|
70
|
-
private get footerTemplate();
|
|
71
|
-
private sortFacetAggregation;
|
|
72
|
-
private get getModalHeaderTemplate();
|
|
73
|
-
render(): TemplateResult<1>;
|
|
74
|
-
private applySearchFacetsClicked;
|
|
75
|
-
private cancelClick;
|
|
76
|
-
static get styles(): CSSResultGroup;
|
|
77
|
-
}
|
|
1
|
+
import { CSSResultGroup, LitElement, PropertyValues, TemplateResult } from 'lit';
|
|
2
|
+
import { Aggregation, SearchServiceInterface, SearchType, AggregationSortType, FilterMap } from '@internetarchive/search-service';
|
|
3
|
+
import type { CollectionNameCacheInterface } from '@internetarchive/collection-name-cache';
|
|
4
|
+
import type { ModalManagerInterface } from '@internetarchive/modal-manager';
|
|
5
|
+
import type { AnalyticsManagerInterface } from '@internetarchive/analytics-manager';
|
|
6
|
+
import { SelectedFacets, FacetGroup, FacetOption } from '../models';
|
|
7
|
+
import '@internetarchive/ia-activity-indicator/ia-activity-indicator';
|
|
8
|
+
import './more-facets-pagination';
|
|
9
|
+
import './facets-template';
|
|
10
|
+
import './toggle-switch';
|
|
11
|
+
export declare class MoreFacetsContent extends LitElement {
|
|
12
|
+
facetKey?: FacetOption;
|
|
13
|
+
facetAggregationKey?: FacetOption;
|
|
14
|
+
query?: string;
|
|
15
|
+
filterMap?: FilterMap;
|
|
16
|
+
modalManager?: ModalManagerInterface;
|
|
17
|
+
searchService?: SearchServiceInterface;
|
|
18
|
+
searchType?: SearchType;
|
|
19
|
+
withinCollection?: string;
|
|
20
|
+
collectionNameCache?: CollectionNameCacheInterface;
|
|
21
|
+
selectedFacets?: SelectedFacets;
|
|
22
|
+
sortedBy: AggregationSortType;
|
|
23
|
+
analyticsHandler?: AnalyticsManagerInterface;
|
|
24
|
+
aggregations?: Record<string, Aggregation>;
|
|
25
|
+
facetGroup?: FacetGroup[];
|
|
26
|
+
facetGroupTitle?: String;
|
|
27
|
+
pageNumber: number;
|
|
28
|
+
/**
|
|
29
|
+
* Facets are loading on popup
|
|
30
|
+
*/
|
|
31
|
+
facetsLoading: boolean;
|
|
32
|
+
paginationSize: number;
|
|
33
|
+
facetsType: string;
|
|
34
|
+
private facetsPerPage;
|
|
35
|
+
updated(changed: PropertyValues): void;
|
|
36
|
+
firstUpdated(): void;
|
|
37
|
+
/**
|
|
38
|
+
* Close more facets modal on Escape click
|
|
39
|
+
*/
|
|
40
|
+
private setupEscapeListeners;
|
|
41
|
+
/**
|
|
42
|
+
* Get specific facets data from search-service API based of currently query params
|
|
43
|
+
* - this.aggregations - hold result of search service and being used for further processing.
|
|
44
|
+
*/
|
|
45
|
+
updateSpecificFacets(): Promise<void>;
|
|
46
|
+
private pageNumberClicked;
|
|
47
|
+
/**
|
|
48
|
+
* Combines the selected facets with the aggregations to create a single list of facets
|
|
49
|
+
*/
|
|
50
|
+
private get mergedFacets();
|
|
51
|
+
/**
|
|
52
|
+
* Converts the selected facets to a `FacetGroup` array,
|
|
53
|
+
* which is easier to work with
|
|
54
|
+
*/
|
|
55
|
+
private get selectedFacetGroups();
|
|
56
|
+
/**
|
|
57
|
+
* Converts the raw `aggregations` to `FacetGroups`, which are easier to use
|
|
58
|
+
*/
|
|
59
|
+
private get aggregationFacetGroups();
|
|
60
|
+
/**
|
|
61
|
+
* for collections, we need to asynchronously load the collection name
|
|
62
|
+
* so we use the `async-collection-name` widget and for the rest, we have a static value to use
|
|
63
|
+
*
|
|
64
|
+
* @param castedBuckets
|
|
65
|
+
*/
|
|
66
|
+
private preloadCollectionNames;
|
|
67
|
+
private get getMoreFacetsTemplate();
|
|
68
|
+
private get loaderTemplate();
|
|
69
|
+
private get facetsPaginationTemplate();
|
|
70
|
+
private get footerTemplate();
|
|
71
|
+
private sortFacetAggregation;
|
|
72
|
+
private get getModalHeaderTemplate();
|
|
73
|
+
render(): TemplateResult<1>;
|
|
74
|
+
private applySearchFacetsClicked;
|
|
75
|
+
private cancelClick;
|
|
76
|
+
static get styles(): CSSResultGroup;
|
|
77
|
+
}
|