mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-26 17:24:56 +00:00
[ADF-2025] Task List - The pagination should be fetched from the UserPreference (#2733)
[ADF-2025] Task List - The pagination should be fetched from the UserPreference
This commit is contained in:
parent
910b2b344c
commit
4462486df1
@ -51,7 +51,8 @@
|
||||
}
|
||||
],
|
||||
"pagination": {
|
||||
"size": 25
|
||||
"size": 25,
|
||||
"supportedPageSizes": [ 5, 10, 15, 20 ]
|
||||
},
|
||||
"files": {
|
||||
"excluded": [".DS_Store", "desktop.ini", ".git"]
|
||||
@ -83,7 +84,6 @@
|
||||
}
|
||||
},
|
||||
"document-list": {
|
||||
"supportedPageSizes": [ 5, 10, 15, 25 ],
|
||||
"presets": {
|
||||
"-trashcan-": [
|
||||
{
|
||||
@ -330,7 +330,6 @@
|
||||
}
|
||||
},
|
||||
"adf-task-list": {
|
||||
"supportedPageSizes": [ 5, 10, 15, 25 ],
|
||||
"presets": {
|
||||
"default": [
|
||||
{
|
||||
|
@ -57,7 +57,7 @@
|
||||
(nextPage)="onNextPage($event)"
|
||||
(prevPage)="onPrevPage($event)"
|
||||
[pagination]="taskPagination"
|
||||
[supportedPageSizes]="[2, 4, 6, 8, 10, 12]">
|
||||
[supportedPageSizes]="supportedPages">
|
||||
</adf-pagination>
|
||||
</div>
|
||||
<div class="adf-grid-item adf-tasks-details" *ngIf="!isStartTaskMode()" fxFlex.gt-md="1 1 auto">
|
||||
|
@ -52,7 +52,7 @@ import {
|
||||
TaskListService
|
||||
} from '@alfresco/adf-process-services';
|
||||
import { LogService } from '@alfresco/adf-core';
|
||||
import { AlfrescoApiService } from '@alfresco/adf-core';
|
||||
import { AlfrescoApiService, UserPreferencesService } from '@alfresco/adf-core';
|
||||
import {
|
||||
DataSorting,
|
||||
ObjectDataRow,
|
||||
@ -121,6 +121,8 @@ export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit
|
||||
taskPage = 0;
|
||||
processSchemaColumns: any[] = [];
|
||||
|
||||
supportedPages: number[];
|
||||
|
||||
activeTab: number = this.tabs.tasks; // tasks|processes|reports
|
||||
|
||||
taskFilter: FilterRepresentationModel;
|
||||
@ -147,9 +149,12 @@ export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit
|
||||
private apiService: AlfrescoApiService,
|
||||
private logService: LogService,
|
||||
formRenderingService: FormRenderingService,
|
||||
formService: FormService) {
|
||||
formService: FormService,
|
||||
private preferenceService: UserPreferencesService) {
|
||||
this.dataTasks = new ObjectDataTableAdapter();
|
||||
this.dataTasks.setSorting(new DataSorting('created', 'desc'));
|
||||
this.supportedPages = this.preferenceService.getDifferentPageSizes();
|
||||
this.taskPagination.maxItems = this.preferenceService.paginationSize;
|
||||
|
||||
// Uncomment this line to replace all 'text' field editors with custom component
|
||||
// formRenderingService.setComponentTypeResolver('text', () => CustomEditorComponent, true);
|
||||
@ -200,6 +205,7 @@ export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit
|
||||
this.taskPage = this.currentPage(skipCount, maxItems);
|
||||
this.taskPagination.maxItems = maxItems;
|
||||
this.taskPagination.skipCount = skipCount;
|
||||
this.preferenceService.paginationSize = maxItems;
|
||||
}
|
||||
|
||||
onChangePageNumber(pagination: Pagination): void {
|
||||
|
@ -28,6 +28,7 @@ import { UserPreferencesService } from './user-preferences.service';
|
||||
describe('UserPreferencesService', () => {
|
||||
|
||||
const defaultPaginationSize: number = 10;
|
||||
const supportedPaginationSize = [5, 10, 15, 20];
|
||||
let preferences: UserPreferencesService;
|
||||
let storage: StorageService;
|
||||
let appConfig: AppConfigService;
|
||||
@ -55,7 +56,8 @@ describe('UserPreferencesService', () => {
|
||||
appConfig = TestBed.get(AppConfigService);
|
||||
appConfig.config = {
|
||||
pagination: {
|
||||
size: 10
|
||||
'size': 10,
|
||||
'supportedPageSizes': [ 5, 10, 15, 20 ]
|
||||
}
|
||||
};
|
||||
preferences = TestBed.get(UserPreferencesService);
|
||||
@ -64,7 +66,12 @@ describe('UserPreferencesService', () => {
|
||||
});
|
||||
|
||||
it('should get default pagination from app config', () => {
|
||||
expect(preferences.paginationSize).toBe(defaultPaginationSize);
|
||||
expect(preferences.defaults.paginationSize).toBe(defaultPaginationSize);
|
||||
});
|
||||
|
||||
it('should return supported page sizes defined in the app config', () => {
|
||||
const supportedPages = preferences.getDifferentPageSizes();
|
||||
expect(supportedPages).toEqual(supportedPaginationSize);
|
||||
});
|
||||
|
||||
it('should use [GUEST] as default storage prefix', () => {
|
||||
|
@ -26,8 +26,9 @@ import { StorageService } from './storage.service';
|
||||
@Injectable()
|
||||
export class UserPreferencesService {
|
||||
|
||||
private defaults = {
|
||||
defaults = {
|
||||
paginationSize: 25,
|
||||
supportedPageSizes: [5, 10, 15, 20],
|
||||
locale: 'en'
|
||||
};
|
||||
|
||||
@ -43,7 +44,8 @@ export class UserPreferencesService {
|
||||
const currentLocale = this.locale || this.getDefaultLocale();
|
||||
this.localeSubject = new BehaviorSubject(currentLocale);
|
||||
this.locale$ = this.localeSubject.asObservable();
|
||||
this.defaults.paginationSize = appConfig.get('pagination.size', 25);
|
||||
this.defaults.paginationSize = this.appConfig.get('pagination.size', this.defaults.paginationSize);
|
||||
this.defaults.supportedPageSizes = this.appConfig.get('pagination.supportedPageSizes', this.defaults.supportedPageSizes);
|
||||
}
|
||||
|
||||
get(property: string, defaultValue?: string): string {
|
||||
@ -76,6 +78,10 @@ export class UserPreferencesService {
|
||||
return `${this.getStoragePrefix()}__${property}`;
|
||||
}
|
||||
|
||||
getDifferentPageSizes(): number[] {
|
||||
return this.defaults.supportedPageSizes;
|
||||
}
|
||||
|
||||
set authType(value: string) {
|
||||
this.storage.setItem('AUTH_TYPE', value);
|
||||
this.apiService.reset();
|
||||
|
Loading…
x
Reference in New Issue
Block a user