@internetarchive/collection-browser 2.7.14-alpha-webdev7002.3 → 2.7.14-alpha-webdev7397.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/ci.yml +3 -3
- package/.github/workflows/gh-pages-main.yml +2 -2
- package/.github/workflows/pr-preview.yml +2 -2
- package/.prettierignore +1 -0
- package/dist/index.d.ts +13 -15
- package/dist/index.js +11 -15
- package/dist/index.js.map +1 -1
- package/dist/src/app-root.d.ts +107 -107
- package/dist/src/app-root.js +531 -531
- package/dist/src/app-root.js.map +1 -1
- 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/circular-activity-indicator.js.map +1 -1
- package/dist/src/collection-browser.d.ts +606 -606
- package/dist/src/collection-browser.js +1679 -1677
- package/dist/src/collection-browser.js.map +1 -1
- 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-row.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/facet-tombstone-row.js.map +1 -1
- package/dist/src/collection-facets/facets-template.d.ts +13 -13
- package/dist/src/collection-facets/facets-template.js +49 -49
- package/dist/src/collection-facets/facets-template.js.map +1 -1
- package/dist/src/collection-facets/more-facets-content.d.ts +106 -106
- package/dist/src/collection-facets/more-facets-content.js +406 -408
- package/dist/src/collection-facets/more-facets-content.js.map +1 -1
- package/dist/src/collection-facets/more-facets-pagination.d.ts +36 -36
- package/dist/src/collection-facets/more-facets-pagination.js +197 -196
- package/dist/src/collection-facets/more-facets-pagination.js.map +1 -1
- 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/dedupe.js.map +1 -1
- 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/query-keywords-heuristic.js.map +1 -1
- 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/heuristics/wikidata-heuristic.js.map +1 -1
- 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 +237 -240
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-button.d.ts +11 -11
- package/dist/src/collection-facets/smart-facets/smart-facet-button.js +86 -86
- package/dist/src/collection-facets/smart-facets/smart-facet-button.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.d.ts +16 -16
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js +100 -100
- package/dist/src/collection-facets/smart-facets/smart-facet-dropdown.js.map +1 -1
- 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/smart-facets/smart-facet-heuristics.js.map +1 -1
- 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/toggle-switch.js.map +1 -1
- package/dist/src/collection-facets.d.ts +103 -103
- package/dist/src/collection-facets.js +521 -522
- package/dist/src/collection-facets.js.map +1 -1
- 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-interface.js.map +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 +1003 -1004
- 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 +87 -88
- package/dist/src/empty-placeholder.js.map +1 -1
- package/dist/src/expanded-date-picker.d.ts +43 -43
- package/dist/src/expanded-date-picker.js +109 -109
- package/dist/src/expanded-date-picker.js.map +1 -1
- 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-handler.js.map +1 -1
- 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/language-code-handler/language-code-mapping.js.map +1 -1
- package/dist/src/manage/manage-bar.d.ts +58 -58
- package/dist/src/manage/manage-bar.js +175 -175
- package/dist/src/manage/manage-bar.js.map +1 -1
- 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/manage/remove-items-modal-content.js.map +1 -1
- package/dist/src/mediatype/mediatype-config.d.ts +3 -3
- package/dist/src/mediatype/mediatype-config.js +92 -91
- package/dist/src/mediatype/mediatype-config.js.map +1 -1
- package/dist/src/models.d.ts +228 -228
- package/dist/src/models.js +401 -401
- package/dist/src/models.js.map +1 -1
- package/dist/src/restoration-state-handler.d.ts +70 -70
- package/dist/src/restoration-state-handler.js +362 -363
- package/dist/src/restoration-state-handler.js.map +1 -1
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.d.ts +6 -6
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.js +24 -24
- package/dist/src/sort-filter-bar/alpha-bar-tooltip.js.map +1 -1
- package/dist/src/sort-filter-bar/alpha-bar.d.ts +21 -21
- package/dist/src/sort-filter-bar/alpha-bar.js +136 -136
- package/dist/src/sort-filter-bar/alpha-bar.js.map +1 -1
- package/dist/src/sort-filter-bar/img/compact.d.ts +1 -1
- package/dist/src/sort-filter-bar/img/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 +696 -697
- package/dist/src/sort-filter-bar/sort-filter-bar.js.map +1 -1
- 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/base-tile-component.js.map +1 -1
- 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/collection-browser-loading-tile.js.map +1 -1
- 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/account-tile.js.map +1 -1
- 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/collection-tile.js.map +1 -1
- package/dist/src/tiles/grid/item-tile.d.ts +34 -34
- package/dist/src/tiles/grid/item-tile.js +159 -160
- package/dist/src/tiles/grid/item-tile.js.map +1 -1
- 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/search-tile.js.map +1 -1
- 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 +54 -54
- package/dist/src/tiles/grid/tile-stats.js.map +1 -1
- 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/hover-pane-controller.js.map +1 -1
- package/dist/src/tiles/hover/tile-hover-pane.d.ts +18 -18
- package/dist/src/tiles/hover/tile-hover-pane.js +72 -70
- package/dist/src/tiles/hover/tile-hover-pane.js.map +1 -1
- package/dist/src/tiles/image-block.d.ts +18 -18
- package/dist/src/tiles/image-block.js +89 -89
- package/dist/src/tiles/image-block.js.map +1 -1
- package/dist/src/tiles/item-image.d.ts +39 -39
- package/dist/src/tiles/item-image.js +154 -154
- package/dist/src/tiles/item-image.js.map +1 -1
- 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-header.js.map +1 -1
- 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-compact.js.map +1 -1
- package/dist/src/tiles/list/tile-list.d.ts +54 -54
- package/dist/src/tiles/list/tile-list.js +324 -326
- package/dist/src/tiles/list/tile-list.js.map +1 -1
- package/dist/src/tiles/mediatype-icon.d.ts +9 -9
- package/dist/src/tiles/mediatype-icon.js +47 -47
- package/dist/src/tiles/mediatype-icon.js.map +1 -1
- 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/icon-overlay.js.map +1 -1
- 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/overlay/text-overlay.js.map +1 -1
- package/dist/src/tiles/review-block.d.ts +12 -12
- package/dist/src/tiles/review-block.js +56 -56
- package/dist/src/tiles/review-block.js.map +1 -1
- 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/text-snippet-block.js.map +1 -1
- package/dist/src/tiles/tile-dispatcher.d.ts +64 -64
- package/dist/src/tiles/tile-dispatcher.js +230 -230
- package/dist/src/tiles/tile-dispatcher.js.map +1 -1
- 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/tiles/tile-display-value-provider.js.map +1 -1
- 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/facet-utils.js.map +1 -1
- package/dist/src/utils/format-count.d.ts +7 -7
- package/dist/src/utils/format-count.js +75 -76
- package/dist/src/utils/format-count.js.map +1 -1
- package/dist/src/utils/format-date.d.ts +2 -2
- package/dist/src/utils/format-date.js +27 -27
- package/dist/src/utils/format-date.js.map +1 -1
- 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/format-unit-size.js.map +1 -1
- 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 +13 -15
- package/dist/src/utils/log.js.map +1 -1
- package/dist/src/utils/resolve-mediatype.d.ts +8 -8
- package/dist/src/utils/resolve-mediatype.js +23 -23
- package/dist/src/utils/resolve-mediatype.js.map +1 -1
- 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 +1309 -1308
- package/dist/test/collection-browser.test.js.map +1 -1
- package/dist/test/collection-facets/facet-row.test.d.ts +1 -1
- package/dist/test/collection-facets/facet-row.test.js +230 -227
- package/dist/test/collection-facets/facet-row.test.js.map +1 -1
- 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/facets-template.test.js.map +1 -1
- package/dist/test/collection-facets/more-facets-content.test.d.ts +1 -1
- package/dist/test/collection-facets/more-facets-content.test.js +140 -141
- package/dist/test/collection-facets/more-facets-content.test.js.map +1 -1
- package/dist/test/collection-facets/more-facets-pagination.test.d.ts +1 -1
- package/dist/test/collection-facets/more-facets-pagination.test.js +116 -117
- package/dist/test/collection-facets/more-facets-pagination.test.js.map +1 -1
- package/dist/test/collection-facets/toggle-switch.test.d.ts +1 -1
- package/dist/test/collection-facets/toggle-switch.test.js +82 -73
- package/dist/test/collection-facets/toggle-switch.test.js.map +1 -1
- package/dist/test/collection-facets.test.d.ts +2 -2
- package/dist/test/collection-facets.test.js +692 -692
- package/dist/test/collection-facets.test.js.map +1 -1
- 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/data-source/collection-browser-data-source.test.js.map +1 -1
- package/dist/test/empty-placeholder.test.d.ts +1 -1
- package/dist/test/empty-placeholder.test.js +62 -63
- package/dist/test/empty-placeholder.test.js.map +1 -1
- package/dist/test/expanded-date-picker.test.d.ts +1 -1
- package/dist/test/expanded-date-picker.test.js +97 -96
- package/dist/test/expanded-date-picker.test.js.map +1 -1
- package/dist/test/icon-overlay.test.d.ts +1 -1
- package/dist/test/icon-overlay.test.js +23 -24
- package/dist/test/icon-overlay.test.js.map +1 -1
- package/dist/test/image-block.test.d.ts +1 -1
- package/dist/test/image-block.test.js +106 -107
- package/dist/test/image-block.test.js.map +1 -1
- package/dist/test/item-image.test.d.ts +1 -1
- package/dist/test/item-image.test.js +84 -85
- package/dist/test/item-image.test.js.map +1 -1
- package/dist/test/manage/manage-bar.test.d.ts +2 -2
- package/dist/test/manage/manage-bar.test.js +100 -101
- package/dist/test/manage/manage-bar.test.js.map +1 -1
- package/dist/test/manage/remove-items-modal-content.test.d.ts +1 -1
- package/dist/test/manage/remove-items-modal-content.test.js +44 -45
- package/dist/test/manage/remove-items-modal-content.test.js.map +1 -1
- 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-responses.js.map +1 -1
- package/dist/test/mocks/mock-search-service.d.ts +15 -15
- package/dist/test/mocks/mock-search-service.js +54 -54
- package/dist/test/mocks/mock-search-service.js.map +1 -1
- package/dist/test/restoration-state-handler.test.d.ts +1 -1
- package/dist/test/restoration-state-handler.test.js +270 -270
- package/dist/test/restoration-state-handler.test.js.map +1 -1
- package/dist/test/review-block.test.d.ts +1 -1
- package/dist/test/review-block.test.js +43 -44
- package/dist/test/review-block.test.js.map +1 -1
- package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.d.ts +1 -1
- package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js +12 -12
- package/dist/test/sort-filter-bar/alpha-bar-tooltip.test.js.map +1 -1
- 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/alpha-bar.test.js.map +1 -1
- 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 +425 -426
- package/dist/test/sort-filter-bar/sort-filter-bar.test.js.map +1 -1
- package/dist/test/text-overlay.test.d.ts +1 -1
- package/dist/test/text-overlay.test.js +37 -38
- package/dist/test/text-overlay.test.js.map +1 -1
- package/dist/test/text-snippet-block.test.d.ts +1 -1
- package/dist/test/text-snippet-block.test.js +56 -57
- package/dist/test/text-snippet-block.test.js.map +1 -1
- package/dist/test/tile-stats.test.d.ts +1 -1
- package/dist/test/tile-stats.test.js +98 -99
- package/dist/test/tile-stats.test.js.map +1 -1
- package/dist/test/tiles/grid/account-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/account-tile.test.js +75 -76
- package/dist/test/tiles/grid/account-tile.test.js.map +1 -1
- package/dist/test/tiles/grid/collection-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/collection-tile.test.js +72 -73
- package/dist/test/tiles/grid/collection-tile.test.js.map +1 -1
- package/dist/test/tiles/grid/item-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/item-tile.test.js +311 -312
- package/dist/test/tiles/grid/item-tile.test.js.map +1 -1
- package/dist/test/tiles/grid/search-tile.test.d.ts +1 -1
- package/dist/test/tiles/grid/search-tile.test.js +50 -51
- package/dist/test/tiles/grid/search-tile.test.js.map +1 -1
- 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/hover-pane-controller.test.js.map +1 -1
- 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/hover/tile-hover-pane.test.js.map +1 -1
- package/dist/test/tiles/list/tile-list-compact.test.d.ts +1 -1
- package/dist/test/tiles/list/tile-list-compact.test.js +142 -143
- package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
- package/dist/test/tiles/list/tile-list.test.d.ts +1 -1
- package/dist/test/tiles/list/tile-list.test.js +296 -297
- package/dist/test/tiles/list/tile-list.test.js.map +1 -1
- 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-dispatcher.test.js.map +1 -1
- 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-count.test.js.map +1 -1
- 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-date.test.js.map +1 -1
- 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/dist/test/utils/local-date-from-utc.test.js.map +1 -1
- package/eslint.config.mjs +53 -0
- package/index.html +0 -3
- package/index.ts +1 -7
- package/package.json +41 -39
- package/src/app-root.ts +21 -22
- package/src/collection-browser.ts +44 -40
- package/src/collection-facets/facets-template.ts +7 -6
- package/src/collection-facets/more-facets-content.ts +11 -13
- package/src/collection-facets/more-facets-pagination.ts +3 -2
- package/src/collection-facets/smart-facets/dedupe.ts +2 -2
- package/src/collection-facets/smart-facets/heuristics/query-keywords-heuristic.ts +1 -1
- package/src/collection-facets/smart-facets/heuristics/wikidata-heuristic.ts +6 -6
- package/src/collection-facets/smart-facets/smart-facet-bar.ts +6 -8
- package/src/collection-facets/smart-facets/smart-facet-button.ts +5 -3
- package/src/collection-facets/smart-facets/smart-facet-dropdown.ts +4 -4
- package/src/collection-facets/smart-facets/smart-facet-heuristics.ts +1 -1
- package/src/collection-facets/toggle-switch.ts +2 -2
- package/src/collection-facets.ts +18 -19
- package/src/data-source/collection-browser-data-source-interface.ts +5 -1
- package/src/data-source/collection-browser-data-source.ts +37 -34
- package/src/empty-placeholder.ts +19 -16
- package/src/expanded-date-picker.ts +1 -1
- package/src/language-code-handler/language-code-handler.ts +1 -1
- package/src/manage/manage-bar.ts +23 -20
- package/src/manage/remove-items-modal-content.ts +2 -2
- package/src/mediatype/mediatype-config.ts +1 -0
- package/src/models.ts +3 -3
- package/src/restoration-state-handler.ts +14 -15
- package/src/sort-filter-bar/alpha-bar.ts +16 -17
- package/src/sort-filter-bar/sort-filter-bar.ts +14 -15
- package/src/tiles/grid/account-tile.ts +1 -1
- package/src/tiles/grid/collection-tile.ts +1 -1
- package/src/tiles/grid/item-tile.ts +9 -9
- package/src/tiles/grid/tile-stats.ts +4 -4
- package/src/tiles/hover/hover-pane-controller.ts +1 -1
- package/src/tiles/hover/tile-hover-pane.ts +4 -2
- package/src/tiles/item-image.ts +1 -1
- package/src/tiles/list/tile-list-compact.ts +2 -2
- package/src/tiles/list/tile-list.ts +22 -24
- package/src/tiles/tile-dispatcher.ts +5 -5
- package/src/tiles/tile-display-value-provider.ts +4 -4
- package/src/utils/facet-utils.ts +6 -6
- package/src/utils/format-count.ts +2 -3
- package/src/utils/format-date.ts +1 -1
- package/src/utils/format-unit-size.ts +1 -1
- package/src/utils/log.ts +1 -3
- package/test/collection-browser.test.ts +125 -124
- package/test/collection-facets/facet-row.test.ts +31 -28
- package/test/collection-facets/facets-template.test.ts +9 -9
- package/test/collection-facets/more-facets-content.test.ts +14 -15
- package/test/collection-facets/more-facets-pagination.test.ts +18 -19
- package/test/collection-facets/toggle-switch.test.ts +28 -18
- package/test/collection-facets.test.ts +46 -39
- package/test/data-source/collection-browser-data-source.test.ts +2 -2
- package/test/empty-placeholder.test.ts +6 -7
- package/test/expanded-date-picker.test.ts +25 -20
- package/test/icon-overlay.test.ts +0 -1
- package/test/image-block.test.ts +6 -7
- package/test/item-image.test.ts +0 -1
- package/test/manage/manage-bar.test.ts +19 -16
- package/test/manage/remove-items-modal-content.test.ts +4 -5
- package/test/mocks/mock-search-responses.ts +2 -1
- package/test/mocks/mock-search-service.ts +1 -1
- package/test/restoration-state-handler.test.ts +12 -12
- package/test/review-block.test.ts +1 -2
- package/test/sort-filter-bar/alpha-bar-tooltip.test.ts +1 -1
- package/test/sort-filter-bar/alpha-bar.test.ts +5 -5
- package/test/sort-filter-bar/sort-filter-bar.test.ts +38 -39
- package/test/text-overlay.test.ts +0 -1
- package/test/text-snippet-block.test.ts +5 -6
- package/test/tile-stats.test.ts +26 -35
- package/test/tiles/grid/account-tile.test.ts +2 -3
- package/test/tiles/grid/collection-tile.test.ts +3 -4
- package/test/tiles/grid/item-tile.test.ts +13 -14
- package/test/tiles/grid/search-tile.test.ts +1 -2
- package/test/tiles/hover/hover-pane-controller.test.ts +15 -15
- package/test/tiles/hover/tile-hover-pane.test.ts +5 -5
- package/test/tiles/list/tile-list-compact.test.ts +1 -2
- package/test/tiles/list/tile-list.test.ts +10 -11
- package/test/tiles/tile-dispatcher.test.ts +5 -5
- package/test/utils/format-count.test.ts +1 -1
- package/test/utils/format-date.test.ts +1 -1
- package/test/utils/local-date-from-utc.test.ts +1 -1
- package/tsconfig.json +0 -1
|
@@ -1,377 +1,376 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
expect(
|
|
16
|
-
expect(
|
|
17
|
-
expect(
|
|
18
|
-
expect(
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
expect(
|
|
31
|
-
expect(
|
|
32
|
-
expect(
|
|
33
|
-
expect(
|
|
34
|
-
expect(
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
expect(
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
expect(
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
const
|
|
72
|
-
|
|
73
|
-
expect(
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
expect(
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
const
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
expect(
|
|
101
|
-
expect(
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
const
|
|
113
|
-
const
|
|
114
|
-
|
|
115
|
-
expect(
|
|
116
|
-
expect(
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
};
|
|
1
|
+
import { expect, fixture } from '@open-wc/testing';
|
|
2
|
+
import sinon from 'sinon';
|
|
3
|
+
import { html } from 'lit';
|
|
4
|
+
import '../../../src/tiles/grid/item-tile';
|
|
5
|
+
describe('Item Tile', () => {
|
|
6
|
+
it('should render initial component', async () => {
|
|
7
|
+
var _a, _b, _c, _d, _e;
|
|
8
|
+
const el = await fixture(html `<item-tile></item-tile>`);
|
|
9
|
+
const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
|
|
10
|
+
const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
|
|
11
|
+
const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
|
|
12
|
+
const itemTitle = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('#title');
|
|
13
|
+
const imageBlock = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('image-block');
|
|
14
|
+
expect(container).to.exist;
|
|
15
|
+
expect(tileDetails).to.exist;
|
|
16
|
+
expect(itemInfo).to.exist;
|
|
17
|
+
expect(imageBlock).to.exist;
|
|
18
|
+
expect(itemTitle).to.exist;
|
|
19
|
+
});
|
|
20
|
+
it('should render with created-by element', async () => {
|
|
21
|
+
var _a, _b, _c, _d, _e;
|
|
22
|
+
const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
|
|
23
|
+
const container = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.container');
|
|
24
|
+
const tileDetails = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.tile-details');
|
|
25
|
+
const itemInfo = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.item-info');
|
|
26
|
+
const createdBy = (_d = el.shadowRoot) === null || _d === void 0 ? void 0 : _d.querySelector('.created-by');
|
|
27
|
+
const truncatedCreatorText = createdBy === null || createdBy === void 0 ? void 0 : createdBy.querySelector('.truncated');
|
|
28
|
+
const dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
|
|
29
|
+
expect(container).to.exist;
|
|
30
|
+
expect(tileDetails).to.exist;
|
|
31
|
+
expect(itemInfo).to.exist;
|
|
32
|
+
expect(createdBy).to.exist;
|
|
33
|
+
expect(truncatedCreatorText).to.exist;
|
|
34
|
+
expect(dateSortedBy).to.not.exist;
|
|
35
|
+
});
|
|
36
|
+
it('should not render with created-by but date element', async () => {
|
|
37
|
+
var _a, _b;
|
|
38
|
+
const el = await fixture(html `<item-tile .model=${{ datePublished: new Date() }}></item-tile>`);
|
|
39
|
+
el.sortParam = {
|
|
40
|
+
field: 'date',
|
|
41
|
+
direction: 'desc',
|
|
42
|
+
};
|
|
43
|
+
await el.updateComplete;
|
|
44
|
+
const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
|
|
45
|
+
const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
|
|
46
|
+
expect(createdBy).to.not.exist;
|
|
47
|
+
expect(dateSortedBy).to.exist;
|
|
48
|
+
});
|
|
49
|
+
it('should not render with created-by but reviewdate element', async () => {
|
|
50
|
+
var _a, _b;
|
|
51
|
+
const el = await fixture(html `<item-tile .model=${{ dateReviewed: new Date() }}></item-tile>`);
|
|
52
|
+
el.sortParam = {
|
|
53
|
+
field: 'reviewdate',
|
|
54
|
+
direction: 'desc',
|
|
55
|
+
};
|
|
56
|
+
await el.updateComplete;
|
|
57
|
+
const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
|
|
58
|
+
const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
|
|
59
|
+
expect(createdBy).to.not.exist;
|
|
60
|
+
expect(dateSortedBy).to.exist;
|
|
61
|
+
});
|
|
62
|
+
it('should not render with created-by but publicdate element', async () => {
|
|
63
|
+
var _a, _b;
|
|
64
|
+
const el = await fixture(html `<item-tile .model=${{ dateArchived: new Date() }}></item-tile>`);
|
|
65
|
+
el.sortParam = {
|
|
66
|
+
field: 'publicdate',
|
|
67
|
+
direction: 'desc',
|
|
68
|
+
};
|
|
69
|
+
await el.updateComplete;
|
|
70
|
+
const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
|
|
71
|
+
const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
|
|
72
|
+
expect(createdBy).to.not.exist;
|
|
73
|
+
expect(dateSortedBy).to.exist;
|
|
74
|
+
});
|
|
75
|
+
it('should not render date-sorted-by element if date is not provided', async () => {
|
|
76
|
+
var _a, _b;
|
|
77
|
+
const el = await fixture(html `<item-tile .model=${{ dateArchived: undefined }}></item-tile>`);
|
|
78
|
+
el.sortParam = {
|
|
79
|
+
field: 'publicdate',
|
|
80
|
+
direction: 'desc',
|
|
81
|
+
};
|
|
82
|
+
await el.updateComplete;
|
|
83
|
+
const createdBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
|
|
84
|
+
const dateSortedBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.date-sorted-by');
|
|
85
|
+
expect(createdBy).to.not.exist;
|
|
86
|
+
expect(dateSortedBy).to.not.exist;
|
|
87
|
+
});
|
|
88
|
+
it('should render without created-by when sorting by a date field', async () => {
|
|
89
|
+
var _a, _b, _c;
|
|
90
|
+
const el = await fixture(html `<item-tile .model=${{ dateAdded: new Date() }}></item-tile>`);
|
|
91
|
+
el.sortParam = {
|
|
92
|
+
field: 'addeddate',
|
|
93
|
+
direction: 'asc',
|
|
94
|
+
};
|
|
95
|
+
await el.updateComplete;
|
|
96
|
+
const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
|
|
97
|
+
const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
|
|
98
|
+
const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
|
|
99
|
+
expect(itemInfo).to.exist;
|
|
100
|
+
expect(createdBy).to.not.exist;
|
|
101
|
+
expect(dateSortedBy).to.exist;
|
|
102
|
+
});
|
|
103
|
+
it('should render with created-by when sort field is not a date', async () => {
|
|
104
|
+
var _a, _b, _c;
|
|
105
|
+
const el = await fixture(html `<item-tile .model=${{ creator: 'someone' }}></item-tile>`);
|
|
106
|
+
el.sortParam = {
|
|
107
|
+
field: 'week',
|
|
108
|
+
direction: 'asc',
|
|
109
|
+
};
|
|
110
|
+
await el.updateComplete;
|
|
111
|
+
const itemInfo = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.item-info');
|
|
112
|
+
const createdBy = (_b = el.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('.created-by');
|
|
113
|
+
const dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
|
|
114
|
+
expect(itemInfo).to.exist;
|
|
115
|
+
expect(dateSortedBy).to.not.exist; // it should not exist because this is not a date sort
|
|
116
|
+
expect(createdBy).to.exist;
|
|
117
|
+
});
|
|
118
|
+
it('should render published date when sorting by it', async () => {
|
|
119
|
+
var _a, _b;
|
|
120
|
+
const model = {
|
|
121
|
+
dateAdded: new Date(2010, 0, 2),
|
|
122
|
+
dateArchived: new Date(2011, 0, 2),
|
|
123
|
+
datePublished: new Date(2012, 0, 2),
|
|
124
|
+
dateReviewed: new Date(2013, 0, 2),
|
|
125
|
+
};
|
|
127
126
|
const el = await fixture(html `
|
|
128
127
|
<item-tile
|
|
129
128
|
.model=${model}
|
|
130
129
|
.sortParam=${{ field: 'date', direction: 'desc' }}
|
|
131
130
|
>
|
|
132
131
|
</item-tile>
|
|
133
|
-
`);
|
|
134
|
-
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
135
|
-
expect(dateSortedBy).to.exist;
|
|
136
|
-
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('published Jan 02, 2012');
|
|
137
|
-
});
|
|
138
|
-
it('should render added date when sorting by it', async () => {
|
|
139
|
-
var _a, _b;
|
|
140
|
-
const model = {
|
|
141
|
-
dateAdded: new Date(2010, 0, 2),
|
|
142
|
-
dateArchived: new Date(2011, 0, 2),
|
|
143
|
-
datePublished: new Date(2012, 0, 2),
|
|
144
|
-
dateReviewed: new Date(2013, 0, 2),
|
|
145
|
-
};
|
|
132
|
+
`);
|
|
133
|
+
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
134
|
+
expect(dateSortedBy).to.exist;
|
|
135
|
+
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('published Jan 02, 2012');
|
|
136
|
+
});
|
|
137
|
+
it('should render added date when sorting by it', async () => {
|
|
138
|
+
var _a, _b;
|
|
139
|
+
const model = {
|
|
140
|
+
dateAdded: new Date(2010, 0, 2),
|
|
141
|
+
dateArchived: new Date(2011, 0, 2),
|
|
142
|
+
datePublished: new Date(2012, 0, 2),
|
|
143
|
+
dateReviewed: new Date(2013, 0, 2),
|
|
144
|
+
};
|
|
146
145
|
const el = await fixture(html `
|
|
147
146
|
<item-tile
|
|
148
147
|
.model=${model}
|
|
149
148
|
.sortParam=${{ field: 'addeddate', direction: 'desc' }}
|
|
150
149
|
>
|
|
151
150
|
</item-tile>
|
|
152
|
-
`);
|
|
153
|
-
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
154
|
-
expect(dateSortedBy).to.exist;
|
|
155
|
-
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('added Jan 02, 2010');
|
|
156
|
-
});
|
|
157
|
-
it('should render archived date when sorting by it', async () => {
|
|
158
|
-
var _a, _b;
|
|
159
|
-
const model = {
|
|
160
|
-
dateAdded: new Date(2010, 0, 2),
|
|
161
|
-
dateArchived: new Date(2011, 0, 2),
|
|
162
|
-
datePublished: new Date(2012, 0, 2),
|
|
163
|
-
dateReviewed: new Date(2013, 0, 2),
|
|
164
|
-
};
|
|
151
|
+
`);
|
|
152
|
+
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
153
|
+
expect(dateSortedBy).to.exist;
|
|
154
|
+
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('added Jan 02, 2010');
|
|
155
|
+
});
|
|
156
|
+
it('should render archived date when sorting by it', async () => {
|
|
157
|
+
var _a, _b;
|
|
158
|
+
const model = {
|
|
159
|
+
dateAdded: new Date(2010, 0, 2),
|
|
160
|
+
dateArchived: new Date(2011, 0, 2),
|
|
161
|
+
datePublished: new Date(2012, 0, 2),
|
|
162
|
+
dateReviewed: new Date(2013, 0, 2),
|
|
163
|
+
};
|
|
165
164
|
const el = await fixture(html `
|
|
166
165
|
<item-tile
|
|
167
166
|
.model=${model}
|
|
168
167
|
.sortParam=${{ field: 'publicdate', direction: 'desc' }}
|
|
169
168
|
>
|
|
170
169
|
</item-tile>
|
|
171
|
-
`);
|
|
172
|
-
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
173
|
-
expect(dateSortedBy).to.exist;
|
|
174
|
-
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('archived Jan 02, 2011');
|
|
175
|
-
});
|
|
176
|
-
it('should render reviewed date when sorting by it', async () => {
|
|
177
|
-
var _a, _b;
|
|
178
|
-
const model = {
|
|
179
|
-
dateAdded: new Date(2010, 0, 2),
|
|
180
|
-
dateArchived: new Date(2011, 0, 2),
|
|
181
|
-
datePublished: new Date(2012, 0, 2),
|
|
182
|
-
dateReviewed: new Date(2013, 0, 2),
|
|
183
|
-
};
|
|
170
|
+
`);
|
|
171
|
+
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
172
|
+
expect(dateSortedBy).to.exist;
|
|
173
|
+
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('archived Jan 02, 2011');
|
|
174
|
+
});
|
|
175
|
+
it('should render reviewed date when sorting by it', async () => {
|
|
176
|
+
var _a, _b;
|
|
177
|
+
const model = {
|
|
178
|
+
dateAdded: new Date(2010, 0, 2),
|
|
179
|
+
dateArchived: new Date(2011, 0, 2),
|
|
180
|
+
datePublished: new Date(2012, 0, 2),
|
|
181
|
+
dateReviewed: new Date(2013, 0, 2),
|
|
182
|
+
};
|
|
184
183
|
const el = await fixture(html `
|
|
185
184
|
<item-tile
|
|
186
185
|
.model=${model}
|
|
187
186
|
.sortParam=${{ field: 'reviewdate', direction: 'desc' }}
|
|
188
187
|
>
|
|
189
188
|
</item-tile>
|
|
190
|
-
`);
|
|
191
|
-
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
192
|
-
expect(dateSortedBy).to.exist;
|
|
193
|
-
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('reviewed Jan 02, 2013');
|
|
194
|
-
});
|
|
195
|
-
it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
|
|
196
|
-
var _a, _b;
|
|
197
|
-
const model = {
|
|
198
|
-
datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
|
|
199
|
-
};
|
|
189
|
+
`);
|
|
190
|
+
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
191
|
+
expect(dateSortedBy).to.exist;
|
|
192
|
+
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.contain('reviewed Jan 02, 2013');
|
|
193
|
+
});
|
|
194
|
+
it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
|
|
195
|
+
var _a, _b;
|
|
196
|
+
const model = {
|
|
197
|
+
datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
|
|
198
|
+
};
|
|
200
199
|
const el = await fixture(html `
|
|
201
200
|
<item-tile
|
|
202
201
|
.model=${model}
|
|
203
202
|
.sortParam=${{ field: 'date', direction: 'desc' }}
|
|
204
203
|
>
|
|
205
204
|
</item-tile>
|
|
206
|
-
`);
|
|
207
|
-
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
208
|
-
expect(dateSortedBy).to.exist;
|
|
209
|
-
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('published 2012');
|
|
210
|
-
});
|
|
211
|
-
it('should show full date added/archived/reviewed, even on Jan 1 at midnight UTC', async () => {
|
|
212
|
-
var _a, _b, _c, _d, _e, _f;
|
|
213
|
-
const model = {
|
|
214
|
-
dateAdded: new Date(2010, 0, 1, 0, 0, 0, 0),
|
|
215
|
-
dateArchived: new Date(2011, 0, 1, 0, 0, 0, 0),
|
|
216
|
-
datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
|
|
217
|
-
dateReviewed: new Date(2013, 0, 1, 0, 0, 0, 0),
|
|
218
|
-
};
|
|
205
|
+
`);
|
|
206
|
+
const dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
207
|
+
expect(dateSortedBy).to.exist;
|
|
208
|
+
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('published 2012');
|
|
209
|
+
});
|
|
210
|
+
it('should show full date added/archived/reviewed, even on Jan 1 at midnight UTC', async () => {
|
|
211
|
+
var _a, _b, _c, _d, _e, _f;
|
|
212
|
+
const model = {
|
|
213
|
+
dateAdded: new Date(2010, 0, 1, 0, 0, 0, 0),
|
|
214
|
+
dateArchived: new Date(2011, 0, 1, 0, 0, 0, 0),
|
|
215
|
+
datePublished: new Date(2012, 0, 1, 0, 0, 0, 0),
|
|
216
|
+
dateReviewed: new Date(2013, 0, 1, 0, 0, 0, 0),
|
|
217
|
+
};
|
|
219
218
|
const el = await fixture(html `
|
|
220
219
|
<item-tile
|
|
221
220
|
.model=${model}
|
|
222
221
|
.sortParam=${{ field: 'addeddate', direction: 'desc' }}
|
|
223
222
|
>
|
|
224
223
|
</item-tile>
|
|
225
|
-
`);
|
|
226
|
-
let dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
227
|
-
expect(dateSortedBy).to.exist;
|
|
228
|
-
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('added Jan 01, 2010');
|
|
229
|
-
el.sortParam = { field: 'publicdate', direction: 'desc' };
|
|
230
|
-
await el.updateComplete;
|
|
231
|
-
dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
|
|
232
|
-
expect(dateSortedBy).to.exist;
|
|
233
|
-
expect((_d = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _d === void 0 ? void 0 : _d.trim()).to.equal('archived Jan 01, 2011');
|
|
234
|
-
el.sortParam = { field: 'reviewdate', direction: 'desc' };
|
|
235
|
-
await el.updateComplete;
|
|
236
|
-
dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
|
|
237
|
-
expect(dateSortedBy).to.exist;
|
|
238
|
-
expect((_f = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _f === void 0 ? void 0 : _f.trim()).to.equal('reviewed Jan 01, 2013');
|
|
239
|
-
});
|
|
240
|
-
it('should show the first creator matching the letter filter, if defined', async () => {
|
|
241
|
-
var _a, _b;
|
|
242
|
-
const model = {
|
|
243
|
-
creator: 'foo',
|
|
244
|
-
creators: ['foo', 'bar', 'baz'],
|
|
245
|
-
};
|
|
224
|
+
`);
|
|
225
|
+
let dateSortedBy = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.date-sorted-by');
|
|
226
|
+
expect(dateSortedBy).to.exist;
|
|
227
|
+
expect((_b = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.equal('added Jan 01, 2010');
|
|
228
|
+
el.sortParam = { field: 'publicdate', direction: 'desc' };
|
|
229
|
+
await el.updateComplete;
|
|
230
|
+
dateSortedBy = (_c = el.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('.date-sorted-by');
|
|
231
|
+
expect(dateSortedBy).to.exist;
|
|
232
|
+
expect((_d = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _d === void 0 ? void 0 : _d.trim()).to.equal('archived Jan 01, 2011');
|
|
233
|
+
el.sortParam = { field: 'reviewdate', direction: 'desc' };
|
|
234
|
+
await el.updateComplete;
|
|
235
|
+
dateSortedBy = (_e = el.shadowRoot) === null || _e === void 0 ? void 0 : _e.querySelector('.date-sorted-by');
|
|
236
|
+
expect(dateSortedBy).to.exist;
|
|
237
|
+
expect((_f = dateSortedBy === null || dateSortedBy === void 0 ? void 0 : dateSortedBy.textContent) === null || _f === void 0 ? void 0 : _f.trim()).to.equal('reviewed Jan 01, 2013');
|
|
238
|
+
});
|
|
239
|
+
it('should show the first creator matching the letter filter, if defined', async () => {
|
|
240
|
+
var _a, _b;
|
|
241
|
+
const model = {
|
|
242
|
+
creator: 'foo',
|
|
243
|
+
creators: ['foo', 'bar', 'baz'],
|
|
244
|
+
};
|
|
246
245
|
const el = await fixture(html `
|
|
247
246
|
<item-tile .model=${model} .creatorFilter=${'B'}> </item-tile>
|
|
248
|
-
`);
|
|
249
|
-
const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
|
|
250
|
-
expect(creator).to.exist;
|
|
251
|
-
expect((_b = creator === null || creator === void 0 ? void 0 : creator.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.match(/by\s+bar/);
|
|
252
|
-
});
|
|
253
|
-
it('should render with snippet block when it has snippets', async () => {
|
|
254
|
-
var _a;
|
|
247
|
+
`);
|
|
248
|
+
const creator = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.created-by');
|
|
249
|
+
expect(creator).to.exist;
|
|
250
|
+
expect((_b = creator === null || creator === void 0 ? void 0 : creator.textContent) === null || _b === void 0 ? void 0 : _b.trim()).to.match(/by\s+bar/);
|
|
251
|
+
});
|
|
252
|
+
it('should render with snippet block when it has snippets', async () => {
|
|
253
|
+
var _a;
|
|
255
254
|
const el = await fixture(html `
|
|
256
255
|
<item-tile .model=${{ snippets: ['some {{{snippet}}} text'] }}>
|
|
257
256
|
</item-tile>
|
|
258
|
-
`);
|
|
259
|
-
const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
|
|
260
|
-
expect(snippetBlock).to.exist;
|
|
261
|
-
});
|
|
262
|
-
it('should not render snippet block when no snippets are present', async () => {
|
|
263
|
-
var _a;
|
|
264
|
-
const el = await fixture(html `<item-tile></item-tile>`);
|
|
265
|
-
const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
|
|
266
|
-
expect(snippetBlock).to.not.exist;
|
|
267
|
-
});
|
|
268
|
-
it('should render info button when showInfoButton flag is set', async () => {
|
|
269
|
-
var _a;
|
|
257
|
+
`);
|
|
258
|
+
const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
|
|
259
|
+
expect(snippetBlock).to.exist;
|
|
260
|
+
});
|
|
261
|
+
it('should not render snippet block when no snippets are present', async () => {
|
|
262
|
+
var _a;
|
|
263
|
+
const el = await fixture(html `<item-tile></item-tile>`);
|
|
264
|
+
const snippetBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('text-snippet-block');
|
|
265
|
+
expect(snippetBlock).to.not.exist;
|
|
266
|
+
});
|
|
267
|
+
it('should render info button when showInfoButton flag is set', async () => {
|
|
268
|
+
var _a;
|
|
270
269
|
const el = await fixture(html `
|
|
271
270
|
<item-tile ?showInfoButton=${true}> </item-tile>
|
|
272
|
-
`);
|
|
273
|
-
const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
|
|
274
|
-
expect(infoButton).to.exist;
|
|
275
|
-
});
|
|
276
|
-
it('should dispatch event when info button tapped', async () => {
|
|
277
|
-
var _a;
|
|
278
|
-
const infoButtonSpy = sinon.spy();
|
|
271
|
+
`);
|
|
272
|
+
const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
|
|
273
|
+
expect(infoButton).to.exist;
|
|
274
|
+
});
|
|
275
|
+
it('should dispatch event when info button tapped', async () => {
|
|
276
|
+
var _a;
|
|
277
|
+
const infoButtonSpy = sinon.spy();
|
|
279
278
|
const el = await fixture(html `
|
|
280
279
|
<item-tile ?showInfoButton=${true} @infoButtonPressed=${infoButtonSpy}>
|
|
281
280
|
</item-tile>
|
|
282
|
-
`);
|
|
283
|
-
const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
|
|
284
|
-
infoButton.click();
|
|
285
|
-
await el.updateComplete;
|
|
286
|
-
expect(infoButtonSpy.callCount).to.equal(1);
|
|
287
|
-
});
|
|
288
|
-
it('should render with volume/issue view', async () => {
|
|
289
|
-
var _a;
|
|
281
|
+
`);
|
|
282
|
+
const infoButton = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.info-button');
|
|
283
|
+
infoButton.click();
|
|
284
|
+
await el.updateComplete;
|
|
285
|
+
expect(infoButtonSpy.callCount).to.equal(1);
|
|
286
|
+
});
|
|
287
|
+
it('should render with volume/issue view', async () => {
|
|
288
|
+
var _a;
|
|
290
289
|
const el = await fixture(html `
|
|
291
290
|
<item-tile .model=${{ volume: '1', issue: 'Index' }}></item-tile>
|
|
292
|
-
`);
|
|
293
|
-
const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
|
|
294
|
-
expect(volumeIssueBlock).to.exist;
|
|
295
|
-
});
|
|
296
|
-
it('should render with volume/issue view to not render', async () => {
|
|
297
|
-
var _a;
|
|
298
|
-
const el = await fixture(html `<item-tile></item-tile>`);
|
|
299
|
-
const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
|
|
300
|
-
expect(volumeIssueBlock).to.not.exist;
|
|
301
|
-
});
|
|
302
|
-
it('should render web capture date links if present', async () => {
|
|
303
|
-
var _a, _b, _c, _d, _e;
|
|
304
|
-
const captureDates = [
|
|
305
|
-
new Date('2010-01-02T12:34:56Z'),
|
|
306
|
-
new Date('2011-02-03T12:43:21Z'),
|
|
307
|
-
];
|
|
291
|
+
`);
|
|
292
|
+
const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
|
|
293
|
+
expect(volumeIssueBlock).to.exist;
|
|
294
|
+
});
|
|
295
|
+
it('should render with volume/issue view to not render', async () => {
|
|
296
|
+
var _a;
|
|
297
|
+
const el = await fixture(html `<item-tile></item-tile>`);
|
|
298
|
+
const volumeIssueBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.volume-issue');
|
|
299
|
+
expect(volumeIssueBlock).to.not.exist;
|
|
300
|
+
});
|
|
301
|
+
it('should render web capture date links if present', async () => {
|
|
302
|
+
var _a, _b, _c, _d, _e;
|
|
303
|
+
const captureDates = [
|
|
304
|
+
new Date('2010-01-02T12:34:56Z'),
|
|
305
|
+
new Date('2011-02-03T12:43:21Z'),
|
|
306
|
+
];
|
|
308
307
|
const el = await fixture(html `
|
|
309
308
|
<item-tile
|
|
310
|
-
.model=${{
|
|
311
|
-
identifier: 'foo',
|
|
312
|
-
title: 'https://example.com/',
|
|
313
|
-
captureDates,
|
|
309
|
+
.model=${{
|
|
310
|
+
identifier: 'foo',
|
|
311
|
+
title: 'https://example.com/',
|
|
312
|
+
captureDates,
|
|
314
313
|
}}
|
|
315
314
|
></item-tile>
|
|
316
|
-
`);
|
|
317
|
-
const captureDatesUl = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.capture-dates');
|
|
318
|
-
expect(captureDatesUl, 'capture dates container').to.exist;
|
|
319
|
-
expect(captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children.length).to.equal(2);
|
|
320
|
-
const firstDateLink = (_b = captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children[0]) === null || _b === void 0 ? void 0 : _b.querySelector('a[href]');
|
|
321
|
-
expect(firstDateLink, 'first date link').to.exist;
|
|
322
|
-
expect(firstDateLink === null || firstDateLink === void 0 ? void 0 : firstDateLink.getAttribute('href')).to.equal('https://web.archive.org/web/20100102123456/https%3A%2F%2Fexample.com%2F');
|
|
323
|
-
expect((_c = firstDateLink === null || firstDateLink === void 0 ? void 0 : firstDateLink.textContent) === null || _c === void 0 ? void 0 : _c.trim()).to.equal('Jan 02, 2010');
|
|
324
|
-
const secondDateLink = (_d = captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children[1]) === null || _d === void 0 ? void 0 : _d.querySelector('a[href]');
|
|
325
|
-
expect(secondDateLink, 'second date link').to.exist;
|
|
326
|
-
expect(secondDateLink === null || secondDateLink === void 0 ? void 0 : secondDateLink.getAttribute('href')).to.equal('https://web.archive.org/web/20110203124321/https%3A%2F%2Fexample.com%2F');
|
|
327
|
-
expect((_e = secondDateLink === null || secondDateLink === void 0 ? void 0 : secondDateLink.textContent) === null || _e === void 0 ? void 0 : _e.trim()).to.equal('Feb 03, 2011');
|
|
328
|
-
});
|
|
329
|
-
it('should not render web captures if no title is present', async () => {
|
|
330
|
-
var _a;
|
|
331
|
-
const captureDates = [
|
|
332
|
-
new Date('2010-01-02T12:34:56Z'),
|
|
333
|
-
new Date('2011-02-03T12:43:21Z'),
|
|
334
|
-
];
|
|
315
|
+
`);
|
|
316
|
+
const captureDatesUl = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.capture-dates');
|
|
317
|
+
expect(captureDatesUl, 'capture dates container').to.exist;
|
|
318
|
+
expect(captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children.length).to.equal(2);
|
|
319
|
+
const firstDateLink = (_b = captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children[0]) === null || _b === void 0 ? void 0 : _b.querySelector('a[href]');
|
|
320
|
+
expect(firstDateLink, 'first date link').to.exist;
|
|
321
|
+
expect(firstDateLink === null || firstDateLink === void 0 ? void 0 : firstDateLink.getAttribute('href')).to.equal('https://web.archive.org/web/20100102123456/https%3A%2F%2Fexample.com%2F');
|
|
322
|
+
expect((_c = firstDateLink === null || firstDateLink === void 0 ? void 0 : firstDateLink.textContent) === null || _c === void 0 ? void 0 : _c.trim()).to.equal('Jan 02, 2010');
|
|
323
|
+
const secondDateLink = (_d = captureDatesUl === null || captureDatesUl === void 0 ? void 0 : captureDatesUl.children[1]) === null || _d === void 0 ? void 0 : _d.querySelector('a[href]');
|
|
324
|
+
expect(secondDateLink, 'second date link').to.exist;
|
|
325
|
+
expect(secondDateLink === null || secondDateLink === void 0 ? void 0 : secondDateLink.getAttribute('href')).to.equal('https://web.archive.org/web/20110203124321/https%3A%2F%2Fexample.com%2F');
|
|
326
|
+
expect((_e = secondDateLink === null || secondDateLink === void 0 ? void 0 : secondDateLink.textContent) === null || _e === void 0 ? void 0 : _e.trim()).to.equal('Feb 03, 2011');
|
|
327
|
+
});
|
|
328
|
+
it('should not render web captures if no title is present', async () => {
|
|
329
|
+
var _a;
|
|
330
|
+
const captureDates = [
|
|
331
|
+
new Date('2010-01-02T12:34:56Z'),
|
|
332
|
+
new Date('2011-02-03T12:43:21Z'),
|
|
333
|
+
];
|
|
335
334
|
const el = await fixture(html `
|
|
336
335
|
<item-tile
|
|
337
|
-
.model=${{
|
|
338
|
-
identifier: 'foo',
|
|
339
|
-
captureDates,
|
|
336
|
+
.model=${{
|
|
337
|
+
identifier: 'foo',
|
|
338
|
+
captureDates,
|
|
340
339
|
}}
|
|
341
340
|
></item-tile>
|
|
342
|
-
`);
|
|
343
|
-
const captureDatesUl = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.capture-dates');
|
|
344
|
-
expect(captureDatesUl).not.to.exist;
|
|
345
|
-
});
|
|
346
|
-
it('should render review snippet if present', async () => {
|
|
347
|
-
var _a;
|
|
348
|
-
const review = {
|
|
349
|
-
title: 'Foo',
|
|
350
|
-
body: 'foo bar baz',
|
|
351
|
-
stars: 3,
|
|
352
|
-
};
|
|
341
|
+
`);
|
|
342
|
+
const captureDatesUl = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('.capture-dates');
|
|
343
|
+
expect(captureDatesUl).not.to.exist;
|
|
344
|
+
});
|
|
345
|
+
it('should render review snippet if present', async () => {
|
|
346
|
+
var _a;
|
|
347
|
+
const review = {
|
|
348
|
+
title: 'Foo',
|
|
349
|
+
body: 'foo bar baz',
|
|
350
|
+
stars: 3,
|
|
351
|
+
};
|
|
353
352
|
const el = await fixture(html `
|
|
354
353
|
<item-tile
|
|
355
|
-
.model=${{
|
|
356
|
-
identifier: 'foo',
|
|
357
|
-
review,
|
|
354
|
+
.model=${{
|
|
355
|
+
identifier: 'foo',
|
|
356
|
+
review,
|
|
358
357
|
}}
|
|
359
358
|
></item-tile>
|
|
360
|
-
`);
|
|
361
|
-
const reviewBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('review-block');
|
|
362
|
-
expect(reviewBlock).to.exist;
|
|
363
|
-
});
|
|
364
|
-
it('should not render review snippet block when no review is present', async () => {
|
|
365
|
-
var _a;
|
|
359
|
+
`);
|
|
360
|
+
const reviewBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('review-block');
|
|
361
|
+
expect(reviewBlock).to.exist;
|
|
362
|
+
});
|
|
363
|
+
it('should not render review snippet block when no review is present', async () => {
|
|
364
|
+
var _a;
|
|
366
365
|
const el = await fixture(html `
|
|
367
366
|
<item-tile
|
|
368
|
-
.model=${{
|
|
369
|
-
identifier: 'foo',
|
|
367
|
+
.model=${{
|
|
368
|
+
identifier: 'foo',
|
|
370
369
|
}}
|
|
371
370
|
></item-tile>
|
|
372
|
-
`);
|
|
373
|
-
const reviewBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('review-block');
|
|
374
|
-
expect(reviewBlock).not.to.exist;
|
|
375
|
-
});
|
|
376
|
-
});
|
|
371
|
+
`);
|
|
372
|
+
const reviewBlock = (_a = el.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('review-block');
|
|
373
|
+
expect(reviewBlock).not.to.exist;
|
|
374
|
+
});
|
|
375
|
+
});
|
|
377
376
|
//# sourceMappingURL=item-tile.test.js.map
|