@internetarchive/collection-browser 2.12.1-alpha-webdev5427.7 → 2.12.2-alpha-webdev7587.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/dist/src/app-root.d.ts +0 -1
- package/dist/src/app-root.js +2 -48
- package/dist/src/app-root.js.map +1 -1
- package/dist/src/collection-browser.js +4 -13
- package/dist/src/collection-browser.js.map +1 -1
- package/dist/src/collection-facets/facet-row.js +1 -7
- package/dist/src/collection-facets/facet-row.js.map +1 -1
- package/dist/src/collection-facets/more-facets-content.d.ts +0 -1
- package/dist/src/collection-facets/more-facets-content.js +4 -19
- package/dist/src/collection-facets/more-facets-content.js.map +1 -1
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +3 -4
- package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
- package/dist/src/collection-facets.d.ts +1 -3
- package/dist/src/collection-facets.js +7 -37
- package/dist/src/collection-facets.js.map +1 -1
- package/dist/src/data-source/collection-browser-data-source-interface.d.ts +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.js +17 -19
- package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
- package/dist/src/expanded-date-picker.d.ts +0 -1
- package/dist/src/expanded-date-picker.js +1 -7
- package/dist/src/expanded-date-picker.js.map +1 -1
- package/dist/src/models.d.ts +5 -22
- package/dist/src/models.js +3 -64
- package/dist/src/models.js.map +1 -1
- package/dist/src/restoration-state-handler.js +3 -8
- package/dist/src/restoration-state-handler.js.map +1 -1
- package/dist/src/utils/facet-utils.js +2 -8
- package/dist/src/utils/facet-utils.js.map +1 -1
- package/dist/src/utils/local-date-from-utc.js +1 -1
- package/dist/src/utils/local-date-from-utc.js.map +1 -1
- package/dist/test/collection-facets.test.js +0 -27
- package/dist/test/collection-facets.test.js.map +1 -1
- package/dist/test/restoration-state-handler.test.js +10 -17
- package/dist/test/restoration-state-handler.test.js.map +1 -1
- package/dist/test/tiles/grid/item-tile.test.js +1 -1
- package/dist/test/tiles/grid/item-tile.test.js.map +1 -1
- package/dist/test/tiles/list/tile-list-compact.test.js +1 -1
- package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
- package/dist/test/tiles/list/tile-list.test.js +3 -3
- package/dist/test/tiles/list/tile-list.test.js.map +1 -1
- package/dist/test/utils/local-date-from-utc.test.js +4 -4
- package/dist/test/utils/local-date-from-utc.test.js.map +1 -1
- package/package.json +4 -4
- package/src/app-root.ts +2 -49
- package/src/collection-browser.ts +3 -16
- package/src/collection-facets/facet-row.ts +1 -8
- package/src/collection-facets/more-facets-content.ts +5 -21
- package/src/collection-facets/smart-facets/smart-facet-bar.ts +2 -2
- package/src/collection-facets.ts +8 -37
- package/src/data-source/collection-browser-data-source-interface.ts +1 -1
- package/src/data-source/collection-browser-data-source.ts +20 -30
- package/src/expanded-date-picker.ts +1 -5
- package/src/models.ts +10 -82
- package/src/restoration-state-handler.ts +1 -8
- package/src/utils/facet-utils.ts +3 -5
- package/src/utils/local-date-from-utc.ts +1 -1
- package/test/collection-facets.test.ts +0 -33
- package/test/restoration-state-handler.test.ts +10 -10
- package/test/tiles/grid/item-tile.test.ts +1 -1
- package/test/tiles/list/tile-list-compact.test.ts +1 -1
- package/test/tiles/list/tile-list.test.ts +3 -3
- package/test/utils/local-date-from-utc.test.ts +4 -4
|
@@ -11,5 +11,5 @@ export function localDateFromUTC(date: Date): Date {
|
|
|
11
11
|
*/
|
|
12
12
|
export function isFirstMillisecondOfUTCYear(date?: Date): boolean {
|
|
13
13
|
if (!date) return false;
|
|
14
|
-
return
|
|
14
|
+
return date.toISOString().endsWith('-01-01T00:00:00.000Z');
|
|
15
15
|
}
|
|
@@ -629,39 +629,6 @@ describe('Collection Facets', () => {
|
|
|
629
629
|
expect(facetRows?.[7]?.bucket?.key).to.equal('collection');
|
|
630
630
|
});
|
|
631
631
|
|
|
632
|
-
it('uses specified facet display order', async () => {
|
|
633
|
-
const el = await fixture<CollectionFacets>(
|
|
634
|
-
html`<collection-facets
|
|
635
|
-
.facetDisplayOrder=${['language', 'creator'] as FacetOption[]}
|
|
636
|
-
></collection-facets>`,
|
|
637
|
-
);
|
|
638
|
-
|
|
639
|
-
const aggs: Record<string, Aggregation> = {
|
|
640
|
-
mediatype: new Aggregation({
|
|
641
|
-
buckets: [{ key: 'texts', doc_count: 5 }],
|
|
642
|
-
}),
|
|
643
|
-
collection: new Aggregation({
|
|
644
|
-
buckets: [{ key: 'foo', doc_count: 10 }],
|
|
645
|
-
}),
|
|
646
|
-
creator: new Aggregation({
|
|
647
|
-
buckets: [{ key: 'bar', doc_count: 15 }],
|
|
648
|
-
}),
|
|
649
|
-
language: new Aggregation({
|
|
650
|
-
buckets: [{ key: 'baz', doc_count: 20 }],
|
|
651
|
-
}),
|
|
652
|
-
};
|
|
653
|
-
|
|
654
|
-
el.aggregations = aggs;
|
|
655
|
-
await el.updateComplete;
|
|
656
|
-
|
|
657
|
-
const facetHeaders = el.shadowRoot?.querySelectorAll('.facet-group-header');
|
|
658
|
-
|
|
659
|
-
// The only two facet groups should be Language and Creator (in that order)
|
|
660
|
-
expect(facetHeaders?.length).to.equal(2);
|
|
661
|
-
expect(facetHeaders?.[0].textContent).to.contain('Language');
|
|
662
|
-
expect(facetHeaders?.[1].textContent).to.contain('Creator');
|
|
663
|
-
});
|
|
664
|
-
|
|
665
632
|
describe('More Facets', () => {
|
|
666
633
|
it('Does not render < allowedFacetCount', async () => {
|
|
667
634
|
const el = await fixture<CollectionFacets>(
|
|
@@ -100,7 +100,7 @@ describe('Restoration state handler', () => {
|
|
|
100
100
|
window.history.replaceState({ path: url.href }, '', url.href);
|
|
101
101
|
|
|
102
102
|
const restorationState = handler.getRestorationState();
|
|
103
|
-
expect(restorationState.selectedFacets.year
|
|
103
|
+
expect(restorationState.selectedFacets.year['2018'].state).to.equal(
|
|
104
104
|
'selected',
|
|
105
105
|
);
|
|
106
106
|
});
|
|
@@ -160,7 +160,7 @@ describe('Restoration state handler', () => {
|
|
|
160
160
|
window.history.replaceState({ path: url.href }, '', url.href);
|
|
161
161
|
|
|
162
162
|
const restorationState = handler.getRestorationState();
|
|
163
|
-
expect(restorationState.selectedFacets.subject
|
|
163
|
+
expect(restorationState.selectedFacets.subject.foo.state).to.equal(
|
|
164
164
|
'selected',
|
|
165
165
|
);
|
|
166
166
|
});
|
|
@@ -173,7 +173,7 @@ describe('Restoration state handler', () => {
|
|
|
173
173
|
window.history.replaceState({ path: url.href }, '', url.href);
|
|
174
174
|
|
|
175
175
|
const restorationState = handler.getRestorationState();
|
|
176
|
-
expect(restorationState.selectedFacets.year
|
|
176
|
+
expect(restorationState.selectedFacets.year['2018'].state).to.equal(
|
|
177
177
|
'hidden',
|
|
178
178
|
);
|
|
179
179
|
});
|
|
@@ -188,17 +188,17 @@ describe('Restoration state handler', () => {
|
|
|
188
188
|
|
|
189
189
|
const restorationState = handler.getRestorationState();
|
|
190
190
|
|
|
191
|
-
expect(restorationState.selectedFacets.collection
|
|
191
|
+
expect(restorationState.selectedFacets.collection.foo.state).to.equal(
|
|
192
192
|
'selected',
|
|
193
193
|
);
|
|
194
|
-
expect(restorationState.selectedFacets.collection
|
|
194
|
+
expect(restorationState.selectedFacets.collection.bar.state).to.equal(
|
|
195
195
|
'selected',
|
|
196
196
|
);
|
|
197
197
|
|
|
198
|
-
expect(restorationState.selectedFacets.collection
|
|
198
|
+
expect(restorationState.selectedFacets.collection.baz.state).to.equal(
|
|
199
199
|
'hidden',
|
|
200
200
|
);
|
|
201
|
-
expect(restorationState.selectedFacets.collection
|
|
201
|
+
expect(restorationState.selectedFacets.collection.boop.state).to.equal(
|
|
202
202
|
'hidden',
|
|
203
203
|
);
|
|
204
204
|
});
|
|
@@ -211,7 +211,7 @@ describe('Restoration state handler', () => {
|
|
|
211
211
|
window.history.replaceState({ path: url.href }, '', url.href);
|
|
212
212
|
|
|
213
213
|
const restorationState = handler.getRestorationState();
|
|
214
|
-
expect(restorationState.selectedFacets.collection
|
|
214
|
+
expect(restorationState.selectedFacets.collection.foo.state).to.equal(
|
|
215
215
|
'hidden',
|
|
216
216
|
);
|
|
217
217
|
});
|
|
@@ -224,7 +224,7 @@ describe('Restoration state handler', () => {
|
|
|
224
224
|
window.history.replaceState({ path: url.href }, '', url.href);
|
|
225
225
|
|
|
226
226
|
const restorationState = handler.getRestorationState();
|
|
227
|
-
expect(restorationState.selectedFacets.subject
|
|
227
|
+
expect(restorationState.selectedFacets.subject.foo.state).to.equal(
|
|
228
228
|
'selected',
|
|
229
229
|
);
|
|
230
230
|
});
|
|
@@ -237,7 +237,7 @@ describe('Restoration state handler', () => {
|
|
|
237
237
|
window.history.replaceState({ path: url.href }, '', url.href);
|
|
238
238
|
|
|
239
239
|
const restorationState = handler.getRestorationState();
|
|
240
|
-
expect(restorationState.selectedFacets.year
|
|
240
|
+
expect(restorationState.selectedFacets.year['2018'].state).to.equal(
|
|
241
241
|
'hidden',
|
|
242
242
|
);
|
|
243
243
|
});
|
|
@@ -247,7 +247,7 @@ describe('Item Tile', () => {
|
|
|
247
247
|
|
|
248
248
|
it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
|
|
249
249
|
const model: Partial<TileModel> = {
|
|
250
|
-
datePublished: new Date(2012
|
|
250
|
+
datePublished: new Date('2012-01-01T00:00:00Z'),
|
|
251
251
|
};
|
|
252
252
|
|
|
253
253
|
const el = await fixture<ItemTile>(html`
|
|
@@ -161,7 +161,7 @@ describe('List Tile Compact', () => {
|
|
|
161
161
|
|
|
162
162
|
it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
|
|
163
163
|
const model: Partial<TileModel> = {
|
|
164
|
-
datePublished: new Date(2012
|
|
164
|
+
datePublished: new Date('2012-01-01T00:00:00Z'),
|
|
165
165
|
};
|
|
166
166
|
|
|
167
167
|
const el = await fixture<TileListCompact>(html`
|
|
@@ -216,9 +216,9 @@ describe('List Tile', () => {
|
|
|
216
216
|
expect(dateRow?.textContent?.trim()).to.contain('Reviewed: Jan 02, 2013');
|
|
217
217
|
});
|
|
218
218
|
|
|
219
|
-
it('should only show the year for a date published of Jan 1 at midnight', async () => {
|
|
219
|
+
it('should only show the year for a date published of Jan 1 at midnight UTC', async () => {
|
|
220
220
|
const model: Partial<TileModel> = {
|
|
221
|
-
datePublished: new Date(2012
|
|
221
|
+
datePublished: new Date('2012-01-01T00:00:00Z'),
|
|
222
222
|
};
|
|
223
223
|
|
|
224
224
|
const el = await fixture<TileList>(html`
|
|
@@ -234,7 +234,7 @@ describe('List Tile', () => {
|
|
|
234
234
|
expect(dateRow?.textContent?.trim()).to.contain('Published: 2012');
|
|
235
235
|
});
|
|
236
236
|
|
|
237
|
-
it('should show full date added/archived/reviewed, even on Jan 1 at midnight', async () => {
|
|
237
|
+
it('should show full date added/archived/reviewed, even on Jan 1 at midnight UTC', async () => {
|
|
238
238
|
const model: Partial<TileModel> = {
|
|
239
239
|
dateAdded: new Date(2010, 0, 1, 0, 0, 0, 0),
|
|
240
240
|
dateArchived: new Date(2011, 0, 1, 0, 0, 0, 0),
|
|
@@ -16,18 +16,18 @@ describe('localDateFromUTC', () => {
|
|
|
16
16
|
|
|
17
17
|
describe('isFirstMillisecondOfUTCYear', () => {
|
|
18
18
|
it('returns true when date is exactly Jan 1 at midnight in UTC', async () => {
|
|
19
|
-
const midnightOnNewYearsDay = new Date(2010
|
|
19
|
+
const midnightOnNewYearsDay = new Date('2010-01-01T00:00:00Z');
|
|
20
20
|
expect(isFirstMillisecondOfUTCYear(midnightOnNewYearsDay)).to.be.true;
|
|
21
21
|
});
|
|
22
22
|
|
|
23
23
|
it('returns false when date is not exactly Jan 1 at midnight in UTC', async () => {
|
|
24
|
-
const oneMillisecondTooEarly = new Date(2009
|
|
24
|
+
const oneMillisecondTooEarly = new Date('2009-12-31T23:59:59.999Z');
|
|
25
25
|
expect(isFirstMillisecondOfUTCYear(oneMillisecondTooEarly)).to.be.false;
|
|
26
26
|
|
|
27
|
-
const oneMillisecondTooLate = new Date(2010
|
|
27
|
+
const oneMillisecondTooLate = new Date('2010-01-01T00:00:00.001Z');
|
|
28
28
|
expect(isFirstMillisecondOfUTCYear(oneMillisecondTooLate)).to.be.false;
|
|
29
29
|
|
|
30
|
-
const middleOfTheYear = new Date(2010
|
|
30
|
+
const middleOfTheYear = new Date('2010-06-01T00:00:00Z');
|
|
31
31
|
expect(isFirstMillisecondOfUTCYear(middleOfTheYear)).to.be.false;
|
|
32
32
|
});
|
|
33
33
|
|