@internetarchive/collection-browser 1.14.1 → 1.14.2
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 +64 -64
- package/dist/src/app-root.js +311 -311
- 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 +523 -522
- package/dist/src/collection-browser.js +1841 -1834
- 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 +104 -104
- package/dist/src/collection-facets.js +506 -506
- package/dist/src/empty-placeholder.d.ts +23 -23
- package/dist/src/empty-placeholder.js +74 -74
- 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/manage/manage-bar.d.ts +26 -26
- package/dist/src/manage/manage-bar.js +53 -53
- 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 +164 -164
- package/dist/src/models.js +269 -269
- package/dist/src/restoration-state-handler.d.ts +70 -70
- package/dist/src/restoration-state-handler.js +355 -355
- 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 +208 -208
- package/dist/src/sort-filter-bar/sort-filter-bar.js +637 -637
- 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 +63 -63
- package/dist/src/tiles/tile-dispatcher.js +225 -225
- 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 +25 -25
- package/dist/src/utils/analytics-events.js +27 -27
- 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 +1098 -1098
- 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 +682 -682
- package/dist/test/empty-placeholder.test.d.ts +1 -1
- package/dist/test/empty-placeholder.test.js +63 -63
- 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 +86 -86
- package/dist/test/manage/manage-bar.test.d.ts +1 -1
- package/dist/test/manage/manage-bar.test.js +72 -72
- 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 +21 -21
- package/dist/test/mocks/mock-search-responses.js +709 -709
- package/dist/test/mocks/mock-search-service.d.ts +15 -15
- package/dist/test/mocks/mock-search-service.js +50 -50
- package/dist/test/restoration-state-handler.test.d.ts +1 -1
- package/dist/test/restoration-state-handler.test.js +270 -270
- 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 +258 -258
- 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 +94 -94
- 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 +9 -0
- package/tsconfig.json +21 -21
- package/web-dev-server.config.mjs +30 -30
- package/web-test-runner.config.mjs +41 -41
|
@@ -1 +1 @@
|
|
|
1
|
-
import '../../src/collection-facets/facets-template';
|
|
1
|
+
import '../../src/collection-facets/facets-template';
|
|
@@ -1,155 +1,155 @@
|
|
|
1
|
-
import { expect, fixture } from '@open-wc/testing';
|
|
2
|
-
import sinon from 'sinon';
|
|
3
|
-
import { html } from 'lit';
|
|
4
|
-
import '../../src/collection-facets/facets-template';
|
|
5
|
-
import { getDefaultSelectedFacets } from '../../src/models';
|
|
6
|
-
const facetGroup = {
|
|
7
|
-
title: 'Media Type',
|
|
8
|
-
key: 'mediatype',
|
|
9
|
-
buckets: [
|
|
10
|
-
{ displayText: 'audio', key: 'audio', count: 1001, state: 'none' },
|
|
11
|
-
{ displayText: 'movies', key: 'movies', count: 901, state: 'none' },
|
|
12
|
-
{ displayText: 'texts', key: 'texts', count: 2101, state: 'none' },
|
|
13
|
-
{ displayText: 'data', key: 'data', count: 230, state: 'none' },
|
|
14
|
-
{ displayText: 'web', key: 'web', count: 453, state: 'none' },
|
|
15
|
-
],
|
|
16
|
-
};
|
|
17
|
-
describe('Render facets', () => {
|
|
18
|
-
it('should render more facets template', async () => {
|
|
19
|
-
var _a;
|
|
20
|
-
const el = await fixture(html `<facets-template .facetGroup=${facetGroup}></facets-template>`);
|
|
21
|
-
await el.updateComplete;
|
|
22
|
-
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facet-row')).to.exist;
|
|
23
|
-
});
|
|
24
|
-
it('facets render on page', async () => {
|
|
25
|
-
var _a;
|
|
1
|
+
import { expect, fixture } from '@open-wc/testing';
|
|
2
|
+
import sinon from 'sinon';
|
|
3
|
+
import { html } from 'lit';
|
|
4
|
+
import '../../src/collection-facets/facets-template';
|
|
5
|
+
import { getDefaultSelectedFacets } from '../../src/models';
|
|
6
|
+
const facetGroup = {
|
|
7
|
+
title: 'Media Type',
|
|
8
|
+
key: 'mediatype',
|
|
9
|
+
buckets: [
|
|
10
|
+
{ displayText: 'audio', key: 'audio', count: 1001, state: 'none' },
|
|
11
|
+
{ displayText: 'movies', key: 'movies', count: 901, state: 'none' },
|
|
12
|
+
{ displayText: 'texts', key: 'texts', count: 2101, state: 'none' },
|
|
13
|
+
{ displayText: 'data', key: 'data', count: 230, state: 'none' },
|
|
14
|
+
{ displayText: 'web', key: 'web', count: 453, state: 'none' },
|
|
15
|
+
],
|
|
16
|
+
};
|
|
17
|
+
describe('Render facets', () => {
|
|
18
|
+
it('should render more facets template', async () => {
|
|
19
|
+
var _a;
|
|
20
|
+
const el = await fixture(html `<facets-template .facetGroup=${facetGroup}></facets-template>`);
|
|
21
|
+
await el.updateComplete;
|
|
22
|
+
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facet-row')).to.exist;
|
|
23
|
+
});
|
|
24
|
+
it('facets render on page', async () => {
|
|
25
|
+
var _a;
|
|
26
26
|
const el = await fixture(html `<facets-template
|
|
27
27
|
.facetGroup=${facetGroup}
|
|
28
28
|
.renderOn=${'page'}
|
|
29
|
-
></facets-template>`);
|
|
30
|
-
await el.updateComplete;
|
|
31
|
-
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-on-page')).to.exist;
|
|
32
|
-
});
|
|
33
|
-
it('facets render on modal', async () => {
|
|
34
|
-
var _a;
|
|
29
|
+
></facets-template>`);
|
|
30
|
+
await el.updateComplete;
|
|
31
|
+
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-on-page')).to.exist;
|
|
32
|
+
});
|
|
33
|
+
it('facets render on modal', async () => {
|
|
34
|
+
var _a;
|
|
35
35
|
const el = await fixture(html `<facets-template
|
|
36
36
|
.facetGroup=${facetGroup}
|
|
37
37
|
.renderOn=${'modal'}
|
|
38
|
-
></facets-template>`);
|
|
39
|
-
await el.updateComplete;
|
|
40
|
-
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-on-modal')).to.exist;
|
|
41
|
-
});
|
|
42
|
-
it('find facet-title and facet-count for particular facet group', async () => {
|
|
43
|
-
var _a, _b, _c, _d;
|
|
44
|
-
const el = await fixture(html `<facets-template .facetGroup=${facetGroup}></facets-template>`);
|
|
45
|
-
await el.updateComplete;
|
|
46
|
-
const facetInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facet-info-display');
|
|
47
|
-
expect((_b = facetInfo === null || facetInfo === void 0 ? void 0 : facetInfo.querySelector('.facet-title')) === null || _b === void 0 ? void 0 : _b.textContent).to.equal('audio');
|
|
48
|
-
expect((_d = (_c = facetInfo === null || facetInfo === void 0 ? void 0 : facetInfo.querySelector('.facet-count')) === null || _c === void 0 ? void 0 : _c.textContent) === null || _d === void 0 ? void 0 : _d.trim()).to.equal('1,001');
|
|
49
|
-
});
|
|
50
|
-
it('find the hidden facet item', async () => {
|
|
51
|
-
var _a;
|
|
52
|
-
const selectedFacets = { ...facetGroup };
|
|
53
|
-
selectedFacets.buckets[2].state = 'hidden'; // hide 'texts' mediatype
|
|
38
|
+
></facets-template>`);
|
|
39
|
+
await el.updateComplete;
|
|
40
|
+
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-on-modal')).to.exist;
|
|
41
|
+
});
|
|
42
|
+
it('find facet-title and facet-count for particular facet group', async () => {
|
|
43
|
+
var _a, _b, _c, _d;
|
|
44
|
+
const el = await fixture(html `<facets-template .facetGroup=${facetGroup}></facets-template>`);
|
|
45
|
+
await el.updateComplete;
|
|
46
|
+
const facetInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facet-info-display');
|
|
47
|
+
expect((_b = facetInfo === null || facetInfo === void 0 ? void 0 : facetInfo.querySelector('.facet-title')) === null || _b === void 0 ? void 0 : _b.textContent).to.equal('audio');
|
|
48
|
+
expect((_d = (_c = facetInfo === null || facetInfo === void 0 ? void 0 : facetInfo.querySelector('.facet-count')) === null || _c === void 0 ? void 0 : _c.textContent) === null || _d === void 0 ? void 0 : _d.trim()).to.equal('1,001');
|
|
49
|
+
});
|
|
50
|
+
it('find the hidden facet item', async () => {
|
|
51
|
+
var _a;
|
|
52
|
+
const selectedFacets = { ...facetGroup };
|
|
53
|
+
selectedFacets.buckets[2].state = 'hidden'; // hide 'texts' mediatype
|
|
54
54
|
const el = await fixture(html `<facets-template
|
|
55
55
|
.facetGroup=${facetGroup}
|
|
56
56
|
.selectedFacets=${selectedFacets}
|
|
57
|
-
></facets-template>`);
|
|
58
|
-
await el.updateComplete;
|
|
59
|
-
const hiddenFacet = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('.hide-facet-icon')[0];
|
|
60
|
-
// check title attribute for 'texts' mediatype
|
|
61
|
-
expect(hiddenFacet === null || hiddenFacet === void 0 ? void 0 : hiddenFacet.getAttribute('title')).equal('Unhide mediatype: texts');
|
|
62
|
-
});
|
|
63
|
-
it('find the selected facet item', async () => {
|
|
64
|
-
var _a;
|
|
65
|
-
const selectedFacets = { ...facetGroup };
|
|
66
|
-
selectedFacets.buckets[1].state = 'selected'; // select 'movies' mediatype
|
|
57
|
+
></facets-template>`);
|
|
58
|
+
await el.updateComplete;
|
|
59
|
+
const hiddenFacet = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('.hide-facet-icon')[0];
|
|
60
|
+
// check title attribute for 'texts' mediatype
|
|
61
|
+
expect(hiddenFacet === null || hiddenFacet === void 0 ? void 0 : hiddenFacet.getAttribute('title')).equal('Unhide mediatype: texts');
|
|
62
|
+
});
|
|
63
|
+
it('find the selected facet item', async () => {
|
|
64
|
+
var _a;
|
|
65
|
+
const selectedFacets = { ...facetGroup };
|
|
66
|
+
selectedFacets.buckets[1].state = 'selected'; // select 'movies' mediatype
|
|
67
67
|
const el = await fixture(html `<facets-template
|
|
68
68
|
.facetGroup=${facetGroup}
|
|
69
69
|
.selectedFacets=${selectedFacets}
|
|
70
|
-
></facets-template>`);
|
|
71
|
-
await el.updateComplete;
|
|
72
|
-
const selectedFacet = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('.hide-facet-icon')[0];
|
|
73
|
-
// check title attribute for 'movies' mediatype
|
|
74
|
-
expect(selectedFacet === null || selectedFacet === void 0 ? void 0 : selectedFacet.getAttribute('title')).equal('Hide mediatype: movies');
|
|
75
|
-
});
|
|
76
|
-
it('emits facetClick events for normal facets', async () => {
|
|
77
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
78
|
-
const facetClickSpy = sinon.spy();
|
|
79
|
-
const mediatypeGroup = {
|
|
80
|
-
title: 'Media Type',
|
|
81
|
-
key: 'mediatype',
|
|
82
|
-
buckets: [
|
|
83
|
-
{ displayText: 'audio', key: 'audio', count: 42, state: 'none' },
|
|
84
|
-
],
|
|
85
|
-
};
|
|
86
|
-
const selectedFacets = getDefaultSelectedFacets();
|
|
70
|
+
></facets-template>`);
|
|
71
|
+
await el.updateComplete;
|
|
72
|
+
const selectedFacet = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('.hide-facet-icon')[0];
|
|
73
|
+
// check title attribute for 'movies' mediatype
|
|
74
|
+
expect(selectedFacet === null || selectedFacet === void 0 ? void 0 : selectedFacet.getAttribute('title')).equal('Hide mediatype: movies');
|
|
75
|
+
});
|
|
76
|
+
it('emits facetClick events for normal facets', async () => {
|
|
77
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
78
|
+
const facetClickSpy = sinon.spy();
|
|
79
|
+
const mediatypeGroup = {
|
|
80
|
+
title: 'Media Type',
|
|
81
|
+
key: 'mediatype',
|
|
82
|
+
buckets: [
|
|
83
|
+
{ displayText: 'audio', key: 'audio', count: 42, state: 'none' },
|
|
84
|
+
],
|
|
85
|
+
};
|
|
86
|
+
const selectedFacets = getDefaultSelectedFacets();
|
|
87
87
|
const el = await fixture(html `<facets-template
|
|
88
88
|
.facetGroup=${mediatypeGroup}
|
|
89
89
|
.selectedFacets=${selectedFacets}
|
|
90
90
|
@facetClick=${facetClickSpy}
|
|
91
|
-
></facets-template>`);
|
|
92
|
-
const checkbox = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.select-facet-checkbox');
|
|
93
|
-
expect(checkbox).to.exist;
|
|
94
|
-
// Select it
|
|
95
|
-
checkbox.click();
|
|
96
|
-
await el.updateComplete;
|
|
97
|
-
expect(facetClickSpy.callCount).to.equal(1);
|
|
98
|
-
const selectEvent = facetClickSpy
|
|
99
|
-
.args[0][0];
|
|
100
|
-
expect(selectEvent).to.exist;
|
|
101
|
-
expect((_b = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _b === void 0 ? void 0 : _b.key).to.equal('mediatype');
|
|
102
|
-
expect((_c = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _c === void 0 ? void 0 : _c.state).to.equal('selected');
|
|
103
|
-
expect((_d = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _d === void 0 ? void 0 : _d.negative).to.be.false;
|
|
104
|
-
// Unselect it
|
|
105
|
-
checkbox.click();
|
|
106
|
-
await el.updateComplete;
|
|
107
|
-
expect(facetClickSpy.callCount).to.equal(2);
|
|
108
|
-
const unselectEvent = facetClickSpy
|
|
109
|
-
.args[1][0];
|
|
110
|
-
expect(unselectEvent).to.exist;
|
|
111
|
-
expect((_e = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _e === void 0 ? void 0 : _e.key).to.equal('mediatype');
|
|
112
|
-
expect((_f = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _f === void 0 ? void 0 : _f.state).to.equal('none');
|
|
113
|
-
expect((_g = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _g === void 0 ? void 0 : _g.negative).to.be.false;
|
|
114
|
-
});
|
|
115
|
-
it('emits facetClick events for negative facets', async () => {
|
|
116
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
|
117
|
-
const facetClickSpy = sinon.spy();
|
|
118
|
-
const mediatypeGroup = {
|
|
119
|
-
title: 'Media Type',
|
|
120
|
-
key: 'mediatype',
|
|
121
|
-
buckets: [
|
|
122
|
-
{ displayText: 'audio', key: 'audio', count: 42, state: 'none' },
|
|
123
|
-
],
|
|
124
|
-
};
|
|
125
|
-
const selectedFacets = getDefaultSelectedFacets();
|
|
91
|
+
></facets-template>`);
|
|
92
|
+
const checkbox = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.select-facet-checkbox');
|
|
93
|
+
expect(checkbox).to.exist;
|
|
94
|
+
// Select it
|
|
95
|
+
checkbox.click();
|
|
96
|
+
await el.updateComplete;
|
|
97
|
+
expect(facetClickSpy.callCount).to.equal(1);
|
|
98
|
+
const selectEvent = facetClickSpy
|
|
99
|
+
.args[0][0];
|
|
100
|
+
expect(selectEvent).to.exist;
|
|
101
|
+
expect((_b = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _b === void 0 ? void 0 : _b.key).to.equal('mediatype');
|
|
102
|
+
expect((_c = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _c === void 0 ? void 0 : _c.state).to.equal('selected');
|
|
103
|
+
expect((_d = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _d === void 0 ? void 0 : _d.negative).to.be.false;
|
|
104
|
+
// Unselect it
|
|
105
|
+
checkbox.click();
|
|
106
|
+
await el.updateComplete;
|
|
107
|
+
expect(facetClickSpy.callCount).to.equal(2);
|
|
108
|
+
const unselectEvent = facetClickSpy
|
|
109
|
+
.args[1][0];
|
|
110
|
+
expect(unselectEvent).to.exist;
|
|
111
|
+
expect((_e = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _e === void 0 ? void 0 : _e.key).to.equal('mediatype');
|
|
112
|
+
expect((_f = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _f === void 0 ? void 0 : _f.state).to.equal('none');
|
|
113
|
+
expect((_g = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _g === void 0 ? void 0 : _g.negative).to.be.false;
|
|
114
|
+
});
|
|
115
|
+
it('emits facetClick events for negative facets', async () => {
|
|
116
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
117
|
+
const facetClickSpy = sinon.spy();
|
|
118
|
+
const mediatypeGroup = {
|
|
119
|
+
title: 'Media Type',
|
|
120
|
+
key: 'mediatype',
|
|
121
|
+
buckets: [
|
|
122
|
+
{ displayText: 'audio', key: 'audio', count: 42, state: 'none' },
|
|
123
|
+
],
|
|
124
|
+
};
|
|
125
|
+
const selectedFacets = getDefaultSelectedFacets();
|
|
126
126
|
const el = await fixture(html `<facets-template
|
|
127
127
|
.facetGroup=${mediatypeGroup}
|
|
128
128
|
.selectedFacets=${selectedFacets}
|
|
129
129
|
@facetClick=${facetClickSpy}
|
|
130
|
-
></facets-template>`);
|
|
131
|
-
const checkbox = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.hide-facet-checkbox');
|
|
132
|
-
expect(checkbox).to.exist;
|
|
133
|
-
// Select it
|
|
134
|
-
checkbox.click();
|
|
135
|
-
await el.updateComplete;
|
|
136
|
-
expect(facetClickSpy.callCount).to.equal(1);
|
|
137
|
-
const selectEvent = facetClickSpy
|
|
138
|
-
.args[0][0];
|
|
139
|
-
expect(selectEvent).to.exist;
|
|
140
|
-
expect((_b = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _b === void 0 ? void 0 : _b.key).to.equal('mediatype');
|
|
141
|
-
expect((_c = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _c === void 0 ? void 0 : _c.state).to.equal('hidden');
|
|
142
|
-
expect((_d = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _d === void 0 ? void 0 : _d.negative).to.be.true;
|
|
143
|
-
// Unselect it
|
|
144
|
-
checkbox.click();
|
|
145
|
-
await el.updateComplete;
|
|
146
|
-
expect(facetClickSpy.callCount).to.equal(2);
|
|
147
|
-
const unselectEvent = facetClickSpy
|
|
148
|
-
.args[1][0];
|
|
149
|
-
expect(unselectEvent).to.exist;
|
|
150
|
-
expect((_e = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _e === void 0 ? void 0 : _e.key).to.equal('mediatype');
|
|
151
|
-
expect((_f = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _f === void 0 ? void 0 : _f.state).to.equal('none');
|
|
152
|
-
expect((_g = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _g === void 0 ? void 0 : _g.negative).to.be.true;
|
|
153
|
-
});
|
|
154
|
-
});
|
|
130
|
+
></facets-template>`);
|
|
131
|
+
const checkbox = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.hide-facet-checkbox');
|
|
132
|
+
expect(checkbox).to.exist;
|
|
133
|
+
// Select it
|
|
134
|
+
checkbox.click();
|
|
135
|
+
await el.updateComplete;
|
|
136
|
+
expect(facetClickSpy.callCount).to.equal(1);
|
|
137
|
+
const selectEvent = facetClickSpy
|
|
138
|
+
.args[0][0];
|
|
139
|
+
expect(selectEvent).to.exist;
|
|
140
|
+
expect((_b = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _b === void 0 ? void 0 : _b.key).to.equal('mediatype');
|
|
141
|
+
expect((_c = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _c === void 0 ? void 0 : _c.state).to.equal('hidden');
|
|
142
|
+
expect((_d = selectEvent === null || selectEvent === void 0 ? void 0 : selectEvent.detail) === null || _d === void 0 ? void 0 : _d.negative).to.be.true;
|
|
143
|
+
// Unselect it
|
|
144
|
+
checkbox.click();
|
|
145
|
+
await el.updateComplete;
|
|
146
|
+
expect(facetClickSpy.callCount).to.equal(2);
|
|
147
|
+
const unselectEvent = facetClickSpy
|
|
148
|
+
.args[1][0];
|
|
149
|
+
expect(unselectEvent).to.exist;
|
|
150
|
+
expect((_e = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _e === void 0 ? void 0 : _e.key).to.equal('mediatype');
|
|
151
|
+
expect((_f = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _f === void 0 ? void 0 : _f.state).to.equal('none');
|
|
152
|
+
expect((_g = unselectEvent === null || unselectEvent === void 0 ? void 0 : unselectEvent.detail) === null || _g === void 0 ? void 0 : _g.negative).to.be.true;
|
|
153
|
+
});
|
|
154
|
+
});
|
|
155
155
|
//# sourceMappingURL=facets-template.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import '../../src/collection-facets/more-facets-content';
|
|
1
|
+
import '../../src/collection-facets/more-facets-content';
|
|
@@ -1,155 +1,155 @@
|
|
|
1
|
-
/* eslint-disable import/no-duplicates */
|
|
2
|
-
import { expect, fixture } from '@open-wc/testing';
|
|
3
|
-
import { html } from 'lit';
|
|
4
|
-
import { Aggregation } from '@internetarchive/search-service';
|
|
5
|
-
import '../../src/collection-facets/more-facets-content';
|
|
6
|
-
import { MockSearchService } from '../mocks/mock-search-service';
|
|
7
|
-
import { MockAnalyticsHandler } from '../mocks/mock-analytics-handler';
|
|
8
|
-
const selectedFacetsGroup = {
|
|
9
|
-
title: 'Media Type',
|
|
10
|
-
key: 'mediatype',
|
|
11
|
-
buckets: [
|
|
12
|
-
{ displayText: 'audio', key: 'audio', count: 1001, state: 'none' },
|
|
13
|
-
{ displayText: 'movies', key: 'movies', count: 901, state: 'none' },
|
|
14
|
-
{ displayText: 'texts', key: 'texts', count: 2101, state: 'none' },
|
|
15
|
-
{ displayText: 'data', key: 'data', count: 230, state: 'none' },
|
|
16
|
-
{ displayText: 'web', key: 'web', count: 453, state: 'none' },
|
|
17
|
-
],
|
|
18
|
-
};
|
|
19
|
-
const aggregations = {
|
|
20
|
-
collection: new Aggregation({
|
|
21
|
-
buckets: [
|
|
22
|
-
{
|
|
23
|
-
key: 'foo',
|
|
24
|
-
doc_count: 5,
|
|
25
|
-
},
|
|
26
|
-
],
|
|
27
|
-
}),
|
|
28
|
-
};
|
|
29
|
-
describe('More facets content', () => {
|
|
30
|
-
it('should render more facets template', async () => {
|
|
31
|
-
var _a;
|
|
32
|
-
const el = await fixture(html `<more-facets-content></more-facets-content>`);
|
|
33
|
-
el.facetsLoading = false;
|
|
34
|
-
await el.updateComplete;
|
|
35
|
-
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-content')).to.exist;
|
|
36
|
-
});
|
|
37
|
-
it('should render more facets loader template', async () => {
|
|
38
|
-
var _a;
|
|
39
|
-
const el = await fixture(html `<more-facets-content></more-facets-content>`);
|
|
40
|
-
el.facetsLoading = true;
|
|
41
|
-
await el.updateComplete;
|
|
42
|
-
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-loader')).to.exist;
|
|
43
|
-
});
|
|
44
|
-
it('should render pagination for more facets', async () => {
|
|
45
|
-
var _a;
|
|
46
|
-
const searchService = new MockSearchService();
|
|
1
|
+
/* eslint-disable import/no-duplicates */
|
|
2
|
+
import { expect, fixture } from '@open-wc/testing';
|
|
3
|
+
import { html } from 'lit';
|
|
4
|
+
import { Aggregation } from '@internetarchive/search-service';
|
|
5
|
+
import '../../src/collection-facets/more-facets-content';
|
|
6
|
+
import { MockSearchService } from '../mocks/mock-search-service';
|
|
7
|
+
import { MockAnalyticsHandler } from '../mocks/mock-analytics-handler';
|
|
8
|
+
const selectedFacetsGroup = {
|
|
9
|
+
title: 'Media Type',
|
|
10
|
+
key: 'mediatype',
|
|
11
|
+
buckets: [
|
|
12
|
+
{ displayText: 'audio', key: 'audio', count: 1001, state: 'none' },
|
|
13
|
+
{ displayText: 'movies', key: 'movies', count: 901, state: 'none' },
|
|
14
|
+
{ displayText: 'texts', key: 'texts', count: 2101, state: 'none' },
|
|
15
|
+
{ displayText: 'data', key: 'data', count: 230, state: 'none' },
|
|
16
|
+
{ displayText: 'web', key: 'web', count: 453, state: 'none' },
|
|
17
|
+
],
|
|
18
|
+
};
|
|
19
|
+
const aggregations = {
|
|
20
|
+
collection: new Aggregation({
|
|
21
|
+
buckets: [
|
|
22
|
+
{
|
|
23
|
+
key: 'foo',
|
|
24
|
+
doc_count: 5,
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
}),
|
|
28
|
+
};
|
|
29
|
+
describe('More facets content', () => {
|
|
30
|
+
it('should render more facets template', async () => {
|
|
31
|
+
var _a;
|
|
32
|
+
const el = await fixture(html `<more-facets-content></more-facets-content>`);
|
|
33
|
+
el.facetsLoading = false;
|
|
34
|
+
await el.updateComplete;
|
|
35
|
+
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-content')).to.exist;
|
|
36
|
+
});
|
|
37
|
+
it('should render more facets loader template', async () => {
|
|
38
|
+
var _a;
|
|
39
|
+
const el = await fixture(html `<more-facets-content></more-facets-content>`);
|
|
40
|
+
el.facetsLoading = true;
|
|
41
|
+
await el.updateComplete;
|
|
42
|
+
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.facets-loader')).to.exist;
|
|
43
|
+
});
|
|
44
|
+
it('should render pagination for more facets', async () => {
|
|
45
|
+
var _a;
|
|
46
|
+
const searchService = new MockSearchService();
|
|
47
47
|
const el = await fixture(html `<more-facets-content
|
|
48
48
|
.searchService=${searchService}
|
|
49
|
-
></more-facets-content>`);
|
|
50
|
-
el.facetKey = 'mediatype';
|
|
51
|
-
el.facetsLoading = false;
|
|
52
|
-
el.paginationSize = 6;
|
|
53
|
-
await el.updateComplete;
|
|
54
|
-
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('more-facets-pagination')).to.exist;
|
|
55
|
-
});
|
|
56
|
-
it('query for more facets content using search service', async () => {
|
|
57
|
-
var _a;
|
|
58
|
-
const searchService = new MockSearchService();
|
|
49
|
+
></more-facets-content>`);
|
|
50
|
+
el.facetKey = 'mediatype';
|
|
51
|
+
el.facetsLoading = false;
|
|
52
|
+
el.paginationSize = 6;
|
|
53
|
+
await el.updateComplete;
|
|
54
|
+
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelectorAll('more-facets-pagination')).to.exist;
|
|
55
|
+
});
|
|
56
|
+
it('query for more facets content using search service', async () => {
|
|
57
|
+
var _a;
|
|
58
|
+
const searchService = new MockSearchService();
|
|
59
59
|
const el = await fixture(html `<more-facets-content
|
|
60
60
|
.searchService=${searchService}
|
|
61
|
-
></more-facets-content>`);
|
|
62
|
-
el.facetKey = 'collection';
|
|
63
|
-
el.query = 'title:hello';
|
|
64
|
-
await el.updateComplete;
|
|
65
|
-
expect((_a = searchService.searchParams) === null || _a === void 0 ? void 0 : _a.query).to.equal('title:hello');
|
|
66
|
-
});
|
|
67
|
-
it('queries for more facets using search service within a collection (no query)', async () => {
|
|
68
|
-
var _a, _b;
|
|
69
|
-
const searchService = new MockSearchService();
|
|
61
|
+
></more-facets-content>`);
|
|
62
|
+
el.facetKey = 'collection';
|
|
63
|
+
el.query = 'title:hello';
|
|
64
|
+
await el.updateComplete;
|
|
65
|
+
expect((_a = searchService.searchParams) === null || _a === void 0 ? void 0 : _a.query).to.equal('title:hello');
|
|
66
|
+
});
|
|
67
|
+
it('queries for more facets using search service within a collection (no query)', async () => {
|
|
68
|
+
var _a, _b;
|
|
69
|
+
const searchService = new MockSearchService();
|
|
70
70
|
const el = await fixture(html `<more-facets-content
|
|
71
71
|
.searchService=${searchService}
|
|
72
72
|
.withinCollection=${'foobar'}
|
|
73
|
-
></more-facets-content>`);
|
|
74
|
-
el.facetKey = 'subject';
|
|
75
|
-
await el.updateComplete;
|
|
76
|
-
expect((_a = searchService.searchParams) === null || _a === void 0 ? void 0 : _a.query).to.be.empty;
|
|
77
|
-
expect((_b = searchService.searchParams) === null || _b === void 0 ? void 0 : _b.pageTarget).to.equal('foobar');
|
|
78
|
-
});
|
|
79
|
-
it('queries for more facets using search service within a collection (with query)', async () => {
|
|
80
|
-
var _a, _b;
|
|
81
|
-
const searchService = new MockSearchService();
|
|
73
|
+
></more-facets-content>`);
|
|
74
|
+
el.facetKey = 'subject';
|
|
75
|
+
await el.updateComplete;
|
|
76
|
+
expect((_a = searchService.searchParams) === null || _a === void 0 ? void 0 : _a.query).to.be.empty;
|
|
77
|
+
expect((_b = searchService.searchParams) === null || _b === void 0 ? void 0 : _b.pageTarget).to.equal('foobar');
|
|
78
|
+
});
|
|
79
|
+
it('queries for more facets using search service within a collection (with query)', async () => {
|
|
80
|
+
var _a, _b;
|
|
81
|
+
const searchService = new MockSearchService();
|
|
82
82
|
const el = await fixture(html `<more-facets-content
|
|
83
83
|
.searchService=${searchService}
|
|
84
84
|
.withinCollection=${'foobar'}
|
|
85
|
-
></more-facets-content>`);
|
|
86
|
-
el.facetKey = 'subject';
|
|
87
|
-
el.query = 'title:hello';
|
|
88
|
-
await el.updateComplete;
|
|
89
|
-
expect((_a = searchService.searchParams) === null || _a === void 0 ? void 0 : _a.query).to.equal('title:hello');
|
|
90
|
-
expect((_b = searchService.searchParams) === null || _b === void 0 ? void 0 : _b.pageTarget).to.equal('foobar');
|
|
91
|
-
});
|
|
92
|
-
it('filter raw selectedFacets object', async () => {
|
|
93
|
-
var _a;
|
|
94
|
-
const searchService = new MockSearchService();
|
|
85
|
+
></more-facets-content>`);
|
|
86
|
+
el.facetKey = 'subject';
|
|
87
|
+
el.query = 'title:hello';
|
|
88
|
+
await el.updateComplete;
|
|
89
|
+
expect((_a = searchService.searchParams) === null || _a === void 0 ? void 0 : _a.query).to.equal('title:hello');
|
|
90
|
+
expect((_b = searchService.searchParams) === null || _b === void 0 ? void 0 : _b.pageTarget).to.equal('foobar');
|
|
91
|
+
});
|
|
92
|
+
it('filter raw selectedFacets object', async () => {
|
|
93
|
+
var _a;
|
|
94
|
+
const searchService = new MockSearchService();
|
|
95
95
|
const el = await fixture(html `<more-facets-content
|
|
96
96
|
.searchService=${searchService}
|
|
97
97
|
.selectedFacets=${selectedFacetsGroup}
|
|
98
|
-
></more-facets-content>`);
|
|
99
|
-
el.facetKey = 'collection';
|
|
100
|
-
el.query = 'title:hello';
|
|
101
|
-
await el.updateComplete;
|
|
102
|
-
expect((_a = searchService.searchParams) === null || _a === void 0 ? void 0 : _a.query).to.equal('title:hello');
|
|
103
|
-
});
|
|
104
|
-
it('combine selectedFacets and aggregationFacets and render on modal', async () => {
|
|
105
|
-
var _a;
|
|
106
|
-
const searchService = new MockSearchService();
|
|
98
|
+
></more-facets-content>`);
|
|
99
|
+
el.facetKey = 'collection';
|
|
100
|
+
el.query = 'title:hello';
|
|
101
|
+
await el.updateComplete;
|
|
102
|
+
expect((_a = searchService.searchParams) === null || _a === void 0 ? void 0 : _a.query).to.equal('title:hello');
|
|
103
|
+
});
|
|
104
|
+
it('combine selectedFacets and aggregationFacets and render on modal', async () => {
|
|
105
|
+
var _a;
|
|
106
|
+
const searchService = new MockSearchService();
|
|
107
107
|
const el = await fixture(html `<more-facets-content
|
|
108
108
|
.searchService=${searchService}
|
|
109
109
|
.selectedFacets=${selectedFacetsGroup}
|
|
110
110
|
.aggregations=${aggregations}
|
|
111
|
-
></more-facets-content>`);
|
|
112
|
-
await el.updateComplete;
|
|
113
|
-
expect(el.facetGroupTitle).to.equal('Collection');
|
|
114
|
-
const facetGroup = (_a = el.facetGroup) === null || _a === void 0 ? void 0 : _a.shift();
|
|
115
|
-
expect(facetGroup === null || facetGroup === void 0 ? void 0 : facetGroup.key).to.equal('collection');
|
|
116
|
-
expect(facetGroup === null || facetGroup === void 0 ? void 0 : facetGroup.title).to.equal('Collection');
|
|
117
|
-
const bucket = facetGroup === null || facetGroup === void 0 ? void 0 : facetGroup.buckets[0];
|
|
118
|
-
expect(bucket === null || bucket === void 0 ? void 0 : bucket.key).to.equal('foo');
|
|
119
|
-
expect(bucket === null || bucket === void 0 ? void 0 : bucket.count).to.equal(5);
|
|
120
|
-
});
|
|
121
|
-
it('cancel button clicked event', async () => {
|
|
122
|
-
var _a;
|
|
123
|
-
const mockAnalyticsHandler = new MockAnalyticsHandler();
|
|
111
|
+
></more-facets-content>`);
|
|
112
|
+
await el.updateComplete;
|
|
113
|
+
expect(el.facetGroupTitle).to.equal('Collection');
|
|
114
|
+
const facetGroup = (_a = el.facetGroup) === null || _a === void 0 ? void 0 : _a.shift();
|
|
115
|
+
expect(facetGroup === null || facetGroup === void 0 ? void 0 : facetGroup.key).to.equal('collection');
|
|
116
|
+
expect(facetGroup === null || facetGroup === void 0 ? void 0 : facetGroup.title).to.equal('Collection');
|
|
117
|
+
const bucket = facetGroup === null || facetGroup === void 0 ? void 0 : facetGroup.buckets[0];
|
|
118
|
+
expect(bucket === null || bucket === void 0 ? void 0 : bucket.key).to.equal('foo');
|
|
119
|
+
expect(bucket === null || bucket === void 0 ? void 0 : bucket.count).to.equal(5);
|
|
120
|
+
});
|
|
121
|
+
it('cancel button clicked event', async () => {
|
|
122
|
+
var _a;
|
|
123
|
+
const mockAnalyticsHandler = new MockAnalyticsHandler();
|
|
124
124
|
const el = await fixture(html `<more-facets-content
|
|
125
125
|
.analyticsHandler=${mockAnalyticsHandler}
|
|
126
|
-
></more-facets-content>`);
|
|
127
|
-
el.facetsLoading = false;
|
|
128
|
-
el.paginationSize = 5;
|
|
129
|
-
await el.updateComplete;
|
|
130
|
-
// select cancel button
|
|
131
|
-
const cancelButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.footer > .btn-cancel');
|
|
132
|
-
cancelButton === null || cancelButton === void 0 ? void 0 : cancelButton.click();
|
|
133
|
-
expect(mockAnalyticsHandler.callCategory).to.equal('collection-browser');
|
|
134
|
-
expect(mockAnalyticsHandler.callAction).to.equal('closeMoreFacetsModal');
|
|
135
|
-
expect(mockAnalyticsHandler.callLabel).to.equal('undefined');
|
|
136
|
-
});
|
|
137
|
-
it('facet apply button clicked event', async () => {
|
|
138
|
-
var _a;
|
|
139
|
-
const mockAnalyticsHandler = new MockAnalyticsHandler();
|
|
126
|
+
></more-facets-content>`);
|
|
127
|
+
el.facetsLoading = false;
|
|
128
|
+
el.paginationSize = 5;
|
|
129
|
+
await el.updateComplete;
|
|
130
|
+
// select cancel button
|
|
131
|
+
const cancelButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.footer > .btn-cancel');
|
|
132
|
+
cancelButton === null || cancelButton === void 0 ? void 0 : cancelButton.click();
|
|
133
|
+
expect(mockAnalyticsHandler.callCategory).to.equal('collection-browser');
|
|
134
|
+
expect(mockAnalyticsHandler.callAction).to.equal('closeMoreFacetsModal');
|
|
135
|
+
expect(mockAnalyticsHandler.callLabel).to.equal('undefined');
|
|
136
|
+
});
|
|
137
|
+
it('facet apply button clicked event', async () => {
|
|
138
|
+
var _a;
|
|
139
|
+
const mockAnalyticsHandler = new MockAnalyticsHandler();
|
|
140
140
|
const el = await fixture(html `<more-facets-content
|
|
141
141
|
.analyticsHandler=${mockAnalyticsHandler}
|
|
142
|
-
></more-facets-content>`);
|
|
143
|
-
el.facetsLoading = false;
|
|
144
|
-
el.paginationSize = 5;
|
|
145
|
-
el.facetKey = 'collection';
|
|
146
|
-
await el.updateComplete;
|
|
147
|
-
// select submit button
|
|
148
|
-
const submitButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.footer > .btn-submit');
|
|
149
|
-
submitButton === null || submitButton === void 0 ? void 0 : submitButton.click();
|
|
150
|
-
expect(mockAnalyticsHandler.callCategory).to.equal('collection-browser');
|
|
151
|
-
expect(mockAnalyticsHandler.callAction).to.equal('applyMoreFacetsModal');
|
|
152
|
-
expect(mockAnalyticsHandler.callLabel).to.equal('collection');
|
|
153
|
-
});
|
|
154
|
-
});
|
|
142
|
+
></more-facets-content>`);
|
|
143
|
+
el.facetsLoading = false;
|
|
144
|
+
el.paginationSize = 5;
|
|
145
|
+
el.facetKey = 'collection';
|
|
146
|
+
await el.updateComplete;
|
|
147
|
+
// select submit button
|
|
148
|
+
const submitButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.footer > .btn-submit');
|
|
149
|
+
submitButton === null || submitButton === void 0 ? void 0 : submitButton.click();
|
|
150
|
+
expect(mockAnalyticsHandler.callCategory).to.equal('collection-browser');
|
|
151
|
+
expect(mockAnalyticsHandler.callAction).to.equal('applyMoreFacetsModal');
|
|
152
|
+
expect(mockAnalyticsHandler.callLabel).to.equal('collection');
|
|
153
|
+
});
|
|
154
|
+
});
|
|
155
155
|
//# sourceMappingURL=more-facets-content.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import '../../src/collection-facets/more-facets-pagination';
|
|
1
|
+
import '../../src/collection-facets/more-facets-pagination';
|