UNPKG

@knovator/masters-node

Version:

NodeJS backend for @knovator/masters

3 lines (2 loc) 26.1 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("express"),t=require("joi"),r=require("mongoose"),n=require("mongoose-paginate-v2"),a=require("mongoose-unique-validator");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var i=o(e),u=o(t),s=o(n),c=o(a),l={logger:console,catchAsync:function(e){return function(t,r,n){Promise.resolve(e(t,r,n)).catch((function(e){r.status(500).json({code:"ERROR",message:e.message,data:{}})}))}},authentication:function(e,t,r){return r()},preDelete:function(e){return Promise.resolve({})},postUpdate:function(e){return Promise.resolve({})},languages:[]};function p(){p=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},a=n.iterator||"@@iterator",o=n.asyncIterator||"@@asyncIterator",i=n.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function s(e,t,r,n){var a=Object.create((t&&t.prototype instanceof d?t:d).prototype),o=new E(n||[]);return a._invoke=function(e,t,r){var n="suspendedStart";return function(a,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===a)throw o;return{value:void 0,done:!0}}for(r.method=a,r.arg=o;;){var i=r.delegate;if(i){var u=x(i,r);if(u){if(u===l)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var s=c(e,t,r);if("normal"===s.type){if(n=r.done?"completed":"suspendedYield",s.arg===l)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(n="completed",r.method="throw",r.arg=s.arg)}}}(e,r,o),a}function c(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var l={};function d(){}function f(){}function h(){}var v={};u(v,a,(function(){return this}));var y=Object.getPrototypeOf,g=y&&y(y(A([])));g&&g!==t&&r.call(g,a)&&(v=g);var m=h.prototype=d.prototype=Object.create(v);function b(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function w(e,t){function n(a,o,i,u){var s=c(e[a],e,o);if("throw"!==s.type){var l=s.arg,p=l.value;return p&&"object"==typeof p&&r.call(p,"__await")?t.resolve(p.__await).then((function(e){n("next",e,i,u)}),(function(e){n("throw",e,i,u)})):t.resolve(p).then((function(e){l.value=e,i(l)}),(function(e){return n("throw",e,i,u)}))}u(s.arg)}var a;this._invoke=function(e,r){function o(){return new t((function(t,a){n(e,r,t,a)}))}return a=a?a.then(o,o):o()}}function x(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,x(e,t),"throw"===t.method))return l;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return l}var n=c(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,l;var a=n.arg;return a?a.done?(t[e.resultName]=a.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,l):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,l)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function j(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function E(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function A(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:O}}function O(){return{value:void 0,done:!0}}return f.prototype=h,u(m,"constructor",h),u(h,"constructor",f),f.displayName=u(h,i,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,h):(e.__proto__=h,u(e,i,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},b(w.prototype),u(w.prototype,o,(function(){return this})),e.AsyncIterator=w,e.async=function(t,r,n,a,o){void 0===o&&(o=Promise);var i=new w(s(t,r,n,a),o);return e.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},b(m),u(m,i,"Generator"),u(m,a,(function(){return this})),u(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var r in e)t.push(r);return t.reverse(),function r(){for(;t.length;){var n=t.pop();if(n in e)return r.value=n,r.done=!1,r}return r.done=!0,r}},e.values=A,E.prototype={constructor:E,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(j),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return i.type="throw",i.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var a=this.tryEntries.length-1;a>=0;--a){var o=this.tryEntries[a],i=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var u=r.call(o,"catchLoc"),s=r.call(o,"finallyLoc");if(u&&s){if(this.prev<o.catchLoc)return n(o.catchLoc,!0);if(this.prev<o.finallyLoc)return n(o.finallyLoc)}else if(u){if(this.prev<o.catchLoc)return n(o.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return n(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=e,i.arg=t,o?(this.method="next",this.next=o.finallyLoc,l):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),l},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),j(r),l}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;j(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:A(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),l}},e}function d(e,t,r,n,a,o,i){try{var u=e[o](i),s=u.value}catch(e){return void r(e)}u.done?t(s):Promise.resolve(s).then(n,a)}function f(e){return function(){var t=this,r=arguments;return new Promise((function(n,a){var o=e.apply(t,r);function i(e){d(o,n,a,i,u,"next",e)}function u(e){d(o,n,a,i,u,"throw",e)}i(void 0)}))}}function h(){return h=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},h.apply(this,arguments)}var v=function(e,t){var r=0;return"ValidationError"===(null==e?void 0:e.name)&&Object.keys(null==e?void 0:e.errors).forEach((function(t){1!==r&&(e.message=e.errors[t].message),r++})),t.message=e.message,t.status(422).json({code:"ERROR",message:e.message?e.message:e})},y=function(e,t){return t.status(200).json({code:"SUCCESS",message:t.message,data:e})},g=function(e,t){return t.status(201).json({code:"SUCCESS",message:t.message,data:e})},m=function(e){return e.status(200).json({code:"SUCCESS",message:e.message,data:{}})},b=function(e,t){return e=e.replace(/\"/g,""),t.message=e,t.status(422).json({code:"ERROR",message:e,data:{}})},w=function(e){return function(){var t=f(p().mark((function t(r,n,a){return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e.validateAsync(r.body);case 3:r.body=t.sent,a(),t.next=13;break;case 7:if(t.prev=7,t.t0=t.catch(0),l.logger.error("ValidationError",t.t0),!t.t0.isJoi){t.next=12;break}return t.abrupt("return",b(t.t0.message,n));case 12:a(v(t.t0.message,n));case 13:case"end":return t.stop()}}),t,null,[[0,7]])})));return function(e,r,n){return t.apply(this,arguments)}}()};s.default.paginate.options={customLabels:{totalDocs:"itemCount",docs:"data",limit:"perPage",page:"currentPage",nextPage:"next",prevPage:"prev",totalPages:"pageCount",pagingCounter:"slNo",meta:"paginator"}};var x=new r.Schema({name:{type:String},names:l.languages.reduce((function(e,t){return e[t.code]={type:String,required:!0},e}),{}),code:{type:String,required:!0},desc:{type:String},parentId:{type:r.Schema.Types.ObjectId,ref:"master"},parentCode:{type:String},img:{type:r.Schema.Types.ObjectId,ref:"file"},isDefault:{type:Boolean,default:!1},isActive:{type:Boolean,default:!0},seq:{type:Number},webDsply:{type:String},isWebVisible:{type:Boolean},canDel:{type:Boolean,default:!0},canEdit:{type:Boolean,default:!0},deletedAt:{type:Date},extra:{type:String},createdBy:{type:r.Schema.Types.ObjectId,ref:"user"},updatedBy:[{type:r.Schema.Types.ObjectId,ref:"user"}],deletedBy:{type:r.Schema.Types.ObjectId,ref:"user"}},{timestamps:{createdAt:"createdAt",updatedAt:"updatedAt"}});x.pre("save",function(){var e=f(p().mark((function e(t){var r,n;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.parentId){e.next=6;break}return e.next=3,k.findOne({parentId:this.parentId,deletedAt:{$exists:!1}}).sort({createdAt:-1});case 3:n=(r=e.sent)&&r.seq?r.seq+1:1,this.seq||(this.seq=n);case 6:t();case 7:case"end":return e.stop()}}),e,this)})));return function(t){return e.apply(this,arguments)}}()),x.pre("findOne",(function(e){this.getQuery().deletedAt={$exists:!1},e()})),x.pre("find",(function(e){this.getQuery().deletedAt={$exists:!1},e()})),x.pre("deleteOne",{document:!0,query:!1},function(){var e=f(p().mark((function e(t){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("function"!=typeof l.preDelete){e.next=3;break}return e.next=3,l.preDelete(this);case 3:t();case 4:case"end":return e.stop()}}),e,this)})));return function(t){return e.apply(this,arguments)}}()),x.post("findOneAndUpdate",function(){var e=f(p().mark((function e(t,r){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("function"!=typeof l.postUpdate){e.next=3;break}return e.next=3,l.postUpdate(t);case 3:r();case 4:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),x.method("toJSON",(function(){var e=this.toObject();return delete e.__v,e})),x.plugin(c.default),x.plugin(s.default);var k=r.model("master",x,"master");function j(e,t,r){return E.apply(this,arguments)}function E(){return(E=f(p().mark((function e(t,r,n){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.updateMany(r,n);case 3:return e.abrupt("return",e.sent);case 6:throw e.prev=6,e.t0=e.catch(0),new Error(e.t0.message);case 9:case"end":return e.stop()}}),e,null,[[0,6]])})))).apply(this,arguments)}function A(e,t,r,n,a){return O.apply(this,arguments)}function O(){return(O=f(p().mark((function e(t,r,n,a,o){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return void 0===a&&(a={new:!0}),e.prev=1,e.next=4,t.findOneAndUpdate(r,n,a).populate(o||[]);case 4:return e.abrupt("return",e.sent);case 8:throw e.prev=8,e.t0=e.catch(1),new Error(e.t0.message);case 11:case"end":return e.stop()}}),e,null,[[1,8]])})))).apply(this,arguments)}function S(e,t){return q.apply(this,arguments)}function q(){return(q=f(p().mark((function e(t,r){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.create(r);case 3:return e.abrupt("return",e.sent);case 7:throw e.prev=7,e.t0=e.catch(0),new Error(e.t0.message);case 10:case"end":return e.stop()}}),e,null,[[0,7]])})))).apply(this,arguments)}function C(e,t,r){return _.apply(this,arguments)}function _(){return(_=f(p().mark((function e(t,r,n){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return void 0===n&&(n=[]),e.prev=1,e.next=4,t.findOne(r,n);case 4:return e.abrupt("return",e.sent);case 8:throw e.prev=8,e.t0=e.catch(1),new Error(e.t0.message);case 11:case"end":return e.stop()}}),e,null,[[1,8]])})))).apply(this,arguments)}function I(e,t){return D.apply(this,arguments)}function D(){return(D=f(p().mark((function e(t,r){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,t.where(r).countDocuments();case 3:return e.abrupt("return",e.sent);case 7:throw e.prev=7,e.t0=e.catch(0),new Error(e.t0.message);case 10:case"end":return e.stop()}}),e,null,[[0,7]])})))).apply(this,arguments)}function L(e,t,r){return $.apply(this,arguments)}function $(){return($=f(p().mark((function e(t,r,n){var a;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,a=t.paginate(r,n),e.abrupt("return",a);case 5:throw e.prev=5,e.t0=e.catch(0),new Error(e.t0.message);case 8:case"end":return e.stop()}}),e,null,[[0,5]])})))).apply(this,arguments)}var B=u.default.object({name:u.default.string().optional(),code:u.default.string().uppercase().replace(/\s+/g,"_").required(),names:u.default.object().optional(),extra:u.default.string().optional(),desc:u.default.string().allow("").optional(),parentId:u.default.string().optional(),parentCode:u.default.string().optional(),img:u.default.string().optional(),seq:u.default.number().optional(),isDefault:u.default.boolean().optional(),webDsply:u.default.string().allow("").optional(),isWebVisible:u.default.boolean().optional(),canDel:u.default.boolean().default(!0),canEdit:u.default.boolean().default(!0),createdBy:u.default.object().optional(),updatedBy:u.default.object().optional(),deletedBy:u.default.object().optional(),deletedAt:u.default.date().optional(),isActive:u.default.boolean().default(!0)}).custom(function(){var e=f(p().mark((function e(t){var r,n;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n={code:t.code},(r=t.parentId)&&(n.parentId=r),e.next=5,C(k,n);case 5:if(!e.sent){e.next=8;break}throw new Error("Record with same code is already exists");case 8:return e.abrupt("return",t);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()).unknown(!1),P=u.default.object({name:u.default.string().optional(),desc:u.default.optional(),names:u.default.object().optional(),img:u.default.string().optional().allow(null).allow(""),webDsply:u.default.string().allow("").optional(),isWebVisible:u.default.boolean().optional(),canDel:u.default.boolean().optional(),canEdit:u.default.boolean().optional(),isActive:u.default.boolean().optional(),isDefault:u.default.boolean().optional(),seq:u.default.number().optional(),updatedBy:u.default.object().optional(),extra:u.default.string().optional()}).unknown(!1),R=u.default.object({updatedBy:u.default.object().optional(),isActive:u.default.boolean().optional()}).unknown(!1),T=u.default.object({updatedBy:u.default.object().optional(),isDefault:u.default.boolean().optional()}).unknown(!1),N=u.default.object({updatedBy:u.default.object().optional(),isWebVisible:u.default.boolean().optional()}).unknown(!1),F=u.default.object({updatedBy:u.default.object().optional(),sequences:u.default.array().required()}).unknown(!1),U=u.default.object({language:u.default.string().optional(),search:u.default.string().allow("").default(""),query:u.default.object({parentId:u.default.string().optional(),parentCode:u.default.optional(),_id:u.default.string().optional(),extra:u.default.string().optional(),code:u.default.string().optional()}).default({}),options:u.default.object({sort:u.default.alternatives().try(u.default.object(),u.default.string()).optional(),populate:u.default.array().items().optional(),offset:u.default.number().optional(),page:u.default.number().optional(),limit:u.default.number().optional(),pagination:u.default.boolean().default(!1)}).default({}),isCountOnly:u.default.boolean().default(!1),isActive:u.default.boolean().optional(),all:u.default.boolean().optional(),createdBy:u.default.object().optional()}).unknown(!1),G=u.default.object({id:u.default.string().required(),updatedBy:u.default.object().optional(),deletedBy:u.default.object().optional(),deletedAt:u.default.date().optional()}).unknown(!1),V=function(){var e=f(p().mark((function e(t,r){var n;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,C(k,{_id:t});case 3:if(!(n=e.sent).parentId){e.next=7;break}return e.next=7,j(k,{parentId:n.parentId,isDefault:!0},{isDefault:!1});case 7:return e.next=9,A(k,{_id:t},r,{new:!0},{path:"img",select:"uri"});case 9:return e.abrupt("return",e.sent);case 13:throw e.prev=13,e.t0=e.catch(0),new Error(e.t0.message);case 16:case"end":return e.stop()}}),e,null,[[0,13]])})));return function(t,r){return e.apply(this,arguments)}}(),M=function(){var e=f(p().mark((function e(t){var r;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,r=t.map((function(e){return{updateOne:{filter:{_id:e.id},update:{seq:e.seq}}}})),e.next=4,k.bulkWrite(r);case 4:return e.abrupt("return",e.sent);case 8:throw e.prev=8,e.t0=e.catch(0),new Error(e.t0.message);case 11:case"end":return e.stop()}}),e,null,[[0,8]])})));return function(t){return e.apply(this,arguments)}}(),W=function(){var e=f(p().mark((function e(t,r,n,a,o,i,u,s){var c,l,d;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(void 0===o&&(o=[!0]),void 0===u&&(u=!0),void 0===s&&(s=void 0),e.prev=3,c=h({deletedAt:{$exists:!1},isActive:{$in:o}},n&&Array.isArray(s)&&s.length>0?{$and:s.map((function(e){var t;return(t={})["names."+e]={$regex:n,$options:"i"},t}))}:n?{name:{$regex:n,$options:"i"}}:{},{$or:[{code:{$regex:n.replace(/\s+/g,"_"),$options:"i"}}].concat(void 0!==a.extra?[{extra:{$regex:a.extra,$options:"i"}}]:[],void 0!==a.code?[{code:{$regex:a.code,$options:"i"}}]:[])},a.extra?{extra:{$regex:a.extra,$options:"i"}}:{},a.code?{code:{$regex:a.code,$options:"i"}}:{}),l={select:[],collation:"",customLabels:{},useEstimatedCount:!0,useCustomCountFn:!0,forceCountFn:!0,read:{},options:{},projection:"",populate:Array.isArray(i)?i:["img"],pagination:u},a.parentCode?Array.isArray(a.parentCode)?Object.assign(c,{parentCode:{$in:a.parentCode}}):Object.assign(c,{parentCode:a.parentCode}):Object.assign(c,{parentCode:{$exists:!1}}),!r){e.next=15;break}return e.next=10,I(k,c);case 10:return e.abrupt("return",d={totalRecords:d=e.sent});case 15:return void 0!==l&&(l=h({},l,t)),e.next=18,L(k,c,l);case 18:if(d=e.sent){e.next=21;break}return e.abrupt("return",!1);case 21:return e.abrupt("return",d);case 22:e.next=27;break;case 24:throw e.prev=24,e.t0=e.catch(3),new Error(e.t0.message);case 27:case"end":return e.stop()}}),e,null,[[3,24]])})));return function(t,r,n,a,o,i,u,s){return e.apply(this,arguments)}}(),J=function(e){return l.catchAsync(e)},Q=J(function(){var e=f(p().mark((function e(t,r){var n,a,o,i,u;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(n=new k(h({},t.body))).parentId||!n.isDefault){e.next=4;break}return e.next=4,j(k,{parentId:n.parentId,isDefault:!0},{isDefault:!1});case 4:return e.next=6,S(k,n);case 6:return a=e.sent,e.next=9,k.populate(a,[{path:"img",select:"uri"}]);case 9:if(!(o=e.sent)){e.next=14;break}return u=o.parentCode?"submaster":"master",r.message=null==t||null==(i=t.i18n)?void 0:i.t(u+".create"),e.abrupt("return",g(o,r));case 14:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),Y=J(function(){var e=f(p().mark((function e(t,r){var n,a,o,i,u,s;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.params.id,!(a=t.body).isDefault){e.next=9;break}return e.next=5,C(k,{_id:n});case 5:if(!(o=e.sent).parentId){e.next=9;break}return e.next=9,j(k,{parentId:o.parentId,isDefault:!0},{isDefault:!1});case 9:return e.next=11,A(k,{_id:n},a,{new:!0},{path:"img",select:"uri"});case 11:return e.next=13,k.findOne({_id:n});case 13:if(!(i=e.sent)){e.next=18;break}return s=i.parentCode?"submaster":"master",r.message=null==t||null==(u=t.i18n)?void 0:u.t(s+".update"),e.abrupt("return",y(i,r));case 18:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),X=J(function(){var e=f(p().mark((function e(t,r){var n,a,o,i,u,s;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.params.id,a=t.body,e.next=4,A(k,{_id:n},a,{new:!0},{path:"img",select:"uri"});case 4:return i=(o=e.sent).parentCode?"submaster":"master",r.message=o.isActive?null==t||null==(u=t.i18n)?void 0:u.t(i+".activate"):null==t||null==(s=t.i18n)?void 0:s.t(i+".deactivate"),e.abrupt("return",y(o,r));case 8:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),z=J(function(){var e=f(p().mark((function e(t,r){var n,a,o,i,u,s;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.params.id,a=t.body,e.next=4,A(k,{_id:n},a,{new:!0},{path:"img",select:"uri"});case 4:return i=(o=e.sent).parentCode?"submaster":"master",r.message=o.isWebVisible?null==t||null==(u=t.i18n)?void 0:u.t(i+".display"):null==t||null==(s=t.i18n)?void 0:s.t(i+".notDisplay"),e.abrupt("return",y(o,r));case 8:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),H=J(function(){var e=f(p().mark((function e(t,r){var n,a,o,i;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,V(t.params.id,t.body);case 2:return a=(n=e.sent).parentCode?"submaster":"master",r.message=n.isDefault?null==t||null==(o=t.i18n)?void 0:o.t(a+".default"):null==t||null==(i=t.i18n)?void 0:i.t(a+".notDefault"),e.abrupt("return",y(n,r));case 6:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),K=J(function(){var e=f(p().mark((function e(t,r){var n;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,M(t.body.sequences);case 2:return r.message=null==t||null==(n=t.i18n)?void 0:n.t("submaster.seq"),e.abrupt("return",y({},r));case 5:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),Z=J(function(){var e=f(p().mark((function e(t,r){var n,a,o,i,u;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=t.body.id,o=!1,e.next=4,k.findById(a);case 4:if(i=e.sent){e.next=8;break}return r.message=null==t||null==(u=t.i18n)?void 0:u.t("master.notFound"),e.abrupt("return",m(r));case 8:if(!i.parentId){e.next=14;break}return o=!0,e.next=12,k.updateMany({parentId:i.parentId,seq:{$gt:i.seq}},{$inc:{seq:-1}});case 12:e.next=16;break;case 14:return e.next=16,k.deleteMany({$or:[{parentId:i._id},{parentCode:i.code}]});case 16:return e.next=18,i.deleteOne();case 18:return r.message=null==t||null==(n=t.i18n)?void 0:n.t((o?"submaster":"master")+".delete"),e.abrupt("return",y({},r));case 20:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),ee=J(function(){var e=f(p().mark((function e(t,r){var n,a,o,i,u,s,c,d,f,v,g,b,w,x,k,j,E;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=(a=t.body.options).limit,u=a.populate,s=t.body.isCountOnly||!1,c=t.body.search||"",d=t.body.query||{},f=a.sort||{seq:1},v=h({},(o=a.page)&&i?{page:o,limit:i,sort:f}:{sort:f}),g=void 0!==t.body.all&&!0===t.body.all||!1,b=void 0!==t.body.isActive?t.body.isActive||!1:null,Array.isArray(l.languages)&&l.languages.length>0?(x=l.languages.map((function(e){return e.code})),w=t.body.language&&x.includes(t.body.language)?[t.body.language]:x):w=void 0,e.next=11,W(v,s,c,d,null===b?[!0,!1]:[b],u,!g,w);case 11:if(j=d.parentCode?"submaster":"master",!(k=e.sent)){e.next=16;break}return r.message=null==t||null==(E=t.i18n)?void 0:E.t(j+".findAll"),e.abrupt("return",y(k,r));case 16:return r.message=null==t||null==(n=t.i18n)?void 0:n.t(j+".notFound"),e.abrupt("return",m(r));case 18:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()),te=J(function(){var e=f(p().mark((function e(t,r){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",y(Array.isArray(l.languages)?l.languages:[],r));case 1:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}());require("express-list-endpoints-descriptor")(i.default);var re=i.default.Router();re.use(i.default.json());var ne=process.env.MASTERS_DESCRIPTOR_PREFIX||"",ae=function(e,t,r){return l.authentication(e,t,r)};re.get("/languages",ae,te),re.post("/create",ae,w(B),Q).descriptor(ne+"master.create"),re.put("/update/:id",ae,w(P),Y).descriptor(ne+"master.update"),re.patch("/partial-update/activate/:id",ae,w(R),X).descriptor(ne+"master.active"),re.patch("/partial-update/default/:id",ae,w(T),H).descriptor(ne+"master.default"),re.patch("/partial-update/web-visible/:id",ae,w(N),z).descriptor(ne+"master.webVisible"),re.patch("/partial-update/sequence",ae,w(F),K).descriptor(ne+"master.sequence"),re.put("/delete",ae,w(G),Z).descriptor(ne+"master.softDelete"),re.post("/list",ae,w(U),ee).descriptor(ne+"master.list"),exports.Master=k,exports.MasterSchema=x,exports.masters=function(e){var t=void 0===e?l:e,r=t.authentication,n=t.logger,a=t.catchAsync,o=t.preDelete,i=t.postUpdate,u=t.languages;return"function"==typeof a&&(l.catchAsync=a),"function"==typeof r&&(l.authentication=r),"function"==typeof n&&(l.logger=n),"function"==typeof o&&(l.preDelete=o),"function"==typeof i&&(l.postUpdate=i),Array.isArray(u)&&(l.languages=u),re}; //# sourceMappingURL=masters-node.cjs.production.min.js.map