UNPKG

zqs-plugin-bookmark

Version:
56 lines 4.28 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Controller = void 0; const db_1 = require("zqs-core/lib/db"); const errors_1 = require("zqs-core/lib/errors"); const response_1 = require("zqs-core/lib/response"); class Controller { constructor(model, config) { this.model = model; this.config = config; this.index = (ctx) => __awaiter(this, void 0, void 0, function* () { try { const paginateResult = yield db_1.paginate(this.model, ctx); response_1.response(ctx, 200, paginateResult); } catch (e) { console.error(e); errors_1.handleError(ctx, e); } }); this.tougle = (ctx) => __awaiter(this, void 0, void 0, function* () { try { if (!ctx.request.fields) throw errors_1.Boom.badData(this.config.errors.empty); const doc = { target: ctx.request.fields.target, __auth: ctx.request.auth._id, category: ctx.request.fields.category, }; const exists = yield this.model.count(doc); if (exists) { yield this.model.remove(doc).exec(); response_1.response(ctx, 204); } else { const entity = yield this.model.create(doc); response_1.response(ctx, 201, entity); } } catch (e) { errors_1.handleError(ctx, e); } }); } } exports.Controller = Controller; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUVBLHdDQUE2RDtBQUM3RCxnREFBd0Q7QUFDeEQsb0RBQWlEO0FBR2pELE1BQWEsVUFBVTtJQUNyQixZQUFvQixLQUFhLEVBQVUsTUFBZTtRQUF0QyxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUztRQUVuRCxVQUFLLEdBQUcsQ0FBTyxHQUFhLEVBQUUsRUFBRTtZQUNyQyxJQUFJO2dCQUNGLE1BQU0sY0FBYyxHQUFHLE1BQU0sYUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ3ZELG1CQUFRLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FBQzthQUNwQztZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLG9CQUFXLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQ3JCO1FBQ0gsQ0FBQyxDQUFBLENBQUM7UUFHSyxXQUFNLEdBQUcsQ0FBTyxHQUFhLEVBQUUsRUFBRTtZQUN0QyxJQUFJO2dCQUNGLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU07b0JBQUUsTUFBTSxhQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUN0RSxNQUFNLEdBQUcsR0FBRztvQkFDVixNQUFNLEVBQUUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTTtvQkFDakMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQzVCLFFBQVEsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRO2lCQUN0QyxDQUFDO2dCQUNGLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzNDLElBQUksTUFBTSxFQUFFO29CQUNWLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3BDLG1CQUFRLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2lCQUNwQjtxQkFBTTtvQkFDTCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUM1QyxtQkFBUSxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUM7aUJBQzVCO2FBQ0Y7WUFBQyxPQUFPLENBQUMsRUFBRTtnQkFDVixvQkFBVyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUNyQjtRQUNILENBQUMsQ0FBQSxDQUFDO0lBaEMyRCxDQUFDO0NBaUMvRDtBQWxDRCxnQ0FrQ0MifQ==