49f91316b4206f92d6dfd2416366308bd60ddb91
[ccsdk/cds.git] /
1 import {Component, OnInit, ChangeDetectionStrategy} from '@angular/core';
2 import {PackagesStore} from '../../packages.store';
3 import {map} from 'rxjs/operators';
4
5 @Component({
6     selector: 'app-package-pagination',
7     templateUrl: './package-pagination.component.html',
8     styleUrls: ['./package-pagination.component.css'],
9 })
10 export class PackagePaginationComponent implements OnInit {
11     pageNumber: number;
12     totalCount: number;
13     pageSize: number;
14     previousPage: number;
15
16     constructor(private packagesStore: PackagesStore) {
17         this.pageSize = packagesStore.pageSize;
18
19         this.packagesStore.state$
20             .subscribe(state => {
21                 this.pageNumber = state.currentPage;
22                 this.totalCount = state.totalPackages;
23             });
24     }
25
26     ngOnInit() {
27     }
28
29     public getPageFromService(page) {
30         console.log('getPageFromService', page);
31         if (isNaN(page)) {
32             page = 1;
33             console.log('page change to first...', page);
34         }
35         if (this.previousPage !== page) {
36             this.packagesStore.getPage(page - 1, this.packagesStore.pageSize);
37             this.previousPage = page;
38         }
39     }
40
41 }