kuzzle-sdk
Version:
Official Javascript SDK for Kuzzle
29 lines • 1.41 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.RoleSearchResult = void 0;
const Role_1 = require("../security/Role");
const SearchResultBase_1 = require("./SearchResultBase");
class RoleSearchResult extends SearchResultBase_1.SearchResultBase {
constructor(kuzzle, query, options, result) {
super(kuzzle, query, options, result);
this._searchAction = "searchRoles";
this._scrollAction = null; // scrollRoles action does not exists in Kuzzle API.
this.hits = this._result.hits.map((hit) => new Role_1.Role(this._kuzzle, hit._id, hit._source.controllers));
}
next() {
// in Kuzzle API, scrollRoles action is not available, and searchRoles allows only from and size parameters
// => we deny "scroll" and "sort" parameters.
if (this._request.scroll || this._request.sort) {
return Promise.reject(new Error("only from/size params are allowed for role search"));
}
return super.next().then((nextSearchResult) => {
if (!nextSearchResult) {
return null;
}
nextSearchResult.hits = nextSearchResult._result.hits.map((hit) => new Role_1.Role(nextSearchResult._kuzzle, hit._id, hit._source.controllers));
return nextSearchResult;
});
}
}
exports.RoleSearchResult = RoleSearchResult;
//# sourceMappingURL=Role.js.map
;