right-angled
Version:
Lightweight and easy to use angular data grids. Integrates with your markup and styles rather than generating its own.
46 lines • 4.43 kB
JavaScript
/**
* Implements {@link Pager} contract and represents list without any paging mechanics.
* @note This type is configured to use with {@link FiltersService}.
*/
export class NullObjectPager {
constructor() {
/**
* @inheritdoc
*/
this.appendedOnLoad = false;
/**
* @inheritdoc
*/
this.totalCount = 0;
/**
* @inheritdoc
*/
this.loadedCount = 0;
}
/**
* @inheritdoc
*/
processResponse(response) {
let alignedResponse;
if (Array.isArray(response)) {
alignedResponse = {
items: response,
loadedCount: response.length,
totalCount: response.length
};
}
else {
alignedResponse = response;
}
this.loadedCount = alignedResponse.loadedCount || (alignedResponse.items && alignedResponse.items.length ? alignedResponse.items.length : 0);
this.totalCount = alignedResponse.totalCount || 0;
}
/**
* @inheritdoc
*/
reset() {
this.totalCount = 0;
this.loadedCount = 0;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVsbC1vYmplY3QtcGFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yaWdodC1hbmdsZWQvc3JjL2xpYi9saXN0cy9wcm92aWRlcnMvbnVsbC1vYmplY3QtcGFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0E7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFBNUI7UUFDSTs7V0FFRztRQUNJLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBRTlCOztXQUVHO1FBQ0ksZUFBVSxHQUFHLENBQUMsQ0FBQztRQUN0Qjs7V0FFRztRQUNJLGdCQUFXLEdBQUcsQ0FBQyxDQUFDO0lBMEIzQixDQUFDO0lBekJHOztPQUVHO0lBQ0ksZUFBZSxDQUFDLFFBQW1DO1FBQ3RELElBQUksZUFBa0MsQ0FBQztRQUN2QyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDekIsZUFBZSxHQUFHO2dCQUNkLEtBQUssRUFBRSxRQUFRO2dCQUNmLFdBQVcsRUFBRSxRQUFRLENBQUMsTUFBTTtnQkFDNUIsVUFBVSxFQUFFLFFBQVEsQ0FBQyxNQUFNO2FBQ1QsQ0FBQztTQUMxQjthQUFNO1lBQ0gsZUFBZSxHQUFHLFFBQVEsQ0FBQztTQUM5QjtRQUVELElBQUksQ0FBQyxXQUFXLEdBQUcsZUFBZSxDQUFDLFdBQVcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3SSxJQUFJLENBQUMsVUFBVSxHQUFHLGVBQWUsQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFDRDs7T0FFRztJQUNJLEtBQUs7UUFDUixJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYWdlciB9IGZyb20gJy4uLy4uL2NvcmUvcGFnZXInO1xyXG5pbXBvcnQgeyBMaXN0UmVzcG9uc2UgfSBmcm9tICcuLi8uLi9jb3JlL2xpc3QtcmVzcG9uc2UnO1xyXG5cclxuLyoqXHJcbiAqIEltcGxlbWVudHMge0BsaW5rIFBhZ2VyfSBjb250cmFjdCBhbmQgcmVwcmVzZW50cyBsaXN0IHdpdGhvdXQgYW55IHBhZ2luZyBtZWNoYW5pY3MuXHJcbiAqIEBub3RlIFRoaXMgdHlwZSBpcyBjb25maWd1cmVkIHRvIHVzZSB3aXRoIHtAbGluayBGaWx0ZXJzU2VydmljZX0uXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgTnVsbE9iamVjdFBhZ2VyIGltcGxlbWVudHMgUGFnZXIge1xyXG4gICAgLyoqXHJcbiAgICAgKiBAaW5oZXJpdGRvY1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYXBwZW5kZWRPbkxvYWQgPSBmYWxzZTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEBpbmhlcml0ZG9jXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB0b3RhbENvdW50ID0gMDtcclxuICAgIC8qKlxyXG4gICAgICogQGluaGVyaXRkb2NcclxuICAgICAqL1xyXG4gICAgcHVibGljIGxvYWRlZENvdW50ID0gMDtcclxuICAgIC8qKlxyXG4gICAgICogQGluaGVyaXRkb2NcclxuICAgICAqL1xyXG4gICAgcHVibGljIHByb2Nlc3NSZXNwb25zZShyZXNwb25zZTogTGlzdFJlc3BvbnNlPGFueT4gfCBhbnlbXSk6IHZvaWQge1xyXG4gICAgICAgIGxldCBhbGlnbmVkUmVzcG9uc2U6IExpc3RSZXNwb25zZTxhbnk+O1xyXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlc3BvbnNlKSkge1xyXG4gICAgICAgICAgICBhbGlnbmVkUmVzcG9uc2UgPSB7XHJcbiAgICAgICAgICAgICAgICBpdGVtczogcmVzcG9uc2UsXHJcbiAgICAgICAgICAgICAgICBsb2FkZWRDb3VudDogcmVzcG9uc2UubGVuZ3RoLFxyXG4gICAgICAgICAgICAgICAgdG90YWxDb3VudDogcmVzcG9uc2UubGVuZ3RoXHJcbiAgICAgICAgICAgIH0gYXMgTGlzdFJlc3BvbnNlPGFueT47XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgYWxpZ25lZFJlc3BvbnNlID0gcmVzcG9uc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmxvYWRlZENvdW50ID0gYWxpZ25lZFJlc3BvbnNlLmxvYWRlZENvdW50IHx8IChhbGlnbmVkUmVzcG9uc2UuaXRlbXMgJiYgYWxpZ25lZFJlc3BvbnNlLml0ZW1zLmxlbmd0aCA/IGFsaWduZWRSZXNwb25zZS5pdGVtcy5sZW5ndGggOiAwKTtcclxuICAgICAgICB0aGlzLnRvdGFsQ291bnQgPSBhbGlnbmVkUmVzcG9uc2UudG90YWxDb3VudCB8fCAwO1xyXG4gICAgfVxyXG4gICAgLyoqXHJcbiAgICAgKiBAaW5oZXJpdGRvY1xyXG4gICAgICovXHJcbiAgICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy50b3RhbENvdW50ID0gMDtcclxuICAgICAgICB0aGlzLmxvYWRlZENvdW50ID0gMDtcclxuICAgIH1cclxufVxyXG4iXX0=