Change p. to page and reverse id and pagination info

This commit is contained in:
Yana De Pauw
2021-04-01 16:28:20 +02:00
parent a4076ed1fd
commit 824ee029b3
7 changed files with 49 additions and 49 deletions

View File

@@ -20,16 +20,16 @@ describe('PaginationService', () => {
routeService = { routeService = {
getQueryParameterValue: (param) => { getQueryParameterValue: (param) => {
let value; let value;
if (param.startsWith('p.')) { if (param.endsWith('.page')) {
value = 5; value = 5;
} }
if (param.startsWith('rpp.')) { if (param.endsWith('.rpp')) {
value = 10; value = 10;
} }
if (param.startsWith('sd.')) { if (param.endsWith('.sd')) {
value = 'ASC'; value = 'ASC';
} }
if (param.startsWith('sf.')) { if (param.endsWith('.sf')) {
value = 'score'; value = 'score';
} }
return observableOf(value); return observableOf(value);
@@ -83,10 +83,10 @@ describe('PaginationService', () => {
service.updateRoute('test', {page: 2, pageSize: 5, sortField: 'title', sortDirection: SortDirection.DESC}); service.updateRoute('test', {page: 2, pageSize: 5, sortField: 'title', sortDirection: SortDirection.DESC});
const navigateParams = {}; const navigateParams = {};
navigateParams[`p.test`] = `2`; navigateParams[`test.page`] = `2`;
navigateParams[`rpp.test`] = `5`; navigateParams[`test.rpp`] = `5`;
navigateParams[`sf.test`] = `title`; navigateParams[`test.sf`] = `title`;
navigateParams[`sd.test`] = `DESC`; navigateParams[`test.sd`] = `DESC`;
expect(router.navigate).toHaveBeenCalledWith([], {queryParams: navigateParams, queryParamsHandling: 'merge'}); expect(router.navigate).toHaveBeenCalledWith([], {queryParams: navigateParams, queryParamsHandling: 'merge'});
}); });
@@ -94,10 +94,10 @@ describe('PaginationService', () => {
service.updateRoute('test', {page: 2}); service.updateRoute('test', {page: 2});
const navigateParams = {}; const navigateParams = {};
navigateParams[`p.test`] = `2`; navigateParams[`test.page`] = `2`;
navigateParams[`rpp.test`] = `10`; navigateParams[`test.rpp`] = `10`;
navigateParams[`sf.test`] = `score`; navigateParams[`test.sf`] = `score`;
navigateParams[`sd.test`] = `ASC`; navigateParams[`test.sd`] = `ASC`;
expect(router.navigate).toHaveBeenCalledWith([], {queryParams: navigateParams, queryParamsHandling: 'merge'}); expect(router.navigate).toHaveBeenCalledWith([], {queryParams: navigateParams, queryParamsHandling: 'merge'});
}); });
@@ -107,10 +107,10 @@ describe('PaginationService', () => {
service.updateRouteWithUrl('test', ['someUrl'], {page: 2, pageSize: 5, sortField: 'title', sortDirection: SortDirection.DESC}); service.updateRouteWithUrl('test', ['someUrl'], {page: 2, pageSize: 5, sortField: 'title', sortDirection: SortDirection.DESC});
const navigateParams = {}; const navigateParams = {};
navigateParams[`p.test`] = `2`; navigateParams[`test.page`] = `2`;
navigateParams[`rpp.test`] = `5`; navigateParams[`test.rpp`] = `5`;
navigateParams[`sf.test`] = `title`; navigateParams[`test.sf`] = `title`;
navigateParams[`sd.test`] = `DESC`; navigateParams[`test.sd`] = `DESC`;
expect(router.navigate).toHaveBeenCalledWith(['someUrl'], {queryParams: navigateParams, queryParamsHandling: 'merge'}); expect(router.navigate).toHaveBeenCalledWith(['someUrl'], {queryParams: navigateParams, queryParamsHandling: 'merge'});
}); });
@@ -118,10 +118,10 @@ describe('PaginationService', () => {
service.updateRouteWithUrl('test',['someUrl'], {page: 2}); service.updateRouteWithUrl('test',['someUrl'], {page: 2});
const navigateParams = {}; const navigateParams = {};
navigateParams[`p.test`] = `2`; navigateParams[`test.page`] = `2`;
navigateParams[`rpp.test`] = `10`; navigateParams[`test.rpp`] = `10`;
navigateParams[`sf.test`] = `score`; navigateParams[`test.sf`] = `score`;
navigateParams[`sd.test`] = `ASC`; navigateParams[`test.sd`] = `ASC`;
expect(router.navigate).toHaveBeenCalledWith(['someUrl'], {queryParams: navigateParams, queryParamsHandling: 'merge'}); expect(router.navigate).toHaveBeenCalledWith(['someUrl'], {queryParams: navigateParams, queryParamsHandling: 'merge'});
}); });
@@ -132,17 +132,17 @@ describe('PaginationService', () => {
service.clearPagination('test'); service.clearPagination('test');
const resetParams = {}; const resetParams = {};
resetParams[`p.test`] = null; resetParams[`test.page`] = null;
resetParams[`rpp.test`] = null; resetParams[`test.rpp`] = null;
resetParams[`sf.test`] = null; resetParams[`test.sf`] = null;
resetParams[`sd.test`] = null; resetParams[`test.sd`] = null;
const navigateParams = {}; const navigateParams = {};
navigateParams[`p.another-id`] = `5`; navigateParams[`another-id.page`] = `5`;
navigateParams[`rpp.another-id`] = `10`; navigateParams[`another-id.rpp`] = `10`;
navigateParams[`sf.another-id`] = `score`; navigateParams[`another-id.sf`] = `score`;
navigateParams[`sd.another-id`] = `ASC`; navigateParams[`another-id.sd`] = `ASC`;
service.updateRoute('another-id', {}); service.updateRoute('another-id', {});
@@ -152,7 +152,7 @@ describe('PaginationService', () => {
describe('getPageParam', () => { describe('getPageParam', () => {
it('should return the name of the page param', () => { it('should return the name of the page param', () => {
const pageParam = service.getPageParam('test'); const pageParam = service.getPageParam('test');
expect(pageParam).toEqual('p.test'); expect(pageParam).toEqual('test.page');
}); });
}); });
}); });

