diff --git a/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.html b/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.html
index a95a7921a4..6a505b9274 100644
--- a/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.html
+++ b/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.html
@@ -33,12 +33,34 @@
{{'item.edit.bitstreams.bundle.name' | translate:{ name: bundleName } }}
-
+
+
+
+
+
+
|
diff --git a/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.scss b/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.scss
index d344b1657a..725d329936 100644
--- a/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.scss
+++ b/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.scss
@@ -18,3 +18,12 @@
.bitstream-name {
font-weight: normal;
}
+
+.pagination-control-container {
+ display: flex;
+}
+
+.pagination-control {
+ padding: 0 0.1rem;
+ vertical-align: center;
+}
diff --git a/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.ts b/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.ts
index ae6bc0876c..2a84c00c02 100644
--- a/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.ts
+++ b/src/app/item-page/edit-item-page/item-bitstreams/item-edit-bitstream-bundle/item-edit-bitstream-bundle.component.ts
@@ -26,6 +26,8 @@ import { getBitstreamDownloadRoute } from '../../../../app-routing-paths';
import { FieldChangeType } from '../../../../core/data/object-updates/field-change-type.model';
import { FieldUpdate } from '../../../../core/data/object-updates/field-update.model';
import { PaginationService } from '../../../../core/pagination/pagination.service';
+import { SortDirection } from '../../../../core/cache/models/sort-options.model';
+import { PaginationComponent } from '../../../../shared/pagination/pagination.component';
/**
* Interface storing all the information necessary to create a row in the bitstream edit table
@@ -79,6 +81,8 @@ export class ItemEditBitstreamBundleComponent implements OnInit {
*/
@ViewChild('bundleView', {static: true}) bundleView;
+ @ViewChild(PaginationComponent) paginationComponent: PaginationComponent;
+
/**
* The bundle to display bitstreams for
*/
@@ -142,6 +146,16 @@ export class ItemEditBitstreamBundleComponent implements OnInit {
*/
currentPaginationOptions$: BehaviorSubject;
+ /**
+ * The available page size options
+ */
+ pageSizeOptions: number[];
+
+ /**
+ * The currently selected page size
+ */
+ pageSize$: BehaviorSubject;
+
/**
* The self url of the bundle, also used when retrieving fieldUpdates
*/
@@ -182,11 +196,15 @@ export class ItemEditBitstreamBundleComponent implements OnInit {
pageSize: 10
});
+ this.pageSizeOptions = this.paginationOptions.pageSizeOptions;
+
this.currentPaginationOptions$ = new BehaviorSubject(this.paginationOptions);
+ this.pageSize$ = new BehaviorSubject(this.paginationOptions.pageSize);
this.paginationService.getCurrentPagination(this.paginationOptions.id, this.paginationOptions)
.subscribe((pagination) => {
this.currentPaginationOptions$.next(pagination);
+ this.pageSize$.next(pagination.pageSize);
});
}
@@ -286,4 +304,9 @@ export class ItemEditBitstreamBundleComponent implements OnInit {
// '/\s+/g' matches all occurrences of any amount of whitespace characters
return str.replace(/\s+/g, '');
}
+
+ public doPageSizeChange(pageSize: number) {
+ this.paginationComponent.doPageSizeChange(pageSize);
+ }
+
}