Public Access
feat(library): add source chips to game library
Chips show only when the user has 2 or more sources. A selected source the user lacks stays visible, so it can be cleared.
This commit is contained in:
1 parent
d3ad19e2fa
commit
e136a7abc1
8 files changed
+224
-55
No files matched your search
@@ -1,5 +1,5 @@
|
||||
import {describe, expect, it} from 'vitest';
|
||||
import {backlogShare, libraryQuery, NO_PRIORITY, parseStatus, toBacklogRequest} from './backlog.js';
|
||||
import {backlogShare, libraryQuery, NO_PRIORITY, parseSources, parseStatus, toBacklogRequest} from './backlog.js';
|
||||
|
||||
describe('toBacklogRequest', () => {
|
||||
it('sends every field', () => {
|
||||
@@ -60,3 +60,18 @@ describe('libraryQuery hideDuplicates', () => {
|
||||
expect(libraryQuery({...base, hideDuplicates: false})).not.toContain('hideDuplicates');
|
||||
});
|
||||
});
|
||||
|
||||
describe('sources', () => {
|
||||
it('parseSources_KeepsKnownValuesInOrder', () => {
|
||||
expect(parseSources('PSN,FOO,STEAM,PSN')).toEqual(['STEAM', 'PSN']);
|
||||
expect(parseSources(null)).toEqual([]);
|
||||
expect(parseSources('')).toEqual([]);
|
||||
});
|
||||
|
||||
it('libraryQuery_SetsSourceOnlyWhenSelected', () => {
|
||||
const base = {page: 0, size: 20, sort: 'appid,asc', status: null, q: ''};
|
||||
expect(libraryQuery({...base, source: 'STEAM,PSN'})).toBe('page=0&size=20&sort=appid%2Casc&source=STEAM%2CPSN');
|
||||
expect(libraryQuery({...base, source: ''})).not.toContain('source');
|
||||
expect(libraryQuery(base)).not.toContain('source');
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user