@cyberskill/shared 1.101.0 → 1.102.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +110 -47
  2. package/dist/_tsup-dts-rollup.d.ts +110 -47
  3. package/dist/configs/config.util.cjs +1 -1
  4. package/dist/configs/config.util.js +1 -1
  5. package/dist/configs/index.cjs +1 -1
  6. package/dist/configs/index.js +1 -1
  7. package/dist/index.cjs +1 -1
  8. package/dist/index.d.cts +16 -7
  9. package/dist/index.d.ts +16 -7
  10. package/dist/index.js +1 -1
  11. package/dist/nodejs/cli/cli.util.cjs +1 -1
  12. package/dist/nodejs/cli/cli.util.js +1 -1
  13. package/dist/nodejs/cli/index.cjs +1 -1
  14. package/dist/nodejs/cli/index.js +1 -1
  15. package/dist/nodejs/command/command.type.cjs +1 -1
  16. package/dist/nodejs/command/command.type.js +1 -1
  17. package/dist/nodejs/command/command.util.cjs +1 -1
  18. package/dist/nodejs/command/command.util.js +1 -1
  19. package/dist/nodejs/command/index.cjs +1 -1
  20. package/dist/nodejs/command/index.js +1 -1
  21. package/dist/nodejs/fs/fs.type.cjs +1 -0
  22. package/dist/nodejs/fs/fs.type.d.cts +1 -0
  23. package/dist/nodejs/fs/fs.type.d.ts +1 -0
  24. package/dist/nodejs/fs/fs.type.js +0 -0
  25. package/dist/nodejs/fs/fs.util.cjs +1 -1
  26. package/dist/nodejs/fs/fs.util.d.cts +8 -1
  27. package/dist/nodejs/fs/fs.util.d.ts +8 -1
  28. package/dist/nodejs/fs/fs.util.js +1 -1
  29. package/dist/nodejs/fs/index.cjs +1 -1
  30. package/dist/nodejs/fs/index.d.cts +9 -1
  31. package/dist/nodejs/fs/index.d.ts +9 -1
  32. package/dist/nodejs/fs/index.js +1 -1
  33. package/dist/nodejs/index.cjs +1 -1
  34. package/dist/nodejs/index.d.cts +16 -7
  35. package/dist/nodejs/index.d.ts +16 -7
  36. package/dist/nodejs/index.js +1 -1
  37. package/dist/nodejs/mongo/index.cjs +1 -1
  38. package/dist/nodejs/mongo/index.d.cts +7 -6
  39. package/dist/nodejs/mongo/index.d.ts +7 -6
  40. package/dist/nodejs/mongo/index.js +1 -1
  41. package/dist/nodejs/mongo/mongo.constant.cjs +1 -0
  42. package/dist/nodejs/mongo/mongo.constant.d.cts +1 -0
  43. package/dist/nodejs/mongo/mongo.constant.d.ts +1 -0
  44. package/dist/nodejs/mongo/mongo.constant.js +1 -0
  45. package/dist/nodejs/mongo/mongo.type.d.cts +1 -0
  46. package/dist/nodejs/mongo/mongo.type.d.ts +1 -0
  47. package/dist/nodejs/mongo/mongo.util.cjs +1 -0
  48. package/dist/nodejs/mongo/mongo.util.js +1 -0
  49. package/dist/nodejs/package/index.cjs +1 -1
  50. package/dist/nodejs/package/index.js +1 -1
  51. package/dist/nodejs/package/package.util.cjs +1 -1
  52. package/dist/nodejs/package/package.util.js +1 -1
  53. package/dist/nodejs/path/index.cjs +1 -1
  54. package/dist/nodejs/path/index.js +1 -1
  55. package/dist/nodejs/path/path.constant.cjs +1 -1
  56. package/dist/nodejs/path/path.constant.js +1 -1
  57. package/dist/nodejs/path/path.util.cjs +1 -1
  58. package/dist/nodejs/path/path.util.js +1 -1
  59. package/dist/react/index.cjs +1 -1
  60. package/dist/react/index.js +1 -1
  61. package/dist/react/vitest/index.cjs +1 -1
  62. package/dist/react/vitest/index.js +1 -1
  63. package/dist/react/vitest/vitest.unit.cjs +1 -1
  64. package/dist/react/vitest/vitest.unit.js +1 -1
  65. package/package.json +7 -4
  66. package/dist/nodejs/mongo/migrate.util.cjs +0 -1
  67. package/dist/nodejs/mongo/migrate.util.d.cts +0 -1
  68. package/dist/nodejs/mongo/migrate.util.d.ts +0 -1
  69. package/dist/nodejs/mongo/migrate.util.js +0 -1
  70. package/dist/nodejs/mongo/mongo.cjs +0 -1
  71. package/dist/nodejs/mongo/mongo.js +0 -1
  72. /package/dist/nodejs/mongo/{mongo.d.cts → mongo.util.d.cts} +0 -0
  73. /package/dist/nodejs/mongo/{mongo.d.ts → mongo.util.d.ts} +0 -0
