@internetarchive/collection-browser 2.7.12 → 2.7.13
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/.husky/pre-commit +4 -4
- package/LICENSE +661 -661
- package/README.md +83 -83
- package/dist/index.d.ts +13 -13
- package/dist/index.js +13 -13
- package/dist/src/app-root.d.ts +107 -107
- package/dist/src/app-root.js +531 -531
- 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/favorite-unfilled.d.ts +1 -1
- package/dist/src/assets/img/icons/favorite-unfilled.js +2 -2
- package/dist/src/assets/img/icons/filter.d.ts +2 -2
- package/dist/src/assets/img/icons/filter.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/search.d.ts +1 -1
- package/dist/src/assets/img/icons/mediatype/search.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 +606 -606
- package/dist/src/collection-browser.js +1677 -1677
- package/dist/src/collection-facets/facet-row.d.ts +30 -30
- package/dist/src/collection-facets/facet-row.js +118 -118
- 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 +13 -13
- package/dist/src/collection-facets/facets-template.js +44 -44
- package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
- package/dist/src/collection-facets/more-facets-content.js +407 -407
- 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/smart-facets/dedupe.d.ts +10 -10
- package/dist/src/collection-facets/smart-facets/dedupe.js +33 -33
- package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.d.ts +5 -5
- package/dist/src/collection-facets/smart-facets/heuristics/browser-language-heuristic.js +23 -23
- package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.d.ts +5 -5
- package/dist/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.js +44 -44
- package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.d.ts +5 -5
- package/dist/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.js +172 -172
- package/dist/src/collection-facets/smart-facets/models.d.ts +26 -26
- package/dist/src/collection-facets/smart-facets/models.js +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.d.ts +31 -31
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +240 -240
- package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +11 -11
- package/dist/src/collection-facets/smart-facets/smart-facet-button.js +86 -86
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +16 -16
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +100 -100
- package/dist/src/collection-facets/smart-facets/smart-facet-equals.d.ts +2 -2
- package/dist/src/collection-facets/smart-facets/smart-facet-equals.js +12 -12
- package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.d.ts +5 -5
- package/dist/src/collection-facets/smart-facets/smart-facet-heuristics.js +15 -15
- 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 +103 -103
- package/dist/src/collection-facets.js +522 -522
- package/dist/src/data-source/collection-browser-data-source-interface.d.ts +245 -245
- package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
- package/dist/src/data-source/collection-browser-data-source.d.ts +377 -377
- package/dist/src/data-source/collection-browser-data-source.js +1004 -1001
- package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
- package/dist/src/data-source/collection-browser-query-state.d.ts +44 -44
- package/dist/src/data-source/collection-browser-query-state.js +1 -1
- package/dist/src/data-source/models.d.ts +28 -28
- package/dist/src/data-source/models.js +8 -8
- package/dist/src/empty-placeholder.d.ts +23 -23
- package/dist/src/empty-placeholder.js +79 -79
- 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 +58 -58
- package/dist/src/manage/manage-bar.js +159 -159
- package/dist/src/manage/remove-items-modal-content.d.ts +9 -9
- package/dist/src/manage/remove-items-modal-content.js +34 -34
- package/dist/src/mediatype/mediatype-config.d.ts +3 -3
- package/dist/src/mediatype/mediatype-config.js +91 -91
- package/dist/src/models.d.ts +228 -228
- package/dist/src/models.js +401 -401
- package/dist/src/restoration-state-handler.d.ts +70 -70
- package/dist/src/restoration-state-handler.js +363 -363
- 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 +223 -223
- package/dist/src/sort-filter-bar/sort-filter-bar.js +697 -697
- package/dist/src/styles/ia-button.d.ts +2 -2
- package/dist/src/styles/ia-button.js +17 -17
- 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 +19 -19
- package/dist/src/tiles/base-tile-component.js +64 -64
- 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 +34 -34
- package/dist/src/tiles/grid/item-tile.js +158 -158
- package/dist/src/tiles/grid/search-tile.d.ts +10 -10
- package/dist/src/tiles/grid/search-tile.js +51 -51
- 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 +53 -53
- 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 +18 -18
- package/dist/src/tiles/hover/tile-hover-pane.js +69 -69
- package/dist/src/tiles/image-block.d.ts +18 -18
- package/dist/src/tiles/image-block.js +89 -89
- package/dist/src/tiles/item-image.d.ts +39 -39
- package/dist/src/tiles/item-image.js +154 -154
- 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 +19 -19
- package/dist/src/tiles/list/tile-list-compact.js +122 -122
- package/dist/src/tiles/list/tile-list.d.ts +54 -54
- package/dist/src/tiles/list/tile-list.js +323 -323
- 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 +8 -8
- package/dist/src/tiles/overlay/icon-overlay.js +25 -25
- package/dist/src/tiles/overlay/text-overlay.d.ts +9 -9
- package/dist/src/tiles/overlay/text-overlay.js +31 -31
- package/dist/src/tiles/review-block.d.ts +12 -12
- package/dist/src/tiles/review-block.js +56 -56
- 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 +64 -64
- package/dist/src/tiles/tile-dispatcher.js +230 -230
- package/dist/src/tiles/tile-display-value-provider.d.ts +47 -47
- package/dist/src/tiles/tile-display-value-provider.js +94 -94
- package/dist/src/utils/analytics-events.d.ts +28 -28
- package/dist/src/utils/analytics-events.js +30 -30
- package/dist/src/utils/array-equals.d.ts +4 -4
- package/dist/src/utils/array-equals.js +10 -10
- package/dist/src/utils/collapse-repeated-quotes.d.ts +11 -11
- package/dist/src/utils/collapse-repeated-quotes.js +13 -13
- package/dist/src/utils/facet-utils.d.ts +83 -83
- package/dist/src/utils/facet-utils.js +145 -145
- 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 +27 -27
- 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/log.d.ts +7 -7
- package/dist/src/utils/log.js +15 -15
- package/dist/src/utils/resolve-mediatype.d.ts +8 -8
- package/dist/src/utils/resolve-mediatype.js +23 -23
- 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 +1308 -1308
- package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
- package/dist/test/collection-facets/facet-row.test.js +227 -227
- package/dist/test/collection-facets/facets-template.test.d.ts +1 -1
- package/dist/test/collection-facets/facets-template.test.js +91 -91
- package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
- package/dist/test/collection-facets/more-facets-content.test.js +141 -141
- 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 +690 -690
- package/dist/test/data-source/collection-browser-data-source.test.d.ts +1 -1
- package/dist/test/data-source/collection-browser-data-source.test.js +89 -89
- 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 +107 -107
- package/dist/test/item-image.test.d.ts +1 -1
- package/dist/test/item-image.test.js +85 -85
- package/dist/test/manage/manage-bar.test.d.ts +2 -2
- package/dist/test/manage/manage-bar.test.js +100 -100
- package/dist/test/manage/remove-items-modal-content.test.d.ts +1 -1
- package/dist/test/manage/remove-items-modal-content.test.js +45 -45
- 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-search-responses.d.ts +25 -25
- package/dist/test/mocks/mock-search-responses.js +942 -942
- package/dist/test/mocks/mock-search-service.d.ts +15 -15
- package/dist/test/mocks/mock-search-service.js +54 -54
- package/dist/test/restoration-state-handler.test.d.ts +1 -1
- package/dist/test/restoration-state-handler.test.js +270 -270
- package/dist/test/review-block.test.d.ts +1 -1
- package/dist/test/review-block.test.js +44 -44
- 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 +426 -426
- package/dist/test/text-overlay.test.d.ts +1 -1
- package/dist/test/text-overlay.test.js +38 -38
- 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 +81 -81
- 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 +312 -312
- package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/search-tile.test.js +51 -51
- package/dist/test/tiles/hover/hover-pane-controller.test.d.ts +1 -1
- package/dist/test/tiles/hover/hover-pane-controller.test.js +259 -259
- package/dist/test/tiles/hover/tile-hover-pane.test.d.ts +1 -1
- package/dist/test/tiles/hover/tile-hover-pane.test.js +56 -56
- 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 +297 -297
- package/dist/test/tiles/tile-dispatcher.test.d.ts +1 -1
- package/dist/test/tiles/tile-dispatcher.test.js +100 -100
- 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 +30 -30
- 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/data-source/collection-browser-data-source.ts +5 -1
- package/web-dev-server.config.mjs +30 -30
- package/web-test-runner.config.mjs +41 -41
|
@@ -1 +1 @@
|
|
|
1
|
-
import '../../src/collection-browser';
|
|
1
|
+
import '../../src/collection-browser';
|
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
import { expect, fixture } from '@open-wc/testing';
|
|
2
|
-
import { html } from 'lit';
|
|
3
|
-
import sinon from 'sinon';
|
|
4
|
-
import { ItemHit, SearchType } from '@internetarchive/search-service';
|
|
5
|
-
import { CollectionBrowserDataSource } from '../../src/data-source/collection-browser-data-source';
|
|
6
|
-
import { TileModel } from '../../src/models';
|
|
7
|
-
import '../../src/collection-browser';
|
|
8
|
-
import { MockSearchService } from '../mocks/mock-search-service';
|
|
9
|
-
const dataPage = [
|
|
10
|
-
new TileModel(new ItemHit({
|
|
11
|
-
fields: {
|
|
12
|
-
identifier: 'foo',
|
|
13
|
-
},
|
|
14
|
-
})),
|
|
15
|
-
new TileModel(new ItemHit({
|
|
16
|
-
fields: {
|
|
17
|
-
identifier: 'bar',
|
|
18
|
-
},
|
|
19
|
-
})),
|
|
20
|
-
];
|
|
21
|
-
describe('Collection Browser Data Source', () => {
|
|
22
|
-
let host;
|
|
23
|
-
beforeEach(async () => {
|
|
1
|
+
import { expect, fixture } from '@open-wc/testing';
|
|
2
|
+
import { html } from 'lit';
|
|
3
|
+
import sinon from 'sinon';
|
|
4
|
+
import { ItemHit, SearchType } from '@internetarchive/search-service';
|
|
5
|
+
import { CollectionBrowserDataSource } from '../../src/data-source/collection-browser-data-source';
|
|
6
|
+
import { TileModel } from '../../src/models';
|
|
7
|
+
import '../../src/collection-browser';
|
|
8
|
+
import { MockSearchService } from '../mocks/mock-search-service';
|
|
9
|
+
const dataPage = [
|
|
10
|
+
new TileModel(new ItemHit({
|
|
11
|
+
fields: {
|
|
12
|
+
identifier: 'foo',
|
|
13
|
+
},
|
|
14
|
+
})),
|
|
15
|
+
new TileModel(new ItemHit({
|
|
16
|
+
fields: {
|
|
17
|
+
identifier: 'bar',
|
|
18
|
+
},
|
|
19
|
+
})),
|
|
20
|
+
];
|
|
21
|
+
describe('Collection Browser Data Source', () => {
|
|
22
|
+
let host;
|
|
23
|
+
beforeEach(async () => {
|
|
24
24
|
host = await fixture(html `
|
|
25
25
|
<collection-browser></collection-browser>
|
|
26
|
-
`);
|
|
27
|
-
});
|
|
28
|
-
it('can add and retrieve data pages', () => {
|
|
29
|
-
const dataSource = new CollectionBrowserDataSource(host);
|
|
30
|
-
dataSource.addPage(1, dataPage);
|
|
31
|
-
expect(Object.keys(dataSource.getAllPages()).length).to.equal(1);
|
|
32
|
-
expect(dataSource.getPage(1).length).to.equal(2);
|
|
33
|
-
expect(dataSource.getPage(1)[0].identifier).to.equal('foo');
|
|
34
|
-
expect(dataSource.getPage(1)[1].identifier).to.equal('bar');
|
|
35
|
-
});
|
|
36
|
-
it('can add data split across multiple pages', () => {
|
|
37
|
-
const dataSource = new CollectionBrowserDataSource(host, 3);
|
|
38
|
-
const doubledDataPage = [...dataPage, ...dataPage];
|
|
39
|
-
dataSource.addMultiplePages(1, doubledDataPage);
|
|
40
|
-
expect(Object.keys(dataSource.getAllPages()).length).to.equal(2);
|
|
41
|
-
expect(dataSource.getPage(1).length).to.equal(3);
|
|
42
|
-
expect(dataSource.getPage(2).length).to.equal(1);
|
|
43
|
-
expect(dataSource.getPage(1)[0].identifier).to.equal('foo');
|
|
44
|
-
expect(dataSource.getPage(1)[1].identifier).to.equal('bar');
|
|
45
|
-
expect(dataSource.getPage(1)[2].identifier).to.equal('foo');
|
|
46
|
-
expect(dataSource.getPage(2)[0].identifier).to.equal('bar');
|
|
47
|
-
});
|
|
48
|
-
it('resets data when changing page size', () => {
|
|
49
|
-
const dataSource = new CollectionBrowserDataSource(host);
|
|
50
|
-
dataSource.addPage(1, dataPage);
|
|
51
|
-
dataSource.setPageSize(100);
|
|
52
|
-
expect(Object.keys(dataSource.getAllPages()).length).to.equal(0);
|
|
53
|
-
expect(dataSource.getPageSize()).to.equal(100);
|
|
54
|
-
});
|
|
55
|
-
it('can be installed on the host', async () => {
|
|
56
|
-
const dataSource = new CollectionBrowserDataSource(host);
|
|
57
|
-
dataSource.addPage(1, dataPage);
|
|
58
|
-
host.installDataSourceAndQueryState(dataSource, {
|
|
59
|
-
searchType: SearchType.METADATA,
|
|
60
|
-
sortDirection: null,
|
|
61
|
-
selectedTitleFilter: null,
|
|
62
|
-
selectedCreatorFilter: null,
|
|
63
|
-
baseQuery: 'foobar',
|
|
64
|
-
});
|
|
65
|
-
await host.updateComplete;
|
|
66
|
-
expect(host.dataSource).to.equal(dataSource);
|
|
67
|
-
expect(host.baseQuery).to.equal('foobar');
|
|
68
|
-
host.removeController(dataSource);
|
|
69
|
-
});
|
|
70
|
-
it('can suppress further fetches', async () => {
|
|
71
|
-
host.searchService = new MockSearchService();
|
|
72
|
-
const pageFetchSpy = sinon.spy();
|
|
73
|
-
const dataSource = new CollectionBrowserDataSource(host);
|
|
74
|
-
dataSource.fetchPage = pageFetchSpy;
|
|
75
|
-
dataSource.addPage(1, dataPage);
|
|
76
|
-
dataSource.setFetchesSuppressed(true);
|
|
77
|
-
dataSource.handleQueryChange();
|
|
78
|
-
expect(pageFetchSpy.callCount).to.equal(0);
|
|
79
|
-
});
|
|
80
|
-
it('refreshes prefix filter counts', () => {
|
|
81
|
-
const dataSource = new CollectionBrowserDataSource(host);
|
|
82
|
-
dataSource.addPage(1, dataPage);
|
|
83
|
-
dataSource.prefixFilterCountMap = {
|
|
84
|
-
title: {
|
|
85
|
-
X: 10,
|
|
86
|
-
},
|
|
87
|
-
};
|
|
88
|
-
dataSource.refreshLetterCounts();
|
|
89
|
-
expect(dataSource.prefixFilterCountMap).to.deep.equal({});
|
|
90
|
-
});
|
|
91
|
-
});
|
|
26
|
+
`);
|
|
27
|
+
});
|
|
28
|
+
it('can add and retrieve data pages', () => {
|
|
29
|
+
const dataSource = new CollectionBrowserDataSource(host);
|
|
30
|
+
dataSource.addPage(1, dataPage);
|
|
31
|
+
expect(Object.keys(dataSource.getAllPages()).length).to.equal(1);
|
|
32
|
+
expect(dataSource.getPage(1).length).to.equal(2);
|
|
33
|
+
expect(dataSource.getPage(1)[0].identifier).to.equal('foo');
|
|
34
|
+
expect(dataSource.getPage(1)[1].identifier).to.equal('bar');
|
|
35
|
+
});
|
|
36
|
+
it('can add data split across multiple pages', () => {
|
|
37
|
+
const dataSource = new CollectionBrowserDataSource(host, 3);
|
|
38
|
+
const doubledDataPage = [...dataPage, ...dataPage];
|
|
39
|
+
dataSource.addMultiplePages(1, doubledDataPage);
|
|
40
|
+
expect(Object.keys(dataSource.getAllPages()).length).to.equal(2);
|
|
41
|
+
expect(dataSource.getPage(1).length).to.equal(3);
|
|
42
|
+
expect(dataSource.getPage(2).length).to.equal(1);
|
|
43
|
+
expect(dataSource.getPage(1)[0].identifier).to.equal('foo');
|
|
44
|
+
expect(dataSource.getPage(1)[1].identifier).to.equal('bar');
|
|
45
|
+
expect(dataSource.getPage(1)[2].identifier).to.equal('foo');
|
|
46
|
+
expect(dataSource.getPage(2)[0].identifier).to.equal('bar');
|
|
47
|
+
});
|
|
48
|
+
it('resets data when changing page size', () => {
|
|
49
|
+
const dataSource = new CollectionBrowserDataSource(host);
|
|
50
|
+
dataSource.addPage(1, dataPage);
|
|
51
|
+
dataSource.setPageSize(100);
|
|
52
|
+
expect(Object.keys(dataSource.getAllPages()).length).to.equal(0);
|
|
53
|
+
expect(dataSource.getPageSize()).to.equal(100);
|
|
54
|
+
});
|
|
55
|
+
it('can be installed on the host', async () => {
|
|
56
|
+
const dataSource = new CollectionBrowserDataSource(host);
|
|
57
|
+
dataSource.addPage(1, dataPage);
|
|
58
|
+
host.installDataSourceAndQueryState(dataSource, {
|
|
59
|
+
searchType: SearchType.METADATA,
|
|
60
|
+
sortDirection: null,
|
|
61
|
+
selectedTitleFilter: null,
|
|
62
|
+
selectedCreatorFilter: null,
|
|
63
|
+
baseQuery: 'foobar',
|
|
64
|
+
});
|
|
65
|
+
await host.updateComplete;
|
|
66
|
+
expect(host.dataSource).to.equal(dataSource);
|
|
67
|
+
expect(host.baseQuery).to.equal('foobar');
|
|
68
|
+
host.removeController(dataSource);
|
|
69
|
+
});
|
|
70
|
+
it('can suppress further fetches', async () => {
|
|
71
|
+
host.searchService = new MockSearchService();
|
|
72
|
+
const pageFetchSpy = sinon.spy();
|
|
73
|
+
const dataSource = new CollectionBrowserDataSource(host);
|
|
74
|
+
dataSource.fetchPage = pageFetchSpy;
|
|
75
|
+
dataSource.addPage(1, dataPage);
|
|
76
|
+
dataSource.setFetchesSuppressed(true);
|
|
77
|
+
dataSource.handleQueryChange();
|
|
78
|
+
expect(pageFetchSpy.callCount).to.equal(0);
|
|
79
|
+
});
|
|
80
|
+
it('refreshes prefix filter counts', () => {
|
|
81
|
+
const dataSource = new CollectionBrowserDataSource(host);
|
|
82
|
+
dataSource.addPage(1, dataPage);
|
|
83
|
+
dataSource.prefixFilterCountMap = {
|
|
84
|
+
title: {
|
|
85
|
+
X: 10,
|
|
86
|
+
},
|
|
87
|
+
};
|
|
88
|
+
dataSource.refreshLetterCounts();
|
|
89
|
+
expect(dataSource.prefixFilterCountMap).to.deep.equal({});
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
92
|
//# sourceMappingURL=collection-browser-data-source.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import '../src/empty-placeholder';
|
|
1
|
+
import '../src/empty-placeholder';
|
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
/* eslint-disable import/no-duplicates */
|
|
2
|
-
import { expect, fixture } from '@open-wc/testing';
|
|
3
|
-
import { html } from 'lit';
|
|
4
|
-
import '../src/empty-placeholder';
|
|
5
|
-
describe('Empty Placeholder', () => {
|
|
6
|
-
it('should render with empty-query placeholder', async () => {
|
|
7
|
-
var _a;
|
|
8
|
-
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
9
|
-
el.placeholderType = 'empty-query';
|
|
10
|
-
await el.updateComplete;
|
|
11
|
-
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
12
|
-
expect(placeholderElem).to.exist;
|
|
13
|
-
expect(placeholderElem).to.have.class('empty-query');
|
|
14
|
-
});
|
|
15
|
-
it('should render with empty-collection placeholder', async () => {
|
|
16
|
-
var _a;
|
|
17
|
-
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
18
|
-
el.placeholderType = 'empty-collection';
|
|
19
|
-
await el.updateComplete;
|
|
20
|
-
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
21
|
-
expect(placeholderElem).to.exist;
|
|
22
|
-
expect(placeholderElem).to.have.class('empty-collection');
|
|
23
|
-
});
|
|
24
|
-
it('should render with no-results placeholder', async () => {
|
|
25
|
-
var _a;
|
|
26
|
-
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
27
|
-
el.placeholderType = 'no-results';
|
|
28
|
-
await el.updateComplete;
|
|
29
|
-
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
30
|
-
expect(placeholderElem).to.exist;
|
|
31
|
-
expect(placeholderElem).to.have.class('no-results');
|
|
32
|
-
});
|
|
33
|
-
it('should render with query-error placeholder', async () => {
|
|
34
|
-
var _a;
|
|
35
|
-
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
36
|
-
el.placeholderType = 'query-error';
|
|
37
|
-
await el.updateComplete;
|
|
38
|
-
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
39
|
-
expect(placeholderElem).to.exist;
|
|
40
|
-
expect(placeholderElem).to.have.class('query-error');
|
|
41
|
-
});
|
|
42
|
-
it('should render with collection-error placeholder', async () => {
|
|
43
|
-
var _a;
|
|
44
|
-
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
45
|
-
el.placeholderType = 'collection-error';
|
|
46
|
-
await el.updateComplete;
|
|
47
|
-
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
48
|
-
expect(placeholderElem).to.exist;
|
|
49
|
-
expect(placeholderElem).to.have.class('collection-error');
|
|
50
|
-
});
|
|
51
|
-
it('should not render any empty placeholder', async () => {
|
|
52
|
-
var _a, _b, _c, _d, _e, _f;
|
|
53
|
-
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
54
|
-
el.placeholderType = null;
|
|
55
|
-
await el.updateComplete;
|
|
56
|
-
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder')).to.not.exist;
|
|
57
|
-
expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.empty-query')).to.not.exist;
|
|
58
|
-
expect((_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.empty-collection')).to.not.exist;
|
|
59
|
-
expect((_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.no-results')).to.not.exist;
|
|
60
|
-
expect((_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.query-error')).to.not.exist;
|
|
61
|
-
expect((_f = el.shadowRoot) === null || _f === void 0 ? void 0 : _f.querySelector('.collection-error')).to.not.exist;
|
|
62
|
-
});
|
|
63
|
-
});
|
|
1
|
+
/* eslint-disable import/no-duplicates */
|
|
2
|
+
import { expect, fixture } from '@open-wc/testing';
|
|
3
|
+
import { html } from 'lit';
|
|
4
|
+
import '../src/empty-placeholder';
|
|
5
|
+
describe('Empty Placeholder', () => {
|
|
6
|
+
it('should render with empty-query placeholder', async () => {
|
|
7
|
+
var _a;
|
|
8
|
+
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
9
|
+
el.placeholderType = 'empty-query';
|
|
10
|
+
await el.updateComplete;
|
|
11
|
+
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
12
|
+
expect(placeholderElem).to.exist;
|
|
13
|
+
expect(placeholderElem).to.have.class('empty-query');
|
|
14
|
+
});
|
|
15
|
+
it('should render with empty-collection placeholder', async () => {
|
|
16
|
+
var _a;
|
|
17
|
+
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
18
|
+
el.placeholderType = 'empty-collection';
|
|
19
|
+
await el.updateComplete;
|
|
20
|
+
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
21
|
+
expect(placeholderElem).to.exist;
|
|
22
|
+
expect(placeholderElem).to.have.class('empty-collection');
|
|
23
|
+
});
|
|
24
|
+
it('should render with no-results placeholder', async () => {
|
|
25
|
+
var _a;
|
|
26
|
+
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
27
|
+
el.placeholderType = 'no-results';
|
|
28
|
+
await el.updateComplete;
|
|
29
|
+
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
30
|
+
expect(placeholderElem).to.exist;
|
|
31
|
+
expect(placeholderElem).to.have.class('no-results');
|
|
32
|
+
});
|
|
33
|
+
it('should render with query-error placeholder', async () => {
|
|
34
|
+
var _a;
|
|
35
|
+
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
36
|
+
el.placeholderType = 'query-error';
|
|
37
|
+
await el.updateComplete;
|
|
38
|
+
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
39
|
+
expect(placeholderElem).to.exist;
|
|
40
|
+
expect(placeholderElem).to.have.class('query-error');
|
|
41
|
+
});
|
|
42
|
+
it('should render with collection-error placeholder', async () => {
|
|
43
|
+
var _a;
|
|
44
|
+
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
45
|
+
el.placeholderType = 'collection-error';
|
|
46
|
+
await el.updateComplete;
|
|
47
|
+
const placeholderElem = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder');
|
|
48
|
+
expect(placeholderElem).to.exist;
|
|
49
|
+
expect(placeholderElem).to.have.class('collection-error');
|
|
50
|
+
});
|
|
51
|
+
it('should not render any empty placeholder', async () => {
|
|
52
|
+
var _a, _b, _c, _d, _e, _f;
|
|
53
|
+
const el = await fixture(html `<empty-placeholder></empty-placeholder>`);
|
|
54
|
+
el.placeholderType = null;
|
|
55
|
+
await el.updateComplete;
|
|
56
|
+
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.placeholder')).to.not.exist;
|
|
57
|
+
expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.empty-query')).to.not.exist;
|
|
58
|
+
expect((_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.empty-collection')).to.not.exist;
|
|
59
|
+
expect((_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.no-results')).to.not.exist;
|
|
60
|
+
expect((_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.query-error')).to.not.exist;
|
|
61
|
+
expect((_f = el.shadowRoot) === null || _f === void 0 ? void 0 : _f.querySelector('.collection-error')).to.not.exist;
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
64
|
//# sourceMappingURL=empty-placeholder.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import '../src/expanded-date-picker';
|
|
1
|
+
import '../src/expanded-date-picker';
|
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
import { ModalManager, ModalManagerMode, } from '@internetarchive/modal-manager';
|
|
2
|
-
import { expect, fixture } from '@open-wc/testing';
|
|
3
|
-
import { html } from 'lit';
|
|
4
|
-
import sinon from 'sinon';
|
|
5
|
-
import '../src/expanded-date-picker';
|
|
6
|
-
import { MockAnalyticsHandler } from './mocks/mock-analytics-handler';
|
|
7
|
-
import { analyticsActions, analyticsCategories, } from '../src/utils/analytics-events';
|
|
8
|
-
describe('Expanded Date Picker', () => {
|
|
9
|
-
it('should render with a date picker and Apply button', async () => {
|
|
10
|
-
var _a, _b;
|
|
11
|
-
const el = await fixture(html `<expanded-date-picker></expanded-date-picker>`);
|
|
12
|
-
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#date-picker')).to.exist;
|
|
13
|
-
expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#apply-btn')).to.exist;
|
|
14
|
-
});
|
|
15
|
-
it('should update its min/max selected date when date picker changes', async () => {
|
|
16
|
-
var _a;
|
|
1
|
+
import { ModalManager, ModalManagerMode, } from '@internetarchive/modal-manager';
|
|
2
|
+
import { expect, fixture } from '@open-wc/testing';
|
|
3
|
+
import { html } from 'lit';
|
|
4
|
+
import sinon from 'sinon';
|
|
5
|
+
import '../src/expanded-date-picker';
|
|
6
|
+
import { MockAnalyticsHandler } from './mocks/mock-analytics-handler';
|
|
7
|
+
import { analyticsActions, analyticsCategories, } from '../src/utils/analytics-events';
|
|
8
|
+
describe('Expanded Date Picker', () => {
|
|
9
|
+
it('should render with a date picker and Apply button', async () => {
|
|
10
|
+
var _a, _b;
|
|
11
|
+
const el = await fixture(html `<expanded-date-picker></expanded-date-picker>`);
|
|
12
|
+
expect((_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#date-picker')).to.exist;
|
|
13
|
+
expect((_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#apply-btn')).to.exist;
|
|
14
|
+
});
|
|
15
|
+
it('should update its min/max selected date when date picker changes', async () => {
|
|
16
|
+
var _a;
|
|
17
17
|
const el = await fixture(html `<expanded-date-picker
|
|
18
18
|
.buckets=${[1, 2, 3, 4, 5]}
|
|
19
19
|
.minDate=${'1'}
|
|
20
20
|
.maxDate=${'5'}
|
|
21
21
|
.minSelectedDate=${'1'}
|
|
22
22
|
.maxSelectedDate=${'5'}
|
|
23
|
-
></expanded-date-picker>`);
|
|
24
|
-
const datePicker = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#date-picker');
|
|
25
|
-
expect(datePicker).to.exist;
|
|
26
|
-
datePicker.minSelectedDate = '2';
|
|
27
|
-
datePicker.maxSelectedDate = '4';
|
|
28
|
-
datePicker.dispatchEvent(new CustomEvent('histogramDateRangeUpdated', {
|
|
29
|
-
detail: {
|
|
30
|
-
minDate: datePicker.minSelectedDate,
|
|
31
|
-
maxDate: datePicker.maxSelectedDate,
|
|
32
|
-
},
|
|
33
|
-
}));
|
|
34
|
-
await el.updateComplete;
|
|
35
|
-
expect(el.minSelectedDate).to.equal('2');
|
|
36
|
-
expect(el.maxSelectedDate).to.equal('4');
|
|
37
|
-
});
|
|
38
|
-
it('should emit an event when a date range is applied', async () => {
|
|
39
|
-
var _a;
|
|
40
|
-
const applySpy = sinon.spy();
|
|
23
|
+
></expanded-date-picker>`);
|
|
24
|
+
const datePicker = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#date-picker');
|
|
25
|
+
expect(datePicker).to.exist;
|
|
26
|
+
datePicker.minSelectedDate = '2';
|
|
27
|
+
datePicker.maxSelectedDate = '4';
|
|
28
|
+
datePicker.dispatchEvent(new CustomEvent('histogramDateRangeUpdated', {
|
|
29
|
+
detail: {
|
|
30
|
+
minDate: datePicker.minSelectedDate,
|
|
31
|
+
maxDate: datePicker.maxSelectedDate,
|
|
32
|
+
},
|
|
33
|
+
}));
|
|
34
|
+
await el.updateComplete;
|
|
35
|
+
expect(el.minSelectedDate).to.equal('2');
|
|
36
|
+
expect(el.maxSelectedDate).to.equal('4');
|
|
37
|
+
});
|
|
38
|
+
it('should emit an event when a date range is applied', async () => {
|
|
39
|
+
var _a;
|
|
40
|
+
const applySpy = sinon.spy();
|
|
41
41
|
const el = await fixture(html `<expanded-date-picker
|
|
42
42
|
.buckets=${[1, 2, 3, 4, 5]}
|
|
43
43
|
.minDate=${'1'}
|
|
@@ -45,19 +45,19 @@ describe('Expanded Date Picker', () => {
|
|
|
45
45
|
.minSelectedDate=${'1'}
|
|
46
46
|
.maxSelectedDate=${'5'}
|
|
47
47
|
@histogramDateRangeApplied=${applySpy}
|
|
48
|
-
></expanded-date-picker>`);
|
|
49
|
-
const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
|
|
50
|
-
expect(applyBtn).to.exist;
|
|
51
|
-
applyBtn.click();
|
|
52
|
-
await el.updateComplete;
|
|
53
|
-
expect(applySpy.callCount).to.equal(1);
|
|
54
|
-
expect(applySpy.calledWithMatch({ detail: { minDate: '1', maxDate: '5' } }));
|
|
55
|
-
});
|
|
56
|
-
it('should close its modal and emit close event when date range applied', async () => {
|
|
57
|
-
var _a;
|
|
58
|
-
const modalManager = new ModalManager();
|
|
59
|
-
modalManager.mode = ModalManagerMode.Open;
|
|
60
|
-
const modalClosed = sinon.spy();
|
|
48
|
+
></expanded-date-picker>`);
|
|
49
|
+
const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
|
|
50
|
+
expect(applyBtn).to.exist;
|
|
51
|
+
applyBtn.click();
|
|
52
|
+
await el.updateComplete;
|
|
53
|
+
expect(applySpy.callCount).to.equal(1);
|
|
54
|
+
expect(applySpy.calledWithMatch({ detail: { minDate: '1', maxDate: '5' } }));
|
|
55
|
+
});
|
|
56
|
+
it('should close its modal and emit close event when date range applied', async () => {
|
|
57
|
+
var _a;
|
|
58
|
+
const modalManager = new ModalManager();
|
|
59
|
+
modalManager.mode = ModalManagerMode.Open;
|
|
60
|
+
const modalClosed = sinon.spy();
|
|
61
61
|
const el = await fixture(html `<expanded-date-picker
|
|
62
62
|
.buckets=${[1, 2, 3, 4, 5]}
|
|
63
63
|
.minDate=${'1'}
|
|
@@ -66,16 +66,16 @@ describe('Expanded Date Picker', () => {
|
|
|
66
66
|
.maxSelectedDate=${'5'}
|
|
67
67
|
.modalManager=${modalManager}
|
|
68
68
|
@modalClosed=${modalClosed}
|
|
69
|
-
></expanded-date-picker>`);
|
|
70
|
-
const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
|
|
71
|
-
expect(applyBtn).to.exist;
|
|
72
|
-
applyBtn.click();
|
|
73
|
-
await el.updateComplete;
|
|
74
|
-
expect(modalManager.getMode()).to.equal(ModalManagerMode.Closed);
|
|
75
|
-
expect(modalClosed.callCount).to.equal(1);
|
|
76
|
-
});
|
|
77
|
-
it('closes the modal when Esc key is pressed', async () => {
|
|
78
|
-
var _a;
|
|
69
|
+
></expanded-date-picker>`);
|
|
70
|
+
const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
|
|
71
|
+
expect(applyBtn).to.exist;
|
|
72
|
+
applyBtn.click();
|
|
73
|
+
await el.updateComplete;
|
|
74
|
+
expect(modalManager.getMode()).to.equal(ModalManagerMode.Closed);
|
|
75
|
+
expect(modalClosed.callCount).to.equal(1);
|
|
76
|
+
});
|
|
77
|
+
it('closes the modal when Esc key is pressed', async () => {
|
|
78
|
+
var _a;
|
|
79
79
|
const el = await fixture(html `<expanded-date-picker
|
|
80
80
|
.buckets=${[1, 2, 3, 4, 5]}
|
|
81
81
|
.minDate=${'1'}
|
|
@@ -83,47 +83,47 @@ describe('Expanded Date Picker', () => {
|
|
|
83
83
|
.minSelectedDate=${'1'}
|
|
84
84
|
.maxSelectedDate=${'5'}
|
|
85
85
|
.modalManager=${new ModalManager()}
|
|
86
|
-
></expanded-date-picker>`);
|
|
87
|
-
const closeModalSpy = sinon.spy(el.modalManager, 'closeModal');
|
|
88
|
-
// Dispatch an Esc keydown event
|
|
89
|
-
document.dispatchEvent(new KeyboardEvent('keydown', { key: 'Escape' }));
|
|
90
|
-
await el.updateComplete;
|
|
91
|
-
expect(closeModalSpy.callCount).to.equal(1);
|
|
92
|
-
expect((_a = el.modalManager) === null || _a === void 0 ? void 0 : _a.classList.contains('expanded-date-picker')).to.be
|
|
93
|
-
.false;
|
|
94
|
-
});
|
|
95
|
-
it('sends analytics when date range is applied', async () => {
|
|
96
|
-
var _a, _b;
|
|
97
|
-
const analyticsHandler = new MockAnalyticsHandler();
|
|
86
|
+
></expanded-date-picker>`);
|
|
87
|
+
const closeModalSpy = sinon.spy(el.modalManager, 'closeModal');
|
|
88
|
+
// Dispatch an Esc keydown event
|
|
89
|
+
document.dispatchEvent(new KeyboardEvent('keydown', { key: 'Escape' }));
|
|
90
|
+
await el.updateComplete;
|
|
91
|
+
expect(closeModalSpy.callCount).to.equal(1);
|
|
92
|
+
expect((_a = el.modalManager) === null || _a === void 0 ? void 0 : _a.classList.contains('expanded-date-picker')).to.be
|
|
93
|
+
.false;
|
|
94
|
+
});
|
|
95
|
+
it('sends analytics when date range is applied', async () => {
|
|
96
|
+
var _a, _b;
|
|
97
|
+
const analyticsHandler = new MockAnalyticsHandler();
|
|
98
98
|
const el = await fixture(html `<expanded-date-picker
|
|
99
99
|
.buckets=${[1, 2, 3, 4, 5]}
|
|
100
100
|
.minDate=${'1'}
|
|
101
101
|
.maxDate=${'5'}
|
|
102
102
|
.analyticsHandler=${analyticsHandler}
|
|
103
|
-
></expanded-date-picker>`);
|
|
104
|
-
const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
|
|
105
|
-
expect(applyBtn).to.exist;
|
|
106
|
-
applyBtn.click();
|
|
107
|
-
await el.updateComplete;
|
|
108
|
-
expect(analyticsHandler.callCategory).to.equal(analyticsCategories.default);
|
|
109
|
-
expect(analyticsHandler.callAction).to.equal(analyticsActions.histogramChangedFromModal);
|
|
110
|
-
expect(analyticsHandler.callLabel).to.equal(window.location.href);
|
|
111
|
-
const datePicker = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#date-picker');
|
|
112
|
-
expect(datePicker).to.exist;
|
|
113
|
-
datePicker.minSelectedDate = '2';
|
|
114
|
-
datePicker.maxSelectedDate = '5';
|
|
115
|
-
datePicker.dispatchEvent(new CustomEvent('histogramDateRangeUpdated', {
|
|
116
|
-
detail: {
|
|
117
|
-
minDate: datePicker.minSelectedDate,
|
|
118
|
-
maxDate: datePicker.maxSelectedDate,
|
|
119
|
-
},
|
|
120
|
-
}));
|
|
121
|
-
await el.updateComplete;
|
|
122
|
-
applyBtn.click();
|
|
123
|
-
await el.updateComplete;
|
|
124
|
-
expect(analyticsHandler.callCategory).to.equal(analyticsCategories.default);
|
|
125
|
-
expect(analyticsHandler.callAction).to.equal(analyticsActions.histogramChangedFromModal);
|
|
126
|
-
expect(analyticsHandler.callLabel).to.equal(window.location.href);
|
|
127
|
-
});
|
|
128
|
-
});
|
|
103
|
+
></expanded-date-picker>`);
|
|
104
|
+
const applyBtn = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#apply-btn');
|
|
105
|
+
expect(applyBtn).to.exist;
|
|
106
|
+
applyBtn.click();
|
|
107
|
+
await el.updateComplete;
|
|
108
|
+
expect(analyticsHandler.callCategory).to.equal(analyticsCategories.default);
|
|
109
|
+
expect(analyticsHandler.callAction).to.equal(analyticsActions.histogramChangedFromModal);
|
|
110
|
+
expect(analyticsHandler.callLabel).to.equal(window.location.href);
|
|
111
|
+
const datePicker = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('#date-picker');
|
|
112
|
+
expect(datePicker).to.exist;
|
|
113
|
+
datePicker.minSelectedDate = '2';
|
|
114
|
+
datePicker.maxSelectedDate = '5';
|
|
115
|
+
datePicker.dispatchEvent(new CustomEvent('histogramDateRangeUpdated', {
|
|
116
|
+
detail: {
|
|
117
|
+
minDate: datePicker.minSelectedDate,
|
|
118
|
+
maxDate: datePicker.maxSelectedDate,
|
|
119
|
+
},
|
|
120
|
+
}));
|
|
121
|
+
await el.updateComplete;
|
|
122
|
+
applyBtn.click();
|
|
123
|
+
await el.updateComplete;
|
|
124
|
+
expect(analyticsHandler.callCategory).to.equal(analyticsCategories.default);
|
|
125
|
+
expect(analyticsHandler.callAction).to.equal(analyticsActions.histogramChangedFromModal);
|
|
126
|
+
expect(analyticsHandler.callLabel).to.equal(window.location.href);
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
129
|
//# sourceMappingURL=expanded-date-picker.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import '../src/tiles/overlay/icon-overlay';
|
|
1
|
+
import '../src/tiles/overlay/icon-overlay';
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
/* eslint-disable import/no-duplicates */
|
|
2
|
-
import { expect, fixture } from '@open-wc/testing';
|
|
3
|
-
import { html } from 'lit';
|
|
4
|
-
import '../src/tiles/overlay/icon-overlay';
|
|
5
|
-
describe('Icon Overlay component', () => {
|
|
6
|
-
it('should render basic component', async () => {
|
|
7
|
-
var _a;
|
|
1
|
+
/* eslint-disable import/no-duplicates */
|
|
2
|
+
import { expect, fixture } from '@open-wc/testing';
|
|
3
|
+
import { html } from 'lit';
|
|
4
|
+
import '../src/tiles/overlay/icon-overlay';
|
|
5
|
+
describe('Icon Overlay component', () => {
|
|
6
|
+
it('should render basic component', async () => {
|
|
7
|
+
var _a;
|
|
8
8
|
const el = await fixture(html `
|
|
9
9
|
<icon-overlay></icon-overlay>
|
|
10
|
-
`);
|
|
11
|
-
const overlayDiv = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.icon-overlay');
|
|
12
|
-
expect(overlayDiv).to.exist;
|
|
13
|
-
});
|
|
14
|
-
it('should render component with login-required type', async () => {
|
|
15
|
-
var _a, _b, _c;
|
|
10
|
+
`);
|
|
11
|
+
const overlayDiv = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.icon-overlay');
|
|
12
|
+
expect(overlayDiv).to.exist;
|
|
13
|
+
});
|
|
14
|
+
it('should render component with login-required type', async () => {
|
|
15
|
+
var _a, _b, _c;
|
|
16
16
|
const el = await fixture(html `
|
|
17
17
|
<icon-overlay .type=${'login-required'}></icon-overlay>
|
|
18
|
-
`);
|
|
19
|
-
const svgTitle = (_c = (_b = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('svg')) === null || _b === void 0 ? void 0 : _b.querySelector('title')) === null || _c === void 0 ? void 0 : _c.textContent;
|
|
20
|
-
expect(svgTitle).to.equal('Log in to view this item');
|
|
21
|
-
});
|
|
22
|
-
it('should render component with content-warning type', async () => {
|
|
23
|
-
var _a, _b, _c;
|
|
18
|
+
`);
|
|
19
|
+
const svgTitle = (_c = (_b = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('svg')) === null || _b === void 0 ? void 0 : _b.querySelector('title')) === null || _c === void 0 ? void 0 : _c.textContent;
|
|
20
|
+
expect(svgTitle).to.equal('Log in to view this item');
|
|
21
|
+
});
|
|
22
|
+
it('should render component with content-warning type', async () => {
|
|
23
|
+
var _a, _b, _c;
|
|
24
24
|
const el = await fixture(html `
|
|
25
25
|
<icon-overlay .type=${'content-warning'}></icon-overlay>
|
|
26
|
-
`);
|
|
27
|
-
const svgTitle = (_c = (_b = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('svg')) === null || _b === void 0 ? void 0 : _b.querySelector('title')) === null || _c === void 0 ? void 0 : _c.textContent;
|
|
28
|
-
expect(svgTitle).to.equal('Content may be inappropriate');
|
|
29
|
-
});
|
|
30
|
-
});
|
|
26
|
+
`);
|
|
27
|
+
const svgTitle = (_c = (_b = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('svg')) === null || _b === void 0 ? void 0 : _b.querySelector('title')) === null || _c === void 0 ? void 0 : _c.textContent;
|
|
28
|
+
expect(svgTitle).to.equal('Content may be inappropriate');
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
31
|
//# sourceMappingURL=icon-overlay.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import '../src/tiles/image-block';
|
|
1
|
+
import '../src/tiles/image-block';
|