All files / lib paginated-search-response.js

54.23% Statements 32/59
100% Branches 0/0
0% Functions 0/9
54.23% Lines 32/59

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 591x 1x 1x 1x 1x                       1x 1x 1x 1x     1x 1x     1x 1x     1x 1x     1x 1x 1x 1x 1x 1x     1x 1x     1x 1x     1x 1x     1x 1x 1x 1x 1x
'use strict';
 
class PaginatedSearchResponse {
 
	constructor({ items, totalCount } = {}, itemConstructor) {
		this._items = null;
		this._totalCount = totalCount || null;

		if (!itemConstructor) {
			throw new Error('No constructor was provided');
		}

		if (items) {
			this._items = items.map(i => new itemConstructor(i));
		}
	}
 
	//region "items" Accessors
 
	getItems() {
		return this._items;
	}
 
	get items() {
		return this._items;
	}
 
	setItems(value) {
		this._items = value;
	}
 
	set items(value) {
		this._items = value;
	}
 
	//endregion
 
	//region "totalCount" Accessors
 
	getTotalCount() {
		return this._totalCount;
	}
 
	get totalCount() {
		return this._totalCount;
	}
 
	setTotalCount(value) {
		this._totalCount = value;
	}
 
	set totalCount(value) {
		this._totalCount = value;
	}
 
	//endregion
}
 
exports.PaginatedSearchResponse = PaginatedSearchResponse;