@internetarchive/collection-browser 2.5.2 → 2.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +29 -29
- package/.husky/pre-commit +4 -4
- package/LICENSE +661 -661
- package/README.md +83 -83
- package/dist/index.d.ts +12 -12
- package/dist/index.js +12 -12
- package/dist/src/app-root.d.ts +91 -91
- package/dist/src/app-root.js +487 -487
- 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/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 +564 -564
- package/dist/src/collection-browser.js +1579 -1569
- 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 +120 -117
- 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/facets-template.d.ts +13 -13
- package/dist/src/collection-facets/facets-template.js +45 -43
- 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 +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/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 +534 -516
- package/dist/src/collection-facets.js.map +1 -1
- package/dist/src/data-source/collection-browser-data-source-interface.d.ts +241 -241
- package/dist/src/data-source/collection-browser-data-source-interface.js +1 -1
- package/dist/src/data-source/collection-browser-data-source.d.ts +378 -378
- package/dist/src/data-source/collection-browser-data-source.js +984 -985
- package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
- package/dist/src/data-source/collection-browser-query-state.d.ts +43 -43
- 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 +92 -79
- 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/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 +30 -30
- package/dist/src/manage/manage-bar.js +61 -61
- 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 +211 -209
- package/dist/src/models.js +381 -381
- 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 +357 -357
- 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 -222
- package/dist/src/sort-filter-bar/sort-filter-bar.js +700 -696
- 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 +16 -16
- 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 +63 -63
- 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 +30 -30
- package/dist/src/tiles/grid/item-tile.js +149 -149
- 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 +17 -17
- package/dist/src/tiles/image-block.js +73 -73
- 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 +15 -15
- package/dist/src/tiles/list/tile-list-compact.js +114 -114
- package/dist/src/tiles/list/tile-list.d.ts +50 -50
- package/dist/src/tiles/list/tile-list.js +315 -315
- package/dist/src/tiles/mediatype-icon.d.ts +9 -9
- package/dist/src/tiles/mediatype-icon.js +47 -47
- package/dist/src/tiles/overlay/icon-overlay.d.ts +10 -10
- package/dist/src/tiles/overlay/icon-overlay.js +40 -40
- package/dist/src/tiles/overlay/icon-text-overlay.d.ts +9 -9
- package/dist/src/tiles/overlay/icon-text-overlay.js +38 -38
- package/dist/src/tiles/overlay/text-overlay.d.ts +10 -10
- package/dist/src/tiles/overlay/text-overlay.js +42 -42
- package/dist/src/tiles/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 +229 -229
- 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 +25 -25
- package/dist/src/utils/format-unit-size.d.ts +2 -2
- package/dist/src/utils/format-unit-size.js +33 -33
- package/dist/src/utils/local-date-from-utc.d.ts +9 -9
- package/dist/src/utils/local-date-from-utc.js +15 -15
- package/dist/src/utils/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 +1294 -1294
- 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 +652 -652
- 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 +48 -48
- 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 +1 -1
- package/dist/test/manage/manage-bar.test.js +81 -81
- 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 +48 -48
- package/dist/test/text-snippet-block.test.d.ts +1 -1
- package/dist/test/text-snippet-block.test.js +57 -57
- package/dist/test/tile-stats.test.d.ts +1 -1
- package/dist/test/tile-stats.test.js +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 +17 -17
- package/dist/test/utils/format-unit-size.test.d.ts +1 -1
- package/dist/test/utils/format-unit-size.test.js +17 -17
- package/dist/test/utils/local-date-from-utc.test.d.ts +1 -1
- package/dist/test/utils/local-date-from-utc.test.js +26 -26
- package/local.archive.org.cert +86 -86
- package/local.archive.org.key +27 -27
- package/package.json +1 -1
- package/renovate.json +6 -6
- package/src/collection-browser.ts +26 -10
- package/src/collection-facets/facet-row.ts +3 -0
- package/src/collection-facets/facets-template.ts +3 -1
- package/src/collection-facets.ts +20 -2
- package/src/data-source/collection-browser-data-source.ts +1 -5
- package/src/empty-placeholder.ts +18 -5
- package/src/models.ts +8 -1
- package/src/sort-filter-bar/sort-filter-bar.ts +4 -0
- package/web-dev-server.config.mjs +30 -30
- package/web-test-runner.config.mjs +41 -41
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { expect } from '@open-wc/testing';
|
|
2
|
-
import { formatCount } from '../../src/utils/format-count';
|
|
3
|
-
const testCount = 805342;
|
|
4
|
-
describe('formatCount', () => {
|
|
5
|
-
it('returns blank when undefined number', () => {
|
|
6
|
-
expect(formatCount(undefined)).to.equal('');
|
|
7
|
-
});
|
|
8
|
-
it('returns blank when negative number', () => {
|
|
9
|
-
expect(formatCount(testCount * -1)).to.equal('');
|
|
10
|
-
});
|
|
11
|
-
it('returns long number when no NumberFormat', () => {
|
|
12
|
-
expect(formatCount(testCount)).to.equal('805,342');
|
|
13
|
-
});
|
|
14
|
-
it('returns short number when short NumberFormat', () => {
|
|
15
|
-
expect(formatCount(testCount, 'short')).to.equal('805K');
|
|
16
|
-
});
|
|
17
|
-
it('returns decimal when value of significant digits < 10', () => {
|
|
18
|
-
expect(formatCount(testCount * 10, 'short', 'long')).to.equal('8.1 million');
|
|
19
|
-
});
|
|
20
|
-
it('returns locale formatted number', () => {
|
|
21
|
-
expect(formatCount(testCount, 'long', 'long', 'de-DE')).to.equal('805.342');
|
|
22
|
-
});
|
|
23
|
-
});
|
|
1
|
+
import { expect } from '@open-wc/testing';
|
|
2
|
+
import { formatCount } from '../../src/utils/format-count';
|
|
3
|
+
const testCount = 805342;
|
|
4
|
+
describe('formatCount', () => {
|
|
5
|
+
it('returns blank when undefined number', () => {
|
|
6
|
+
expect(formatCount(undefined)).to.equal('');
|
|
7
|
+
});
|
|
8
|
+
it('returns blank when negative number', () => {
|
|
9
|
+
expect(formatCount(testCount * -1)).to.equal('');
|
|
10
|
+
});
|
|
11
|
+
it('returns long number when no NumberFormat', () => {
|
|
12
|
+
expect(formatCount(testCount)).to.equal('805,342');
|
|
13
|
+
});
|
|
14
|
+
it('returns short number when short NumberFormat', () => {
|
|
15
|
+
expect(formatCount(testCount, 'short')).to.equal('805K');
|
|
16
|
+
});
|
|
17
|
+
it('returns decimal when value of significant digits < 10', () => {
|
|
18
|
+
expect(formatCount(testCount * 10, 'short', 'long')).to.equal('8.1 million');
|
|
19
|
+
});
|
|
20
|
+
it('returns locale formatted number', () => {
|
|
21
|
+
expect(formatCount(testCount, 'long', 'long', 'de-DE')).to.equal('805.342');
|
|
22
|
+
});
|
|
23
|
+
});
|
|
24
24
|
//# sourceMappingURL=format-count.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { expect } from '@open-wc/testing';
|
|
2
|
-
import { formatDate } from '../../src/utils/format-date';
|
|
3
|
-
const testDate = new Date(2020, 11, 9);
|
|
4
|
-
describe('formatDate', () => {
|
|
5
|
-
it('returns blank when undefined date', () => {
|
|
6
|
-
expect(formatDate(undefined)).to.equal('');
|
|
7
|
-
});
|
|
8
|
-
it('returns short date when no DateFormat', () => {
|
|
9
|
-
expect(formatDate(testDate)).to.equal('Dec 2020');
|
|
10
|
-
});
|
|
11
|
-
it('returns long date when long DateFormat', () => {
|
|
12
|
-
expect(formatDate(testDate, 'long')).to.equal('Dec 09, 2020');
|
|
13
|
-
});
|
|
14
|
-
it('returns locale formatted date', () => {
|
|
15
|
-
expect(formatDate(testDate, 'long', 'de-DE')).to.equal('09. Dez. 2020');
|
|
16
|
-
});
|
|
17
|
-
});
|
|
1
|
+
import { expect } from '@open-wc/testing';
|
|
2
|
+
import { formatDate } from '../../src/utils/format-date';
|
|
3
|
+
const testDate = new Date(2020, 11, 9);
|
|
4
|
+
describe('formatDate', () => {
|
|
5
|
+
it('returns blank when undefined date', () => {
|
|
6
|
+
expect(formatDate(undefined)).to.equal('');
|
|
7
|
+
});
|
|
8
|
+
it('returns short date when no DateFormat', () => {
|
|
9
|
+
expect(formatDate(testDate)).to.equal('Dec 2020');
|
|
10
|
+
});
|
|
11
|
+
it('returns long date when long DateFormat', () => {
|
|
12
|
+
expect(formatDate(testDate, 'long')).to.equal('Dec 09, 2020');
|
|
13
|
+
});
|
|
14
|
+
it('returns locale formatted date', () => {
|
|
15
|
+
expect(formatDate(testDate, 'long', 'de-DE')).to.equal('09. Dez. 2020');
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
18
|
//# sourceMappingURL=format-date.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { expect } from '@open-wc/testing';
|
|
2
|
-
import { nothing } from 'lit';
|
|
3
|
-
import { formatUnitSize } from '../../src/utils/format-unit-size';
|
|
4
|
-
describe('formatUnitSize', () => {
|
|
5
|
-
it('returns blank when undefined number', () => {
|
|
6
|
-
expect(formatUnitSize(undefined, 1)).to.equal(nothing);
|
|
7
|
-
});
|
|
8
|
-
it('returns collection data is in singular form', () => {
|
|
9
|
-
expect(formatUnitSize(1025, 1)).to.equal('1 kilobyte');
|
|
10
|
-
});
|
|
11
|
-
it('return collection size data in kilobytes and plural form', () => {
|
|
12
|
-
expect(formatUnitSize(15000, 1)).to.equal('14.6 kilobytes');
|
|
13
|
-
});
|
|
14
|
-
it('return huge collection size data', () => {
|
|
15
|
-
expect(formatUnitSize(454154654134, 1)).to.equal('423 gigabytes');
|
|
16
|
-
});
|
|
17
|
-
});
|
|
1
|
+
import { expect } from '@open-wc/testing';
|
|
2
|
+
import { nothing } from 'lit';
|
|
3
|
+
import { formatUnitSize } from '../../src/utils/format-unit-size';
|
|
4
|
+
describe('formatUnitSize', () => {
|
|
5
|
+
it('returns blank when undefined number', () => {
|
|
6
|
+
expect(formatUnitSize(undefined, 1)).to.equal(nothing);
|
|
7
|
+
});
|
|
8
|
+
it('returns collection data is in singular form', () => {
|
|
9
|
+
expect(formatUnitSize(1025, 1)).to.equal('1 kilobyte');
|
|
10
|
+
});
|
|
11
|
+
it('return collection size data in kilobytes and plural form', () => {
|
|
12
|
+
expect(formatUnitSize(15000, 1)).to.equal('14.6 kilobytes');
|
|
13
|
+
});
|
|
14
|
+
it('return huge collection size data', () => {
|
|
15
|
+
expect(formatUnitSize(454154654134, 1)).to.equal('423 gigabytes');
|
|
16
|
+
});
|
|
17
|
+
});
|
|
18
18
|
//# sourceMappingURL=format-unit-size.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { expect } from '@open-wc/testing';
|
|
2
|
-
import { localDateFromUTC, isFirstMillisecondOfUTCYear, } from '../../src/utils/local-date-from-utc';
|
|
3
|
-
describe('localDateFromUTC', () => {
|
|
4
|
-
it('converts dates from UTC to local timezone', async () => {
|
|
5
|
-
const date = new Date(1990, 1, 2, 3, 4, 5, 6);
|
|
6
|
-
const dateFromUTC = new Date(Date.UTC(1990, 1, 2, 3, 4, 5, 6));
|
|
7
|
-
expect(localDateFromUTC(date).toISOString()).to.equal(dateFromUTC.toISOString());
|
|
8
|
-
});
|
|
9
|
-
});
|
|
10
|
-
describe('isFirstMillisecondOfUTCYear', () => {
|
|
11
|
-
it('returns true when date is exactly Jan 1 at midnight in UTC', async () => {
|
|
12
|
-
const midnightOnNewYearsDay = new Date(2010, 0, 1, 0, 0, 0, 0);
|
|
13
|
-
expect(isFirstMillisecondOfUTCYear(midnightOnNewYearsDay)).to.be.true;
|
|
14
|
-
});
|
|
15
|
-
it('returns false when date is not exactly Jan 1 at midnight in UTC', async () => {
|
|
16
|
-
const oneMillisecondTooEarly = new Date(2009, 11, 31, 23, 59, 59, 999);
|
|
17
|
-
expect(isFirstMillisecondOfUTCYear(oneMillisecondTooEarly)).to.be.false;
|
|
18
|
-
const oneMillisecondTooLate = new Date(2010, 0, 1, 0, 0, 0, 1);
|
|
19
|
-
expect(isFirstMillisecondOfUTCYear(oneMillisecondTooLate)).to.be.false;
|
|
20
|
-
const middleOfTheYear = new Date(2010, 6, 1, 0, 0, 0, 0);
|
|
21
|
-
expect(isFirstMillisecondOfUTCYear(middleOfTheYear)).to.be.false;
|
|
22
|
-
});
|
|
23
|
-
it('returns false when no date provided', async () => {
|
|
24
|
-
expect(isFirstMillisecondOfUTCYear(undefined)).to.be.false;
|
|
25
|
-
});
|
|
26
|
-
});
|
|
1
|
+
import { expect } from '@open-wc/testing';
|
|
2
|
+
import { localDateFromUTC, isFirstMillisecondOfUTCYear, } from '../../src/utils/local-date-from-utc';
|
|
3
|
+
describe('localDateFromUTC', () => {
|
|
4
|
+
it('converts dates from UTC to local timezone', async () => {
|
|
5
|
+
const date = new Date(1990, 1, 2, 3, 4, 5, 6);
|
|
6
|
+
const dateFromUTC = new Date(Date.UTC(1990, 1, 2, 3, 4, 5, 6));
|
|
7
|
+
expect(localDateFromUTC(date).toISOString()).to.equal(dateFromUTC.toISOString());
|
|
8
|
+
});
|
|
9
|
+
});
|
|
10
|
+
describe('isFirstMillisecondOfUTCYear', () => {
|
|
11
|
+
it('returns true when date is exactly Jan 1 at midnight in UTC', async () => {
|
|
12
|
+
const midnightOnNewYearsDay = new Date(2010, 0, 1, 0, 0, 0, 0);
|
|
13
|
+
expect(isFirstMillisecondOfUTCYear(midnightOnNewYearsDay)).to.be.true;
|
|
14
|
+
});
|
|
15
|
+
it('returns false when date is not exactly Jan 1 at midnight in UTC', async () => {
|
|
16
|
+
const oneMillisecondTooEarly = new Date(2009, 11, 31, 23, 59, 59, 999);
|
|
17
|
+
expect(isFirstMillisecondOfUTCYear(oneMillisecondTooEarly)).to.be.false;
|
|
18
|
+
const oneMillisecondTooLate = new Date(2010, 0, 1, 0, 0, 0, 1);
|
|
19
|
+
expect(isFirstMillisecondOfUTCYear(oneMillisecondTooLate)).to.be.false;
|
|
20
|
+
const middleOfTheYear = new Date(2010, 6, 1, 0, 0, 0, 0);
|
|
21
|
+
expect(isFirstMillisecondOfUTCYear(middleOfTheYear)).to.be.false;
|
|
22
|
+
});
|
|
23
|
+
it('returns false when no date provided', async () => {
|
|
24
|
+
expect(isFirstMillisecondOfUTCYear(undefined)).to.be.false;
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
27
|
//# sourceMappingURL=local-date-from-utc.test.js.map
|
package/local.archive.org.cert
CHANGED
|
@@ -1,86 +1,86 @@
|
|
|
1
|
-
Certificate:
|
|
2
|
-
Data:
|
|
3
|
-
Version: 3 (0x2)
|
|
4
|
-
Serial Number: 1 (0x1)
|
|
5
|
-
Signature Algorithm: sha256WithRSAEncryption
|
|
6
|
-
Issuer: CN=devcert
|
|
7
|
-
Validity
|
|
8
|
-
Not Before: Apr 27 16:27:46 2022 GMT
|
|
9
|
-
Not After : Jul 30 16:27:46 2024 GMT
|
|
10
|
-
Subject: CN=local.archive.org
|
|
11
|
-
Subject Public Key Info:
|
|
12
|
-
Public Key Algorithm: rsaEncryption
|
|
13
|
-
Public-Key: (2048 bit)
|
|
14
|
-
Modulus:
|
|
15
|
-
00:a9:54:ca:34:ff:8b:32:02:39:97:61:bd:f5:12:
|
|
16
|
-
5c:4a:d0:87:2e:d6:42:63:72:ea:b4:90:95:cc:4a:
|
|
17
|
-
ef:5a:66:09:9f:1d:08:0d:b2:f4:2e:b3:55:59:9c:
|
|
18
|
-
0f:77:37:1e:d7:a3:5c:b7:3d:81:84:fc:55:af:20:
|
|
19
|
-
e7:3c:bd:9e:2b:2b:9e:d1:95:9d:14:90:70:7c:99:
|
|
20
|
-
78:f1:dd:42:2b:fd:87:b9:09:f0:f6:50:c7:90:41:
|
|
21
|
-
de:e2:ee:dd:a0:4a:4d:de:20:6a:e8:1b:81:7f:d9:
|
|
22
|
-
17:0d:f5:f2:a1:dc:89:d8:e9:89:9c:ff:40:b7:0e:
|
|
23
|
-
bb:16:db:d1:e0:67:5f:24:de:3b:b8:18:b8:a6:dd:
|
|
24
|
-
d5:26:8a:2a:a4:f2:03:b1:a8:15:23:31:c9:65:de:
|
|
25
|
-
9b:5a:b0:f0:4f:ef:77:f1:8b:7b:91:95:a0:61:be:
|
|
26
|
-
1f:64:29:c6:2e:2c:03:1b:f0:91:96:b6:ab:fb:11:
|
|
27
|
-
b7:1c:41:bc:43:6e:1b:6f:28:88:40:bd:a8:47:28:
|
|
28
|
-
9e:a4:64:31:e0:a5:72:db:09:cb:b0:9e:7a:d5:d0:
|
|
29
|
-
7f:15:15:75:d4:d6:78:41:c9:a1:54:73:48:19:4f:
|
|
30
|
-
72:95:a1:31:b3:4c:81:41:13:43:d9:9b:8c:d0:2e:
|
|
31
|
-
29:09:a2:59:6b:15:6d:5c:93:22:03:f5:72:f0:46:
|
|
32
|
-
be:65
|
|
33
|
-
Exponent: 65537 (0x10001)
|
|
34
|
-
X509v3 extensions:
|
|
35
|
-
X509v3 Basic Constraints: critical
|
|
36
|
-
CA:FALSE
|
|
37
|
-
X509v3 Subject Key Identifier:
|
|
38
|
-
E1:20:A8:89:51:79:0C:23:66:20:B7:A5:A4:42:8F:40:7F:7E:C0:CE
|
|
39
|
-
X509v3 Authority Key Identifier:
|
|
40
|
-
keyid:A8:C7:C5:69:35:49:1B:B6:77:E7:2E:16:5B:B0:75:8C:B7:03:5C:04
|
|
41
|
-
DirName:/CN=devcert
|
|
42
|
-
serial:DB:1E:4C:08:75:57:8D:4E
|
|
43
|
-
|
|
44
|
-
X509v3 Key Usage: critical
|
|
45
|
-
Digital Signature, Key Encipherment
|
|
46
|
-
X509v3 Extended Key Usage:
|
|
47
|
-
TLS Web Server Authentication
|
|
48
|
-
X509v3 Subject Alternative Name:
|
|
49
|
-
DNS:local.archive.org, DNS:*.local.archive.org
|
|
50
|
-
Signature Algorithm: sha256WithRSAEncryption
|
|
51
|
-
5a:20:54:0b:6f:c3:35:e6:70:c1:bd:5c:58:e8:cf:7b:73:33:
|
|
52
|
-
38:80:70:c1:1c:60:2a:ea:5c:0c:eb:63:6a:15:48:fe:4d:f6:
|
|
53
|
-
18:89:e1:89:73:40:45:52:7d:bc:3a:d6:0e:d3:65:2c:e7:b9:
|
|
54
|
-
ab:3b:c6:ea:6e:74:74:39:4f:53:3f:bb:59:d9:91:83:db:92:
|
|
55
|
-
96:32:97:25:5f:c2:8d:85:ce:b3:c7:b1:4d:37:b7:bd:81:de:
|
|
56
|
-
f7:9f:34:5b:12:70:21:a8:03:8d:94:ed:d7:41:7f:2a:87:30:
|
|
57
|
-
bd:4f:07:22:b2:9a:06:ab:bc:41:2c:2f:7c:be:e0:a2:90:60:
|
|
58
|
-
21:79:d4:a1:08:26:c1:f4:83:b2:0a:ff:7d:0a:15:dc:ed:d0:
|
|
59
|
-
49:f9:37:ad:fe:68:d7:59:9d:f8:25:4e:10:01:bf:a5:be:ec:
|
|
60
|
-
21:a8:bf:77:6c:ff:d4:b7:d4:11:9c:43:4a:64:e8:31:76:9a:
|
|
61
|
-
01:3a:54:d9:c0:8a:a6:2c:7a:df:0a:c4:26:6e:19:52:26:9d:
|
|
62
|
-
25:b5:b1:db:6f:12:91:92:83:ab:6c:28:52:e1:e4:63:c2:cf:
|
|
63
|
-
45:f7:b4:da:7d:13:66:47:62:90:e6:8d:2c:b8:aa:d4:2b:8c:
|
|
64
|
-
d6:c0:5c:fc:83:e7:1f:71:5f:cb:38:b6:c3:a5:77:7d:97:04:
|
|
65
|
-
87:14:44:83
|
|
66
|
-
-----BEGIN CERTIFICATE-----
|
|
67
|
-
MIIDdjCCAl6gAwIBAgIBATANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDDAdkZXZj
|
|
68
|
-
ZXJ0MB4XDTIyMDQyNzE2Mjc0NloXDTI0MDczMDE2Mjc0NlowHDEaMBgGA1UEAwwR
|
|
69
|
-
bG9jYWwuYXJjaGl2ZS5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
|
|
70
|
-
AQCpVMo0/4syAjmXYb31ElxK0Icu1kJjcuq0kJXMSu9aZgmfHQgNsvQus1VZnA93
|
|
71
|
-
Nx7Xo1y3PYGE/FWvIOc8vZ4rK57RlZ0UkHB8mXjx3UIr/Ye5CfD2UMeQQd7i7t2g
|
|
72
|
-
Sk3eIGroG4F/2RcN9fKh3InY6Ymc/0C3DrsW29HgZ18k3ju4GLim3dUmiiqk8gOx
|
|
73
|
-
qBUjMcll3ptasPBP73fxi3uRlaBhvh9kKcYuLAMb8JGWtqv7EbccQbxDbhtvKIhA
|
|
74
|
-
vahHKJ6kZDHgpXLbCcuwnnrV0H8VFXXU1nhByaFUc0gZT3KVoTGzTIFBE0PZm4zQ
|
|
75
|
-
LikJollrFW1ckyID9XLwRr5lAgMBAAGjgcwwgckwDAYDVR0TAQH/BAIwADAdBgNV
|
|
76
|
-
HQ4EFgQU4SCoiVF5DCNmILelpEKPQH9+wM4wQgYDVR0jBDswOYAUqMfFaTVJG7Z3
|
|
77
|
-
5y4WW7B1jLcDXAShFqQUMBIxEDAOBgNVBAMMB2RldmNlcnSCCQDbHkwIdVeNTjAO
|
|
78
|
-
BgNVHQ8BAf8EBAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwMQYDVR0RBCowKIIR
|
|
79
|
-
bG9jYWwuYXJjaGl2ZS5vcmeCEyoubG9jYWwuYXJjaGl2ZS5vcmcwDQYJKoZIhvcN
|
|
80
|
-
AQELBQADggEBAFogVAtvwzXmcMG9XFjoz3tzMziAcMEcYCrqXAzrY2oVSP5N9hiJ
|
|
81
|
-
4YlzQEVSfbw61g7TZSznuas7xupudHQ5T1M/u1nZkYPbkpYylyVfwo2FzrPHsU03
|
|
82
|
-
t72B3vefNFsScCGoA42U7ddBfyqHML1PByKymgarvEEsL3y+4KKQYCF51KEIJsH0
|
|
83
|
-
g7IK/30KFdzt0En5N63+aNdZnfglThABv6W+7CGov3ds/9S31BGcQ0pk6DF2mgE6
|
|
84
|
-
VNnAiqYset8KxCZuGVImnSW1sdtvEpGSg6tsKFLh5GPCz0X3tNp9E2ZHYpDmjSy4
|
|
85
|
-
qtQrjNbAXPyD5x9xX8s4tsOld32XBIcURIM=
|
|
86
|
-
-----END CERTIFICATE-----
|
|
1
|
+
Certificate:
|
|
2
|
+
Data:
|
|
3
|
+
Version: 3 (0x2)
|
|
4
|
+
Serial Number: 1 (0x1)
|
|
5
|
+
Signature Algorithm: sha256WithRSAEncryption
|
|
6
|
+
Issuer: CN=devcert
|
|
7
|
+
Validity
|
|
8
|
+
Not Before: Apr 27 16:27:46 2022 GMT
|
|
9
|
+
Not After : Jul 30 16:27:46 2024 GMT
|
|
10
|
+
Subject: CN=local.archive.org
|
|
11
|
+
Subject Public Key Info:
|
|
12
|
+
Public Key Algorithm: rsaEncryption
|
|
13
|
+
Public-Key: (2048 bit)
|
|
14
|
+
Modulus:
|
|
15
|
+
00:a9:54:ca:34:ff:8b:32:02:39:97:61:bd:f5:12:
|
|
16
|
+
5c:4a:d0:87:2e:d6:42:63:72:ea:b4:90:95:cc:4a:
|
|
17
|
+
ef:5a:66:09:9f:1d:08:0d:b2:f4:2e:b3:55:59:9c:
|
|
18
|
+
0f:77:37:1e:d7:a3:5c:b7:3d:81:84:fc:55:af:20:
|
|
19
|
+
e7:3c:bd:9e:2b:2b:9e:d1:95:9d:14:90:70:7c:99:
|
|
20
|
+
78:f1:dd:42:2b:fd:87:b9:09:f0:f6:50:c7:90:41:
|
|
21
|
+
de:e2:ee:dd:a0:4a:4d:de:20:6a:e8:1b:81:7f:d9:
|
|
22
|
+
17:0d:f5:f2:a1:dc:89:d8:e9:89:9c:ff:40:b7:0e:
|
|
23
|
+
bb:16:db:d1:e0:67:5f:24:de:3b:b8:18:b8:a6:dd:
|
|
24
|
+
d5:26:8a:2a:a4:f2:03:b1:a8:15:23:31:c9:65:de:
|
|
25
|
+
9b:5a:b0:f0:4f:ef:77:f1:8b:7b:91:95:a0:61:be:
|
|
26
|
+
1f:64:29:c6:2e:2c:03:1b:f0:91:96:b6:ab:fb:11:
|
|
27
|
+
b7:1c:41:bc:43:6e:1b:6f:28:88:40:bd:a8:47:28:
|
|
28
|
+
9e:a4:64:31:e0:a5:72:db:09:cb:b0:9e:7a:d5:d0:
|
|
29
|
+
7f:15:15:75:d4:d6:78:41:c9:a1:54:73:48:19:4f:
|
|
30
|
+
72:95:a1:31:b3:4c:81:41:13:43:d9:9b:8c:d0:2e:
|
|
31
|
+
29:09:a2:59:6b:15:6d:5c:93:22:03:f5:72:f0:46:
|
|
32
|
+
be:65
|
|
33
|
+
Exponent: 65537 (0x10001)
|
|
34
|
+
X509v3 extensions:
|
|
35
|
+
X509v3 Basic Constraints: critical
|
|
36
|
+
CA:FALSE
|
|
37
|
+
X509v3 Subject Key Identifier:
|
|
38
|
+
E1:20:A8:89:51:79:0C:23:66:20:B7:A5:A4:42:8F:40:7F:7E:C0:CE
|
|
39
|
+
X509v3 Authority Key Identifier:
|
|
40
|
+
keyid:A8:C7:C5:69:35:49:1B:B6:77:E7:2E:16:5B:B0:75:8C:B7:03:5C:04
|
|
41
|
+
DirName:/CN=devcert
|
|
42
|
+
serial:DB:1E:4C:08:75:57:8D:4E
|
|
43
|
+
|
|
44
|
+
X509v3 Key Usage: critical
|
|
45
|
+
Digital Signature, Key Encipherment
|
|
46
|
+
X509v3 Extended Key Usage:
|
|
47
|
+
TLS Web Server Authentication
|
|
48
|
+
X509v3 Subject Alternative Name:
|
|
49
|
+
DNS:local.archive.org, DNS:*.local.archive.org
|
|
50
|
+
Signature Algorithm: sha256WithRSAEncryption
|
|
51
|
+
5a:20:54:0b:6f:c3:35:e6:70:c1:bd:5c:58:e8:cf:7b:73:33:
|
|
52
|
+
38:80:70:c1:1c:60:2a:ea:5c:0c:eb:63:6a:15:48:fe:4d:f6:
|
|
53
|
+
18:89:e1:89:73:40:45:52:7d:bc:3a:d6:0e:d3:65:2c:e7:b9:
|
|
54
|
+
ab:3b:c6:ea:6e:74:74:39:4f:53:3f:bb:59:d9:91:83:db:92:
|
|
55
|
+
96:32:97:25:5f:c2:8d:85:ce:b3:c7:b1:4d:37:b7:bd:81:de:
|
|
56
|
+
f7:9f:34:5b:12:70:21:a8:03:8d:94:ed:d7:41:7f:2a:87:30:
|
|
57
|
+
bd:4f:07:22:b2:9a:06:ab:bc:41:2c:2f:7c:be:e0:a2:90:60:
|
|
58
|
+
21:79:d4:a1:08:26:c1:f4:83:b2:0a:ff:7d:0a:15:dc:ed:d0:
|
|
59
|
+
49:f9:37:ad:fe:68:d7:59:9d:f8:25:4e:10:01:bf:a5:be:ec:
|
|
60
|
+
21:a8:bf:77:6c:ff:d4:b7:d4:11:9c:43:4a:64:e8:31:76:9a:
|
|
61
|
+
01:3a:54:d9:c0:8a:a6:2c:7a:df:0a:c4:26:6e:19:52:26:9d:
|
|
62
|
+
25:b5:b1:db:6f:12:91:92:83:ab:6c:28:52:e1:e4:63:c2:cf:
|
|
63
|
+
45:f7:b4:da:7d:13:66:47:62:90:e6:8d:2c:b8:aa:d4:2b:8c:
|
|
64
|
+
d6:c0:5c:fc:83:e7:1f:71:5f:cb:38:b6:c3:a5:77:7d:97:04:
|
|
65
|
+
87:14:44:83
|
|
66
|
+
-----BEGIN CERTIFICATE-----
|
|
67
|
+
MIIDdjCCAl6gAwIBAgIBATANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDDAdkZXZj
|
|
68
|
+
ZXJ0MB4XDTIyMDQyNzE2Mjc0NloXDTI0MDczMDE2Mjc0NlowHDEaMBgGA1UEAwwR
|
|
69
|
+
bG9jYWwuYXJjaGl2ZS5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
|
|
70
|
+
AQCpVMo0/4syAjmXYb31ElxK0Icu1kJjcuq0kJXMSu9aZgmfHQgNsvQus1VZnA93
|
|
71
|
+
Nx7Xo1y3PYGE/FWvIOc8vZ4rK57RlZ0UkHB8mXjx3UIr/Ye5CfD2UMeQQd7i7t2g
|
|
72
|
+
Sk3eIGroG4F/2RcN9fKh3InY6Ymc/0C3DrsW29HgZ18k3ju4GLim3dUmiiqk8gOx
|
|
73
|
+
qBUjMcll3ptasPBP73fxi3uRlaBhvh9kKcYuLAMb8JGWtqv7EbccQbxDbhtvKIhA
|
|
74
|
+
vahHKJ6kZDHgpXLbCcuwnnrV0H8VFXXU1nhByaFUc0gZT3KVoTGzTIFBE0PZm4zQ
|
|
75
|
+
LikJollrFW1ckyID9XLwRr5lAgMBAAGjgcwwgckwDAYDVR0TAQH/BAIwADAdBgNV
|
|
76
|
+
HQ4EFgQU4SCoiVF5DCNmILelpEKPQH9+wM4wQgYDVR0jBDswOYAUqMfFaTVJG7Z3
|
|
77
|
+
5y4WW7B1jLcDXAShFqQUMBIxEDAOBgNVBAMMB2RldmNlcnSCCQDbHkwIdVeNTjAO
|
|
78
|
+
BgNVHQ8BAf8EBAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwMQYDVR0RBCowKIIR
|
|
79
|
+
bG9jYWwuYXJjaGl2ZS5vcmeCEyoubG9jYWwuYXJjaGl2ZS5vcmcwDQYJKoZIhvcN
|
|
80
|
+
AQELBQADggEBAFogVAtvwzXmcMG9XFjoz3tzMziAcMEcYCrqXAzrY2oVSP5N9hiJ
|
|
81
|
+
4YlzQEVSfbw61g7TZSznuas7xupudHQ5T1M/u1nZkYPbkpYylyVfwo2FzrPHsU03
|
|
82
|
+
t72B3vefNFsScCGoA42U7ddBfyqHML1PByKymgarvEEsL3y+4KKQYCF51KEIJsH0
|
|
83
|
+
g7IK/30KFdzt0En5N63+aNdZnfglThABv6W+7CGov3ds/9S31BGcQ0pk6DF2mgE6
|
|
84
|
+
VNnAiqYset8KxCZuGVImnSW1sdtvEpGSg6tsKFLh5GPCz0X3tNp9E2ZHYpDmjSy4
|
|
85
|
+
qtQrjNbAXPyD5x9xX8s4tsOld32XBIcURIM=
|
|
86
|
+
-----END CERTIFICATE-----
|
package/local.archive.org.key
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
-----BEGIN RSA PRIVATE KEY-----
|
|
2
|
-
MIIEowIBAAKCAQEAqVTKNP+LMgI5l2G99RJcStCHLtZCY3LqtJCVzErvWmYJnx0I
|
|
3
|
-
DbL0LrNVWZwPdzce16Nctz2BhPxVryDnPL2eKyue0ZWdFJBwfJl48d1CK/2HuQnw
|
|
4
|
-
9lDHkEHe4u7doEpN3iBq6BuBf9kXDfXyodyJ2OmJnP9Atw67FtvR4GdfJN47uBi4
|
|
5
|
-
pt3VJooqpPIDsagVIzHJZd6bWrDwT+938Yt7kZWgYb4fZCnGLiwDG/CRlrar+xG3
|
|
6
|
-
HEG8Q24bbyiIQL2oRyiepGQx4KVy2wnLsJ561dB/FRV11NZ4QcmhVHNIGU9ylaEx
|
|
7
|
-
s0yBQRND2ZuM0C4pCaJZaxVtXJMiA/Vy8Ea+ZQIDAQABAoIBAAQgUdEazQyJ61da
|
|
8
|
-
BWP8b41PKYwlonaD7V47C7tvtAdy5xcegPy8eKDOs+y8FdBk4naEv5Sjhg10jK34
|
|
9
|
-
0kmzoTASHwuiZrKClosivkS+jIc/5VfH+zw1WbeVM1Y6VeI7DUy1Y4WGbhBsfNhV
|
|
10
|
-
PvVcx2smvbi6q5wKWtrCvomGW1YtngNBXJBPDWXysaVZdpF+6iWtw0RjWxbKEeMb
|
|
11
|
-
fjZ2sxl7h1EkTXxQR9pfl9WVgl6vRRXp1o+N71M14jp5t95xCyf49YzeEuZmc1Fc
|
|
12
|
-
dD77LNGcxr3kpkcQH5FdDP/spla+lR+JKb78FVqhEdPP3WcJ1qcrAstG2npAfKpj
|
|
13
|
-
MD9AhsECgYEA3BddOjeK9epaGbTZRKgmIOSgGEHo8WbVHqBHhyQKAb8kFVEPn+Hl
|
|
14
|
-
sq2EEQZf0ZJ/HhlVBc0Gj4/2PI8vj1Lzh+QWJnFu+XN/doOm5X62Ctz13qC5oWJp
|
|
15
|
-
foQ9HXcg4GAXhm/o3KUIntLrUwoi/UW8YOSRFXS8RSJtuh1rI5P2jjECgYEAxPVP
|
|
16
|
-
o/9+12Fc2ujdm8cQ1tB1Ab9Z73/vloG/xit0uMp89OqXUHEmtud/WzaIQvNxdaWi
|
|
17
|
-
9/BqAG9Oml51T3cuYPxNDkSmtd2fieq9Nh17dw8zYGMk0cSYeecgvCJOrRIJnebW
|
|
18
|
-
Glyt8vzBb3eD6FzhZoVNOVYareainSP1cwl5YnUCgYAsr2m0OjayeyRT983tDJ7B
|
|
19
|
-
Kun+QtOCv7ghgbVEEOMfO6md0llzwq+aOXSI6Fxn9nBssgP7K4dbeoUqAoBLfzIG
|
|
20
|
-
sx50K6+2YebNLymhirp3NimNS+CkjZCRqVOnOdqo85mTKAGFWtSHOpegwnwcJB59
|
|
21
|
-
Jar3Sj43YygYE4T/Mjlq4QKBgQC8zUcdt2J4xl1Df6xHkuiic0tmdG6a9jHOPex+
|
|
22
|
-
49NM/NYR1Ptd4kmxVXKxFjJCs6jUlQYG1NBYQFrCAcBEf8PWtqSLA+YnOh6gD4R3
|
|
23
|
-
ZoWfGNQwFnoKF4HugU/Q6LYwk7TiR5B/zs30urQWzSOGT9rF8wyW5OJIR2kkZ373
|
|
24
|
-
WmKgrQKBgGaw32CMejz3wBpzOAXsYJcMsVfNCMD4bJ2EbXhYuY8HB8IEEv6wqMsp
|
|
25
|
-
wtXIgHJubfIiA3MlVsfaUkRdtHMHbN+Us1oynu6nByLhYlAMKpOsJFzPVHHwGB/1
|
|
26
|
-
g3WtzfFk5eOoZltJBm5K41zjS7lyr1t05648pT6niy9snu6LaF94
|
|
27
|
-
-----END RSA PRIVATE KEY-----
|
|
1
|
+
-----BEGIN RSA PRIVATE KEY-----
|
|
2
|
+
MIIEowIBAAKCAQEAqVTKNP+LMgI5l2G99RJcStCHLtZCY3LqtJCVzErvWmYJnx0I
|
|
3
|
+
DbL0LrNVWZwPdzce16Nctz2BhPxVryDnPL2eKyue0ZWdFJBwfJl48d1CK/2HuQnw
|
|
4
|
+
9lDHkEHe4u7doEpN3iBq6BuBf9kXDfXyodyJ2OmJnP9Atw67FtvR4GdfJN47uBi4
|
|
5
|
+
pt3VJooqpPIDsagVIzHJZd6bWrDwT+938Yt7kZWgYb4fZCnGLiwDG/CRlrar+xG3
|
|
6
|
+
HEG8Q24bbyiIQL2oRyiepGQx4KVy2wnLsJ561dB/FRV11NZ4QcmhVHNIGU9ylaEx
|
|
7
|
+
s0yBQRND2ZuM0C4pCaJZaxVtXJMiA/Vy8Ea+ZQIDAQABAoIBAAQgUdEazQyJ61da
|
|
8
|
+
BWP8b41PKYwlonaD7V47C7tvtAdy5xcegPy8eKDOs+y8FdBk4naEv5Sjhg10jK34
|
|
9
|
+
0kmzoTASHwuiZrKClosivkS+jIc/5VfH+zw1WbeVM1Y6VeI7DUy1Y4WGbhBsfNhV
|
|
10
|
+
PvVcx2smvbi6q5wKWtrCvomGW1YtngNBXJBPDWXysaVZdpF+6iWtw0RjWxbKEeMb
|
|
11
|
+
fjZ2sxl7h1EkTXxQR9pfl9WVgl6vRRXp1o+N71M14jp5t95xCyf49YzeEuZmc1Fc
|
|
12
|
+
dD77LNGcxr3kpkcQH5FdDP/spla+lR+JKb78FVqhEdPP3WcJ1qcrAstG2npAfKpj
|
|
13
|
+
MD9AhsECgYEA3BddOjeK9epaGbTZRKgmIOSgGEHo8WbVHqBHhyQKAb8kFVEPn+Hl
|
|
14
|
+
sq2EEQZf0ZJ/HhlVBc0Gj4/2PI8vj1Lzh+QWJnFu+XN/doOm5X62Ctz13qC5oWJp
|
|
15
|
+
foQ9HXcg4GAXhm/o3KUIntLrUwoi/UW8YOSRFXS8RSJtuh1rI5P2jjECgYEAxPVP
|
|
16
|
+
o/9+12Fc2ujdm8cQ1tB1Ab9Z73/vloG/xit0uMp89OqXUHEmtud/WzaIQvNxdaWi
|
|
17
|
+
9/BqAG9Oml51T3cuYPxNDkSmtd2fieq9Nh17dw8zYGMk0cSYeecgvCJOrRIJnebW
|
|
18
|
+
Glyt8vzBb3eD6FzhZoVNOVYareainSP1cwl5YnUCgYAsr2m0OjayeyRT983tDJ7B
|
|
19
|
+
Kun+QtOCv7ghgbVEEOMfO6md0llzwq+aOXSI6Fxn9nBssgP7K4dbeoUqAoBLfzIG
|
|
20
|
+
sx50K6+2YebNLymhirp3NimNS+CkjZCRqVOnOdqo85mTKAGFWtSHOpegwnwcJB59
|
|
21
|
+
Jar3Sj43YygYE4T/Mjlq4QKBgQC8zUcdt2J4xl1Df6xHkuiic0tmdG6a9jHOPex+
|
|
22
|
+
49NM/NYR1Ptd4kmxVXKxFjJCs6jUlQYG1NBYQFrCAcBEf8PWtqSLA+YnOh6gD4R3
|
|
23
|
+
ZoWfGNQwFnoKF4HugU/Q6LYwk7TiR5B/zs30urQWzSOGT9rF8wyW5OJIR2kkZ373
|
|
24
|
+
WmKgrQKBgGaw32CMejz3wBpzOAXsYJcMsVfNCMD4bJ2EbXhYuY8HB8IEEv6wqMsp
|
|
25
|
+
wtXIgHJubfIiA3MlVsfaUkRdtHMHbN+Us1oynu6nByLhYlAMKpOsJFzPVHHwGB/1
|
|
26
|
+
g3WtzfFk5eOoZltJBm5K41zjS7lyr1t05648pT6niy9snu6LaF94
|
|
27
|
+
-----END RSA PRIVATE KEY-----
|
package/package.json
CHANGED
package/renovate.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
{
|
|
2
|
-
"extends": [
|
|
3
|
-
"config:base",
|
|
4
|
-
":preserveSemverRanges"
|
|
5
|
-
]
|
|
6
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"extends": [
|
|
3
|
+
"config:base",
|
|
4
|
+
":preserveSemverRanges"
|
|
5
|
+
]
|
|
6
|
+
}
|
|
@@ -633,8 +633,9 @@ export class CollectionBrowser
|
|
|
633
633
|
const resultsCount = this.totalResults?.toLocaleString();
|
|
634
634
|
const resultsLabel = this.totalResults === 1 ? 'Result' : 'Results';
|
|
635
635
|
|
|
636
|
+
// Added data-testid for Playwright testing
|
|
636
637
|
return html`
|
|
637
|
-
<div id="results-total">
|
|
638
|
+
<div id="results-total" data-testid="results-total">
|
|
638
639
|
<span id="big-results-count">
|
|
639
640
|
${shouldShowSearching ? html`Searching…` : resultsCount}
|
|
640
641
|
</span>
|
|
@@ -1020,9 +1021,14 @@ export class CollectionBrowser
|
|
|
1020
1021
|
</collection-facets>
|
|
1021
1022
|
`;
|
|
1022
1023
|
|
|
1023
|
-
//
|
|
1024
|
-
// that can
|
|
1025
|
-
|
|
1024
|
+
// If we are using one of the opt-in facet load strategies, we may need to wrap the
|
|
1025
|
+
// desktop view facets in a <details> widget so that patrons can opt into loading them.
|
|
1026
|
+
// In the `opt-in-or-login` case, we only do this if they are not logged in.
|
|
1027
|
+
const showDesktopOptInWidget =
|
|
1028
|
+
this.facetLoadStrategy === 'opt-in' ||
|
|
1029
|
+
(this.facetLoadStrategy === 'opt-in-or-login' && !this.loggedIn);
|
|
1030
|
+
|
|
1031
|
+
if (showDesktopOptInWidget && !this.mobileView) {
|
|
1026
1032
|
return html`
|
|
1027
1033
|
<details
|
|
1028
1034
|
class="desktop-facets-dropdown"
|
|
@@ -1411,14 +1417,24 @@ export class CollectionBrowser
|
|
|
1411
1417
|
* current facet loading strategy.
|
|
1412
1418
|
*/
|
|
1413
1419
|
private updateFacetReadiness(): void {
|
|
1414
|
-
//
|
|
1415
|
-
//
|
|
1420
|
+
// There are two ways to opt into facet production:
|
|
1421
|
+
// (1) have the facets dropdown open, or
|
|
1422
|
+
// (2) if using the `opt-in-or-login` strategy, be logged into an account
|
|
1423
|
+
const optedIn =
|
|
1424
|
+
this.collapsibleFacetsVisible ||
|
|
1425
|
+
(this.facetLoadStrategy === 'opt-in-or-login' && this.loggedIn);
|
|
1426
|
+
|
|
1427
|
+
// In desktop view, we are always ready to load facets *unless* we are using one of the
|
|
1428
|
+
// `opt-in` strategies and have not opted in (whether by login or UI interaction).
|
|
1429
|
+
const usingOptInStrategy = ['opt-in', 'opt-in-or-login'].includes(
|
|
1430
|
+
this.facetLoadStrategy
|
|
1431
|
+
);
|
|
1416
1432
|
const desktopFacetsReady =
|
|
1417
|
-
!this.mobileView &&
|
|
1418
|
-
(this.facetLoadStrategy !== 'opt-in' || this.collapsibleFacetsVisible);
|
|
1433
|
+
!this.mobileView && (!usingOptInStrategy || optedIn);
|
|
1419
1434
|
|
|
1420
|
-
// In mobile view, facets are considered ready provided
|
|
1421
|
-
|
|
1435
|
+
// In the mobile view, facets are considered ready provided we have opted in (whether by
|
|
1436
|
+
// login or UI interaction).
|
|
1437
|
+
const mobileFacetsReady = this.mobileView && optedIn;
|
|
1422
1438
|
|
|
1423
1439
|
this.dataSource.handleFacetReadinessChange(
|
|
1424
1440
|
desktopFacetsReady || mobileFacetsReady
|
|
@@ -77,6 +77,7 @@ export class FacetRow extends LitElement {
|
|
|
77
77
|
const showHideText = facetHidden ? unhideText : hideText;
|
|
78
78
|
const ariaLabel = `${titleText}, ${bucket.count} results`;
|
|
79
79
|
|
|
80
|
+
// Added data-testid for Playwright testing
|
|
80
81
|
return html`
|
|
81
82
|
<div class="facet-row-container">
|
|
82
83
|
<div class="facet-checkboxes">
|
|
@@ -91,6 +92,7 @@ export class FacetRow extends LitElement {
|
|
|
91
92
|
class="select-facet-checkbox"
|
|
92
93
|
title=${onlyShowText}
|
|
93
94
|
id=${showOnlyCheckboxId}
|
|
95
|
+
data-testid=${showOnlyCheckboxId}
|
|
94
96
|
/>
|
|
95
97
|
<input
|
|
96
98
|
type="checkbox"
|
|
@@ -107,6 +109,7 @@ export class FacetRow extends LitElement {
|
|
|
107
109
|
for=${negativeCheckboxId}
|
|
108
110
|
class="hide-facet-icon${facetHidden ? ' active' : ''}"
|
|
109
111
|
title=${showHideText}
|
|
112
|
+
data-testid=${negativeCheckboxId}
|
|
110
113
|
>
|
|
111
114
|
<span class="eye">${eyeIcon}</span>
|
|
112
115
|
<span class="eye-closed">${eyeClosedIcon}</span>
|
|
@@ -37,8 +37,10 @@ export class FacetsTemplate extends LitElement {
|
|
|
37
37
|
|
|
38
38
|
const facetBuckets = facetGroup.buckets as FacetBucket[];
|
|
39
39
|
|
|
40
|
+
// Added data-testid for Playwright testing
|
|
41
|
+
// Using className and aria-labels is not ideal for Playwright locator
|
|
40
42
|
return html`
|
|
41
|
-
<div class="facet-rows">
|
|
43
|
+
<div class="facet-rows" data-testid="facets-on-${facetGroup.key}">
|
|
42
44
|
${repeat(
|
|
43
45
|
facetBuckets,
|
|
44
46
|
bucket => `${facetGroup.key}:${bucket.key}`,
|
package/src/collection-facets.ts
CHANGED
|
@@ -148,13 +148,19 @@ export class CollectionFacets extends LitElement {
|
|
|
148
148
|
managing: this.isManageView,
|
|
149
149
|
});
|
|
150
150
|
|
|
151
|
+
// Added data-testid for Playwright testing
|
|
152
|
+
// Using facet-group class and aria-labels is not ideal for Playwright locator
|
|
151
153
|
const datePickerLabelId = 'date-picker-label';
|
|
152
154
|
return html`
|
|
153
155
|
<div id="container" class=${containerClasses}>
|
|
154
156
|
${this.showHistogramDatePicker &&
|
|
155
157
|
(this.fullYearsHistogramAggregation || this.fullYearAggregationLoading)
|
|
156
158
|
? html`
|
|
157
|
-
<section
|
|
159
|
+
<section
|
|
160
|
+
class="facet-group"
|
|
161
|
+
aria-labelledby=${datePickerLabelId}
|
|
162
|
+
data-testid="facet-group-header-label-date-picker"
|
|
163
|
+
>
|
|
158
164
|
<h3 id=${datePickerLabelId}>
|
|
159
165
|
Year Published <span class="sr-only">range filter</span>
|
|
160
166
|
${this.expandDatePickerBtnTemplate}
|
|
@@ -175,11 +181,14 @@ export class CollectionFacets extends LitElement {
|
|
|
175
181
|
// We only display the "Part Of" section on collection pages
|
|
176
182
|
if (!this.parentCollections?.length) return nothing;
|
|
177
183
|
|
|
184
|
+
// Added data-testid for Playwright testing
|
|
185
|
+
// Using className and aria-labels is not ideal for Playwright locator
|
|
178
186
|
const headingId = 'partof-heading';
|
|
179
187
|
return html`
|
|
180
188
|
<section
|
|
181
189
|
class="facet-group partof-collections"
|
|
182
190
|
aria-labelledby=${headingId}
|
|
191
|
+
data-testid="facet-group-partof-collections"
|
|
183
192
|
>
|
|
184
193
|
<div class="facet-group-header">
|
|
185
194
|
<h3 id=${headingId}>${msg('Part Of')}</h3>
|
|
@@ -563,11 +572,14 @@ export class CollectionFacets extends LitElement {
|
|
|
563
572
|
this.openFacets = newOpenFacets;
|
|
564
573
|
};
|
|
565
574
|
|
|
575
|
+
// Added data-testid for Playwright testing
|
|
576
|
+
// Using className and aria-labels is not ideal for Playwright locator
|
|
566
577
|
const headerId = `facet-group-header-label-${facetGroup.key}`;
|
|
567
578
|
return html`
|
|
568
579
|
<section
|
|
569
580
|
class="facet-group ${this.collapsableFacets ? 'mobile' : ''}"
|
|
570
581
|
aria-labelledby=${headerId}
|
|
582
|
+
data-testid=${headerId}
|
|
571
583
|
>
|
|
572
584
|
<div class="facet-group-header">
|
|
573
585
|
<h3
|
|
@@ -579,7 +591,10 @@ export class CollectionFacets extends LitElement {
|
|
|
579
591
|
<span class="sr-only">filters</span>
|
|
580
592
|
</h3>
|
|
581
593
|
</div>
|
|
582
|
-
<div
|
|
594
|
+
<div
|
|
595
|
+
class="facet-group-content ${isOpen ? 'open' : ''}"
|
|
596
|
+
data-testid="facet-group-content-${facetGroup.key}"
|
|
597
|
+
>
|
|
583
598
|
${this.facetsLoading
|
|
584
599
|
? this.getTombstoneFacetGroupTemplate()
|
|
585
600
|
: html`
|
|
@@ -627,6 +642,8 @@ export class CollectionFacets extends LitElement {
|
|
|
627
642
|
// We sort years in numeric order by default, rather than bucket count
|
|
628
643
|
const facetSort = defaultFacetSort[facetGroup.key];
|
|
629
644
|
|
|
645
|
+
// Added data-testid for Playwright testing
|
|
646
|
+
// Using the className is not ideal for Playwright locator
|
|
630
647
|
return html`<button
|
|
631
648
|
class="more-link"
|
|
632
649
|
@click=${() => {
|
|
@@ -640,6 +657,7 @@ export class CollectionFacets extends LitElement {
|
|
|
640
657
|
new CustomEvent('showMoreFacets', { detail: facetGroup.key })
|
|
641
658
|
);
|
|
642
659
|
}}
|
|
660
|
+
data-testid="more-link-btn"
|
|
643
661
|
>
|
|
644
662
|
More...
|
|
645
663
|
</button>`;
|
|
@@ -404,11 +404,7 @@ export class CollectionBrowserDataSource
|
|
|
404
404
|
const facetsBecameReady = !this.facetsReadyToLoad && ready;
|
|
405
405
|
this.facetsReadyToLoad = ready;
|
|
406
406
|
|
|
407
|
-
const
|
|
408
|
-
this.host.facetLoadStrategy
|
|
409
|
-
);
|
|
410
|
-
const needsFetch =
|
|
411
|
-
lazyLoadFacets && facetsBecameReady && this.canFetchFacets;
|
|
407
|
+
const needsFetch = facetsBecameReady && this.canFetchFacets;
|
|
412
408
|
if (needsFetch) {
|
|
413
409
|
this.fetchFacets();
|
|
414
410
|
}
|