@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.
Files changed (63) hide show
  1. package/dist/src/app-root.d.ts +0 -1
  2. package/dist/src/app-root.js +2 -48
  3. package/dist/src/app-root.js.map +1 -1
  4. package/dist/src/collection-browser.js +4 -13
  5. package/dist/src/collection-browser.js.map +1 -1
  6. package/dist/src/collection-facets/facet-row.js +1 -7
  7. package/dist/src/collection-facets/facet-row.js.map +1 -1
  8. package/dist/src/collection-facets/more-facets-content.d.ts +0 -1
  9. package/dist/src/collection-facets/more-facets-content.js +4 -19
  10. package/dist/src/collection-facets/more-facets-content.js.map +1 -1
  11. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js +3 -4
  12. package/dist/src/collection-facets/smart-facets/smart-facet-bar.js.map +1 -1
  13. package/dist/src/collection-facets.d.ts +1 -3
  14. package/dist/src/collection-facets.js +7 -37
  15. package/dist/src/collection-facets.js.map +1 -1
  16. package/dist/src/data-source/collection-browser-data-source-interface.d.ts +1 -1
  17. package/dist/src/data-source/collection-browser-data-source-interface.js.map +1 -1
  18. package/dist/src/data-source/collection-browser-data-source.js +17 -19
  19. package/dist/src/data-source/collection-browser-data-source.js.map +1 -1
  20. package/dist/src/expanded-date-picker.d.ts +0 -1
  21. package/dist/src/expanded-date-picker.js +1 -7
  22. package/dist/src/expanded-date-picker.js.map +1 -1
  23. package/dist/src/models.d.ts +5 -22
  24. package/dist/src/models.js +3 -64
  25. package/dist/src/models.js.map +1 -1
  26. package/dist/src/restoration-state-handler.js +3 -8
  27. package/dist/src/restoration-state-handler.js.map +1 -1
  28. package/dist/src/utils/facet-utils.js +2 -8
  29. package/dist/src/utils/facet-utils.js.map +1 -1
  30. package/dist/src/utils/local-date-from-utc.js +1 -1
  31. package/dist/src/utils/local-date-from-utc.js.map +1 -1
  32. package/dist/test/collection-facets.test.js +0 -27
  33. package/dist/test/collection-facets.test.js.map +1 -1
  34. package/dist/test/restoration-state-handler.test.js +10 -17
  35. package/dist/test/restoration-state-handler.test.js.map +1 -1
  36. package/dist/test/tiles/grid/item-tile.test.js +1 -1
  37. package/dist/test/tiles/grid/item-tile.test.js.map +1 -1
  38. package/dist/test/tiles/list/tile-list-compact.test.js +1 -1
  39. package/dist/test/tiles/list/tile-list-compact.test.js.map +1 -1
  40. package/dist/test/tiles/list/tile-list.test.js +3 -3
  41. package/dist/test/tiles/list/tile-list.test.js.map +1 -1
  42. package/dist/test/utils/local-date-from-utc.test.js +4 -4
  43. package/dist/test/utils/local-date-from-utc.test.js.map +1 -1
  44. package/package.json +4 -4
  45. package/src/app-root.ts +2 -49
  46. package/src/collection-browser.ts +3 -16
  47. package/src/collection-facets/facet-row.ts +1 -8
  48. package/src/collection-facets/more-facets-content.ts +5 -21
  49. package/src/collection-facets/smart-facets/smart-facet-bar.ts +2 -2
  50. package/src/collection-facets.ts +8 -37
  51. package/src/data-source/collection-browser-data-source-interface.ts +1 -1
  52. package/src/data-source/collection-browser-data-source.ts +20 -30
  53. package/src/expanded-date-picker.ts +1 -5
  54. package/src/models.ts +10 -82
  55. package/src/restoration-state-handler.ts +1 -8
  56. package/src/utils/facet-utils.ts +3 -5
  57. package/src/utils/local-date-from-utc.ts +1 -1
  58. package/test/collection-facets.test.ts +0 -33
  59. package/test/restoration-state-handler.test.ts +10 -10
  60. package/test/tiles/grid/item-tile.test.ts +1 -1
  61. package/test/tiles/list/tile-list-compact.test.ts +1 -1
  62. package/test/tiles/list/tile-list.test.ts +3 -3
  63. 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 localDateFromUTC(date).toISOString().endsWith('-01-01T00:00:00.000Z');
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?.['2018'].state).to.equal(
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?.foo.state).to.equal(
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?.['2018'].state).to.equal(
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?.foo.state).to.equal(
191
+ expect(restorationState.selectedFacets.collection.foo.state).to.equal(
192
192
  'selected',
193
193
  );
194
- expect(restorationState.selectedFacets.collection?.bar.state).to.equal(
194
+ expect(restorationState.selectedFacets.collection.bar.state).to.equal(
195
195
  'selected',
196
196
  );
197
197
 
198
- expect(restorationState.selectedFacets.collection?.baz.state).to.equal(
198
+ expect(restorationState.selectedFacets.collection.baz.state).to.equal(
199
199
  'hidden',
200
200
  );
201
- expect(restorationState.selectedFacets.collection?.boop.state).to.equal(
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?.foo.state).to.equal(
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?.foo.state).to.equal(
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?.['2018'].state).to.equal(
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, 0, 1, 0, 0, 0, 0),
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, 0, 1, 0, 0, 0, 0),
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, 0, 1, 0, 0, 0, 0),
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, 0, 1, 0, 0, 0, 0);
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, 11, 31, 23, 59, 59, 999);
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, 0, 1, 0, 0, 0, 1);
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, 6, 1, 0, 0, 0, 0);
30
+ const middleOfTheYear = new Date('2010-06-01T00:00:00Z');
31
31
  expect(isFirstMillisecondOfUTCYear(middleOfTheYear)).to.be.false;
32
32
  });
33
33