UNPKG

zqs-plugin-bookmark

Version:
70 lines 5.13 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.setupRouter = void 0; const controller_1 = require("./controller"); const model_1 = require("./model"); function setupRouter(app) { return __awaiter(this, void 0, void 0, function* () { const config = app.config.bookmark; const routers = []; const model = model_1.createModel(config); const controller = new controller_1.Controller(model, config); routers.push(model.routes(config.endpoint, { path: '/', methods: ['get'], controller: controller.index, tags: ['__bookmark'], summary: 'List documents', description: 'List documents', consumes: ['application/json', 'application/xml'], produces: ['application/json', 'application/xml'], parameters: [model.docSchema.paginateOptions], responses: { 200: { description: 'Successful operation', schema: model.docSchema.paginateResultWithOptions({ exclude: '_id', }), }, '4xx': model.docSchema.response4xx, '5xx': model.docSchema.response5xx, }, }, { path: '/', methods: ['post'], controller: controller.tougle, auth: { type: 'isAuthenticated', }, tags: ['__bookmark'], summary: 'Tougle bookmark', description: `Tougle bookmark`, consumes: ['application/json', 'application/xml'], produces: ['application/json', 'application/xml'], parameters: [model.docSchema.body], responses: { 201: { description: 'Bookmark added', schema: model.docSchema.result, }, 204: { description: 'Bookmark removed', }, '4xx': model.docSchema.response4xx, '5xx': model.docSchema.response5xx, }, })); return routers; }); } exports.setupRouter = setupRouter; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3JvdXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFHQSw2Q0FBMEM7QUFDMUMsbUNBQXNDO0FBRXRDLFNBQXNCLFdBQVcsQ0FBQyxHQUFROztRQUN4QyxNQUFNLE1BQU0sR0FBWSxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztRQUM1QyxNQUFNLE9BQU8sR0FBYSxFQUFFLENBQUM7UUFDN0IsTUFBTSxLQUFLLEdBQUcsbUJBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQyxNQUFNLFVBQVUsR0FBRyxJQUFJLHVCQUFVLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2pELE9BQU8sQ0FBQyxJQUFJLENBQ1YsS0FBSyxDQUFDLE1BQU0sQ0FDVixNQUFNLENBQUMsUUFBUSxFQUNmO1lBQ0UsSUFBSSxFQUFFLEdBQUc7WUFDVCxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDaEIsVUFBVSxFQUFFLFVBQVUsQ0FBQyxLQUFLO1lBQzVCLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQztZQUNwQixPQUFPLEVBQUUsZ0JBQWdCO1lBQ3pCLFdBQVcsRUFBRSxnQkFBZ0I7WUFDN0IsUUFBUSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7WUFDakQsUUFBUSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7WUFDakQsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUM7WUFDN0MsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBRTtvQkFDSCxXQUFXLEVBQUUsc0JBQXNCO29CQUNuQyxNQUFNLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQzt3QkFDaEQsT0FBTyxFQUFFLEtBQUs7cUJBQ2YsQ0FBQztpQkFDSDtnQkFDRCxLQUFLLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXO2dCQUNsQyxLQUFLLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXO2FBQ25DO1NBQ0YsRUFDRDtZQUNFLElBQUksRUFBRSxHQUFHO1lBQ1QsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDO1lBQ2pCLFVBQVUsRUFBRSxVQUFVLENBQUMsTUFBTTtZQUM3QixJQUFJLEVBQUU7Z0JBQ0osSUFBSSxFQUFFLGlCQUFpQjthQUN4QjtZQUNELElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQztZQUNwQixPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxpQkFBaUI7WUFDOUIsUUFBUSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7WUFDakQsUUFBUSxFQUFFLENBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7WUFDakQsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7WUFDbEMsU0FBUyxFQUFFO2dCQUNULEdBQUcsRUFBRTtvQkFDSCxXQUFXLEVBQUUsZ0JBQWdCO29CQUM3QixNQUFNLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNO2lCQUMvQjtnQkFDRCxHQUFHLEVBQUU7b0JBQ0gsV0FBVyxFQUFFLGtCQUFrQjtpQkFDaEM7Z0JBQ0QsS0FBSyxFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVztnQkFDbEMsS0FBSyxFQUFFLEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVzthQUNuQztTQUNGLENBQ0YsQ0FDRixDQUFDO1FBRUYsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUFBO0FBMURELGtDQTBEQyJ9