@wepublish/api
Version:
API core for we.publish.
24 lines • 1.27 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getAdminAuthors = exports.getAuthorByIdOrSlug = void 0;
const tslib_1 = require("tslib");
const error_1 = require("../../error");
const permissions_1 = require("../permissions");
const api_1 = require("../../../../permissions-api/src");
const author_queries_1 = require("./author.queries");
const getAuthorByIdOrSlug = (id, slug, authenticate, authorsByID, authorsBySlug) => {
const { roles } = authenticate();
(0, permissions_1.authorise)(api_1.CanGetAuthor, roles);
if ((!id && !slug) || (id && slug)) {
throw new error_1.UserInputError('You must provide either `id` or `slug`.');
}
return id ? authorsByID.load(id) : authorsBySlug.load(slug);
};
exports.getAuthorByIdOrSlug = getAuthorByIdOrSlug;
const getAdminAuthors = (filter, sortedField, order, cursorId, skip, take, authenticate, author) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
const { roles } = authenticate();
(0, permissions_1.authorise)(api_1.CanGetAuthors, roles);
return (0, author_queries_1.getAuthors)(filter, sortedField, order, cursorId, skip, take, author);
});
exports.getAdminAuthors = getAdminAuthors;
//# sourceMappingURL=author.private-queries.js.map