@@ -1 +1 @@
1
- "use strict";function e(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function t(e,t,n,r,s,u,o){try{var a=e[u](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).then(r,s)}}function n(e){return function(){var n=this,r=arguments;return new Promise(function(s,u){var o=e.apply(n,r);function a(e){t(o,s,u,a,c,"next",e)}function c(e){t(o,s,u,a,c,"throw",e)}a(undefined)})}}function r(e,t,n){t=c(t);return g(e,m()?Reflect.construct(t,n||[],c(e).constructor):t.apply(e,n))}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function o(e,t,n){if(t)u(e.prototype,t);if(n)u(e,n);return e}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function c(e){c=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return c(e)}function i(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)v(e,t)}function l(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function E(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function d(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{f(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function h(e,t){if(e==null)return{};var n=O(e,t);var r,s;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(s=0;s<u.length;s++){r=u[s];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;n[r]=e[r]}}return n}function O(e,t){if(e==null)return{};var n={};var r=Object.keys(e);var s,u;for(u=0;u<r.length;u++){s=r[u];if(t.indexOf(s)>=0)continue;n[s]=e[s]}return n}function g(t,n){if(n&&(S(n)==="object"||typeof n==="function")){return n}return e(t)}function v(e,t){v=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return v(e,t)}function S(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(m=function(){return!!e})()}function R(e,t){var n,r,s,u={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(u=0)),u)try{if(n=1,r&&(s=a[0]&2?r["return"]:a[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,a[1])).done)return s;if(r=0,s)a=[a[0]&2,s.value];switch(a[0]){case 0:case 1:s=a;break;case 4:u.label++;return{value:a[1],done:false};case 5:u.label++;r=a[1];a=[0];continue;case 7:a=u.ops.pop();u.trys.pop();continue;default:if(!(s=u.trys,s=s.length>0&&s[s.length-1])&&(a[0]===6||a[0]===2)){u=0;continue}if(a[0]===3&&(!s||a[1]>s[0]&&a[1]<s[3])){u.label=a[1];break}if(a[0]===6&&u.label<s[1]){u.label=s[1];s=a;break}if(s&&u.label<s[2]){u.label=s[2];u.ops.push(a);break}if(s[2])u.ops.pop();u.trys.pop();continue}a=t.call(e,u)}catch(e){a=[6,e];r=0}finally{n=s=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var y=Object.create;var p=Object.defineProperty;var _=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var D=Object.getPrototypeOf,C=Object.prototype.hasOwnProperty;var T=function(e,t,n){return t in e?p(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var b=function(e,t){return p(e,"name",{value:t,configurable:!0})};var N=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},M=function(e,t,n,r){var s=true,u=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":S(t))=="object"||typeof t=="function")try{var a=function(){var s=i.value;!C.call(e,s)&&s!==n&&p(e,s,{get:function(){return t[s]},enumerable:!(r=_(t,s))||r.enumerable})};for(var c=A(t)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true)a()}catch(e){u=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(u){throw o}}}return e};var I=function(e,t,n){return n=e!=null?y(D(e)):{},M(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},P=function(e){return M(p({},"__esModule",{value:!0}),e)};var w=function(e,t,n){return T(e,(typeof t==="undefined"?"undefined":S(t))!="symbol"?t+"":t,n)};var G={};N(G,{C_Collection:function(){return ei},C_Db:function(){return er},C_Document:function(){return eu},C_Model:function(){return ea},MongoController:function(){return z},MongooseController:function(){return J},aggregatePaginate:function(){return q.default},mongo:function(){return K},mongoosePaginate:function(){return k.default},setMongoMigrateConfig:function(){return L}});module.exports=P(G);var U=require("migrate-mongo");function L(e){U.config.set(e)}b(L,"setMongoMigrateConfig");var F=require("date-fns"),j=require("mongoose"),q=I(require("mongoose-aggregate-paginate-v2"),1),k=I(require("mongoose-paginate-v2"),1),Q=require("uuid");var x={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var V=I(require("crypto-js"),1),H=I(require("slugify"),1);var Y=H.default.default||H.default;function B(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n=t||{},r=n.lower,s=r===void 0?!0:r,u=n.locale,o=u===void 0?"vi":u,a=h(n,["lower","locale"]);return Y(e,E({lower:s,locale:o},a))}b(B,"generateSlug");function W(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return V.default.SHA256(e).toString(V.default.enc.Hex).slice(0,t)}b(W,"generateShortId");var $={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":S(e))=="object"?l(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var K={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,F.format)(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?K.getDateTime():new Date;return{id:(0,Q.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:Q.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,u=e.standalone,o=u===void 0?!1:u;var a=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=a.virtual(t,n);r&&s.get(r)}),o||a.add(K.createGenericSchema(t)),a},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,u=s===void 0?!1:s,o=e.aggregate,a=o===void 0?!1:o,c=e.virtuals,i=c===void 0?[]:c,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=K.createSchema({mongoose:t,schema:r,virtuals:i});return K.applyPlugins(f,[u&&k.default,a&&q.default]),K.applyMiddlewares(f,E),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return d(E({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=n(function(e){return R(this,function(t){return[2,!$.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=n(function(t){var n;return R(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return a({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=n(function(t){return R(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!l(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}}},X=/*#__PURE__*/function(){function e(t,n){s(this,e);w(this,"collection");this.collection=t.collection(n)}o(e,[{key:"createOne",value:function e(e){var t=this;return n(function(){var n,r,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n=E({},K.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=u.sent(),r)];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return n(function(){var n,r,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n=e.map(function(e){return E({},K.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=u.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateOne(e,{$set:t})];case 1:n=u.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateMany(e,{$set:t})];case 1:n=u.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();b(X,"MongoController");var z=X,Z=/*#__PURE__*/function(){function e(t){s(this,e);w(this,"model");this.model=t}o(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return n(function(){var n,o,a;return R(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);n=u.model.findOne(e,t,r);s&&n.populate(s);return[4,n.exec()];case 1:o=c.sent();return[2,o?{success:!0,result:o}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:x.NOT_FOUND.CODE}];case 2:a=c.sent();return[2,{success:!1,message:a.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return n(function(){var n,o,a;return R(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);n=u.model.find(e,t,r);s&&n.populate(s);o={success:!0};return[4,n.exec()];case 1:return[2,(o.result=c.sent(),o)];case 2:a=c.sent();return[2,{success:!1,message:a.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.paginate(e,t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.aggregatePaginate(r.model.aggregate(e),t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.insertMany(e,t)];case 1:return[2,(n.result=u.sent().map(function(e){return l(e,j.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var n,u;return R(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,t,E({new:!0},r)).exec()];case 1:n=o.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:x.NOT_FOUND.CODE}];case 2:u=o.sent();return[2,{success:!1,message:u.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var n,u;return R(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);n={success:!0};return[4,s.model.updateMany(e,t,r).exec()];case 1:return[2,(n.result=o.sent(),n)];case 2:u=o.sent();return[2,{success:!1,message:u.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.findOneAndDelete(e,t).exec()];case 1:n=u.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(r.getModelName()," found to delete."),code:x.NOT_FOUND.CODE}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.deleteMany(e,t).exec()];case 1:n=u.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:x.NOT_FOUND.CODE}:{success:!0,result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var r=this;return n(function(){var n,s,u,o;return R(this,function(a){switch(a.label){case 0:n=new Set;s=0;a.label=1;case 1:if(!(s<10))return[3,5];u=W(e,s+t);o=!n.has(u);if(!o)return[3,3];n.add(u);return[4,r.model.exists({shortId:u})];case 2:o=!a.sent();a.label=3;case 3:if(o)return[2,{success:!0,result:u}];a.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:x.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var u,o,a,c,i,l,E,f,d,h,O;return R(this,function(g){switch(g.label){case 0:g.trys.push([0,8,,9]);u=t[e],o=b(/*#__PURE__*/function(){var e=n(function(e){var n,u,o;return R(this,function(a){switch(a.label){case 0:return[4,s.model.findOne(K.createSlugQuery(e,r,t.id))];case 1:n=a.sent();if(!n)return[2,e];u=1;a.label=2;case 2:o="".concat(e,"-").concat(u);return[4,s.model.findOne(K.createSlugQuery(o,r,t.id))];case 3:n=a.sent(),u++;a.label=4;case 4:if(n)return[3,2];a.label=5;case 5:return[2,o]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof u==="undefined"?"undefined":S(u))=="object"))return[3,5];a={};c=[];for(i in u)c.push(i);l=0;g.label=1;case 1:if(!(l<c.length))return[3,4];E=c[l];f=B(u[E]);return[4,o(f)];case 2:a[E]=g.sent();g.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:a}];case 5:d=B(u);h={success:!0};return[4,o(d)];case 6:return[2,(h.result=g.sent(),h)];case 7:return[3,9];case 8:O=g.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(O.message),code:x.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:x.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();b(Z,"MongooseController");var J=Z;var ee=require("mongodb"),et=require("mongoose");var en=/*#__PURE__*/function(e){i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(ee.Db);b(en,"C_Db");var er=en,es=/*#__PURE__*/function(e){i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(et.Document);b(es,"C_Document");var eu=es,eo=/*#__PURE__*/function(e){i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(et.Model);b(eo,"C_Model");var ea=eo,ec=/*#__PURE__*/function(e){i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(ee.Collection);b(ec,"C_Collection");var ei=ec;0&&(module.exports={C_Collection:C_Collection,C_Db:C_Db,C_Document:C_Document,C_Model:C_Model,MongoController:MongoController,MongooseController:MongooseController,aggregatePaginate:aggregatePaginate,mongo:mongo,mongoosePaginate:mongoosePaginate,setMongoMigrateConfig:setMongoMigrateConfig});
1
+ "use strict";function e(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function t(e,t,n,r,s,u,a){try{var o=e[u](a);var c=o.value}catch(e){n(e);return}if(o.done){t(c)}else{Promise.resolve(c).then(r,s)}}function n(e){return function(){var n=this,r=arguments;return new Promise(function(s,u){var a=e.apply(n,r);function o(e){t(a,s,u,o,c,"next",e)}function c(e){t(a,s,u,o,c,"throw",e)}o(undefined)})}}function r(e,t,n){t=c(t);return _(e,y()?Reflect.construct(t,n||[],c(e).constructor):t.apply(e,n))}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function a(e,t,n){if(t)u(e.prototype,t);if(n)u(e,n);return e}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function c(e){c=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return c(e)}function i(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)S(e,t)}function l(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function f(e){if(typeof WeakMap!=="function")return null;var t=new WeakMap;var n=new WeakMap;return(f=function(e){return e?n:t})(e)}function E(e,t){if(!t&&e&&e.__esModule){return e}if(e===null||typeof e!=="object"&&typeof e!=="function"){return{default:e}}var n=f(t);if(n&&n.has(e)){return n.get(e)}var r={__proto__:null};var s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e){if(u!=="default"&&Object.prototype.hasOwnProperty.call(e,u)){var a=s?Object.getOwnPropertyDescriptor(e,u):null;if(a&&(a.get||a.set)){Object.defineProperty(r,u,a)}else{r[u]=e[u]}}}r.default=e;if(n){n.set(e,r)}return r}function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function g(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{h(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function O(e,t){if(e==null)return{};var n=v(e,t);var r,s;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(s=0;s<u.length;s++){r=u[s];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;n[r]=e[r]}}return n}function v(e,t){if(e==null)return{};var n={};var r=Object.keys(e);var s,u;for(u=0;u<r.length;u++){s=r[u];if(t.indexOf(s)>=0)continue;n[s]=e[s]}return n}function _(t,n){if(n&&(p(n)==="object"||typeof n==="function")){return n}return e(t)}function S(e,t){S=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return S(e,t)}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(y=function(){return!!e})()}function R(e,t){var n,r,s,u={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=o(0),a["throw"]=o(1),a["return"]=o(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function o(e){return function(t){return c([e,t])}}function c(o){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,o[0]&&(u=0)),u)try{if(n=1,r&&(s=o[0]&2?r["return"]:o[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,o[1])).done)return s;if(r=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:u.label++;return{value:o[1],done:false};case 5:u.label++;r=o[1];o=[0];continue;case 7:o=u.ops.pop();u.trys.pop();continue;default:if(!(s=u.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){u=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){u.label=o[1];break}if(o[0]===6&&u.label<s[1]){u.label=s[1];s=o;break}if(s&&u.label<s[2]){u.label=s[2];u.ops.push(o);break}if(s[2])u.ops.pop();u.trys.pop();continue}o=t.call(e,u)}catch(e){o=[6,e];r=0}finally{n=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var m=Object.create;var D=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var C=Object.getPrototypeOf,T=Object.prototype.hasOwnProperty;var N=function(e,t,n){return t in e?D(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var M=function(e,t){return D(e,"name",{value:t,configurable:!0})};var I=function(e,t){for(var n in t)D(e,n,{get:t[n],enumerable:!0})},P=function(e,t,n,r){var s=true,u=false,a=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var o=function(){var s=i.value;!T.call(e,s)&&s!==n&&D(e,s,{get:function(){return t[s]},enumerable:!(r=A(t,s))||r.enumerable})};for(var c=b(t)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true)o()}catch(e){u=true;a=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(u){throw a}}}return e};var w=function(e,t,n){return n=e!=null?m(C(e)):{},P(t||!e||!e.__esModule?D(n,"default",{value:e,enumerable:!0}):n,e)},G=function(e){return P(D({},"__esModule",{value:!0}),e)};var U=function(e,t,n){return N(e,(typeof t==="undefined"?"undefined":p(t))!="symbol"?t+"":t,n)};var L={};I(L,{C_Collection:function(){return W},C_Db:function(){return x},C_Document:function(){return Y},C_Model:function(){return V},MONGO_MIGRATE_OPTIONS:function(){return k},MongoController:function(){return eC},MongooseController:function(){return eN},aggregatePaginate:function(){return J.default},mongo:function(){return eA},mongoosePaginate:function(){return z.default}});module.exports=G(L);var k="MONGO_MIGRATE_OPTIONS";var q=require("mongodb"),j=require("mongoose");var F=/*#__PURE__*/function(e){i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(q.Db);M(F,"C_Db");var x=F,Q=/*#__PURE__*/function(e){i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(j.Document);M(Q,"C_Document");var Y=Q,B=/*#__PURE__*/function(e){i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(j.Model);M(B,"C_Model");var V=B,H=/*#__PURE__*/function(e){i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(q.Collection);M(H,"C_Collection");var W=H;var K=require("date-fns"),$=w(require("migrate-mongo"),1),X=require("mongoose"),J=w(require("mongoose-aggregate-paginate-v2"),1),z=w(require("mongoose-paginate-v2"),1),Z=require("uuid");var ee={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var et=w(require("node-persist"),1);var en=".cyberskill-storage";var er=w(require("dotenv"),1),es=require("envalid"),eu=w(require("os"),1),ea=w(require("path"),1),eo=w(require("process"),1);er.default.config();function ec(){var e={DEBUG:eo.default.env.DEBUG||!1,CWD:eo.default.env.CWD||eo.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:eo.default.env.CYBERSKILL_STORAGE_DIRECTORY||ea.default.join(eu.default.homedir(),en)};return(0,es.cleanEnv)(e,{DEBUG:(0,es.bool)(),CWD:(0,es.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,es.str)()})}M(ec,"getEnv");var ei=w(require("chalk"),1),el=w(require("consola"),1),ef=require("graphql");var eE=ec();eE.DEBUG||(el.default.level=4);function ed(e){var t=ei.default[e];return typeof t=="function"?t:ei.default.green}M(ed,"chalkKeyword");var eh={silent:el.default.silent,level:el.default.level,fatal:el.default.fatal,error:el.default.error,warn:el.default.warn,log:el.default.log,info:el.default.info,success:el.default.success,ready:el.default.ready,start:el.default.start,box:el.default.box,debug:el.default.debug,trace:el.default.trace,verbose:el.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){el.default.box(ei.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,u=e.message;el.default.log("".concat(ei.default.gray("File:")," ").concat(ei.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&el.default.log(" ".concat(ed(n)("Rule:")," ").concat(s)),el.default.log(" ".concat(ed(n)("Message:")," ").concat(u))}),el.default.box(ed(n)("".concat(e," : ").concat(t.length))),el.default.log(ei.default.gray("─".repeat(40)))}};var eg=ec();function eO(){return ev.apply(this,arguments)}function ev(){ev=n(function(){var e;return R(this,function(t){switch(t.label){case 0:e=et.default.defaultInstance;if(e)return[3,2];return[4,et.default.init({dir:eg.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return ev.apply(this,arguments)}M(eO,"initNodePersist");var e_={get:function e(e){return n(function(){var t,n;return R(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eO()];case 1:r.sent();return[4,et.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eh.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return n(function(){var n;return R(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eO()];case 1:r.sent();return[4,et.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eh.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return n(function(){var t;return R(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eO()];case 1:n.sent();return[4,et.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eh.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return n(function(){var e,t;return R(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eO()];case 1:n.sent();return[4,et.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eh.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eh.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return n(function(){return R(this,function(t){try{return[2,"".concat(eg.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eh.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eS=w(require("crypto-js"),1),ep=w(require("slugify"),1);var ey=ep.default.default||ep.default;function eR(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n=t||{},r=n.lower,s=r===void 0?!0:r,u=n.locale,a=u===void 0?"vi":u,o=O(n,["lower","locale"]);return ey(e,d({lower:s,locale:a},o))}M(eR,"generateSlug");function em(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return eS.default.SHA256(e).toString(eS.default.enc.Hex).slice(0,t)}M(em,"generateShortId");var eD={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":p(e))=="object"?l(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var eA={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,K.format)(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?eA.getDateTime():new Date;return{id:(0,Z.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:Z.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,u=e.standalone,a=u===void 0?!1:u;var o=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=o.virtual(t,n);r&&s.get(r)}),a||o.add(eA.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,u=s===void 0?!1:s,a=e.aggregate,o=a===void 0?!1:a,c=e.virtuals,i=c===void 0?[]:c,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var E=eA.createSchema({mongoose:t,schema:r,virtuals:i});return eA.applyPlugins(E,[u&&z.default,o&&J.default]),eA.applyMiddlewares(E,f),t.model(n,E)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return g(d({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=n(function(e){return R(this,function(t){return[2,!eD.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=n(function(t){var n;return R(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=n(function(t){return R(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!l(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:{withConfig:M(/*#__PURE__*/function(){var e=n(function(e,t){var n,r,s,u;return R(this,function(a){switch(a.label){case 0:return[4,e_.get(k)];case 1:n=a.sent();if(!n)throw new Error("Missing migrate config");if($.default.config.set(n),!t)return[2,e(void 0)];return[4,$.default.database.connect()];case 2:r=a.sent(),s=r.db,u=r.client;a.label=3;case 3:a.trys.push([3,,5,7]);return[4,e({db:s,client:u})];case 4:return[2,a.sent()];case 5:return[4,u.close()];case 6:a.sent();return[7];case 7:return[2]}})});return function(t,n){return e.apply(this,arguments)}}(),"withConfig"),init:M(/*#__PURE__*/n(function(){return R(this,function(e){switch(e.label){case 0:return[4,$.default.init()];case 1:e.sent();return[2]}})}),"init"),create:M(/*#__PURE__*/function(){var e=n(function(e){return R(this,function(t){switch(t.label){case 0:return[4,eA.migrate.withConfig(function(){return $.default.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:M(/*#__PURE__*/n(function(){return R(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/E(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,eA.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t,n;return R(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,$.default.up(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:M(/*#__PURE__*/n(function(){return R(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/E(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,eA.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t,n;return R(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,$.default.down(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:M(/*#__PURE__*/n(function(){return R(this,function(e){switch(e.label){case 0:return[4,eA.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t;return R(this,function(n){switch(n.label){case 0:t=e.db;return[4,$.default.status(t)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:M(function(e){e_.set(k,e)},"config")}},eb=/*#__PURE__*/function(){function e(t,n){s(this,e);U(this,"collection");this.collection=t.collection(n)}a(e,[{key:"createOne",value:function e(e){var t=this;return n(function(){var n,r,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n=d({},eA.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=u.sent(),r)];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return n(function(){var n,r,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n=e.map(function(e){return d({},eA.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=u.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateOne(e,{$set:t})];case 1:n=u.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateMany(e,{$set:t})];case 1:n=u.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();M(eb,"MongoController");var eC=eb,eT=/*#__PURE__*/function(){function e(t){s(this,e);U(this,"model");this.model=t}a(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return n(function(){var n,a,o;return R(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);n=u.model.findOne(e,t,r);s&&n.populate(s);return[4,n.exec()];case 1:a=c.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:ee.NOT_FOUND.CODE}];case 2:o=c.sent();return[2,{success:!1,message:o.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return n(function(){var n,a,o;return R(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);n=u.model.find(e,t,r);s&&n.populate(s);a={success:!0};return[4,n.exec()];case 1:return[2,(a.result=c.sent(),a)];case 2:o=c.sent();return[2,{success:!1,message:o.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.paginate(e,t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.aggregatePaginate(r.model.aggregate(e),t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.insertMany(e,t)];case 1:return[2,(n.result=u.sent().map(function(e){return l(e,X.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var n,u;return R(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,t,d({new:!0},r)).exec()];case 1:n=a.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:ee.NOT_FOUND.CODE}];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var n,u;return R(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n={success:!0};return[4,s.model.updateMany(e,t,r).exec()];case 1:return[2,(n.result=a.sent(),n)];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.findOneAndDelete(e,t).exec()];case 1:n=u.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(r.getModelName()," found to delete."),code:ee.NOT_FOUND.CODE}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.deleteMany(e,t).exec()];case 1:n=u.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:ee.NOT_FOUND.CODE}:{success:!0,result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var r=this;return n(function(){var n,s,u,a;return R(this,function(o){switch(o.label){case 0:n=new Set;s=0;o.label=1;case 1:if(!(s<10))return[3,5];u=em(e,s+t);a=!n.has(u);if(!a)return[3,3];n.add(u);return[4,r.model.exists({shortId:u})];case 2:a=!o.sent();o.label=3;case 3:if(a)return[2,{success:!0,result:u}];o.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:ee.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var u,a,o,c,i,l,f,E,d,h,g;return R(this,function(O){switch(O.label){case 0:O.trys.push([0,8,,9]);u=t[e],a=M(/*#__PURE__*/function(){var e=n(function(e){var n,u,a;return R(this,function(o){switch(o.label){case 0:return[4,s.model.findOne(eA.createSlugQuery(e,r,t.id))];case 1:n=o.sent();if(!n)return[2,e];u=1;o.label=2;case 2:a="".concat(e,"-").concat(u);return[4,s.model.findOne(eA.createSlugQuery(a,r,t.id))];case 3:n=o.sent(),u++;o.label=4;case 4:if(n)return[3,2];o.label=5;case 5:return[2,a]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof u==="undefined"?"undefined":p(u))=="object"))return[3,5];o={};c=[];for(i in u)c.push(i);l=0;O.label=1;case 1:if(!(l<c.length))return[3,4];f=c[l];E=eR(u[f]);return[4,a(E)];case 2:o[f]=O.sent();O.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:o}];case 5:d=eR(u);h={success:!0};return[4,a(d)];case 6:return[2,(h.result=O.sent(),h)];case 7:return[3,9];case 8:g=O.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(g.message),code:ee.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:ee.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();M(eT,"MongooseController");var eN=eT;0&&(module.exports={C_Collection:C_Collection,C_Db:C_Db,C_Document:C_Document,C_Model:C_Model,MONGO_MIGRATE_OPTIONS:MONGO_MIGRATE_OPTIONS,MongoController:MongoController,MongooseController:MongooseController,aggregatePaginate:aggregatePaginate,mongo:mongo,mongoosePaginate:mongoosePaginate});
@@ -1,9 +1,4 @@
1
- export { setMongoMigrateConfig_alias_2 as setMongoMigrateConfig } from '../../_tsup-dts-rollup.cjs';
2
- export { aggregatePaginate_alias_2 as aggregatePaginate } from '../../_tsup-dts-rollup.cjs';
3
- export { mongoosePaginate_alias_2 as mongoosePaginate } from '../../_tsup-dts-rollup.cjs';
4
- export { mongo_alias_2 as mongo } from '../../_tsup-dts-rollup.cjs';
5
- export { MongoController_alias_2 as MongoController } from '../../_tsup-dts-rollup.cjs';
6
- export { MongooseController_alias_2 as MongooseController } from '../../_tsup-dts-rollup.cjs';
1
+ export { MONGO_MIGRATE_OPTIONS_alias_2 as MONGO_MIGRATE_OPTIONS } from '../../_tsup-dts-rollup.cjs';
7
2
  export { C_Db_alias_2 as C_Db } from '../../_tsup-dts-rollup.cjs';
8
3
  export { T_Filter_alias_2 as T_Filter } from '../../_tsup-dts-rollup.cjs';
9
4
  export { T_InsertOneResult_alias_2 as T_InsertOneResult } from '../../_tsup-dts-rollup.cjs';
@@ -63,3 +58,9 @@ export { I_Input_DeleteMany_alias_2 as I_Input_DeleteMany } from '../../_tsup-dt
63
58
  export { I_ReturnSuccess_alias_2 as I_ReturnSuccess } from '../../_tsup-dts-rollup.cjs';
64
59
  export { I_ReturnFailure_alias_2 as I_ReturnFailure } from '../../_tsup-dts-rollup.cjs';
65
60
  export { I_Return_alias_2 as I_Return } from '../../_tsup-dts-rollup.cjs';
61
+ export { T_MongoMigrateContext_alias_2 as T_MongoMigrateContext } from '../../_tsup-dts-rollup.cjs';
62
+ export { aggregatePaginate_alias_2 as aggregatePaginate } from '../../_tsup-dts-rollup.cjs';
63
+ export { mongoosePaginate_alias_2 as mongoosePaginate } from '../../_tsup-dts-rollup.cjs';
64
+ export { mongo_alias_2 as mongo } from '../../_tsup-dts-rollup.cjs';
65
+ export { MongoController_alias_2 as MongoController } from '../../_tsup-dts-rollup.cjs';
66
+ export { MongooseController_alias_2 as MongooseController } from '../../_tsup-dts-rollup.cjs';
@@ -1,9 +1,4 @@
1
- export { setMongoMigrateConfig_alias_2 as setMongoMigrateConfig } from '../../_tsup-dts-rollup.js';
2
- export { aggregatePaginate_alias_2 as aggregatePaginate } from '../../_tsup-dts-rollup.js';
3
- export { mongoosePaginate_alias_2 as mongoosePaginate } from '../../_tsup-dts-rollup.js';
4
- export { mongo_alias_2 as mongo } from '../../_tsup-dts-rollup.js';
5
- export { MongoController_alias_2 as MongoController } from '../../_tsup-dts-rollup.js';
6
- export { MongooseController_alias_2 as MongooseController } from '../../_tsup-dts-rollup.js';
1
+ export { MONGO_MIGRATE_OPTIONS_alias_2 as MONGO_MIGRATE_OPTIONS } from '../../_tsup-dts-rollup.js';
7
2
  export { C_Db_alias_2 as C_Db } from '../../_tsup-dts-rollup.js';
8
3
  export { T_Filter_alias_2 as T_Filter } from '../../_tsup-dts-rollup.js';
9
4
  export { T_InsertOneResult_alias_2 as T_InsertOneResult } from '../../_tsup-dts-rollup.js';
@@ -63,3 +58,9 @@ export { I_Input_DeleteMany_alias_2 as I_Input_DeleteMany } from '../../_tsup-dt
63
58
  export { I_ReturnSuccess_alias_2 as I_ReturnSuccess } from '../../_tsup-dts-rollup.js';
64
59
  export { I_ReturnFailure_alias_2 as I_ReturnFailure } from '../../_tsup-dts-rollup.js';
65
60
  export { I_Return_alias_2 as I_Return } from '../../_tsup-dts-rollup.js';
61
+ export { T_MongoMigrateContext_alias_2 as T_MongoMigrateContext } from '../../_tsup-dts-rollup.js';
62
+ export { aggregatePaginate_alias_2 as aggregatePaginate } from '../../_tsup-dts-rollup.js';
63
+ export { mongoosePaginate_alias_2 as mongoosePaginate } from '../../_tsup-dts-rollup.js';
64
+ export { mongo_alias_2 as mongo } from '../../_tsup-dts-rollup.js';
65
+ export { MongoController_alias_2 as MongoController } from '../../_tsup-dts-rollup.js';
66
+ export { MongooseController_alias_2 as MongooseController } from '../../_tsup-dts-rollup.js';
@@ -1 +1 @@
1
- function e(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function t(e,t,n,r,s,u,c){try{var a=e[u](c);var o=a.value}catch(e){n(e);return}if(a.done){t(o)}else{Promise.resolve(o).then(r,s)}}function n(e){return function(){var n=this,r=arguments;return new Promise(function(s,u){var c=e.apply(n,r);function a(e){t(c,s,u,a,o,"next",e)}function o(e){t(c,s,u,a,o,"throw",e)}a(undefined)})}}function r(e,t,n){t=o(t);return S(e,v()?Reflect.construct(t,n||[],o(e).constructor):t.apply(e,n))}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)u(e.prototype,t);if(n)u(e,n);return e}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){o=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return o(e)}function i(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)g(e,t)}function l(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function E(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function d(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{f(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function h(e,t){if(e==null)return{};var n=O(e,t);var r,s;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(s=0;s<u.length;s++){r=u[s];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;n[r]=e[r]}}return n}function O(e,t){if(e==null)return{};var n={};var r=Object.keys(e);var s,u;for(u=0;u<r.length;u++){s=r[u];if(t.indexOf(s)>=0)continue;n[s]=e[s]}return n}function S(t,n){if(n&&(m(n)==="object"||typeof n==="function")){return n}return e(t)}function g(e,t){g=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return g(e,t)}function m(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(v=function(){return!!e})()}function R(e,t){var n,r,s,u={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=a(0),c["throw"]=a(1),c["return"]=a(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function a(e){return function(t){return o([e,t])}}function o(a){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,a[0]&&(u=0)),u)try{if(n=1,r&&(s=a[0]&2?r["return"]:a[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,a[1])).done)return s;if(r=0,s)a=[a[0]&2,s.value];switch(a[0]){case 0:case 1:s=a;break;case 4:u.label++;return{value:a[1],done:false};case 5:u.label++;r=a[1];a=[0];continue;case 7:a=u.ops.pop();u.trys.pop();continue;default:if(!(s=u.trys,s=s.length>0&&s[s.length-1])&&(a[0]===6||a[0]===2)){u=0;continue}if(a[0]===3&&(!s||a[1]>s[0]&&a[1]<s[3])){u.label=a[1];break}if(a[0]===6&&u.label<s[1]){u.label=s[1];s=a;break}if(s&&u.label<s[2]){u.label=s[2];u.ops.push(a);break}if(s[2])u.ops.pop();u.trys.pop();continue}a=t.call(e,u)}catch(e){a=[6,e];r=0}finally{n=s=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var p=Object.defineProperty;var y=function(e,t,n){return t in e?p(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var _=function(e,t){return p(e,"name",{value:t,configurable:!0})};var A=function(e,t,n){return y(e,(typeof t==="undefined"?"undefined":m(t))!="symbol"?t+"":t,n)};import{config as D}from"migrate-mongo";function C(e){D.set(e)}_(C,"setMongoMigrateConfig");import{format as T}from"date-fns";import{Document as N}from"mongoose";import b from"mongoose-aggregate-paginate-v2";import M from"mongoose-paginate-v2";import{v4 as I}from"uuid";var P={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};import G from"crypto-js";import w from"slugify";var U=w.default||w;function L(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n=t||{},r=n.lower,s=r===void 0?!0:r,u=n.locale,c=u===void 0?"vi":u,a=h(n,["lower","locale"]);return U(e,E({lower:s,locale:c},a))}_(L,"generateSlug");function F(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return G.SHA256(e).toString(G.enc.Hex).slice(0,t)}_(F,"generateShortId");var j={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":m(e))=="object"?l(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var k={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return T(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?k.getDateTime():new Date;return{id:I(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:I,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,u=e.standalone,c=u===void 0?!1:u;var a=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=a.virtual(t,n);r&&s.get(r)}),c||a.add(k.createGenericSchema(t)),a},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,u=s===void 0?!1:s,c=e.aggregate,a=c===void 0?!1:c,o=e.virtuals,i=o===void 0?[]:o,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=k.createSchema({mongoose:t,schema:r,virtuals:i});return k.applyPlugins(f,[u&&M,a&&b]),k.applyMiddlewares(f,E),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return d(E({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=n(function(e){return R(this,function(t){return[2,!j.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=n(function(t){var n;return R(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return a({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=n(function(t){return R(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!l(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}}},q=/*#__PURE__*/function(){"use strict";function e(t,n){s(this,e);A(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){var t=this;return n(function(){var n,r,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n=E({},k.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=u.sent(),r)];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return n(function(){var n,r,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n=e.map(function(e){return E({},k.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=u.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateOne(e,{$set:t})];case 1:n=u.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateMany(e,{$set:t})];case 1:n=u.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();_(q,"MongoController");var Q=q,x=/*#__PURE__*/function(){"use strict";function e(t){s(this,e);A(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return n(function(){var n,c,a;return R(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);n=u.model.findOne(e,t,r);s&&n.populate(s);return[4,n.exec()];case 1:c=o.sent();return[2,c?{success:!0,result:c}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:P.NOT_FOUND.CODE}];case 2:a=o.sent();return[2,{success:!1,message:a.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return n(function(){var n,c,a;return R(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);n=u.model.find(e,t,r);s&&n.populate(s);c={success:!0};return[4,n.exec()];case 1:return[2,(c.result=o.sent(),c)];case 2:a=o.sent();return[2,{success:!1,message:a.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.paginate(e,t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.aggregatePaginate(r.model.aggregate(e),t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.insertMany(e,t)];case 1:return[2,(n.result=u.sent().map(function(e){return l(e,N)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var n,u;return R(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,t,E({new:!0},r)).exec()];case 1:n=c.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:P.NOT_FOUND.CODE}];case 2:u=c.sent();return[2,{success:!1,message:u.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var n,u;return R(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);n={success:!0};return[4,s.model.updateMany(e,t,r).exec()];case 1:return[2,(n.result=c.sent(),n)];case 2:u=c.sent();return[2,{success:!1,message:u.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.findOneAndDelete(e,t).exec()];case 1:n=u.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(r.getModelName()," found to delete."),code:P.NOT_FOUND.CODE}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return R(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.deleteMany(e,t).exec()];case 1:n=u.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:P.NOT_FOUND.CODE}:{success:!0,result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var r=this;return n(function(){var n,s,u,c;return R(this,function(a){switch(a.label){case 0:n=new Set;s=0;a.label=1;case 1:if(!(s<10))return[3,5];u=F(e,s+t);c=!n.has(u);if(!c)return[3,3];n.add(u);return[4,r.model.exists({shortId:u})];case 2:c=!a.sent();a.label=3;case 3:if(c)return[2,{success:!0,result:u}];a.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:P.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var u,c,a,o,i,l,E,f,d,h,O;return R(this,function(S){switch(S.label){case 0:S.trys.push([0,8,,9]);u=t[e],c=_(/*#__PURE__*/function(){var e=n(function(e){var n,u,c;return R(this,function(a){switch(a.label){case 0:return[4,s.model.findOne(k.createSlugQuery(e,r,t.id))];case 1:n=a.sent();if(!n)return[2,e];u=1;a.label=2;case 2:c="".concat(e,"-").concat(u);return[4,s.model.findOne(k.createSlugQuery(c,r,t.id))];case 3:n=a.sent(),u++;a.label=4;case 4:if(n)return[3,2];a.label=5;case 5:return[2,c]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof u==="undefined"?"undefined":m(u))=="object"))return[3,5];a={};o=[];for(i in u)o.push(i);l=0;S.label=1;case 1:if(!(l<o.length))return[3,4];E=o[l];f=L(u[E]);return[4,c(f)];case 2:a[E]=S.sent();S.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:a}];case 5:d=L(u);h={success:!0};return[4,c(d)];case 6:return[2,(h.result=S.sent(),h)];case 7:return[3,9];case 8:O=S.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(O.message),code:P.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return n(function(){var n,r;return R(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();_(x,"MongooseController");var V=x;import{Collection as H,Db as Y}from"mongodb";import{Document as B,Model as K}from"mongoose";var W=/*#__PURE__*/function(e){"use strict";i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(Y);_(W,"C_Db");var $=W,X=/*#__PURE__*/function(e){"use strict";i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(B);_(X,"C_Document");var z=X,Z=/*#__PURE__*/function(e){"use strict";i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(K);_(Z,"C_Model");var J=Z,ee=/*#__PURE__*/function(e){"use strict";i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(H);_(ee,"C_Collection");var et=ee;export{et as C_Collection,$ as C_Db,z as C_Document,J as C_Model,Q as MongoController,V as MongooseController,b as aggregatePaginate,k as mongo,M as mongoosePaginate,C as setMongoMigrateConfig};
1
+ function e(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function t(e,t,n,r,s,u,c){try{var o=e[u](c);var a=o.value}catch(e){n(e);return}if(o.done){t(a)}else{Promise.resolve(a).then(r,s)}}function n(e){return function(){var n=this,r=arguments;return new Promise(function(s,u){var c=e.apply(n,r);function o(e){t(c,s,u,o,a,"next",e)}function a(e){t(c,s,u,o,a,"throw",e)}o(undefined)})}}function r(e,t,n){t=a(t);return O(e,S()?Reflect.construct(t,n||[],a(e).constructor):t.apply(e,n))}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)u(e.prototype,t);if(n)u(e,n);return e}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){a=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return a(e)}function i(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)v(e,t)}function l(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function E(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function d(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{f(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function h(e,t){if(e==null)return{};var n=g(e,t);var r,s;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(s=0;s<u.length;s++){r=u[s];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;n[r]=e[r]}}return n}function g(e,t){if(e==null)return{};var n={};var r=Object.keys(e);var s,u;for(u=0;u<r.length;u++){s=r[u];if(t.indexOf(s)>=0)continue;n[s]=e[s]}return n}function O(t,n){if(n&&(m(n)==="object"||typeof n==="function")){return n}return e(t)}function v(e,t){v=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return v(e,t)}function m(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function S(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(S=function(){return!!e})()}function p(e,t){var n,r,s,u={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=o(0),c["throw"]=o(1),c["return"]=o(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function o(e){return function(t){return a([e,t])}}function a(o){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,o[0]&&(u=0)),u)try{if(n=1,r&&(s=o[0]&2?r["return"]:o[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,o[1])).done)return s;if(r=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:u.label++;return{value:o[1],done:false};case 5:u.label++;r=o[1];o=[0];continue;case 7:o=u.ops.pop();u.trys.pop();continue;default:if(!(s=u.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){u=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){u.label=o[1];break}if(o[0]===6&&u.label<s[1]){u.label=s[1];s=o;break}if(s&&u.label<s[2]){u.label=s[2];u.ops.push(o);break}if(s[2])u.ops.pop();u.trys.pop();continue}o=t.call(e,u)}catch(e){o=[6,e];r=0}finally{n=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var R=Object.defineProperty;var _=function(e,t,n){return t in e?R(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var y=function(e,t){return R(e,"name",{value:t,configurable:!0})};var A=function(e,t,n){return _(e,(typeof t==="undefined"?"undefined":m(t))!="symbol"?t+"":t,n)};var D="MONGO_MIGRATE_OPTIONS";import{Collection as b,Db as C}from"mongodb";import{Document as T,Model as N}from"mongoose";var I=/*#__PURE__*/function(e){"use strict";i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(C);y(I,"C_Db");var M=I,w=/*#__PURE__*/function(e){"use strict";i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(T);y(w,"C_Document");var P=w,G=/*#__PURE__*/function(e){"use strict";i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(N);y(G,"C_Model");var U=G,L=/*#__PURE__*/function(e){"use strict";i(t,e);function t(){s(this,t);return r(this,t,arguments)}return t}(b);y(L,"C_Collection");var k=L;import{format as F}from"date-fns";import j from"migrate-mongo";import{Document as x}from"mongoose";import q from"mongoose-aggregate-paginate-v2";import Q from"mongoose-paginate-v2";import{v4 as Y}from"uuid";var B={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};import V from"node-persist";var H=".cyberskill-storage";import K from"dotenv";import{bool as W,cleanEnv as $,str as X}from"envalid";import J from"node:os";import z from"node:path";import Z from"node:process";K.config();function ee(){var e={DEBUG:Z.env.DEBUG||!1,CWD:Z.env.CWD||Z.cwd(),CYBERSKILL_STORAGE_DIRECTORY:Z.env.CYBERSKILL_STORAGE_DIRECTORY||z.join(J.homedir(),H)};return $(e,{DEBUG:W(),CWD:X(),CYBERSKILL_STORAGE_DIRECTORY:X()})}y(ee,"getEnv");import et from"chalk";import en from"consola";import{GraphQLError as er}from"graphql";var es=ee();es.DEBUG||(en.level=4);function eu(e){var t=et[e];return typeof t=="function"?t:et.green}y(eu,"chalkKeyword");var ec={silent:en.silent,level:en.level,fatal:en.fatal,error:en.error,warn:en.warn,log:en.log,info:en.info,success:en.success,ready:en.ready,start:en.start,box:en.box,debug:en.debug,trace:en.trace,verbose:en.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){en.box(et.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,u=e.message;en.log("".concat(et.gray("File:")," ").concat(et.blue("".concat(t).concat(r?":".concat(r):"")))),s&&en.log(" ".concat(eu(n)("Rule:")," ").concat(s)),en.log(" ".concat(eu(n)("Message:")," ").concat(u))}),en.box(eu(n)("".concat(e," : ").concat(t.length))),en.log(et.gray("─".repeat(40)))}};var eo=ee();function ea(){return ei.apply(this,arguments)}function ei(){ei=n(function(){var e;return p(this,function(t){switch(t.label){case 0:e=V.defaultInstance;if(e)return[3,2];return[4,V.init({dir:eo.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return ei.apply(this,arguments)}y(ea,"initNodePersist");var el={get:function e(e){return n(function(){var t,n;return p(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ea()];case 1:r.sent();return[4,V.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ec.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return n(function(){var n;return p(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ea()];case 1:r.sent();return[4,V.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ec.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return n(function(){var t;return p(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ea()];case 1:n.sent();return[4,V.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ec.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return n(function(){var e,t;return p(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ea()];case 1:n.sent();return[4,V.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ec.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ec.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return n(function(){return p(this,function(t){try{return[2,"".concat(eo.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ec.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};import eE from"crypto-js";import ef from"slugify";var ed=ef.default||ef;function eh(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n=t||{},r=n.lower,s=r===void 0?!0:r,u=n.locale,c=u===void 0?"vi":u,o=h(n,["lower","locale"]);return ed(e,E({lower:s,locale:c},o))}y(eh,"generateSlug");function eg(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return eE.SHA256(e).toString(eE.enc.Hex).slice(0,t)}y(eg,"generateShortId");var eO={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":m(e))=="object"?l(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var ev={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return F(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?ev.getDateTime():new Date;return{id:Y(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:Y,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,u=e.standalone,c=u===void 0?!1:u;var o=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=o.virtual(t,n);r&&s.get(r)}),c||o.add(ev.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,u=s===void 0?!1:s,c=e.aggregate,o=c===void 0?!1:c,a=e.virtuals,i=a===void 0?[]:a,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=ev.createSchema({mongoose:t,schema:r,virtuals:i});return ev.applyPlugins(f,[u&&Q,o&&q]),ev.applyMiddlewares(f,E),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return d(E({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=n(function(e){return p(this,function(t){return[2,!eO.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=n(function(t){var n;return p(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=n(function(t){return p(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!l(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:{withConfig:y(/*#__PURE__*/function(){var e=n(function(e,t){var n,r,s,u;return p(this,function(c){switch(c.label){case 0:return[4,el.get(D)];case 1:n=c.sent();if(!n)throw new Error("Missing migrate config");if(j.config.set(n),!t)return[2,e(void 0)];return[4,j.database.connect()];case 2:r=c.sent(),s=r.db,u=r.client;c.label=3;case 3:c.trys.push([3,,5,7]);return[4,e({db:s,client:u})];case 4:return[2,c.sent()];case 5:return[4,u.close()];case 6:c.sent();return[7];case 7:return[2]}})});return function(t,n){return e.apply(this,arguments)}}(),"withConfig"),init:y(/*#__PURE__*/n(function(){return p(this,function(e){switch(e.label){case 0:return[4,j.init()];case 1:e.sent();return[2]}})}),"init"),create:y(/*#__PURE__*/function(){var e=n(function(e){return p(this,function(t){switch(t.label){case 0:return[4,ev.migrate.withConfig(function(){return j.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:y(/*#__PURE__*/n(function(){return p(this,function(e){switch(e.label){case 0:return[4,import("ts-node").then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,ev.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t,n;return p(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,j.up(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:y(/*#__PURE__*/n(function(){return p(this,function(e){switch(e.label){case 0:return[4,import("ts-node").then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,ev.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t,n;return p(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,j.down(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:y(/*#__PURE__*/n(function(){return p(this,function(e){switch(e.label){case 0:return[4,ev.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t;return p(this,function(n){switch(n.label){case 0:t=e.db;return[4,j.status(t)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:y(function(e){el.set(D,e)},"config")}},em=/*#__PURE__*/function(){"use strict";function e(t,n){s(this,e);A(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){var t=this;return n(function(){var n,r,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n=E({},ev.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=u.sent(),r)];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return n(function(){var n,r,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n=e.map(function(e){return E({},ev.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=u.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return n(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var r=this;return n(function(){var n,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateOne(e,{$set:t})];case 1:n=u.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var r=this;return n(function(){var n,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateMany(e,{$set:t})];case 1:n=u.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return n(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return n(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();y(em,"MongoController");var eS=em,ep=/*#__PURE__*/function(){"use strict";function e(t){s(this,e);A(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return n(function(){var n,c,o;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n=u.model.findOne(e,t,r);s&&n.populate(s);return[4,n.exec()];case 1:c=a.sent();return[2,c?{success:!0,result:c}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:B.NOT_FOUND.CODE}];case 2:o=a.sent();return[2,{success:!1,message:o.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return n(function(){var n,c,o;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n=u.model.find(e,t,r);s&&n.populate(s);c={success:!0};return[4,n.exec()];case 1:return[2,(c.result=a.sent(),c)];case 2:o=a.sent();return[2,{success:!1,message:o.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.paginate(e,t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.aggregatePaginate(r.model.aggregate(e),t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return n(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return n(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);n={success:!0};return[4,r.model.insertMany(e,t)];case 1:return[2,(n.result=u.sent().map(function(e){return l(e,x)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var n,u;return p(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,t,E({new:!0},r)).exec()];case 1:n=c.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:B.NOT_FOUND.CODE}];case 2:u=c.sent();return[2,{success:!1,message:u.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var n,u;return p(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);n={success:!0};return[4,s.model.updateMany(e,t,r).exec()];case 1:return[2,(n.result=c.sent(),n)];case 2:u=c.sent();return[2,{success:!1,message:u.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.findOneAndDelete(e,t).exec()];case 1:n=u.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(r.getModelName()," found to delete."),code:B.NOT_FOUND.CODE}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return n(function(){var n,s;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.deleteMany(e,t).exec()];case 1:n=u.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:B.NOT_FOUND.CODE}:{success:!0,result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var r=this;return n(function(){var n,s,u,c;return p(this,function(o){switch(o.label){case 0:n=new Set;s=0;o.label=1;case 1:if(!(s<10))return[3,5];u=eg(e,s+t);c=!n.has(u);if(!c)return[3,3];n.add(u);return[4,r.model.exists({shortId:u})];case 2:c=!o.sent();o.label=3;case 3:if(c)return[2,{success:!0,result:u}];o.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:B.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return n(function(){var u,c,o,a,i,l,E,f,d,h,g;return p(this,function(O){switch(O.label){case 0:O.trys.push([0,8,,9]);u=t[e],c=y(/*#__PURE__*/function(){var e=n(function(e){var n,u,c;return p(this,function(o){switch(o.label){case 0:return[4,s.model.findOne(ev.createSlugQuery(e,r,t.id))];case 1:n=o.sent();if(!n)return[2,e];u=1;o.label=2;case 2:c="".concat(e,"-").concat(u);return[4,s.model.findOne(ev.createSlugQuery(c,r,t.id))];case 3:n=o.sent(),u++;o.label=4;case 4:if(n)return[3,2];o.label=5;case 5:return[2,c]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof u==="undefined"?"undefined":m(u))=="object"))return[3,5];o={};a=[];for(i in u)a.push(i);l=0;O.label=1;case 1:if(!(l<a.length))return[3,4];E=a[l];f=eh(u[E]);return[4,c(f)];case 2:o[E]=O.sent();O.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:o}];case 5:d=eh(u);h={success:!0};return[4,c(d)];case 6:return[2,(h.result=O.sent(),h)];case 7:return[3,9];case 8:g=O.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(g.message),code:B.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return n(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:B.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();y(ep,"MongooseController");var eR=ep;export{k as C_Collection,M as C_Db,P as C_Document,U as C_Model,D as MONGO_MIGRATE_OPTIONS,eS as MongoController,eR as MongooseController,q as aggregatePaginate,ev as mongo,Q as mongoosePaginate};
@@ -0,0 +1 @@
1
+ "use strict";function e(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}var r=Object.defineProperty;var t=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var o=Object.prototype.hasOwnProperty;var u=function(e,t){for(var n in t)r(e,n,{get:t[n],enumerable:!0})},a=function(u,a,f,O){var i=true,l=false,c=undefined;if(a&&(typeof a==="undefined"?"undefined":e(a))=="object"||typeof a=="function")try{var y=function(){var e=v.value;!o.call(u,e)&&e!==f&&r(u,e,{get:function(){return a[e]},enumerable:!(O=t(a,e))||O.enumerable})};for(var p=n(a)[Symbol.iterator](),v;!(i=(v=p.next()).done);i=true)y()}catch(e){l=true;c=e}finally{try{if(!i&&p.return!=null){p.return()}}finally{if(l){throw c}}}return u};var f=function(e){return a(r({},"__esModule",{value:!0}),e)};var O={};u(O,{MONGO_MIGRATE_OPTIONS:function(){return i}});module.exports=f(O);var i="MONGO_MIGRATE_OPTIONS";0&&(module.exports={MONGO_MIGRATE_OPTIONS:MONGO_MIGRATE_OPTIONS});
@@ -0,0 +1 @@
1
+ export { MONGO_MIGRATE_OPTIONS_alias_3 as MONGO_MIGRATE_OPTIONS } from '../../_tsup-dts-rollup.cjs';
@@ -0,0 +1 @@
1
+ export { MONGO_MIGRATE_OPTIONS_alias_3 as MONGO_MIGRATE_OPTIONS } from '../../_tsup-dts-rollup.js';
@@ -0,0 +1 @@
1
+ var O="MONGO_MIGRATE_OPTIONS";export{O as MONGO_MIGRATE_OPTIONS};
@@ -57,3 +57,4 @@ export { I_Input_DeleteMany_alias_3 as I_Input_DeleteMany } from '../../_tsup-dt
57
57
  export { I_ReturnSuccess_alias_3 as I_ReturnSuccess } from '../../_tsup-dts-rollup.cjs';
58
58
  export { I_ReturnFailure_alias_3 as I_ReturnFailure } from '../../_tsup-dts-rollup.cjs';
59
59
  export { I_Return_alias_3 as I_Return } from '../../_tsup-dts-rollup.cjs';
60
+ export { T_MongoMigrateContext_alias_3 as T_MongoMigrateContext } from '../../_tsup-dts-rollup.cjs';
@@ -57,3 +57,4 @@ export { I_Input_DeleteMany_alias_3 as I_Input_DeleteMany } from '../../_tsup-dt
57
57
  export { I_ReturnSuccess_alias_3 as I_ReturnSuccess } from '../../_tsup-dts-rollup.js';
58
58
  export { I_ReturnFailure_alias_3 as I_ReturnFailure } from '../../_tsup-dts-rollup.js';
59
59
  export { I_Return_alias_3 as I_Return } from '../../_tsup-dts-rollup.js';
60
+ export { T_MongoMigrateContext_alias_3 as T_MongoMigrateContext } from '../../_tsup-dts-rollup.js';
@@ -0,0 +1 @@
1
+ "use strict";function e(e,t,r,n,s,u,a){try{var c=e[u](a);var o=c.value}catch(e){r(e);return}if(c.done){t(o)}else{Promise.resolve(o).then(n,s)}}function t(t){return function(){var r=this,n=arguments;return new Promise(function(s,u){var a=t.apply(r,n);function c(t){e(a,s,u,c,o,"next",t)}function o(t){e(a,s,u,c,o,"throw",t)}c(undefined)})}}function r(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function n(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if("value"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}function s(e,t,r){if(t)n(e.prototype,t);if(r)n(e,r);return e}function u(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function a(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function c(e){if(typeof WeakMap!=="function")return null;var t=new WeakMap;var r=new WeakMap;return(c=function(e){return e?r:t})(e)}function o(e,t){if(!t&&e&&e.__esModule){return e}if(e===null||typeof e!=="object"&&typeof e!=="function"){return{default:e}}var r=c(t);if(r&&r.has(e)){return r.get(e)}var n={__proto__:null};var s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e){if(u!=="default"&&Object.prototype.hasOwnProperty.call(e,u)){var a=s?Object.getOwnPropertyDescriptor(e,u):null;if(a&&(a.get||a.set)){Object.defineProperty(n,u,a)}else{n[u]=e[u]}}}n.default=e;if(r){r.set(e,n)}return n}function i(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){u(e,t,r[t])})}return e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(t){n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,n)}return r}function f(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{l(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function E(e,t){if(e==null)return{};var r=d(e,t);var n,s;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(s=0;s<u.length;s++){n=u[s];if(t.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;r[n]=e[n]}}return r}function d(e,t){if(e==null)return{};var r={};var n=Object.keys(e);var s,u;for(u=0;u<n.length;u++){s=n[u];if(t.indexOf(s)>=0)continue;r[s]=e[s]}return r}function g(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function h(e,t){var r,n,s,u={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=c(0),a["throw"]=c(1),a["return"]=c(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(e){return function(t){return o([e,t])}}function o(c){if(r)throw new TypeError("Generator is already executing.");while(a&&(a=0,c[0]&&(u=0)),u)try{if(r=1,n&&(s=c[0]&2?n["return"]:c[0]?n["throw"]||((s=n["return"])&&s.call(n),0):n.next)&&!(s=s.call(n,c[1])).done)return s;if(n=0,s)c=[c[0]&2,s.value];switch(c[0]){case 0:case 1:s=c;break;case 4:u.label++;return{value:c[1],done:false};case 5:u.label++;n=c[1];c=[0];continue;case 7:c=u.ops.pop();u.trys.pop();continue;default:if(!(s=u.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){u=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){u.label=c[1];break}if(c[0]===6&&u.label<s[1]){u.label=s[1];s=c;break}if(s&&u.label<s[2]){u.label=s[2];u.ops.push(c);break}if(s[2])u.ops.pop();u.trys.pop();continue}c=t.call(e,u)}catch(e){c=[6,e];n=0}finally{r=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var v=Object.create;var O=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var m=function(e,t,r){return t in e?O(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r};var _=function(e,t){return O(e,"name",{value:t,configurable:!0})};var A=function(e,t){for(var r in t)O(e,r,{get:t[r],enumerable:!0})},D=function(e,t,r,n){var s=true,u=false,a=undefined;if(t&&(typeof t==="undefined"?"undefined":g(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!p.call(e,s)&&s!==r&&O(e,s,{get:function(){return t[s]},enumerable:!(n=S(t,s))||n.enumerable})};for(var o=y(t)[Symbol.iterator](),i;!(s=(i=o.next()).done);s=true)c()}catch(e){u=true;a=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(u){throw a}}}return e};var b=function(e,t,r){return r=e!=null?v(R(e)):{},D(t||!e||!e.__esModule?O(r,"default",{value:e,enumerable:!0}):r,e)},C=function(e){return D(O({},"__esModule",{value:!0}),e)};var T=function(e,t,r){return m(e,(typeof t==="undefined"?"undefined":g(t))!="symbol"?t+"":t,r)};var N={};A(N,{MongoController:function(){return el},MongooseController:function(){return eE},aggregatePaginate:function(){return P.default},mongo:function(){return eo},mongoosePaginate:function(){return G.default}});module.exports=C(N);var M=require("date-fns"),I=b(require("migrate-mongo"),1),w=require("mongoose"),P=b(require("mongoose-aggregate-paginate-v2"),1),G=b(require("mongoose-paginate-v2"),1),U=require("uuid");var L={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var k=b(require("node-persist"),1);var q=".cyberskill-storage";var F=b(require("dotenv"),1),j=require("envalid"),x=b(require("os"),1),Q=b(require("path"),1),Y=b(require("process"),1);F.default.config();function V(){var e={DEBUG:Y.default.env.DEBUG||!1,CWD:Y.default.env.CWD||Y.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:Y.default.env.CYBERSKILL_STORAGE_DIRECTORY||Q.default.join(x.default.homedir(),q)};return(0,j.cleanEnv)(e,{DEBUG:(0,j.bool)(),CWD:(0,j.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,j.str)()})}_(V,"getEnv");var B=b(require("chalk"),1),H=b(require("consola"),1),W=require("graphql");var K=V();K.DEBUG||(H.default.level=4);function $(e){var t=B.default[e];return typeof t=="function"?t:B.default.green}_($,"chalkKeyword");var X={silent:H.default.silent,level:H.default.level,fatal:H.default.fatal,error:H.default.error,warn:H.default.warn,log:H.default.log,info:H.default.info,success:H.default.success,ready:H.default.ready,start:H.default.start,box:H.default.box,debug:H.default.debug,trace:H.default.trace,verbose:H.default.verbose,printBoxedLog:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){H.default.box(B.default.green(e));return}t.forEach(function(e){var t=e.file,n=e.position,s=e.rule,u=e.message;H.default.log("".concat(B.default.gray("File:")," ").concat(B.default.blue("".concat(t).concat(n?":".concat(n):"")))),s&&H.default.log(" ".concat($(r)("Rule:")," ").concat(s)),H.default.log(" ".concat($(r)("Message:")," ").concat(u))}),H.default.box($(r)("".concat(e," : ").concat(t.length))),H.default.log(B.default.gray("─".repeat(40)))}};var J=V();function z(){return Z.apply(this,arguments)}function Z(){Z=t(function(){var e;return h(this,function(t){switch(t.label){case 0:e=k.default.defaultInstance;if(e)return[3,2];return[4,k.default.init({dir:J.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return Z.apply(this,arguments)}_(z,"initNodePersist");var ee={get:function e(e){return t(function(){var t,r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,z()];case 1:n.sent();return[4,k.default.getItem(e)];case 2:return[2,(t=n.sent())!==null&&t!==void 0?t:null];case 3:r=n.sent();return[2,(X.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 4:return[2]}})})()},set:function e(e,r){return t(function(){var t;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,z()];case 1:n.sent();return[4,k.default.setItem(e,r)];case 2:n.sent();return[3,4];case 3:t=n.sent();X.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},remove:function e(e){return t(function(){var t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,z()];case 1:r.sent();return[4,k.default.removeItem(e)];case 2:r.sent();return[3,4];case 3:t=r.sent();X.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return t(function(){var e,t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,z()];case 1:r.sent();return[4,k.default.keys()];case 2:e=r.sent();return[2,Array.isArray(e)?e:(X.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=r.sent();return[2,(X.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return t(function(){return h(this,function(t){try{return[2,"".concat(J.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(X.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var et=b(require("crypto-js"),1),er=b(require("slugify"),1);var en=er.default.default||er.default;function es(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var r=t||{},n=r.lower,s=n===void 0?!0:n,u=r.locale,a=u===void 0?"vi":u,c=E(r,["lower","locale"]);return en(e,i({lower:s,locale:a},c))}_(es,"generateSlug");function eu(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return et.default.SHA256(e).toString(et.default.enc.Hex).slice(0,t)}_(eu,"generateShortId");var ea={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":g(e))=="object"?a(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var ec="MONGO_MIGRATE_OPTIONS";var eo={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,M.format)(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,r=t===void 0?"string":t;var n=r==="string"?eo.getDateTime():new Date;return{id:(0,U.v4)(),isDel:!1,createdAt:n,updatedAt:n}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var r=t.method,n=t.pre,s=t.post;r&&n&&e.pre(r,n),r&&s&&e.post(r,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:U.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,r=e.schema,n=e.virtuals,s=n===void 0?[]:n,u=e.standalone,a=u===void 0?!1:u;var c=new t.Schema(r,{strict:!0});return s.forEach(function(e){var t=e.name,r=e.options,n=e.get;var s=c.virtual(t,r);n&&s.get(n)}),a||c.add(eo.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,r=e.name,n=e.schema,s=e.pagination,u=s===void 0?!1:s,a=e.aggregate,c=a===void 0?!1:a,o=e.virtuals,i=o===void 0?[]:o,l=e.middlewares,f=l===void 0?[]:l;if(!r)throw new Error("Model name is required.");if(t.models[r])return t.models[r];var E=eo.createSchema({mongoose:t,schema:n,virtuals:i});return eo.applyPlugins(E,[u&&G.default,c&&P.default]),eo.applyMiddlewares(E,f),t.model(r,E)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0;return f(i({},t,r&&{id:{$ne:r}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=t(function(e){return h(this,function(t){return[2,!ea.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var r=t(function(t){var r;return h(this,function(n){switch(n.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");r={$or:e.map(function(e){return u({},e,t)})};return[4,this.constructor.findOne(r)];case 1:return[2,!n.sent()]}})});return function(e){return r.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var r=t(function(t){return h(this,function(r){if(!Array.isArray(e)||e.some(function(e){return!a(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return r.apply(this,arguments)}}()}},migrate:{withConfig:_(/*#__PURE__*/function(){var e=t(function(e,t){var r,n,s,u;return h(this,function(a){switch(a.label){case 0:return[4,ee.get(ec)];case 1:r=a.sent();if(!r)throw new Error("Missing migrate config");if(I.default.config.set(r),!t)return[2,e(void 0)];return[4,I.default.database.connect()];case 2:n=a.sent(),s=n.db,u=n.client;a.label=3;case 3:a.trys.push([3,,5,7]);return[4,e({db:s,client:u})];case 4:return[2,a.sent()];case 5:return[4,u.close()];case 6:a.sent();return[7];case 7:return[2]}})});return function(t,r){return e.apply(this,arguments)}}(),"withConfig"),init:_(/*#__PURE__*/t(function(){return h(this,function(e){switch(e.label){case 0:return[4,I.default.init()];case 1:e.sent();return[2]}})}),"init"),create:_(/*#__PURE__*/function(){var e=t(function(e){return h(this,function(t){switch(t.label){case 0:return[4,eo.migrate.withConfig(function(){return I.default.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:_(/*#__PURE__*/t(function(){return h(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/o(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,eo.migrate.withConfig(/*#__PURE__*/function(){var e=t(function(e){var t,r;return h(this,function(n){switch(n.label){case 0:t=e.db,r=e.client;return[4,I.default.up(t,r)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:_(/*#__PURE__*/t(function(){return h(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/o(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,eo.migrate.withConfig(/*#__PURE__*/function(){var e=t(function(e){var t,r;return h(this,function(n){switch(n.label){case 0:t=e.db,r=e.client;return[4,I.default.down(t,r)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:_(/*#__PURE__*/t(function(){return h(this,function(e){switch(e.label){case 0:return[4,eo.migrate.withConfig(/*#__PURE__*/function(){var e=t(function(e){var t;return h(this,function(r){switch(r.label){case 0:t=e.db;return[4,I.default.status(t)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:_(function(e){ee.set(ec,e)},"config")}},ei=/*#__PURE__*/function(){function e(t,n){r(this,e);T(this,"collection");this.collection=t.collection(n)}s(e,[{key:"createOne",value:function e(e){var r=this;return t(function(){var t,n,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t=i({},eo.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,r.collection.insertOne(t)];case 1:return[2,(n.result=u.sent(),n)];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=this;return t(function(){var t,n,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t=e.map(function(e){return i({},eo.createGenericFields(),e)});return[4,r.collection.insertMany(t)];case 1:n=u.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var r=this;return t(function(){var t,n;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.findOne(e)];case 1:t=s.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Documents retrieved successfully"};return[4,r.collection.find(e).toArray()];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Count retrieved successfully"};return[4,r.collection.countDocuments(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,r){var n=this;return t(function(){var t,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.collection.updateOne(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,r){var n=this;return t(function(){var t,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.collection.updateMany(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var r=this;return t(function(){var t,n;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.deleteOne(e)];case 1:t=s.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var r=this;return t(function(){var t,n;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.deleteMany(e)];case 1:t=s.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}}]);return e}();_(ei,"MongoController");var el=ei,ef=/*#__PURE__*/function(){function e(t){r(this,e);T(this,"model");this.model=t}s(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.findOne(e,r,n);s&&t.populate(s);return[4,t.exec()];case 1:a=o.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:L.NOT_FOUND.CODE}];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.find(e,r,n);s&&t.populate(s);a={success:!0};return[4,t.exec()];case 1:return[2,(a.result=o.sent(),a)];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.paginate(e,r)];case 1:return[2,(t.result=u.sent(),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.aggregatePaginate(n.model.aggregate(e),r)];case 1:return[2,(t.result=u.sent(),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.countDocuments(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var r=this;return t(function(){var t,n;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.create(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.insertMany(e,r)];case 1:return[2,(t.result=u.sent().map(function(e){return a(e,w.Document)?e.toObject():null}).filter(function(e){return e!==null}),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u;return h(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,r,i({new:!0},n)).exec()];case 1:t=a.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:L.NOT_FOUND.CODE}];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u;return h(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);t={success:!0};return[4,s.model.updateMany(e,r,n).exec()];case 1:return[2,(t.result=a.sent(),t)];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.model.findOneAndDelete(e,r).exec()];case 1:t=u.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"No ".concat(n.getModelName()," found to delete."),code:L.NOT_FOUND.CODE}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.model.deleteMany(e,r).exec()];case 1:t=u.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents found to delete.",code:L.NOT_FOUND.CODE}:{success:!0,result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var n=this;return t(function(){var t,s,u,a;return h(this,function(c){switch(c.label){case 0:t=new Set;s=0;c.label=1;case 1:if(!(s<10))return[3,5];u=eu(e,s+r);a=!t.has(u);if(!a)return[3,3];t.add(u);return[4,n.model.exists({shortId:u})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:u}];c.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:L.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var u,a,c,o,i,l,f,E,d,v,O;return h(this,function(S){switch(S.label){case 0:S.trys.push([0,8,,9]);u=r[e],a=_(/*#__PURE__*/function(){var e=t(function(e){var t,u,a;return h(this,function(c){switch(c.label){case 0:return[4,s.model.findOne(eo.createSlugQuery(e,n,r.id))];case 1:t=c.sent();if(!t)return[2,e];u=1;c.label=2;case 2:a="".concat(e,"-").concat(u);return[4,s.model.findOne(eo.createSlugQuery(a,n,r.id))];case 3:t=c.sent(),u++;c.label=4;case 4:if(t)return[3,2];c.label=5;case 5:return[2,a]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof u==="undefined"?"undefined":g(u))=="object"))return[3,5];c={};o=[];for(i in u)o.push(i);l=0;S.label=1;case 1:if(!(l<o.length))return[3,4];f=o[l];E=es(u[f]);return[4,a(E)];case 2:c[f]=S.sent();S.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:c}];case 5:d=es(u);v={success:!0};return[4,a(d)];case 6:return[2,(v.result=S.sent(),v)];case 7:return[3,9];case 8:O=S.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(O.message),code:L.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var r=this;return t(function(){var t,n;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.aggregate(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:L.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();_(ef,"MongooseController");var eE=ef;0&&(module.exports={MongoController:MongoController,MongooseController:MongooseController,aggregatePaginate:aggregatePaginate,mongo:mongo,mongoosePaginate:mongoosePaginate});
@@ -0,0 +1 @@
1
+ function e(e,t,n,r,s,u,a){try{var c=e[u](a);var o=c.value}catch(e){n(e);return}if(c.done){t(o)}else{Promise.resolve(o).then(r,s)}}function t(t){return function(){var n=this,r=arguments;return new Promise(function(s,u){var a=t.apply(n,r);function c(t){e(a,s,u,c,o,"next",t)}function o(t){e(a,s,u,c,o,"throw",t)}c(undefined)})}}function n(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function s(e,t,n){if(t)r(e.prototype,t);if(n)r(e,n);return e}function u(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function c(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){u(e,t,n[t])})}return e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function i(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{o(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function l(e,t){if(e==null)return{};var n=E(e,t);var r,s;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(s=0;s<u.length;s++){r=u[s];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;n[r]=e[r]}}return n}function E(e,t){if(e==null)return{};var n={};var r=Object.keys(e);var s,u;for(u=0;u<r.length;u++){s=r[u];if(t.indexOf(s)>=0)continue;n[s]=e[s]}return n}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(e,t){var n,r,s,u={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=c(0),a["throw"]=c(1),a["return"]=c(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(e){return function(t){return o([e,t])}}function o(c){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,c[0]&&(u=0)),u)try{if(n=1,r&&(s=c[0]&2?r["return"]:c[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,c[1])).done)return s;if(r=0,s)c=[c[0]&2,s.value];switch(c[0]){case 0:case 1:s=c;break;case 4:u.label++;return{value:c[1],done:false};case 5:u.label++;r=c[1];c=[0];continue;case 7:c=u.ops.pop();u.trys.pop();continue;default:if(!(s=u.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){u=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){u.label=c[1];break}if(c[0]===6&&u.label<s[1]){u.label=s[1];s=c;break}if(s&&u.label<s[2]){u.label=s[2];u.ops.push(c);break}if(s[2])u.ops.pop();u.trys.pop();continue}c=t.call(e,u)}catch(e){c=[6,e];r=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var h=Object.defineProperty;var g=function(e,t,n){return t in e?h(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var O=function(e,t){return h(e,"name",{value:t,configurable:!0})};var v=function(e,t,n){return g(e,(typeof t==="undefined"?"undefined":f(t))!="symbol"?t+"":t,n)};import{format as m}from"date-fns";import S from"migrate-mongo";import{Document as R}from"mongoose";import p from"mongoose-aggregate-paginate-v2";import y from"mongoose-paginate-v2";import{v4 as _}from"uuid";var A={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};import D from"node-persist";var T=".cyberskill-storage";import C from"dotenv";import{bool as b,cleanEnv as N,str as I}from"envalid";import M from"node:os";import w from"node:path";import G from"node:process";C.config();function P(){var e={DEBUG:G.env.DEBUG||!1,CWD:G.env.CWD||G.cwd(),CYBERSKILL_STORAGE_DIRECTORY:G.env.CYBERSKILL_STORAGE_DIRECTORY||w.join(M.homedir(),T)};return N(e,{DEBUG:b(),CWD:I(),CYBERSKILL_STORAGE_DIRECTORY:I()})}O(P,"getEnv");import U from"chalk";import L from"consola";import{GraphQLError as k}from"graphql";var F=P();F.DEBUG||(L.level=4);function Q(e){var t=U[e];return typeof t=="function"?t:U.green}O(Q,"chalkKeyword");var j={silent:L.silent,level:L.level,fatal:L.fatal,error:L.error,warn:L.warn,log:L.log,info:L.info,success:L.success,ready:L.ready,start:L.start,box:L.box,debug:L.debug,trace:L.trace,verbose:L.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){L.box(U.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,u=e.message;L.log("".concat(U.gray("File:")," ").concat(U.blue("".concat(t).concat(r?":".concat(r):"")))),s&&L.log(" ".concat(Q(n)("Rule:")," ").concat(s)),L.log(" ".concat(Q(n)("Message:")," ").concat(u))}),L.box(Q(n)("".concat(e," : ").concat(t.length))),L.log(U.gray("─".repeat(40)))}};var q=P();function x(){return Y.apply(this,arguments)}function Y(){Y=t(function(){var e;return d(this,function(t){switch(t.label){case 0:e=D.defaultInstance;if(e)return[3,2];return[4,D.init({dir:q.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return Y.apply(this,arguments)}O(x,"initNodePersist");var V={get:function e(e){return t(function(){var t,n;return d(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,x()];case 1:r.sent();return[4,D.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(j.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,n){return t(function(){var t;return d(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,x()];case 1:r.sent();return[4,D.setItem(e,n)];case 2:r.sent();return[3,4];case 3:t=r.sent();j.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},remove:function e(e){return t(function(){var t;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,x()];case 1:n.sent();return[4,D.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();j.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return t(function(){var e,t;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,x()];case 1:n.sent();return[4,D.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(j.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(j.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return t(function(){return d(this,function(t){try{return[2,"".concat(q.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(j.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};import B from"crypto-js";import H from"slugify";var K=H.default||H;function W(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n=t||{},r=n.lower,s=r===void 0?!0:r,u=n.locale,a=u===void 0?"vi":u,o=l(n,["lower","locale"]);return K(e,c({lower:s,locale:a},o))}O(W,"generateSlug");function $(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return B.SHA256(e).toString(B.enc.Hex).slice(0,t)}O($,"generateShortId");var X={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":f(e))=="object"?a(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var z="MONGO_MIGRATE_OPTIONS";var J={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return m(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?J.getDateTime():new Date;return{id:_(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:_,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,u=e.standalone,a=u===void 0?!1:u;var c=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=c.virtual(t,n);r&&s.get(r)}),a||c.add(J.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,u=s===void 0?!1:s,a=e.aggregate,c=a===void 0?!1:a,o=e.virtuals,i=o===void 0?[]:o,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=J.createSchema({mongoose:t,schema:r,virtuals:i});return J.applyPlugins(f,[u&&y,c&&p]),J.applyMiddlewares(f,E),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return i(c({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=t(function(e){return d(this,function(t){return[2,!X.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var n=t(function(t){var n;return d(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return u({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return n.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var n=t(function(t){return d(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!a(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return n.apply(this,arguments)}}()}},migrate:{withConfig:O(/*#__PURE__*/function(){var e=t(function(e,t){var n,r,s,u;return d(this,function(a){switch(a.label){case 0:return[4,V.get(z)];case 1:n=a.sent();if(!n)throw new Error("Missing migrate config");if(S.config.set(n),!t)return[2,e(void 0)];return[4,S.database.connect()];case 2:r=a.sent(),s=r.db,u=r.client;a.label=3;case 3:a.trys.push([3,,5,7]);return[4,e({db:s,client:u})];case 4:return[2,a.sent()];case 5:return[4,u.close()];case 6:a.sent();return[7];case 7:return[2]}})});return function(t,n){return e.apply(this,arguments)}}(),"withConfig"),init:O(/*#__PURE__*/t(function(){return d(this,function(e){switch(e.label){case 0:return[4,S.init()];case 1:e.sent();return[2]}})}),"init"),create:O(/*#__PURE__*/function(){var e=t(function(e){return d(this,function(t){switch(t.label){case 0:return[4,J.migrate.withConfig(function(){return S.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:O(/*#__PURE__*/t(function(){return d(this,function(e){switch(e.label){case 0:return[4,import("ts-node").then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,J.migrate.withConfig(/*#__PURE__*/function(){var e=t(function(e){var t,n;return d(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,S.up(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:O(/*#__PURE__*/t(function(){return d(this,function(e){switch(e.label){case 0:return[4,import("ts-node").then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,J.migrate.withConfig(/*#__PURE__*/function(){var e=t(function(e){var t,n;return d(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,S.down(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:O(/*#__PURE__*/t(function(){return d(this,function(e){switch(e.label){case 0:return[4,J.migrate.withConfig(/*#__PURE__*/function(){var e=t(function(e){var t;return d(this,function(n){switch(n.label){case 0:t=e.db;return[4,S.status(t)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:O(function(e){V.set(z,e)},"config")}},Z=/*#__PURE__*/function(){"use strict";function e(t,r){n(this,e);v(this,"collection");this.collection=t.collection(r)}s(e,[{key:"createOne",value:function e(e){var n=this;return t(function(){var t,r,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t=c({},J.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,n.collection.insertOne(t)];case 1:return[2,(r.result=u.sent(),r)];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var n=this;return t(function(){var t,r,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t=e.map(function(e){return c({},J.createGenericFields(),e)});return[4,n.collection.insertMany(t)];case 1:r=u.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var n=this;return t(function(){var t,r;return d(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,n.collection.findOne(e)];case 1:t=s.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var n=this;return t(function(){var t,r;return d(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Documents retrieved successfully"};return[4,n.collection.find(e).toArray()];case 1:return[2,(t.result=s.sent(),t)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var n=this;return t(function(){var t,r;return d(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Count retrieved successfully"};return[4,n.collection.countDocuments(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,n){var r=this;return t(function(){var t,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateOne(e,{$set:n})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,n){var r=this;return t(function(){var t,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.collection.updateMany(e,{$set:n})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var n=this;return t(function(){var t,r;return d(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,n.collection.deleteOne(e)];case 1:t=s.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var n=this;return t(function(){var t,r;return d(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,n.collection.deleteMany(e)];case 1:t=s.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();O(Z,"MongoController");var ee=Z,et=/*#__PURE__*/function(){"use strict";function e(t){n(this,e);v(this,"model");this.model=t}s(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return d(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.findOne(e,n,r);s&&t.populate(s);return[4,t.exec()];case 1:a=o.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:A.NOT_FOUND.CODE}];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return d(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.find(e,n,r);s&&t.populate(s);a={success:!0};return[4,t.exec()];case 1:return[2,(a.result=o.sent(),a)];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return t(function(){var t,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,r.model.paginate(e,n)];case 1:return[2,(t.result=u.sent(),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return t(function(){var t,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,r.model.aggregatePaginate(r.model.aggregate(e),n)];case 1:return[2,(t.result=u.sent(),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var n=this;return t(function(){var t,r;return d(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,n.model.countDocuments(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var n=this;return t(function(){var t,r;return d(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,n.model.create(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return t(function(){var t,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,r.model.insertMany(e,n)];case 1:return[2,(t.result=u.sent().map(function(e){return a(e,R)?e.toObject():null}).filter(function(e){return e!==null}),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u;return d(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,n,c({new:!0},r)).exec()];case 1:t=a.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:A.NOT_FOUND.CODE}];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u;return d(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);t={success:!0};return[4,s.model.updateMany(e,n,r).exec()];case 1:return[2,(t.result=a.sent(),t)];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return t(function(){var t,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.findOneAndDelete(e,n).exec()];case 1:t=u.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"No ".concat(r.getModelName()," found to delete."),code:A.NOT_FOUND.CODE}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var r=this;return t(function(){var t,s;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,r.model.deleteMany(e,n).exec()];case 1:t=u.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents found to delete.",code:A.NOT_FOUND.CODE}:{success:!0,result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var r=this;return t(function(){var t,s,u,a;return d(this,function(c){switch(c.label){case 0:t=new Set;s=0;c.label=1;case 1:if(!(s<10))return[3,5];u=$(e,s+n);a=!t.has(u);if(!a)return[3,3];t.add(u);return[4,r.model.exists({shortId:u})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:u}];c.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:A.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var u,a,c,o,i,l,E,h,g,v,m;return d(this,function(S){switch(S.label){case 0:S.trys.push([0,8,,9]);u=n[e],a=O(/*#__PURE__*/function(){var e=t(function(e){var t,u,a;return d(this,function(c){switch(c.label){case 0:return[4,s.model.findOne(J.createSlugQuery(e,r,n.id))];case 1:t=c.sent();if(!t)return[2,e];u=1;c.label=2;case 2:a="".concat(e,"-").concat(u);return[4,s.model.findOne(J.createSlugQuery(a,r,n.id))];case 3:t=c.sent(),u++;c.label=4;case 4:if(t)return[3,2];c.label=5;case 5:return[2,a]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof u==="undefined"?"undefined":f(u))=="object"))return[3,5];c={};o=[];for(i in u)o.push(i);l=0;S.label=1;case 1:if(!(l<o.length))return[3,4];E=o[l];h=W(u[E]);return[4,a(h)];case 2:c[E]=S.sent();S.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:c}];case 5:g=W(u);v={success:!0};return[4,a(g)];case 6:return[2,(v.result=S.sent(),v)];case 7:return[3,9];case 8:m=S.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(m.message),code:A.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var n=this;return t(function(){var t,r;return d(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,n.model.aggregate(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:A.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();O(et,"MongooseController");var en=et;export{ee as MongoController,en as MongooseController,p as aggregatePaginate,J as mongo,y as mongoosePaginate};