View File

@@ -41,8 +41,8 @@ export class PaginationService {
* @returns {Observable<PaginationComponentOptions>} Retrieves the current pagination settings based on the router params * @returns {Observable<PaginationComponentOptions>} Retrieves the current pagination settings based on the router params
*/ */
getCurrentPagination(paginationId: string, defaultPagination: PaginationComponentOptions): Observable<PaginationComponentOptions> { getCurrentPagination(paginationId: string, defaultPagination: PaginationComponentOptions): Observable<PaginationComponentOptions> {
const page$ = this.routeService.getQueryParameterValue(`p.${paginationId}`); const page$ = this.routeService.getQueryParameterValue(`${paginationId}.page`);
const size$ = this.routeService.getQueryParameterValue(`rpp.${paginationId}`); const size$ = this.routeService.getQueryParameterValue(`${paginationId}.rpp`);
return observableCombineLatest([page$, size$]).pipe( return observableCombineLatest([page$, size$]).pipe(
map(([page, size]) => { map(([page, size]) => {
return Object.assign(new PaginationComponentOptions(), defaultPagination, { return Object.assign(new PaginationComponentOptions(), defaultPagination, {
@@ -64,8 +64,8 @@ export class PaginationService {
if (!ignoreDefault && (isEmpty(defaultSort) || !hasValue(defaultSort))) { if (!ignoreDefault && (isEmpty(defaultSort) || !hasValue(defaultSort))) {
defaultSort = this.defaultSortOptions; defaultSort = this.defaultSortOptions;
} }
const sortDirection$ = this.routeService.getQueryParameterValue(`sd.${paginationId}`); const sortDirection$ = this.routeService.getQueryParameterValue(`${paginationId}.sd`);
const sortField$ = this.routeService.getQueryParameterValue(`sf.${paginationId}`); const sortField$ = this.routeService.getQueryParameterValue(`${paginationId}.sf`);
return observableCombineLatest([sortDirection$, sortField$]).pipe(map(([sortDirection, sortField]) => { return observableCombineLatest([sortDirection$, sortField$]).pipe(map(([sortDirection, sortField]) => {
const field = sortField || defaultSort?.field; const field = sortField || defaultSort?.field;
const direction = SortDirection[sortDirection] || defaultSort?.direction; const direction = SortDirection[sortDirection] || defaultSort?.direction;
@@ -171,10 +171,10 @@ export class PaginationService {
*/ */
clearPagination(paginationId: string) { clearPagination(paginationId: string) {
const params = {}; const params = {};
params[`p.${paginationId}`] = null; params[`${paginationId}.page`] = null;
params[`rpp.${paginationId}`] = null; params[`${paginationId}.rpp`] = null;
params[`sf.${paginationId}`] = null; params[`${paginationId}.sf`] = null;
params[`sd.${paginationId}`] = null; params[`${paginationId}.sd`] = null;
Object.assign(this.clearParams, params); Object.assign(this.clearParams, params);
} }
@@ -184,7 +184,7 @@ export class PaginationService {
* @param paginationId - The ID for which to retrieve the page param * @param paginationId - The ID for which to retrieve the page param
*/ */
getPageParam(paginationId: string) { getPageParam(paginationId: string) {
return `p.${paginationId}`; return `${paginationId}.page`;
} }
private getCurrentRouting(paginationId: string) { private getCurrentRouting(paginationId: string) {
@@ -209,16 +209,16 @@ export class PaginationService {
}) { }) {
const paramsWithIdName = {}; const paramsWithIdName = {};
if (hasValue(params.page)) { if (hasValue(params.page)) {
paramsWithIdName[`p.${paginationId}`] = `${params.page}`; paramsWithIdName[`${paginationId}.page`] = `${params.page}`;
} }
if (hasValue(params.pageSize)) { if (hasValue(params.pageSize)) {
paramsWithIdName[`rpp.${paginationId}`] = `${params.pageSize}`; paramsWithIdName[`${paginationId}.rpp`] = `${params.pageSize}`;
} }
if (hasValue(params.sortField)) { if (hasValue(params.sortField)) {
paramsWithIdName[`sf.${paginationId}`] = `${params.sortField}`; paramsWithIdName[`${paginationId}.sf`] = `${params.sortField}`;
} }
if (hasValue(params.sortDirection)) { if (hasValue(params.sortDirection)) {
paramsWithIdName[`sd.${paginationId}`] = `${params.sortDirection}`; paramsWithIdName[`${paginationId}.sd`] = `${params.sortDirection}`;
} }
return paramsWithIdName; return paramsWithIdName;
} }

View File

@@ -91,7 +91,7 @@ export class SearchFormComponent {
*/ */
updateSearch(data: any) { updateSearch(data: any) {
const queryParams = Object.assign({}, data); const queryParams = Object.assign({}, data);
queryParams[`p.${this.searchConfig.paginationID}`] = 1; queryParams[`page.${this.searchConfig.paginationID}`] = 1;
this.router.navigate(this.getSearchLinkParts(), { this.router.navigate(this.getSearchLinkParts(), {
queryParams: queryParams, queryParams: queryParams,

View File

@@ -140,7 +140,7 @@ describe('SearchFacetOptionComponent', () => {
(comp as any).updateAddParams(selectedValues); (comp as any).updateAddParams(selectedValues);
expect(comp.addQueryParams).toEqual({ expect(comp.addQueryParams).toEqual({
[mockFilterConfig.paramName]: [`${value1},${operator}`, value.value + ',equals'], [mockFilterConfig.paramName]: [`${value1},${operator}`, value.value + ',equals'],
['p.page-id']: 1 ['page.page-id']: 1
}); });
}); });
}); });
@@ -155,7 +155,7 @@ describe('SearchFacetOptionComponent', () => {
(comp as any).updateAddParams(selectedValues); (comp as any).updateAddParams(selectedValues);
expect(comp.addQueryParams).toEqual({ expect(comp.addQueryParams).toEqual({
[mockAuthorityFilterConfig.paramName]: [value1 + ',equals', `${value2},${operator}`], [mockAuthorityFilterConfig.paramName]: [value1 + ',equals', `${value2},${operator}`],
['p.page-id']: 1 ['page.page-id']: 1
}); });
}); });
}); });

View File

@@ -126,7 +126,7 @@ describe('SearchFacetRangeOptionComponent', () => {
expect(comp.changeQueryParams).toEqual({ expect(comp.changeQueryParams).toEqual({
[mockFilterConfig.paramName + RANGE_FILTER_MIN_SUFFIX]: ['50'], [mockFilterConfig.paramName + RANGE_FILTER_MIN_SUFFIX]: ['50'],
[mockFilterConfig.paramName + RANGE_FILTER_MAX_SUFFIX]: ['60'], [mockFilterConfig.paramName + RANGE_FILTER_MAX_SUFFIX]: ['60'],
['p.page-id']: 1 ['page.page-id']: 1
}); });
}); });
}); });

View File

@@ -165,7 +165,7 @@ describe('SearchFacetSelectedOptionComponent', () => {
(comp as any).updateRemoveParams(selectedValues); (comp as any).updateRemoveParams(selectedValues);
expect(comp.removeQueryParams).toEqual({ expect(comp.removeQueryParams).toEqual({
[mockFilterConfig.paramName]: [value1], [mockFilterConfig.paramName]: [value1],
['p.page-id']: 1 ['page.page-id']: 1
}); });
}); });
}); });
@@ -181,7 +181,7 @@ describe('SearchFacetSelectedOptionComponent', () => {
(comp as any).updateRemoveParams(selectedAuthorityValues); (comp as any).updateRemoveParams(selectedAuthorityValues);
expect(comp.removeQueryParams).toEqual({ expect(comp.removeQueryParams).toEqual({
[mockAuthorityFilterConfig.paramName]: [`${value1},${operator}`], [mockAuthorityFilterConfig.paramName]: [`${value1},${operator}`],
['p.page-id']: 1 ['page.page-id']: 1
}); });
}); });
}); });

View File

@@ -20,6 +20,6 @@ export class PaginationServiceStub {
updateRouteWithUrl = jasmine.createSpy('updateRouteWithUrl'); updateRouteWithUrl = jasmine.createSpy('updateRouteWithUrl');
clearPagination = jasmine.createSpy('clearPagination'); clearPagination = jasmine.createSpy('clearPagination');
getRouteParameterValue = jasmine.createSpy('getRouteParameterValue').and.returnValue(observableOf('')); getRouteParameterValue = jasmine.createSpy('getRouteParameterValue').and.returnValue(observableOf(''));
getPageParam = jasmine.createSpy('getPageParam').and.returnValue(`p.${this.pagination.id}`); getPageParam = jasmine.createSpy('getPageParam').and.returnValue(`page.${this.pagination.id}`);
} }