@herlinus/coloquent
Version:
Library for retrieving model objects from a JSON-API, with a fluent syntax inspired by Laravel Eloquent.
36 lines • 1.23 kB
JavaScript
import { RetrievalResponse } from "./RetrievalResponse";
export class PluralResponse extends RetrievalResponse {
constructor(query, httpClientResponse, modelType, responseBody, pageNumber = 1) {
super(query, httpClientResponse, modelType, responseBody);
this.pageNumber = pageNumber;
this.limit = query.getLimit();
}
getPageNumber() {
return Math.max(this.pageNumber, 1);
}
getData() {
if (this.limit !== undefined && Array.isArray(this.data)) {
return this.data.slice(0, this.limit);
}
else {
return this.data;
}
}
indexRequestedResources(requestedResources = []) {
for (let doc of requestedResources) {
this.indexDoc(doc);
}
}
makeModelIndex(requestedResources = []) {
for (let doc of requestedResources) {
this.indexAsModel(doc, this.modelType, this.includeTree);
}
}
makeDataArray(requestedDocs = []) {
this.data = [];
for (let doc of requestedDocs) {
this.data.push(this.modelIndex.get(doc.type).get(doc.id));
}
}
}
//# sourceMappingURL=PluralResponse.js.map