@cyberskill/shared 1.164.0 → 1.166.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.
- package/dist/_tsup-dts-rollup.d.cts +4 -1
- package/dist/_tsup-dts-rollup.d.ts +4 -1
- package/dist/config/config.util.cjs +1 -1
- package/dist/config/config.util.js +1 -1
- package/dist/config/index.cjs +1 -1
- package/dist/config/index.js +1 -1
- package/dist/node/cli/cli.util.cjs +1 -1
- package/dist/node/cli/cli.util.js +1 -1
- package/dist/node/cli/index.cjs +1 -1
- package/dist/node/cli/index.js +1 -1
- package/dist/node/command/command.util.cjs +1 -1
- package/dist/node/command/command.util.js +1 -1
- package/dist/node/command/index.cjs +1 -1
- package/dist/node/command/index.js +1 -1
- package/dist/node/express/express.util.cjs +1 -1
- package/dist/node/express/express.util.js +1 -1
- package/dist/node/express/index.cjs +1 -1
- package/dist/node/express/index.js +1 -1
- package/dist/node/index.cjs +1 -1
- package/dist/node/index.js +1 -1
- package/dist/node/mongo/index.cjs +1 -1
- package/dist/node/mongo/index.js +1 -1
- package/dist/node/mongo/mongo.util.cjs +1 -1
- package/dist/node/mongo/mongo.util.js +1 -1
- package/dist/node/package/index.cjs +1 -1
- package/dist/node/package/index.js +1 -1
- package/dist/node/package/package.util.cjs +1 -1
- package/dist/node/package/package.util.js +1 -1
- package/dist/node/path/index.cjs +1 -1
- package/dist/node/path/index.js +1 -1
- package/dist/node/path/path.constant.cjs +1 -1
- package/dist/node/path/path.constant.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.js +1 -1
- package/dist/react/vitest/index.cjs +1 -1
- package/dist/react/vitest/index.js +1 -1
- package/dist/react/vitest/vitest.unit.cjs +1 -1
- package/dist/react/vitest/vitest.unit.js +1 -1
- package/package.json +4 -4
- package/public/renovate.base.json +6 -3
- package/public/wiki/clone-project.md +99 -0
- package/public/wiki/setup-mongo.md +29 -0
- package/public/wiki/setup-nginx.md +55 -0
- package/public/wiki/setup-node.md +29 -0
- package/public/wiki/setup-pm2.md +27 -0
- package/public/wiki/setup-redis.md +17 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e,t,n,r,s,a,u){try{var c=e[a](u);var o=c.value}catch(e){n(e);return}if(c.done){t(o)}else{Promise.resolve(o).then(r,s)}}function a(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var u=e.apply(t,n);function c(e){s(u,r,a,c,o,"next",e)}function o(e){s(u,r,a,c,o,"throw",e)}c(undefined)})}}function u(e,t,n){t=f(t);return S(e,b()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function c(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function o(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 i(e,t,n){if(t)o(e.prototype,t);if(n)o(e,n);return e}function l(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 f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function d(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)D(e,t)}function E(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function p(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function h(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var u,c;try{for(n=n.call(e);!(s=(u=n.next()).done);s=true){r.push(u.value);if(t&&r.length===t)break}}catch(e){a=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw c}}return r}function v(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function m(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function y(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){l(e,t,n[t])})}return e}function g(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 O(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{g(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function S(e,t){if(t&&(N(t)==="object"||typeof t==="function")){return t}return r(e)}function D(e,t){D=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return D(e,t)}function C(e,n){return t(e)||h(e,n)||I(e,n)||v()}function _(e){return n(e)||p(e)||I(e)||m()}function N(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function I(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function b(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(b=function(){return!!e})()}function T(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},u=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return u.next=c(0),u["throw"]=c(1),u["return"]=c(2),typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(e){return function(t){return o([e,t])}}function o(c){if(n)throw new TypeError("Generator is already executing.");while(u&&(u=0,c[0]&&(a=0)),a)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:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){a.label=c[1];break}if(c[0]===6&&a.label<s[1]){a.label=s[1];s=c;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(c);break}if(s[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}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 A=Object.create;var R=Object.defineProperty;var P=Object.getOwnPropertyDescriptor;var G=Object.getOwnPropertyNames;var M=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var L=function(e,t,n){return t in e?R(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var U=function(e,t){return R(e,"name",{value:t,configurable:!0})};var k=function(e,t){for(var n in t)R(e,n,{get:t[n],enumerable:!0})},j=function(e,t,n,r){var s=true,a=false,u=undefined;if(t&&(typeof t==="undefined"?"undefined":N(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!w.call(e,s)&&s!==n&&R(e,s,{get:function(){return t[s]},enumerable:!(r=P(t,s))||r.enumerable})};for(var o=G(t)[Symbol.iterator](),i;!(s=(i=o.next()).done);s=true)c()}catch(e){a=true;u=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(a){throw u}}}return e};var F=function(e,t,n){return n=e!=null?A(M(e)):{},j(t||!e||!e.__esModule?R(n,"default",{value:e,enumerable:!0}):n,e)},x=function(e){return j(R({},"__esModule",{value:!0}),e)};var V=function(e,t,n){return L(e,(typeof t==="undefined"?"undefined":N(t))!="symbol"?t+"":t,n)};var q={};k(q,{C_Collection:function(){return Z},C_Db:function(){return H},C_Document:function(){return J},C_Model:function(){return X},MONGO_MIGRATE_OPTIONS:function(){return Y},MongoController:function(){return t8},MongooseController:function(){return ne},aggregatePaginate:function(){return er.default},mongo:function(){return t7},mongoosePaginate:function(){return es.default}});module.exports=x(q);var Y="MONGO_MIGRATE_OPTIONS";var B=require("mongodb"),K=require("mongoose");var Q=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(B.Db);U(Q,"C_Db");var H=Q,W=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(K.Document);U(W,"C_Document");var J=W,$=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(K.Model);U($,"C_Model");var X=$,z=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(B.Collection);U(z,"C_Collection");var Z=z;var ee=require("date-fns"),et=F(require("migrate-mongo"),1),en=require("mongoose"),er=F(require("mongoose-aggregate-paginate-v2"),1),es=F(require("mongoose-paginate-v2"),1),ea=require("uuid");var eu={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 ec=F(require("unorm"),1);var eo={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},ei=Object.entries(eo).reduce(function(e,t){var n=C(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function el(e){return(typeof e==="undefined"?"undefined":N(e))=="object"&&e!==null&&!Array.isArray(e)}U(el,"isObject");var ef=F(require("crypto-js"),1),ed=F(require("slugify"),1);var eE=ed.default.default||ed.default;function ep(e,t){var n=U(function(e){var n,r;return eE(e!==null&&e!==void 0?e:"",y({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))},"slugifyWithOptions");if(el(e)){var r={};var s=true,a=false,u=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),o;!(s=(o=c.next()).done);s=true){var i=C(o.value,2),l=i[0],f=i[1];r[l]=n(f)}}catch(e){a=true;u=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(a){throw u}}}return r}return n(e)}U(ep,"generateSlug");function eh(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return ef.default.SHA256(e).toString(ef.default.enc.Hex).slice(0,t)}U(eh,"generateShortId");var ev={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":N(e))=="object"?E(e,Date)?!1:E(e,Map)||E(e,Set)?e.size===0:E(e,WeakMap)||E(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};var em=F(require("fs-extra"),1),ey=F(require("path"),1);var eg=em.default,eO=eg.lstatSync,eS=eg.readdirSync,eD=eg.mkdirSync,eC=eg.readFileSync,e_=eg.unlinkSync,eN=eg.statSync,eI=em.default.readJsonSync;function eb(e,t,n){em.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}U(eb,"writeFileSync");function eT(e,t,n){em.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}U(eT,"appendFileSync");function eA(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return em.default.pathExistsSync(e)})}U(eA,"pathExistsSync");var eR=function(e){return e.Error="error",e.Warning="warning",e}({});var eP=F(require("chalk"),1),eG=F(require("consola"),1),eM=require("graphql");var ew=".cyberskill-storage";var eL=F(require("@dotenvx/dotenvx"),1),eU=require("envalid"),ek=F(require("os"),1),ej=F(require("path"),1),eF=F(require("process"),1);var ex=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var eV=!1;function eq(){eF.default.env.NODE_ENV!==ex.PRODUCTION&&!eV&&(eL.default.config(),eV=!0)}U(eq,"loadEnvFile");function eY(){eq();var e=(0,eU.cleanEnv)(eF.default.env,{CWD:(0,eU.str)({default:eF.default.cwd()}),DEBUG:(0,eU.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,eU.str)({default:ej.default.join(ek.default.homedir(),ew)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}U(eY,"getEnv");var eB=eY();eB.DEBUG||(eG.default.level=4);function eK(e){var t=eP.default[e];return typeof t=="function"?t:eP.default.green}U(eK,"chalkKeyword");var eQ={silent:eG.default.silent,level:eG.default.level,fatal:eG.default.fatal,error:eG.default.error,warn:eG.default.warn,log:eG.default.log,info:eG.default.info,success:eG.default.success,ready:eG.default.ready,start:eG.default.start,box:eG.default.box,debug:eG.default.debug,trace:eG.default.trace,verbose:eG.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)){eG.default.box(eP.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eG.default.log("".concat(eP.default.gray("File:")," ").concat(eP.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eG.default.log(" ".concat(eK(n)("Rule:")," ").concat(s)),eG.default.log(" ".concat(eK(n)("Message:")," ").concat(a))}),eG.default.box(eK(n)("".concat(e," : ").concat(t.length))),eG.default.log(eP.default.gray("─".repeat(40)))}};function eH(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,s=r===void 0?!0:r,a=n.returnValue,u=n.callback,c=E(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return s&&eQ.error(c.message),u&&typeof u=="function"&&u(c),a||{success:!1,message:c.message,code:eu.INTERNAL_SERVER_ERROR.CODE}}U(eH,"catchError");var eW=F(require("fs-extra"),1);var eJ=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var e$=require("child_process"),eX=F(require("process"),1),ez=F(require("util"),1);var eZ=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var e0=F(require("node-fetch"),1);var e1=eY();function e2(e){return a(function(){var t,n,r,s;return T(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,e0.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:s=a.sent();return[2,eH(s)];case 4:return[2]}})})()}U(e2,"getLatestPackageVersion");function e4(e){return a(function(){var t,n,r,s,a,u,c,o,i,l,f,d,E,p,h,v,m,y,g,O,S,D,C,_;return T(this,function(N){switch(N.label){case 0:N.trys.push([0,2,,3]);if(!e){if(eA(t4.PACKAGE_JSON)){t=eI(t4.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,s=t.version,a=s===void 0?"":s;return[2,{success:!0,result:{name:r,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:t4.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!eA(t4.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eZ.DEPENDENCY,isDevDependency:e.type===eZ.DEV_DEPENDENCY,installedPath:"",file:{}}}];u=eI(t4.PACKAGE_JSON),c=u.name,o=u.version,i=o===void 0?"":o,l=u.dependencies,f=l===void 0?{}:l,d=u.devDependencies,E=d===void 0?{}:d;if(e.name===c)return[2,{success:!0,result:{name:c,currentVersion:i,latestVersion:i,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===eZ.DEPENDENCY,isDevDependency:e.type===eZ.DEV_DEPENDENCY,installedPath:t4.PACKAGE_JSON,file:u}}];p=e.name in f,h=e.name in E;return[4,e2(e.name)];case 1:v=N.sent();if(!v.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:p,isDevDependency:h,installedPath:"",file:{}}}];if(!p&&!h)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:v.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eZ.DEPENDENCY,isDevDependency:e.type===eZ.DEV_DEPENDENCY,installedPath:"",file:{}}}];g=(y=(m=f[e.name])!==null&&m!==void 0?m:E[e.name])!==null&&y!==void 0?y:"",O=tv(e1.CWD,tO,e.name,tD);if(!eA(O))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:v.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:p,isDevDependency:h,installedPath:"",file:{}}}];S=eI(O),D=S.version,C=D===void 0?"":D;return[2,g!==C?{success:!0,result:{name:e.name,currentVersion:C||g,latestVersion:v.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:p,isDevDependency:h,installedPath:O,file:S}}:{success:!0,result:{name:e.name,currentVersion:g,latestVersion:v.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:g===v.result,isDependency:p,isDevDependency:h,installedPath:O,file:S}}];case 2:_=N.sent();return[2,eH(_)];case 3:return[2]}})})()}U(e4,"getPackage");function e3(e){return a(function(){var t,n,r,s,a;return T(this,function(u){try{;r=eI(t4.PACKAGE_JSON),s=(t=r.dependencies)!==null&&t!==void 0?t:{},a=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?s[e.name]=e.latestVersion:e.isDevDependency&&(a[e.name]=e.latestVersion),eb(t4.PACKAGE_JSON,JSON.stringify(r,null,4)),eQ.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){eH(e)}return[2]})})()}U(e3,"updatePackage");function e5(){return a(function(){var e,t,n,r,s,a,u,c,o,i,l,f,d;return T(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);e=[{command:U(function(){return t5.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:U(function(){return t5.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:U(function(){return t5.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);s=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];u=a.value,c=u.command,o=u.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,c()];case 4:i=E.sent();return[4,tf("".concat(o," using: ").concat(i),i)];case 5:E.sent();return[2];case 6:l=E.sent();eH(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=E.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:d=E.sent();eH(d);return[3,13];case 13:return[2]}})})()}U(e5,"installDependencies");function e7(e,t){return a(function(){var n,r,s,a,u,c,o,i,l,f,d,E;return T(this,function(p){switch(p.label){case 0:if(!eA(t4.PACKAGE_JSON)){eQ.error("package.json not found. Aborting setup.");return[2]}p.label=1;case 1:p.trys.push([1,16,,17]);return[4,Promise.all(e.map(e4))];case 2:n=p.sent().filter(function(e){return e.success?!e.result.isCurrentProject&&(!e.result.isInstalled||!e.result.isUpToDate):!1});r=n.length>0;if(!r)return[3,7];return[4,Promise.all(n.map(function(e){return e.success?e3(e.result):Promise.resolve()}))];case 3:p.sent();return[4,e5()];case 4:p.sent();s=["Running ESLint with auto-fix"];return[4,t5.eslintFix()];case 5:return[4,tf.apply(void 0,s.concat([p.sent()]))];case 6:r=p.sent();p.label=7;case 7:r;u=true,c=false,o=undefined;p.label=8;case 8:p.trys.push([8,13,14,15]);i=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();p.label=9;case 9:if(!!(u=(l=i.next()).done))return[3,12];f=l.value;return[4,f()];case 10:p.sent();p.label=11;case 11:u=true;return[3,9];case 12:return[3,15];case 13:d=p.sent();c=true;o=d;return[3,15];case 14:try{if(!u&&i.return!=null){i.return()}}finally{if(c){throw o}}return[7];case 15:return[3,17];case 16:E=p.sent();eH(E);return[3,17];case 17:return[2]}})})()}U(e7,"setupPackages");var e6=F(require("node-persist"),1);var e8=eY();function e9(){return a(function(){var e;return T(this,function(t){switch(t.label){case 0:e=e6.default.defaultInstance;if(e)return[3,2];return[4,e6.default.init({dir:e8.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}U(e9,"initNodePersist");var te={get:function e(e){return a(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e6.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,eH(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e6.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eH(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return T(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e6.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eH(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return T(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e6.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eQ.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,eH(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return T(this,function(t){try{return[2,"".concat(e8.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,eH(e,{returnValue:null})]}return[2]})})()}};var tt=eY(),tn=ez.promisify(e$.exec);function tr(){return a(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,e4()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}U(tr,"getPackageName");function ts(e){return a(function(){var t,n;return T(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,tr()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,te.set(t,e)];case 3:r.sent(),setTimeout(function(){return a(function(){var e;return T(this,function(n){switch(n.label){case 0:return[4,te.getLogLink(t)];case 1:e=n.sent();e&&eQ.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();eH(n);return[3,5];case 5:return[2]}})})()}U(ts,"saveErrorListToStorage");function ta(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,u=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,o,i,l,f;var d=s.exec(e)||[],E=a.exec(e)||[],p=u.exec(e)||[];var h,v,m,y,g,O;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===eR.Error?eR.Error:eR.Warning,message:(h=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&h!==void 0?h:"",rule:(v=d===null||d===void 0?void 0:(o=d[5])===null||o===void 0?void 0:o.trim())!==null&&v!==void 0?v:""}):E.length?t.push({file:(m=E===null||E===void 0?void 0:E[1])!==null&&m!==void 0?m:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===eR.Error?eR.Error:eR.Warning,message:(y=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&y!==void 0?y:""}):p.length?t.push({file:"commitlint",type:eR.Error,message:(g=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&g!==void 0?g:"",rule:(O=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&ts(t),tt.DEBUG&&n.length&&(eQ.warn("Unmatched lines:"),n.forEach(function(e){return eQ.info(" ".concat(e))}))}U(ta,"parseTextErrors");function tu(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,u=e.ruleId,c=e.message;n.push({type:r===2?eR.Error:eR.Warning,file:t,position:"".concat(s,":").concat(a),rule:u,message:c})})}),n.length&&ts(n)}catch(t){ta(e)}}U(tu,"parseCommandOutput");function tc(e){return a(function(e){var t,n,r,s,a,u,c,o,i;var l=arguments;return T(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tu;n=new AbortController;eX.default.on("SIGINT",function(){eQ.warn("Process interrupted. Terminating..."),n.abort(),eX.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tn(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:u=f.sent();c=u.stdout,o=u.stderr,i=u.message;[c,o].forEach(function(e){return e&&t(e)}),!o&&!c&&eQ.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}U(tc,"executeCommand");function to(e){return{raw:!0,cmd:e}}U(to,"rawCommand");function ti(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tW," ").concat(tK," ").concat(tM," ").concat(e):"".concat(tW," ").concat(tG," ").concat(e)}U(ti,"formatCLI");function tl(e,t){return typeof e=="function"?ti(e(t),t):(typeof e==="undefined"?"undefined":N(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ti(e,t):e}U(tl,"formatCommand");function tf(e,t){return a(function(){var n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eQ.start("".concat(e)),tt.DEBUG&&eQ.info("→ ".concat(t));return[4,tc(t)];case 1:r.sent(),eQ.success("".concat(e," done."));return[3,3];case 2:n=r.sent();eH(n);return[3,3];case 3:return[2]}})})()}U(tf,"runCommand");var td=F(require("path"),1);var tE=eY(),tp=td.default;function th(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=tp).resolve.apply(r,[tE.CWD].concat(_(t)))}U(th,"resolveWorkingPath");function tv(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=tp).join.apply(r,_(t))}U(tv,"join");var tm=eY(),ty=tm.CWD,tg="@cyberskill/shared",tO="node_modules",tS="dist",tD="package.json",tC="package-lock.json",t_="tsconfig.json",tN=".gitignore",tI=".simple-git-hooks.json",tb="pnpm-lock.yaml",tT=".git/hooks/",tA=".git/COMMIT_EDITMSG",tR=".migrate-mongo.config.js",tP=function(){var e=eW.default.readJsonSync(th(tD)).name===tg?ty:tv(ty,tO,tg);return tv(e,tS)}(),tG="cyberskill",tM="src/node/cli/index.ts",tw="eslint",tL="eslint",tU="vitest";var tk="vitest",tj="@commitlint/cli",tF="@commitlint/config-conventional",tx="commitlint",tV="lint-staged",tq="lint-staged",tY="typescript",tB="tsc",tK="tsx",tQ="git",tH="pnpm",tW="pnpm exec",tJ="simple-git-hooks",t$="simple-git-hooks",tX="@eslint/config-inspector",tz="eslint-config-inspector",tZ="node-modules-inspector",t0="node-modules-inspector",t1="migrate-mongo",t2="./node_modules/migrate-mongo/bin/migrate-mongo",t4={CYBERSKILL_DIRECTORY:tP,WORKING_DIRECTORY:ty,TS_CONFIG:th(t_),GIT_IGNORE:th(tN),GIT_HOOK:th(tT),GIT_COMMIT_MSG:th(tA),SIMPLE_GIT_HOOKS_JSON:th(tI),PACKAGE_JSON:th(tD),PACKAGE_LOCK_JSON:th(tC),PNPM_LOCK_YAML:th(tb),NODE_MODULES:th(tO),MIGRATE_MONGO_CONFIG:th(tR),LINT_STAGED_CONFIG:th("".concat(tP,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:th("".concat(tP,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:th("".concat(tP,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:th("".concat(tP,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:th("".concat(tP,"/react/vitest/vitest.e2e.js"))};function t3(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return a(function(){var e;return T(this,function(n){switch(n.label){case 0:switch(t){case eJ.CLI:return[3,1];case eJ.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,e7(s,{update:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tl(to("".concat(tW," ").concat(r))))];case 4:return[2,tl(to(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}U(t3,"buildCommand");var t5={simpleGitHooks:t3({type:eJ.CLI,packages:[{name:tJ,type:eZ.DEV_DEPENDENCY}],command:t$}),eslintInspect:t3({type:eJ.CLI,packages:[{name:tX,type:eZ.DEV_DEPENDENCY}],command:tz}),nodeModulesInspect:t3({type:eJ.CLI,packages:[{name:tZ,type:eZ.DEV_DEPENDENCY}],command:t0}),eslintCheck:t3({type:eJ.CLI,packages:[{name:tw,type:eZ.DEV_DEPENDENCY}],command:"".concat(tL," ").concat(t4.WORKING_DIRECTORY," --no-cache")}),eslintFix:t3({type:eJ.CLI,packages:[{name:tw,type:eZ.DEV_DEPENDENCY}],command:"".concat(tL," ").concat(t4.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:t3({type:eJ.CLI,packages:[{name:tY,type:eZ.DEPENDENCY}],command:"".concat(tB," -p ").concat(t4.TS_CONFIG," --noEmit")}),testUnit:t3({type:eJ.CLI,packages:[{name:tU,type:eZ.DEV_DEPENDENCY}],command:"".concat(tk," --config ").concat(t4.UNIT_TEST_CONFIG)}),testE2e:t3({type:eJ.CLI,packages:[{name:tU,type:eZ.DEV_DEPENDENCY}],command:"".concat(tk," --config ").concat(t4.E2E_TEST_CONFIG)}),mongoMigrateCreate:U(function(e){return t3({type:eJ.CLI,packages:[{name:t1,type:eZ.DEPENDENCY}],command:"".concat(tK," ").concat(t2," create ").concat(e," -f ").concat(t4.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:t3({type:eJ.CLI,packages:[{name:t1,type:eZ.DEPENDENCY}],command:"".concat(tK," ").concat(t2," up -f ").concat(t4.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:t3({type:eJ.CLI,packages:[{name:t1,type:eZ.DEPENDENCY}],command:"".concat(tK," ").concat(t2," down -f ").concat(t4.MIGRATE_MONGO_CONFIG)}),commitLint:t3({type:eJ.CLI,packages:[{name:tj,type:eZ.DEV_DEPENDENCY},{name:tF,type:eZ.DEV_DEPENDENCY}],command:"".concat(tx," --edit ").concat(t4.GIT_COMMIT_MSG," --config ").concat(t4.COMMITLINT_CONFIG)}),lintStaged:t3({type:eJ.CLI,packages:[{name:tV,type:eZ.DEV_DEPENDENCY}],command:"".concat(tq," --config ").concat(t4.LINT_STAGED_CONFIG)}),configureGitHook:t3({type:eJ.STRING,command:"".concat(tQ," config core.hooksPath ").concat(t4.GIT_HOOK)}),build:t3({type:eJ.STRING,command:"".concat(tH," run --if-present build")}),pnpmInstallStandard:t3({type:eJ.STRING,command:"".concat(tH," install --ignore-scripts")}),pnpmInstallLegacy:t3({type:eJ.STRING,command:"".concat(tH," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:t3({type:eJ.STRING,command:"".concat(tH," install --ignore-scripts --force")})};var t7={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,ee.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"?t7.getDateTime():new Date;return{id:(0,ea.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:ea.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,a=e.standalone,u=a===void 0?!1:a;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)}),u||c.add(t7.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,u=e.aggregate,c=u===void 0?!1:u,o=e.virtuals,i=o===void 0?[]:o,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 d=t7.createSchema({mongoose:t,schema:r,virtuals:i});return t7.applyPlugins(d,[a&&es.default,c&&er.default]),t7.applyMiddlewares(d,f),t.model(n,d)},validator:{isEmpty:function e(){return function(e){return a(function(){return T(this,function(t){return[2,!ev.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return a(function(){var n;return T(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 l({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return a(function(){return T(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!E(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:O(y({},et.default),{setConfig:U(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eb(t4.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tR,"\n");eA(t4.GIT_IGNORE)?eC(t4.GIT_IGNORE,"utf-8").split("\n").includes(tR)||eT(t4.GIT_IGNORE,n):eb(t4.GIT_IGNORE,n)},"setConfig")})},t6=/*#__PURE__*/function(){function e(t,n){c(this,e);V(this,"collection");this.collection=t.collection(n)}i(e,[{key:"createOne",value:function e(e){return a(function(){var t,n,r;return T(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=y({},t7.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,eH(r)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return a(function(){var t,n,r;return T(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return y({},t7.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,eH(r)];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return a(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found",code:eu.NOT_FOUND.CODE}];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return a(function(){var e,t,n;var r=arguments;return T(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,eH(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return a(function(){var e,t,n;var r=arguments;return T(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,eH(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return a(function(){var n,r;return T(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,eH(r)];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return a(function(){var n,r;return T(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,eH(r)];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return a(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return a(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteMany(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}}]);return e}();U(t6,"MongoController");var t8=t6,t9=/*#__PURE__*/function(){function e(t){c(this,e);V(this,"model");this.model=t}i(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return a(function(){var e,t,n,r,s,a,u;var c=arguments;return T(this,function(o){switch(o.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[3]:void 0;o.label=1;case 1:o.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=o.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:eu.NOT_FOUND.CODE}];case 3:u=o.sent();return[2,eH(u)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return a(function(){var e,t,n,r,s,a,u;var c=arguments;return T(this,function(o){switch(o.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[3]:void 0;o.label=1;case 1:o.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=o.sent(),a)];case 3:u=o.sent();return[2,eH(u)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return T(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return a(function(e){var t,n,r;var s=arguments;return T(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return a(function(){var e,t,n;var r=arguments;return T(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0};return[4,this.model.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,eH(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return a(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return a(function(e){var t,n,r;var s=arguments;return T(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return E(e,en.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return a(function(){var e,t,n,r,s;var a=arguments;return T(this,function(u){switch(u.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};u.label=1;case 1:u.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,y({new:!0},n)).exec()];case 2:r=u.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:eu.NOT_FOUND.CODE}];case 3:s=u.sent();return[2,eH(s)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return a(function(){var e,t,n,r,s;var a=arguments;return T(this,function(u){switch(u.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};u.label=1;case 1:u.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=u.sent(),r)];case 3:s=u.sent();return[2,eH(s)];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return T(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=a.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:eu.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return T(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=a.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:eu.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return a(function(){var n,r,s,a,u;return T(this,function(c){switch(c.label){case 0:c.trys.push([0,6,,7]);n=new Set;r=0;c.label=1;case 1:if(!(r<10))return[3,5];s=eh(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:s}];c.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:eu.INTERNAL_SERVER_ERROR.CODE}];case 6:u=c.sent();return[2,eH(u)];case 7:return[2]}})}).call(this)}},{key:"createSlugQuery",value:function e(e){var t=e.slug,n=e.field,r=e.isObject,s=e.filter;var a=y({},s!==null&&s!==void 0?s:{});return r?O(y({},a),{$or:[l({},"slug.".concat(n),t),{slugHistory:{$elemMatch:l({},"slug.".concat(n),t)}}]}):O(y({},a),{$or:[{slug:t},{slugHistory:t}]})}},{key:"createUniqueSlug",value:function e(e){return a(function(e){var t,n,r,s,a,u,c;return T(this,function(o){switch(o.label){case 0:t=e.slug,n=e.field,r=e.isObject,s=e.filter;a=ep(t),u=a,c=1;o.label=1;case 1:return[4,this.model.exists(this.createSlugQuery({slug:u,field:n,isObject:r,filter:s}))];case 2:if(!o.sent())return[3,4];u="".concat(a,"-").concat(c++);o.label=3;case 3:return[3,1];case 4:return[2,u]}})}).apply(this,arguments)}},{key:"createSlug",value:function e(e){return a(function(e){var t,n,r,s,u,c,o,i,l,f;return T(this,function(d){switch(d.label){case 0:t=this;n=e.field,r=e.from,s=e.filter;d.label=1;case 1:d.trys.push([1,6,,7]);u=r[n];if(!el(u))return[3,3];o={success:!0};i=Object.fromEntries;return[4,Promise.all(Object.entries(u).map(function(e){var n=C(e,2),r=n[0],u=n[1];return a(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,this.createUniqueSlug({slug:u,field:r,isObject:!0,filter:s})];case 1:e=t.sent();return[2,[r,e]]}})}).call(t)}))];case 2:c=(o.result=i.apply(Object,[d.sent()]),o);return[3,5];case 3:l={success:!0};return[4,this.createUniqueSlug({slug:u,field:n,isObject:!1,filter:s})];case 4:c=(l.result=d.sent(),l);d.label=5;case 5:return[2,c];case 6:f=d.sent();return[2,eH(f)];case 7:return[2]}})}).apply(this,arguments)}},{key:"checkSlug",value:function e(e){return a(function(e){var t,n,r,s,a,u,c,o,i,l,f,d,E,p,h,v;return T(this,function(m){switch(m.label){case 0:t=e.slug,n=e.field,r=e.from,s=e.filter;m.label=1;case 1:m.trys.push([1,12,,13]);a=r[n];if(!el(a))return[3,10];u=true,c=false,o=undefined;m.label=2;case 2:m.trys.push([2,7,8,9]);i=Object.values(a)[Symbol.iterator]();m.label=3;case 3:if(!!(u=(l=i.next()).done))return[3,6];f=l.value;d=ep(f);return[4,this.model.exists(this.createSlugQuery({slug:d,field:n,isObject:!0,filter:s}))];case 4:if(m.sent())return[2,{success:!0,result:!0}];m.label=5;case 5:u=true;return[3,3];case 6:return[3,9];case 7:E=m.sent();c=true;o=E;return[3,9];case 8:try{if(!u&&i.return!=null){i.return()}}finally{if(c){throw o}}return[7];case 9:return[2,{success:!0,result:!1}];case 10:p=ep(t);h={success:!0};return[4,this.model.exists(this.createSlugQuery({slug:p,field:n,isObject:!1,filter:s}))];case 11:return[2,(h.result=m.sent()!==null,h)];case 12:v=m.sent();return[2,eH(v)];case 13:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return a(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}}]);return e}();U(t9,"MongooseController");var ne=t9;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
|
+
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function a(e,t,n,r,a,s,u){try{var c=e[s](u);var o=c.value}catch(e){n(e);return}if(c.done){t(o)}else{Promise.resolve(o).then(r,a)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(r,s){var u=e.apply(t,n);function c(e){a(u,r,s,c,o,"next",e)}function o(e){a(u,r,s,c,o,"throw",e)}c(undefined)})}}function u(e,t,n){t=f(t);return S(e,b()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function c(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function o(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 i(e,t,n){if(t)o(e.prototype,t);if(n)o(e,n);return e}function l(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 f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function d(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)D(e,t)}function E(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function p(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function h(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var a=true;var s=false;var u,c;try{for(n=n.call(e);!(a=(u=n.next()).done);a=true){r.push(u.value);if(t&&r.length===t)break}}catch(e){s=true;c=e}finally{try{if(!a&&n["return"]!=null)n["return"]()}finally{if(s)throw c}}return r}function m(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function y(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){l(e,t,n[t])})}return e}function g(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 O(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{g(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function S(e,t){if(t&&(N(t)==="object"||typeof t==="function")){return t}return r(e)}function D(e,t){D=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return D(e,t)}function C(e,n){return t(e)||h(e,n)||I(e,n)||m()}function _(e){return n(e)||p(e)||I(e)||v()}function N(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function I(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function b(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(b=function(){return!!e})()}function T(e,t){var n,r,a,s={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},u=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return u.next=c(0),u["throw"]=c(1),u["return"]=c(2),typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(e){return function(t){return o([e,t])}}function o(c){if(n)throw new TypeError("Generator is already executing.");while(u&&(u=0,c[0]&&(s=0)),s)try{if(n=1,r&&(a=c[0]&2?r["return"]:c[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,c[1])).done)return a;if(r=0,a)c=[c[0]&2,a.value];switch(c[0]){case 0:case 1:a=c;break;case 4:s.label++;return{value:c[1],done:false};case 5:s.label++;r=c[1];c=[0];continue;case 7:c=s.ops.pop();s.trys.pop();continue;default:if(!(a=s.trys,a=a.length>0&&a[a.length-1])&&(c[0]===6||c[0]===2)){s=0;continue}if(c[0]===3&&(!a||c[1]>a[0]&&c[1]<a[3])){s.label=c[1];break}if(c[0]===6&&s.label<a[1]){s.label=a[1];a=c;break}if(a&&s.label<a[2]){s.label=a[2];s.ops.push(c);break}if(a[2])s.ops.pop();s.trys.pop();continue}c=t.call(e,s)}catch(e){c=[6,e];r=0}finally{n=a=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var A=Object.create;var R=Object.defineProperty;var G=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var M=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var L=function(e,t,n){return t in e?R(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var U=function(e,t){return R(e,"name",{value:t,configurable:!0})};var k=function(e,t){for(var n in t)R(e,n,{get:t[n],enumerable:!0})},j=function(e,t,n,r){var a=true,s=false,u=undefined;if(t&&(typeof t==="undefined"?"undefined":N(t))=="object"||typeof t=="function")try{var c=function(){var a=i.value;!w.call(e,a)&&a!==n&&R(e,a,{get:function(){return t[a]},enumerable:!(r=G(t,a))||r.enumerable})};for(var o=P(t)[Symbol.iterator](),i;!(a=(i=o.next()).done);a=true)c()}catch(e){s=true;u=e}finally{try{if(!a&&o.return!=null){o.return()}}finally{if(s){throw u}}}return e};var F=function(e,t,n){return n=e!=null?A(M(e)):{},j(t||!e||!e.__esModule?R(n,"default",{value:e,enumerable:!0}):n,e)},x=function(e){return j(R({},"__esModule",{value:!0}),e)};var V=function(e,t,n){return L(e,(typeof t==="undefined"?"undefined":N(t))!="symbol"?t+"":t,n)};var q={};k(q,{C_Collection:function(){return Z},C_Db:function(){return H},C_Document:function(){return J},C_Model:function(){return X},MONGO_MIGRATE_OPTIONS:function(){return Y},MongoController:function(){return t8},MongooseController:function(){return ne},aggregatePaginate:function(){return er.default},mongo:function(){return t6},mongoosePaginate:function(){return ea.default}});module.exports=x(q);var Y="MONGO_MIGRATE_OPTIONS";var B=require("mongodb"),K=require("mongoose");var Q=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(B.Db);U(Q,"C_Db");var H=Q,W=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(K.Document);U(W,"C_Document");var J=W,$=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(K.Model);U($,"C_Model");var X=$,z=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(B.Collection);U(z,"C_Collection");var Z=z;var ee=require("date-fns"),et=F(require("migrate-mongo"),1),en=require("mongoose"),er=F(require("mongoose-aggregate-paginate-v2"),1),ea=F(require("mongoose-paginate-v2"),1),es=require("uuid");var eu={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 ec=F(require("unorm"),1);var eo={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},ei=Object.entries(eo).reduce(function(e,t){var n=C(t,2),r=n[0],a=n[1];return e[r.toUpperCase()]=a.map(function(e){return e.toUpperCase()}),e},{});function el(e){return(typeof e==="undefined"?"undefined":N(e))=="object"&&e!==null&&!Array.isArray(e)}U(el,"isObject");var ef=F(require("crypto-js"),1),ed=F(require("slugify"),1);var eE=ed.default.default||ed.default;function ep(e,t){var n=U(function(e){var n,r;return eE(e!==null&&e!==void 0?e:"",y({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))},"slugifyWithOptions");if(el(e)){var r={};var a=true,s=false,u=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),o;!(a=(o=c.next()).done);a=true){var i=C(o.value,2),l=i[0],f=i[1];r[l]=n(f)}}catch(e){s=true;u=e}finally{try{if(!a&&c.return!=null){c.return()}}finally{if(s){throw u}}}return r}return n(e)}U(ep,"generateSlug");function eh(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return ef.default.SHA256(e).toString(ef.default.enc.Hex).slice(0,t)}U(eh,"generateShortId");var em={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":N(e))=="object"?E(e,Date)?!1:E(e,Map)||E(e,Set)?e.size===0:E(e,WeakMap)||E(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};var ev=F(require("fs-extra"),1),ey=F(require("path"),1);var eg=ev.default,eO=eg.lstatSync,eS=eg.readdirSync,eD=eg.mkdirSync,eC=eg.readFileSync,e_=eg.unlinkSync,eN=eg.statSync,eI=ev.default.readJsonSync;function eb(e,t,n){ev.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}U(eb,"writeFileSync");function eT(e,t,n){ev.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}U(eT,"appendFileSync");function eA(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ev.default.pathExistsSync(e)})}U(eA,"pathExistsSync");var eR=function(e){return e.Error="error",e.Warning="warning",e}({});var eG=F(require("chalk"),1),eP=F(require("consola"),1),eM=require("graphql");var ew=".cyberskill-storage";var eL=F(require("@dotenvx/dotenvx"),1),eU=require("envalid"),ek=F(require("os"),1),ej=F(require("path"),1),eF=F(require("process"),1);var ex=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var eV=!1;function eq(){eF.default.env.NODE_ENV!==ex.PRODUCTION&&!eV&&(eL.default.config(),eV=!0)}U(eq,"loadEnvFile");function eY(){eq();var e=(0,eU.cleanEnv)(eF.default.env,{CWD:(0,eU.str)({default:eF.default.cwd()}),DEBUG:(0,eU.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,eU.str)({default:ej.default.join(ek.default.homedir(),ew)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}U(eY,"getEnv");var eB=eY();eB.DEBUG||(eP.default.level=4);function eK(e){var t=eG.default[e];return typeof t=="function"?t:eG.default.green}U(eK,"chalkKeyword");var eQ={silent:eP.default.silent,level:eP.default.level,fatal:eP.default.fatal,error:eP.default.error,warn:eP.default.warn,log:eP.default.log,info:eP.default.info,success:eP.default.success,ready:eP.default.ready,start:eP.default.start,box:eP.default.box,debug:eP.default.debug,trace:eP.default.trace,verbose:eP.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)){eP.default.box(eG.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,s=e.message;eP.default.log("".concat(eG.default.gray("File:")," ").concat(eG.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&eP.default.log(" ".concat(eK(n)("Rule:")," ").concat(a)),eP.default.log(" ".concat(eK(n)("Message:")," ").concat(s))}),eP.default.box(eK(n)("".concat(e," : ").concat(t.length))),eP.default.log(eG.default.gray("─".repeat(40)))}};function eH(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,a=r===void 0?!0:r,s=n.returnValue,u=n.callback,c=E(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return a&&eQ.error(c.message),u&&typeof u=="function"&&u(c),s||{success:!1,message:c.message,code:eu.INTERNAL_SERVER_ERROR.CODE}}U(eH,"catchError");var eW=F(require("fs-extra"),1);var eJ=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var e$=require("child_process"),eX=F(require("process"),1),ez=F(require("util"),1);var eZ=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var e0=F(require("node-fetch"),1);var e1=eY();function e2(e){return s(function(){var t,n,r,a;return T(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,(0,e0.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=s.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:a=s.sent();return[2,eH(a)];case 4:return[2]}})})()}U(e2,"getLatestPackageVersion");function e4(e){return s(function(){var t,n,r,a,s,u,c,o,i,l,f,d,E,p,h,m,v,y,g,O,S,D,C,_;return T(this,function(N){switch(N.label){case 0:N.trys.push([0,2,,3]);if(!e){if(eA(t4.PACKAGE_JSON)){t=eI(t4.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,a=t.version,s=a===void 0?"":a;return[2,{success:!0,result:{name:r,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:t4.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!eA(t4.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eZ.DEPENDENCY,isDevDependency:e.type===eZ.DEV_DEPENDENCY,installedPath:"",file:{}}}];u=eI(t4.PACKAGE_JSON),c=u.name,o=u.version,i=o===void 0?"":o,l=u.dependencies,f=l===void 0?{}:l,d=u.devDependencies,E=d===void 0?{}:d;if(e.name===c)return[2,{success:!0,result:{name:c,currentVersion:i,latestVersion:i,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===eZ.DEPENDENCY,isDevDependency:e.type===eZ.DEV_DEPENDENCY,installedPath:t4.PACKAGE_JSON,file:u}}];p=e.name in f,h=e.name in E;return[4,e2(e.name)];case 1:m=N.sent();if(!m.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:p,isDevDependency:h,installedPath:"",file:{}}}];if(!p&&!h)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:m.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eZ.DEPENDENCY,isDevDependency:e.type===eZ.DEV_DEPENDENCY,installedPath:"",file:{}}}];g=(y=(v=f[e.name])!==null&&v!==void 0?v:E[e.name])!==null&&y!==void 0?y:"",O=tm(e1.CWD,tO,e.name,tD);if(!eA(O))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:m.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:p,isDevDependency:h,installedPath:"",file:{}}}];S=eI(O),D=S.version,C=D===void 0?"":D;return[2,g!==C?{success:!0,result:{name:e.name,currentVersion:C||g,latestVersion:m.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:p,isDevDependency:h,installedPath:O,file:S}}:{success:!0,result:{name:e.name,currentVersion:g,latestVersion:m.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:g===m.result,isDependency:p,isDevDependency:h,installedPath:O,file:S}}];case 2:_=N.sent();return[2,eH(_)];case 3:return[2]}})})()}U(e4,"getPackage");function e3(e){return s(function(){var t,n,r,a,s;return T(this,function(u){try{;r=eI(t4.PACKAGE_JSON),a=(t=r.dependencies)!==null&&t!==void 0?t:{},s=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?a[e.name]=e.latestVersion:e.isDevDependency&&(s[e.name]=e.latestVersion),eb(t4.PACKAGE_JSON,JSON.stringify(r,null,4)),eQ.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){eH(e)}return[2]})})()}U(e3,"updatePackage");function e5(){return s(function(){var e,t,n,r,a,s,u,c,o,i,l,f,d;return T(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);e=[{command:U(function(){return t5.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:U(function(){return t5.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:U(function(){return t5.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);a=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(s=a.next()).done))return[3,8];u=s.value,c=u.command,o=u.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,c()];case 4:i=E.sent();return[4,tf("".concat(o," using: ").concat(i),i)];case 5:E.sent();return[2];case 6:l=E.sent();eH(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=E.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:d=E.sent();eH(d);return[3,13];case 13:return[2]}})})()}U(e5,"installDependencies");function e6(e,t){return s(function(){var n,r,a,s,u,c,o,i,l,f,d,E,p,h,m,v,y;return T(this,function(g){switch(g.label){case 0:g.trys.push([0,15,,16]);if(!eA(t4.PACKAGE_JSON)){eQ.error("package.json not found. Aborting setup.");return[2]}return[4,Promise.all(e.map(e4))];case 1:a=g.sent().filter(function(e){return e.success&&!!e.result&&!e.result.isCurrentProject}).map(function(e){return e.result}),s=a.filter(function(e){return!e.isInstalled}),u=a.filter(function(e){return!e.isUpToDate}),c=[];(t===null||t===void 0?void 0:t.install)&&s.length>0&&(n=c).push.apply(n,_(s.map(e3))),(t===null||t===void 0?void 0:t.update)&&u.length>0&&(r=c).push.apply(r,_(u.map(e3)));o=c.length>0;if(!o)return[3,6];return[4,Promise.all(c)];case 2:g.sent();return[4,e5()];case 3:g.sent();i=["Running ESLint with auto-fix"];return[4,t5.eslintFix()];case 4:return[4,tf.apply(void 0,i.concat([g.sent()]))];case 5:o=g.sent();g.label=6;case 6:o;f=true,d=false,E=undefined;g.label=7;case 7:g.trys.push([7,12,13,14]);p=((l=t===null||t===void 0?void 0:t.callbacks)!==null&&l!==void 0?l:[])[Symbol.iterator]();g.label=8;case 8:if(!!(f=(h=p.next()).done))return[3,11];m=h.value;return[4,m()];case 9:g.sent();g.label=10;case 10:f=true;return[3,8];case 11:return[3,14];case 12:v=g.sent();d=true;E=v;return[3,14];case 13:try{if(!f&&p.return!=null){p.return()}}finally{if(d){throw E}}return[7];case 14:return[3,16];case 15:y=g.sent();eH(y);return[3,16];case 16:return[2]}})})()}U(e6,"setupPackages");var e7=F(require("node-persist"),1);var e8=eY();function e9(){return s(function(){var e;return T(this,function(t){switch(t.label){case 0:e=e7.default.defaultInstance;if(e)return[3,2];return[4,e7.default.init({dir:e8.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}U(e9,"initNodePersist");var te={get:function e(e){return s(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e7.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,eH(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return s(function(){var n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e7.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eH(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return s(function(){var t;return T(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e7.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eH(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return s(function(){var e,t;return T(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e7.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eQ.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,eH(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return s(function(){return T(this,function(t){try{return[2,"".concat(e8.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,eH(e,{returnValue:null})]}return[2]})})()}};var tt=eY(),tn=ez.promisify(e$.exec);function tr(){return s(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,e4()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}U(tr,"getPackageName");function ta(e){return s(function(){var t,n;return T(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,tr()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,te.set(t,e)];case 3:r.sent(),setTimeout(function(){return s(function(){var e;return T(this,function(n){switch(n.label){case 0:return[4,te.getLogLink(t)];case 1:e=n.sent();e&&eQ.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();eH(n);return[3,5];case 5:return[2]}})})()}U(ta,"saveErrorListToStorage");function ts(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,u=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,o,i,l,f;var d=a.exec(e)||[],E=s.exec(e)||[],p=u.exec(e)||[];var h,m,v,y,g,O;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===eR.Error?eR.Error:eR.Warning,message:(h=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&h!==void 0?h:"",rule:(m=d===null||d===void 0?void 0:(o=d[5])===null||o===void 0?void 0:o.trim())!==null&&m!==void 0?m:""}):E.length?t.push({file:(v=E===null||E===void 0?void 0:E[1])!==null&&v!==void 0?v:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===eR.Error?eR.Error:eR.Warning,message:(y=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&y!==void 0?y:""}):p.length?t.push({file:"commitlint",type:eR.Error,message:(g=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&g!==void 0?g:"",rule:(O=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&ta(t),tt.DEBUG&&n.length&&(eQ.warn("Unmatched lines:"),n.forEach(function(e){return eQ.info(" ".concat(e))}))}U(ts,"parseTextErrors");function tu(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,s=e.column,u=e.ruleId,c=e.message;n.push({type:r===2?eR.Error:eR.Warning,file:t,position:"".concat(a,":").concat(s),rule:u,message:c})})}),n.length&&ta(n)}catch(t){ts(e)}}U(tu,"parseCommandOutput");function tc(e){return s(function(e){var t,n,r,a,s,u,c,o,i;var l=arguments;return T(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tu;n=new AbortController;eX.default.on("SIGINT",function(){eQ.warn("Process interrupted. Terminating..."),n.abort(),eX.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tn(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,s=r.stderr;[a,s].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:u=f.sent();c=u.stdout,o=u.stderr,i=u.message;[c,o].forEach(function(e){return e&&t(e)}),!o&&!c&&eQ.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}U(tc,"executeCommand");function to(e){return{raw:!0,cmd:e}}U(to,"rawCommand");function ti(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tW," ").concat(tK," ").concat(tM," ").concat(e):"".concat(tW," ").concat(tP," ").concat(e)}U(ti,"formatCLI");function tl(e,t){return typeof e=="function"?ti(e(t),t):(typeof e==="undefined"?"undefined":N(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ti(e,t):e}U(tl,"formatCommand");function tf(e,t){return s(function(){var n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eQ.start("".concat(e)),tt.DEBUG&&eQ.info("→ ".concat(t));return[4,tc(t)];case 1:r.sent(),eQ.success("".concat(e," done."));return[3,3];case 2:n=r.sent();eH(n);return[3,3];case 3:return[2]}})})()}U(tf,"runCommand");var td=F(require("path"),1);var tE=eY(),tp=td.default;function th(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=tp).resolve.apply(r,[tE.CWD].concat(_(t)))}U(th,"resolveWorkingPath");function tm(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=tp).join.apply(r,_(t))}U(tm,"join");var tv=eY(),ty=tv.CWD,tg="@cyberskill/shared",tO="node_modules",tS="dist",tD="package.json",tC="package-lock.json",t_="tsconfig.json",tN=".gitignore",tI=".simple-git-hooks.json",tb="pnpm-lock.yaml",tT=".git/hooks/",tA=".git/COMMIT_EDITMSG",tR=".migrate-mongo.config.js",tG=function(){var e=eW.default.readJsonSync(th(tD)).name===tg?ty:tm(ty,tO,tg);return tm(e,tS)}(),tP="cyberskill",tM="src/node/cli/index.ts",tw="eslint",tL="eslint",tU="vitest";var tk="vitest",tj="@commitlint/cli",tF="@commitlint/config-conventional",tx="commitlint",tV="lint-staged",tq="lint-staged",tY="typescript",tB="tsc",tK="tsx",tQ="git",tH="pnpm",tW="pnpm exec",tJ="simple-git-hooks",t$="simple-git-hooks",tX="@eslint/config-inspector",tz="eslint-config-inspector",tZ="node-modules-inspector",t0="node-modules-inspector",t1="migrate-mongo",t2="./node_modules/migrate-mongo/bin/migrate-mongo",t4={CYBERSKILL_DIRECTORY:tG,WORKING_DIRECTORY:ty,TS_CONFIG:th(t_),GIT_IGNORE:th(tN),GIT_HOOK:th(tT),GIT_COMMIT_MSG:th(tA),SIMPLE_GIT_HOOKS_JSON:th(tI),PACKAGE_JSON:th(tD),PACKAGE_LOCK_JSON:th(tC),PNPM_LOCK_YAML:th(tb),NODE_MODULES:th(tO),MIGRATE_MONGO_CONFIG:th(tR),LINT_STAGED_CONFIG:th("".concat(tG,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:th("".concat(tG,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:th("".concat(tG,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:th("".concat(tG,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:th("".concat(tG,"/react/vitest/vitest.e2e.js"))};function t3(e){var t=e.type,n=e.packages,r=e.command;var a=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return s(function(){var e;return T(this,function(n){switch(n.label){case 0:switch(t){case eJ.CLI:return[3,1];case eJ.STRING:return[3,4]}return[3,5];case 1:e=a===null||a===void 0?void 0:a.length;if(!e)return[3,3];return[4,e6(a,{install:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tl(to("".concat(tW," ").concat(r))))];case 4:return[2,tl(to(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}U(t3,"buildCommand");var t5={simpleGitHooks:t3({type:eJ.CLI,packages:[{name:tJ,type:eZ.DEV_DEPENDENCY}],command:t$}),eslintInspect:t3({type:eJ.CLI,packages:[{name:tX,type:eZ.DEV_DEPENDENCY}],command:tz}),nodeModulesInspect:t3({type:eJ.CLI,packages:[{name:tZ,type:eZ.DEV_DEPENDENCY}],command:t0}),eslintCheck:t3({type:eJ.CLI,packages:[{name:tw,type:eZ.DEV_DEPENDENCY}],command:"".concat(tL," ").concat(t4.WORKING_DIRECTORY," --no-cache")}),eslintFix:t3({type:eJ.CLI,packages:[{name:tw,type:eZ.DEV_DEPENDENCY}],command:"".concat(tL," ").concat(t4.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:t3({type:eJ.CLI,packages:[{name:tY,type:eZ.DEPENDENCY}],command:"".concat(tB," -p ").concat(t4.TS_CONFIG," --noEmit")}),testUnit:t3({type:eJ.CLI,packages:[{name:tU,type:eZ.DEV_DEPENDENCY}],command:"".concat(tk," --config ").concat(t4.UNIT_TEST_CONFIG)}),testE2e:t3({type:eJ.CLI,packages:[{name:tU,type:eZ.DEV_DEPENDENCY}],command:"".concat(tk," --config ").concat(t4.E2E_TEST_CONFIG)}),mongoMigrateCreate:U(function(e){return t3({type:eJ.CLI,packages:[{name:t1,type:eZ.DEPENDENCY}],command:"".concat(tK," ").concat(t2," create ").concat(e," -f ").concat(t4.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:t3({type:eJ.CLI,packages:[{name:t1,type:eZ.DEPENDENCY}],command:"".concat(tK," ").concat(t2," up -f ").concat(t4.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:t3({type:eJ.CLI,packages:[{name:t1,type:eZ.DEPENDENCY}],command:"".concat(tK," ").concat(t2," down -f ").concat(t4.MIGRATE_MONGO_CONFIG)}),commitLint:t3({type:eJ.CLI,packages:[{name:tj,type:eZ.DEV_DEPENDENCY},{name:tF,type:eZ.DEV_DEPENDENCY}],command:"".concat(tx," --edit ").concat(t4.GIT_COMMIT_MSG," --config ").concat(t4.COMMITLINT_CONFIG)}),lintStaged:t3({type:eJ.CLI,packages:[{name:tV,type:eZ.DEV_DEPENDENCY}],command:"".concat(tq," --config ").concat(t4.LINT_STAGED_CONFIG)}),configureGitHook:t3({type:eJ.STRING,command:"".concat(tQ," config core.hooksPath ").concat(t4.GIT_HOOK)}),build:t3({type:eJ.STRING,command:"".concat(tH," run --if-present build")}),pnpmInstallStandard:t3({type:eJ.STRING,command:"".concat(tH," install --ignore-scripts")}),pnpmInstallLegacy:t3({type:eJ.STRING,command:"".concat(tH," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:t3({type:eJ.STRING,command:"".concat(tH," install --ignore-scripts --force")}),pnpmPruneStore:t3({type:eJ.STRING,command:"".concat(tH," store prune")}),pnpmCleanCache:t3({type:eJ.STRING,command:"".concat(tH," cache delete")})};var t6={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,ee.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"?t6.getDateTime():new Date;return{id:(0,es.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,a=t.post;n&&r&&e.pre(n,r),n&&a&&e.post(n,a)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:es.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,a=r===void 0?[]:r,s=e.standalone,u=s===void 0?!1:s;var c=new t.Schema(n,{strict:!0});return a.forEach(function(e){var t=e.name,n=e.options,r=e.get;var a=c.virtual(t,n);r&&a.get(r)}),u||c.add(t6.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,a=e.pagination,s=a===void 0?!1:a,u=e.aggregate,c=u===void 0?!1:u,o=e.virtuals,i=o===void 0?[]:o,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 d=t6.createSchema({mongoose:t,schema:r,virtuals:i});return t6.applyPlugins(d,[s&&ea.default,c&&er.default]),t6.applyMiddlewares(d,f),t.model(n,d)},validator:{isEmpty:function e(){return function(e){return s(function(){return T(this,function(t){return[2,!em.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return s(function(){var n;return T(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 l({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return s(function(){return T(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!E(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:O(y({},et.default),{setConfig:U(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eb(t4.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tR,"\n");eA(t4.GIT_IGNORE)?eC(t4.GIT_IGNORE,"utf-8").split("\n").includes(tR)||eT(t4.GIT_IGNORE,n):eb(t4.GIT_IGNORE,n)},"setConfig")})},t7=/*#__PURE__*/function(){function e(t,n){c(this,e);V(this,"collection");this.collection=t.collection(n)}i(e,[{key:"createOne",value:function e(e){return s(function(){var t,n,r;return T(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);t=y({},t6.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=a.sent(),n)];case 2:r=a.sent();return[2,eH(r)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return s(function(){var t,n,r;return T(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);t=e.map(function(e){return y({},t6.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=a.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=a.sent();return[2,eH(r)];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return s(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found",code:eu.NOT_FOUND.CODE}];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return s(function(){var e,t,n;var r=arguments;return T(this,function(a){switch(a.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};a.label=1;case 1:a.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=a.sent(),t)];case 3:n=a.sent();return[2,eH(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return s(function(){var e,t,n;var r=arguments;return T(this,function(a){switch(a.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};a.label=1;case 1:a.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=a.sent(),t)];case 3:n=a.sent();return[2,eH(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return s(function(){var n,r;return T(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=a.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=a.sent();return[2,eH(r)];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return s(function(){var n,r;return T(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=a.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=a.sent();return[2,eH(r)];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return s(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return s(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteMany(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter",code:eu.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}}]);return e}();U(t7,"MongoController");var t8=t7,t9=/*#__PURE__*/function(){function e(t){c(this,e);V(this,"model");this.model=t}i(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return s(function(){var e,t,n,r,a,s,u;var c=arguments;return T(this,function(o){switch(o.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[3]:void 0;o.label=1;case 1:o.trys.push([1,3,,4]);a=this.model.findOne(e,t,n);r&&a.populate(r);return[4,a.exec()];case 2:s=o.sent();return[2,s?{success:!0,result:s}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:eu.NOT_FOUND.CODE}];case 3:u=o.sent();return[2,eH(u)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return s(function(){var e,t,n,r,a,s,u;var c=arguments;return T(this,function(o){switch(o.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[3]:void 0;o.label=1;case 1:o.trys.push([1,3,,4]);a=this.model.find(e,t,n);r&&a.populate(r);s={success:!0};return[4,a.exec()];case 2:return[2,(s.result=o.sent(),s)];case 3:u=o.sent();return[2,eH(u)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return s(function(){var e,t,n,r;var a=arguments;return T(this,function(s){switch(s.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{};s.label=1;case 1:s.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=s.sent(),n)];case 3:r=s.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return s(function(e){var t,n,r;var a=arguments;return T(this,function(s){switch(s.label){case 0:t=a.length>1&&a[1]!==void 0?a[1]:{};s.label=1;case 1:s.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=s.sent(),n)];case 3:r=s.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return s(function(){var e,t,n;var r=arguments;return T(this,function(a){switch(a.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};a.label=1;case 1:a.trys.push([1,3,,4]);t={success:!0};return[4,this.model.countDocuments(e)];case 2:return[2,(t.result=a.sent(),t)];case 3:n=a.sent();return[2,eH(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return s(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return s(function(e){var t,n,r;var a=arguments;return T(this,function(s){switch(s.label){case 0:t=a.length>1&&a[1]!==void 0?a[1]:{};s.label=1;case 1:s.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=s.sent().map(function(e){return E(e,en.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=s.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return s(function(){var e,t,n,r,a;var s=arguments;return T(this,function(u){switch(u.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{},n=s.length>2&&s[2]!==void 0?s[2]:{};u.label=1;case 1:u.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,y({new:!0},n)).exec()];case 2:r=u.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:eu.NOT_FOUND.CODE}];case 3:a=u.sent();return[2,eH(a)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return s(function(){var e,t,n,r,a;var s=arguments;return T(this,function(u){switch(u.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{},n=s.length>2&&s[2]!==void 0?s[2]:{};u.label=1;case 1:u.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=u.sent(),r)];case 3:a=u.sent();return[2,eH(a)];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return s(function(){var e,t,n,r;var a=arguments;return T(this,function(s){switch(s.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{};s.label=1;case 1:s.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=s.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:eu.NOT_FOUND.CODE}];case 3:r=s.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return s(function(){var e,t,n,r;var a=arguments;return T(this,function(s){switch(s.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{};s.label=1;case 1:s.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:eu.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=s.sent();return[2,eH(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return s(function(){var n,r,a,s,u;return T(this,function(c){switch(c.label){case 0:c.trys.push([0,6,,7]);n=new Set;r=0;c.label=1;case 1:if(!(r<10))return[3,5];a=eh(e,r+t);s=!n.has(a);if(!s)return[3,3];n.add(a);return[4,this.model.exists({shortId:a})];case 2:s=!c.sent();c.label=3;case 3:if(s)return[2,{success:!0,result:a}];c.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:eu.INTERNAL_SERVER_ERROR.CODE}];case 6:u=c.sent();return[2,eH(u)];case 7:return[2]}})}).call(this)}},{key:"createSlugQuery",value:function e(e){var t=e.slug,n=e.field,r=e.isObject,a=e.filter;var s=y({},a!==null&&a!==void 0?a:{});return r?O(y({},s),{$or:[l({},"slug.".concat(n),t),{slugHistory:{$elemMatch:l({},"slug.".concat(n),t)}}]}):O(y({},s),{$or:[{slug:t},{slugHistory:t}]})}},{key:"createUniqueSlug",value:function e(e){return s(function(e){var t,n,r,a,s,u,c;return T(this,function(o){switch(o.label){case 0:t=e.slug,n=e.field,r=e.isObject,a=e.filter;s=ep(t),u=s,c=1;o.label=1;case 1:return[4,this.model.exists(this.createSlugQuery({slug:u,field:n,isObject:r,filter:a}))];case 2:if(!o.sent())return[3,4];u="".concat(s,"-").concat(c++);o.label=3;case 3:return[3,1];case 4:return[2,u]}})}).apply(this,arguments)}},{key:"createSlug",value:function e(e){return s(function(e){var t,n,r,a,u,c,o,i,l,f;return T(this,function(d){switch(d.label){case 0:t=this;n=e.field,r=e.from,a=e.filter;d.label=1;case 1:d.trys.push([1,6,,7]);u=r[n];if(!el(u))return[3,3];o={success:!0};i=Object.fromEntries;return[4,Promise.all(Object.entries(u).map(function(e){var n=C(e,2),r=n[0],u=n[1];return s(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,this.createUniqueSlug({slug:u,field:r,isObject:!0,filter:a})];case 1:e=t.sent();return[2,[r,e]]}})}).call(t)}))];case 2:c=(o.result=i.apply(Object,[d.sent()]),o);return[3,5];case 3:l={success:!0};return[4,this.createUniqueSlug({slug:u,field:n,isObject:!1,filter:a})];case 4:c=(l.result=d.sent(),l);d.label=5;case 5:return[2,c];case 6:f=d.sent();return[2,eH(f)];case 7:return[2]}})}).apply(this,arguments)}},{key:"checkSlug",value:function e(e){return s(function(e){var t,n,r,a,s,u,c,o,i,l,f,d,E,p,h,m;return T(this,function(v){switch(v.label){case 0:t=e.slug,n=e.field,r=e.from,a=e.filter;v.label=1;case 1:v.trys.push([1,12,,13]);s=r[n];if(!el(s))return[3,10];u=true,c=false,o=undefined;v.label=2;case 2:v.trys.push([2,7,8,9]);i=Object.values(s)[Symbol.iterator]();v.label=3;case 3:if(!!(u=(l=i.next()).done))return[3,6];f=l.value;d=ep(f);return[4,this.model.exists(this.createSlugQuery({slug:d,field:n,isObject:!0,filter:a}))];case 4:if(v.sent())return[2,{success:!0,result:!0}];v.label=5;case 5:u=true;return[3,3];case 6:return[3,9];case 7:E=v.sent();c=true;o=E;return[3,9];case 8:try{if(!u&&i.return!=null){i.return()}}finally{if(c){throw o}}return[7];case 9:return[2,{success:!0,result:!1}];case 10:p=ep(t);h={success:!0};return[4,this.model.exists(this.createSlugQuery({slug:p,field:n,isObject:!1,filter:a}))];case 11:return[2,(h.result=v.sent()!==null,h)];case 12:m=v.sent();return[2,eH(m)];case 13:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return s(function(){var t,n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,eH(n)];case 3:return[2]}})}).call(this)}}]);return e}();U(t9,"MongooseController");var ne=t9;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});
|
package/dist/node/mongo/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e,t,n,r,s,a,c){try{var o=e[a](c);var i=o.value}catch(e){n(e);return}if(o.done){t(i)}else{Promise.resolve(i).then(r,s)}}function a(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var c=e.apply(t,n);function o(e){s(c,r,a,o,i,"next",e)}function i(e){s(c,r,a,o,i,"throw",e)}o(undefined)})}}function c(e,t,n){t=f(t);return S(e,T()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function o(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function i(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 u(e,t,n){if(t)i(e.prototype,t);if(n)i(e,n);return e}function l(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 f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function E(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)D(e,t)}function d(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function p(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function m(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var c,o;try{for(n=n.call(e);!(s=(c=n.next()).done);s=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){a=true;o=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw o}}return r}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function y(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(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){l(e,t,n[t])})}return e}function g(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 O(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{g(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function S(e,t){if(t&&(_(t)==="object"||typeof t==="function")){return t}return r(e)}function D(e,t){D=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return D(e,t)}function C(e,n){return t(e)||m(e,n)||I(e,n)||h()}function N(e){return n(e)||p(e)||I(e)||y()}function _(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function I(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function T(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(T=function(){return!!e})()}function b(e,t){var n,r,s,a={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 i([e,t])}}function i(o){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,o[0]&&(a=0)),a)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:a.label++;return{value:o[1],done:false};case 5:a.label++;r=o[1];o=[0];continue;case 7:o=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){a=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){a.label=o[1];break}if(o[0]===6&&a.label<s[1]){a.label=s[1];s=o;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(o);break}if(s[2])a.ops.pop();a.trys.pop();continue}o=t.call(e,a)}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 A=Object.defineProperty;var R=function(e,t,n){return t in e?A(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var G=function(e,t){return A(e,"name",{value:t,configurable:!0})};var P=function(e,t,n){return R(e,(typeof t==="undefined"?"undefined":_(t))!="symbol"?t+"":t,n)};var M="MONGO_MIGRATE_OPTIONS";import{Collection as w,Db as L}from"mongodb";import{Document as U,Model as k}from"mongoose";var j=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){o(this,t);return c(this,t,arguments)}return t}(L);G(j,"C_Db");var F=j,x=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){o(this,t);return c(this,t,arguments)}return t}(U);G(x,"C_Document");var V=x,Y=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){o(this,t);return c(this,t,arguments)}return t}(k);G(Y,"C_Model");var q=Y,B=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){o(this,t);return c(this,t,arguments)}return t}(w);G(B,"C_Collection");var K=B;import{format as Q}from"date-fns";import H from"migrate-mongo";import{Document as W}from"mongoose";import J from"mongoose-aggregate-paginate-v2";import $ from"mongoose-paginate-v2";import{v4 as X}from"uuid";var z={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 Z from"unorm";var ee={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},et=Object.entries(ee).reduce(function(e,t){var n=C(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function en(e){return(typeof e==="undefined"?"undefined":_(e))=="object"&&e!==null&&!Array.isArray(e)}G(en,"isObject");import er from"crypto-js";import es from"slugify";var ea=es.default||es;function ec(e,t){var n=G(function(e){var n,r;return ea(e!==null&&e!==void 0?e:"",v({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))},"slugifyWithOptions");if(en(e)){var r={};var s=true,a=false,c=undefined;try{for(var o=Object.entries(e)[Symbol.iterator](),i;!(s=(i=o.next()).done);s=true){var u=C(i.value,2),l=u[0],f=u[1];r[l]=n(f)}}catch(e){a=true;c=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(a){throw c}}}return r}return n(e)}G(ec,"generateSlug");function eo(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return er.SHA256(e).toString(er.enc.Hex).slice(0,t)}G(eo,"generateShortId");var ei={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":_(e))=="object"?d(e,Date)?!1:d(e,Map)||d(e,Set)?e.size===0:d(e,WeakMap)||d(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};import eu from"fs-extra";import el from"path";var ef=eu.lstatSync,eE=eu.readdirSync,ed=eu.mkdirSync,ep=eu.readFileSync,em=eu.unlinkSync,eh=eu.statSync,ey=eu.readJsonSync;function ev(e,t,n){eu.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}G(ev,"writeFileSync");function eg(e,t,n){eu.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}G(eg,"appendFileSync");function eO(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eu.pathExistsSync(e)})}G(eO,"pathExistsSync");var eS=function(e){return e.Error="error",e.Warning="warning",e}({});import eD from"chalk";import eC from"consola";import{GraphQLError as eN}from"graphql";var e_=".cyberskill-storage";import eI from"@dotenvx/dotenvx";import{bool as eT,cleanEnv as eb,str as eA}from"envalid";import eR from"os";import eG from"path";import eP from"process";var eM=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var ew=!1;function eL(){eP.env.NODE_ENV!==eM.PRODUCTION&&!ew&&(eI.config(),ew=!0)}G(eL,"loadEnvFile");function eU(){eL();var e=eb(eP.env,{CWD:eA({default:eP.cwd()}),DEBUG:eT({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:eA({default:eG.join(eR.homedir(),e_)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}G(eU,"getEnv");var ek=eU();ek.DEBUG||(eC.level=4);function ej(e){var t=eD[e];return typeof t=="function"?t:eD.green}G(ej,"chalkKeyword");var eF={silent:eC.silent,level:eC.level,fatal:eC.fatal,error:eC.error,warn:eC.warn,log:eC.log,info:eC.info,success:eC.success,ready:eC.ready,start:eC.start,box:eC.box,debug:eC.debug,trace:eC.trace,verbose:eC.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)){eC.box(eD.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eC.log("".concat(eD.gray("File:")," ").concat(eD.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eC.log(" ".concat(ej(n)("Rule:")," ").concat(s)),eC.log(" ".concat(ej(n)("Message:")," ").concat(a))}),eC.box(ej(n)("".concat(e," : ").concat(t.length))),eC.log(eD.gray("─".repeat(40)))}};function ex(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,s=r===void 0?!0:r,a=n.returnValue,c=n.callback,o=d(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return s&&eF.error(o.message),c&&typeof c=="function"&&c(o),a||{success:!1,message:o.message,code:z.INTERNAL_SERVER_ERROR.CODE}}G(ex,"catchError");import eV from"fs-extra";var eY=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eq}from"child_process";import eB from"process";import*as eK from"util";var eQ=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});import eH from"node-fetch";var eW=eU();function eJ(e){return a(function(){var t,n,r,s;return b(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,eH("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:s=a.sent();return[2,ex(s)];case 4:return[2]}})})()}G(eJ,"getLatestPackageVersion");function e$(e){return a(function(){var t,n,r,s,a,c,o,i,u,l,f,E,d,p,m,h,y,v,g,O,S,D,C,N;return b(this,function(_){switch(_.label){case 0:_.trys.push([0,2,,3]);if(!e){if(eO(t$.PACKAGE_JSON)){t=ey(t$.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,s=t.version,a=s===void 0?"":s;return[2,{success:!0,result:{name:r,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:t$.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!eO(t$.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eQ.DEPENDENCY,isDevDependency:e.type===eQ.DEV_DEPENDENCY,installedPath:"",file:{}}}];c=ey(t$.PACKAGE_JSON),o=c.name,i=c.version,u=i===void 0?"":i,l=c.dependencies,f=l===void 0?{}:l,E=c.devDependencies,d=E===void 0?{}:E;if(e.name===o)return[2,{success:!0,result:{name:o,currentVersion:u,latestVersion:u,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===eQ.DEPENDENCY,isDevDependency:e.type===eQ.DEV_DEPENDENCY,installedPath:t$.PACKAGE_JSON,file:c}}];p=e.name in f,m=e.name in d;return[4,eJ(e.name)];case 1:h=_.sent();if(!h.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:p,isDevDependency:m,installedPath:"",file:{}}}];if(!p&&!m)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:h.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eQ.DEPENDENCY,isDevDependency:e.type===eQ.DEV_DEPENDENCY,installedPath:"",file:{}}}];g=(v=(y=f[e.name])!==null&&y!==void 0?y:d[e.name])!==null&&v!==void 0?v:"",O=tu(eW.CWD,td,e.name,tm);if(!eO(O))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:h.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:p,isDevDependency:m,installedPath:"",file:{}}}];S=ey(O),D=S.version,C=D===void 0?"":D;return[2,g!==C?{success:!0,result:{name:e.name,currentVersion:C||g,latestVersion:h.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:p,isDevDependency:m,installedPath:O,file:S}}:{success:!0,result:{name:e.name,currentVersion:g,latestVersion:h.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:g===h.result,isDependency:p,isDevDependency:m,installedPath:O,file:S}}];case 2:N=_.sent();return[2,ex(N)];case 3:return[2]}})})()}G(e$,"getPackage");function eX(e){return a(function(){var t,n,r,s,a;return b(this,function(c){try{;r=ey(t$.PACKAGE_JSON),s=(t=r.dependencies)!==null&&t!==void 0?t:{},a=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?s[e.name]=e.latestVersion:e.isDevDependency&&(a[e.name]=e.latestVersion),ev(t$.PACKAGE_JSON,JSON.stringify(r,null,4)),eF.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){ex(e)}return[2]})})()}G(eX,"updatePackage");function ez(){return a(function(){var e,t,n,r,s,a,c,o,i,u,l,f,E;return b(this,function(d){switch(d.label){case 0:d.trys.push([0,12,,13]);e=[{command:G(function(){return tz.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:G(function(){return tz.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:G(function(){return tz.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];c=a.value,o=c.command,i=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,o()];case 4:u=d.sent();return[4,ts("".concat(i," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();ex(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:E=d.sent();ex(E);return[3,13];case 13:return[2]}})})()}G(ez,"installDependencies");function eZ(e,t){return a(function(){var n,r,s,a,c,o,i,u,l,f,E,d;return b(this,function(p){switch(p.label){case 0:if(!eO(t$.PACKAGE_JSON)){eF.error("package.json not found. Aborting setup.");return[2]}p.label=1;case 1:p.trys.push([1,16,,17]);return[4,Promise.all(e.map(e$))];case 2:n=p.sent().filter(function(e){return e.success?!e.result.isCurrentProject&&(!e.result.isInstalled||!e.result.isUpToDate):!1});r=n.length>0;if(!r)return[3,7];return[4,Promise.all(n.map(function(e){return e.success?eX(e.result):Promise.resolve()}))];case 3:p.sent();return[4,ez()];case 4:p.sent();s=["Running ESLint with auto-fix"];return[4,tz.eslintFix()];case 5:return[4,ts.apply(void 0,s.concat([p.sent()]))];case 6:r=p.sent();p.label=7;case 7:r;c=true,o=false,i=undefined;p.label=8;case 8:p.trys.push([8,13,14,15]);u=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();p.label=9;case 9:if(!!(c=(l=u.next()).done))return[3,12];f=l.value;return[4,f()];case 10:p.sent();p.label=11;case 11:c=true;return[3,9];case 12:return[3,15];case 13:E=p.sent();o=true;i=E;return[3,15];case 14:try{if(!c&&u.return!=null){u.return()}}finally{if(o){throw i}}return[7];case 15:return[3,17];case 16:d=p.sent();ex(d);return[3,17];case 17:return[2]}})})()}G(eZ,"setupPackages");import e0 from"node-persist";var e1=eU();function e2(){return a(function(){var e;return b(this,function(t){switch(t.label){case 0:e=e0.defaultInstance;if(e)return[3,2];return[4,e0.init({dir:e1.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}G(e2,"initNodePersist");var e4={get:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e2()];case 1:r.sent();return[4,e0.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,ex(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e2()];case 1:r.sent();return[4,e0.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ex(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return b(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e2()];case 1:n.sent();return[4,e0.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ex(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return b(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e2()];case 1:n.sent();return[4,e0.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eF.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,ex(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return b(this,function(t){try{return[2,"".concat(e1.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,ex(e,{returnValue:null})]}return[2]})})()}};var e3=eU(),e5=eK.promisify(eq);function e7(){return a(function(){var e;return b(this,function(t){switch(t.label){case 0:return[4,e$()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}G(e7,"getPackageName");function e6(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,e7()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,e4.set(t,e)];case 3:r.sent(),setTimeout(function(){return a(function(){var e;return b(this,function(n){switch(n.label){case 0:return[4,e4.getLogLink(t)];case 1:e=n.sent();e&&eF.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();ex(n);return[3,5];case 5:return[2]}})})()}G(e6,"saveErrorListToStorage");function e8(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var o,i,u,l,f;var E=s.exec(e)||[],d=a.exec(e)||[],p=c.exec(e)||[];var m,h,y,v,g,O;E.length&&r?t.push({file:r,position:"".concat(E[1],":").concat(E[2]),type:E[3]===eS.Error?eS.Error:eS.Warning,message:(m=E===null||E===void 0?void 0:(o=E[4])===null||o===void 0?void 0:o.trim())!==null&&m!==void 0?m:"",rule:(h=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&h!==void 0?h:""}):d.length?t.push({file:(y=d===null||d===void 0?void 0:d[1])!==null&&y!==void 0?y:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===eS.Error?eS.Error:eS.Warning,message:(v=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):p.length?t.push({file:"commitlint",type:eS.Error,message:(g=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&g!==void 0?g:"",rule:(O=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&e6(t),e3.DEBUG&&n.length&&(eF.warn("Unmatched lines:"),n.forEach(function(e){return eF.info(" ".concat(e))}))}G(e8,"parseTextErrors");function e9(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,c=e.ruleId,o=e.message;n.push({type:r===2?eS.Error:eS.Warning,file:t,position:"".concat(s,":").concat(a),rule:c,message:o})})}),n.length&&e6(n)}catch(t){e8(e)}}G(e9,"parseCommandOutput");function te(e){return a(function(e){var t,n,r,s,a,c,o,i,u;var l=arguments;return b(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e9;n=new AbortController;eB.on("SIGINT",function(){eF.warn("Process interrupted. Terminating..."),n.abort(),eB.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e5(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();o=c.stdout,i=c.stderr,u=c.message;[o,i].forEach(function(e){return e&&t(e)}),!i&&!o&&eF.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}G(te,"executeCommand");function tt(e){return{raw:!0,cmd:e}}G(tt,"rawCommand");function tn(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tV," ").concat(tj," ").concat(tI," ").concat(e):"".concat(tV," ").concat(t_," ").concat(e)}G(tn,"formatCLI");function tr(e,t){return typeof e=="function"?tn(e(t),t):(typeof e==="undefined"?"undefined":_(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tn(e,t):e}G(tr,"formatCommand");function ts(e,t){return a(function(){var n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eF.start("".concat(e)),e3.DEBUG&&eF.info("→ ".concat(t));return[4,te(t)];case 1:r.sent(),eF.success("".concat(e," done."));return[3,3];case 2:n=r.sent();ex(n);return[3,3];case 3:return[2]}})})()}G(ts,"runCommand");import ta from"path";var tc=eU(),to=ta;function ti(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=to).resolve.apply(r,[tc.CWD].concat(N(t)))}G(ti,"resolveWorkingPath");function tu(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=to).join.apply(r,N(t))}G(tu,"join");var tl=eU(),tf=tl.CWD,tE="@cyberskill/shared",td="node_modules",tp="dist",tm="package.json",th="package-lock.json",ty="tsconfig.json",tv=".gitignore",tg=".simple-git-hooks.json",tO="pnpm-lock.yaml",tS=".git/hooks/",tD=".git/COMMIT_EDITMSG",tC=".migrate-mongo.config.js",tN=function(){var e=eV.readJsonSync(ti(tm)).name===tE?tf:tu(tf,td,tE);return tu(e,tp)}(),t_="cyberskill",tI="src/node/cli/index.ts",tT="eslint",tb="eslint",tA="vitest";var tR="vitest",tG="@commitlint/cli",tP="@commitlint/config-conventional",tM="commitlint",tw="lint-staged",tL="lint-staged",tU="typescript",tk="tsc",tj="tsx",tF="git",tx="pnpm",tV="pnpm exec",tY="simple-git-hooks",tq="simple-git-hooks",tB="@eslint/config-inspector",tK="eslint-config-inspector",tQ="node-modules-inspector",tH="node-modules-inspector",tW="migrate-mongo",tJ="./node_modules/migrate-mongo/bin/migrate-mongo",t$={CYBERSKILL_DIRECTORY:tN,WORKING_DIRECTORY:tf,TS_CONFIG:ti(ty),GIT_IGNORE:ti(tv),GIT_HOOK:ti(tS),GIT_COMMIT_MSG:ti(tD),SIMPLE_GIT_HOOKS_JSON:ti(tg),PACKAGE_JSON:ti(tm),PACKAGE_LOCK_JSON:ti(th),PNPM_LOCK_YAML:ti(tO),NODE_MODULES:ti(td),MIGRATE_MONGO_CONFIG:ti(tC),LINT_STAGED_CONFIG:ti("".concat(tN,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:ti("".concat(tN,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:ti("".concat(tN,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ti("".concat(tN,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ti("".concat(tN,"/react/vitest/vitest.e2e.js"))};function tX(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return a(function(){var e;return b(this,function(n){switch(n.label){case 0:switch(t){case eY.CLI:return[3,1];case eY.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,eZ(s,{update:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tr(tt("".concat(tV," ").concat(r))))];case 4:return[2,tr(tt(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}G(tX,"buildCommand");var tz={simpleGitHooks:tX({type:eY.CLI,packages:[{name:tY,type:eQ.DEV_DEPENDENCY}],command:tq}),eslintInspect:tX({type:eY.CLI,packages:[{name:tB,type:eQ.DEV_DEPENDENCY}],command:tK}),nodeModulesInspect:tX({type:eY.CLI,packages:[{name:tQ,type:eQ.DEV_DEPENDENCY}],command:tH}),eslintCheck:tX({type:eY.CLI,packages:[{name:tT,type:eQ.DEV_DEPENDENCY}],command:"".concat(tb," ").concat(t$.WORKING_DIRECTORY," --no-cache")}),eslintFix:tX({type:eY.CLI,packages:[{name:tT,type:eQ.DEV_DEPENDENCY}],command:"".concat(tb," ").concat(t$.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:tX({type:eY.CLI,packages:[{name:tU,type:eQ.DEPENDENCY}],command:"".concat(tk," -p ").concat(t$.TS_CONFIG," --noEmit")}),testUnit:tX({type:eY.CLI,packages:[{name:tA,type:eQ.DEV_DEPENDENCY}],command:"".concat(tR," --config ").concat(t$.UNIT_TEST_CONFIG)}),testE2e:tX({type:eY.CLI,packages:[{name:tA,type:eQ.DEV_DEPENDENCY}],command:"".concat(tR," --config ").concat(t$.E2E_TEST_CONFIG)}),mongoMigrateCreate:G(function(e){return tX({type:eY.CLI,packages:[{name:tW,type:eQ.DEPENDENCY}],command:"".concat(tj," ").concat(tJ," create ").concat(e," -f ").concat(t$.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:tX({type:eY.CLI,packages:[{name:tW,type:eQ.DEPENDENCY}],command:"".concat(tj," ").concat(tJ," up -f ").concat(t$.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:tX({type:eY.CLI,packages:[{name:tW,type:eQ.DEPENDENCY}],command:"".concat(tj," ").concat(tJ," down -f ").concat(t$.MIGRATE_MONGO_CONFIG)}),commitLint:tX({type:eY.CLI,packages:[{name:tG,type:eQ.DEV_DEPENDENCY},{name:tP,type:eQ.DEV_DEPENDENCY}],command:"".concat(tM," --edit ").concat(t$.GIT_COMMIT_MSG," --config ").concat(t$.COMMITLINT_CONFIG)}),lintStaged:tX({type:eY.CLI,packages:[{name:tw,type:eQ.DEV_DEPENDENCY}],command:"".concat(tL," --config ").concat(t$.LINT_STAGED_CONFIG)}),configureGitHook:tX({type:eY.STRING,command:"".concat(tF," config core.hooksPath ").concat(t$.GIT_HOOK)}),build:tX({type:eY.STRING,command:"".concat(tx," run --if-present build")}),pnpmInstallStandard:tX({type:eY.STRING,command:"".concat(tx," install --ignore-scripts")}),pnpmInstallLegacy:tX({type:eY.STRING,command:"".concat(tx," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:tX({type:eY.STRING,command:"".concat(tx," install --ignore-scripts --force")})};var tZ={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return Q(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"?tZ.getDateTime():new Date;return{id:X(),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:X,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,a=e.standalone,c=a===void 0?!1:a;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(tZ.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,c=e.aggregate,o=c===void 0?!1:c,i=e.virtuals,u=i===void 0?[]:i,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=tZ.createSchema({mongoose:t,schema:r,virtuals:u});return tZ.applyPlugins(E,[a&&$,o&&J]),tZ.applyMiddlewares(E,f),t.model(n,E)},validator:{isEmpty:function e(){return function(e){return a(function(){return b(this,function(t){return[2,!ei.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return a(function(){var n;return b(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 l({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return a(function(){return b(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!d(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:O(v({},H),{setConfig:G(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));ev(t$.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tC,"\n");eO(t$.GIT_IGNORE)?ep(t$.GIT_IGNORE,"utf-8").split("\n").includes(tC)||eg(t$.GIT_IGNORE,n):ev(t$.GIT_IGNORE,n)},"setConfig")})},t0=/*#__PURE__*/function(){"use strict";function e(t,n){o(this,e);P(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return a(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=v({},tZ.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,ex(r)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return a(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return v({},tZ.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,ex(r)];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found",code:z.NOT_FOUND.CODE}];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return a(function(){var e,t,n;var r=arguments;return b(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,ex(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return a(function(){var e,t,n;var r=arguments;return b(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,ex(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return a(function(){var n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,ex(r)];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return a(function(){var n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,ex(r)];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteMany(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}}]);return e}();G(t0,"MongoController");var t1=t0,t2=/*#__PURE__*/function(){"use strict";function e(t){o(this,e);P(this,"model");this.model=t}u(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return a(function(){var e,t,n,r,s,a,c;var o=arguments;return b(this,function(i){switch(i.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=i.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:z.NOT_FOUND.CODE}];case 3:c=i.sent();return[2,ex(c)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return a(function(){var e,t,n,r,s,a,c;var o=arguments;return b(this,function(i){switch(i.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=i.sent(),a)];case 3:c=i.sent();return[2,ex(c)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return a(function(e){var t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return a(function(){var e,t,n;var r=arguments;return b(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0};return[4,this.model.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,ex(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return a(function(e){var t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return d(e,W)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return a(function(){var e,t,n,r,s;var a=arguments;return b(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,v({new:!0},n)).exec()];case 2:r=c.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:z.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,ex(s)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return a(function(){var e,t,n,r,s;var a=arguments;return b(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=c.sent(),r)];case 3:s=c.sent();return[2,ex(s)];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=a.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:z.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=a.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:z.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return a(function(){var n,r,s,a,c;return b(this,function(o){switch(o.label){case 0:o.trys.push([0,6,,7]);n=new Set;r=0;o.label=1;case 1:if(!(r<10))return[3,5];s=eo(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!o.sent();o.label=3;case 3:if(a)return[2,{success:!0,result:s}];o.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:z.INTERNAL_SERVER_ERROR.CODE}];case 6:c=o.sent();return[2,ex(c)];case 7:return[2]}})}).call(this)}},{key:"createSlugQuery",value:function e(e){var t=e.slug,n=e.field,r=e.isObject,s=e.filter;var a=v({},s!==null&&s!==void 0?s:{});return r?O(v({},a),{$or:[l({},"slug.".concat(n),t),{slugHistory:{$elemMatch:l({},"slug.".concat(n),t)}}]}):O(v({},a),{$or:[{slug:t},{slugHistory:t}]})}},{key:"createUniqueSlug",value:function e(e){return a(function(e){var t,n,r,s,a,c,o;return b(this,function(i){switch(i.label){case 0:t=e.slug,n=e.field,r=e.isObject,s=e.filter;a=ec(t),c=a,o=1;i.label=1;case 1:return[4,this.model.exists(this.createSlugQuery({slug:c,field:n,isObject:r,filter:s}))];case 2:if(!i.sent())return[3,4];c="".concat(a,"-").concat(o++);i.label=3;case 3:return[3,1];case 4:return[2,c]}})}).apply(this,arguments)}},{key:"createSlug",value:function e(e){return a(function(e){var t,n,r,s,c,o,i,u,l,f;return b(this,function(E){switch(E.label){case 0:t=this;n=e.field,r=e.from,s=e.filter;E.label=1;case 1:E.trys.push([1,6,,7]);c=r[n];if(!en(c))return[3,3];i={success:!0};u=Object.fromEntries;return[4,Promise.all(Object.entries(c).map(function(e){var n=C(e,2),r=n[0],c=n[1];return a(function(){var e;return b(this,function(t){switch(t.label){case 0:return[4,this.createUniqueSlug({slug:c,field:r,isObject:!0,filter:s})];case 1:e=t.sent();return[2,[r,e]]}})}).call(t)}))];case 2:o=(i.result=u.apply(Object,[E.sent()]),i);return[3,5];case 3:l={success:!0};return[4,this.createUniqueSlug({slug:c,field:n,isObject:!1,filter:s})];case 4:o=(l.result=E.sent(),l);E.label=5;case 5:return[2,o];case 6:f=E.sent();return[2,ex(f)];case 7:return[2]}})}).apply(this,arguments)}},{key:"checkSlug",value:function e(e){return a(function(e){var t,n,r,s,a,c,o,i,u,l,f,E,d,p,m,h;return b(this,function(y){switch(y.label){case 0:t=e.slug,n=e.field,r=e.from,s=e.filter;y.label=1;case 1:y.trys.push([1,12,,13]);a=r[n];if(!en(a))return[3,10];c=true,o=false,i=undefined;y.label=2;case 2:y.trys.push([2,7,8,9]);u=Object.values(a)[Symbol.iterator]();y.label=3;case 3:if(!!(c=(l=u.next()).done))return[3,6];f=l.value;E=ec(f);return[4,this.model.exists(this.createSlugQuery({slug:E,field:n,isObject:!0,filter:s}))];case 4:if(y.sent())return[2,{success:!0,result:!0}];y.label=5;case 5:c=true;return[3,3];case 6:return[3,9];case 7:d=y.sent();o=true;i=d;return[3,9];case 8:try{if(!c&&u.return!=null){u.return()}}finally{if(o){throw i}}return[7];case 9:return[2,{success:!0,result:!1}];case 10:p=ec(t);m={success:!0};return[4,this.model.exists(this.createSlugQuery({slug:p,field:n,isObject:!1,filter:s}))];case 11:return[2,(m.result=y.sent()!==null,m)];case 12:h=y.sent();return[2,ex(h)];case 13:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}}]);return e}();G(t2,"MongooseController");var t4=t2;export{K as C_Collection,F as C_Db,V as C_Document,q as C_Model,M as MONGO_MIGRATE_OPTIONS,t1 as MongoController,t4 as MongooseController,J as aggregatePaginate,tZ as mongo,$ as mongoosePaginate};
|
|
1
|
+
function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e,t,n,r,s,a,c){try{var o=e[a](c);var i=o.value}catch(e){n(e);return}if(o.done){t(i)}else{Promise.resolve(i).then(r,s)}}function a(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var c=e.apply(t,n);function o(e){s(c,r,a,o,i,"next",e)}function i(e){s(c,r,a,o,i,"throw",e)}o(undefined)})}}function c(e,t,n){t=f(t);return S(e,T()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function o(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function i(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 u(e,t,n){if(t)i(e.prototype,t);if(n)i(e,n);return e}function l(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 f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function E(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)D(e,t)}function d(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function p(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function m(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var c,o;try{for(n=n.call(e);!(s=(c=n.next()).done);s=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){a=true;o=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw o}}return r}function h(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function y(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(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){l(e,t,n[t])})}return e}function g(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 O(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{g(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function S(e,t){if(t&&(_(t)==="object"||typeof t==="function")){return t}return r(e)}function D(e,t){D=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return D(e,t)}function C(e,n){return t(e)||m(e,n)||I(e,n)||h()}function N(e){return n(e)||p(e)||I(e)||y()}function _(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function I(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function T(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(T=function(){return!!e})()}function b(e,t){var n,r,s,a={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 i([e,t])}}function i(o){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,o[0]&&(a=0)),a)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:a.label++;return{value:o[1],done:false};case 5:a.label++;r=o[1];o=[0];continue;case 7:o=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){a=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){a.label=o[1];break}if(o[0]===6&&a.label<s[1]){a.label=s[1];s=o;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(o);break}if(s[2])a.ops.pop();a.trys.pop();continue}o=t.call(e,a)}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 A=Object.defineProperty;var R=function(e,t,n){return t in e?A(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var G=function(e,t){return A(e,"name",{value:t,configurable:!0})};var P=function(e,t,n){return R(e,(typeof t==="undefined"?"undefined":_(t))!="symbol"?t+"":t,n)};var M="MONGO_MIGRATE_OPTIONS";import{Collection as w,Db as L}from"mongodb";import{Document as U,Model as k}from"mongoose";var j=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){o(this,t);return c(this,t,arguments)}return t}(L);G(j,"C_Db");var F=j,x=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){o(this,t);return c(this,t,arguments)}return t}(U);G(x,"C_Document");var V=x,Y=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){o(this,t);return c(this,t,arguments)}return t}(k);G(Y,"C_Model");var q=Y,B=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){o(this,t);return c(this,t,arguments)}return t}(w);G(B,"C_Collection");var K=B;import{format as Q}from"date-fns";import H from"migrate-mongo";import{Document as W}from"mongoose";import J from"mongoose-aggregate-paginate-v2";import $ from"mongoose-paginate-v2";import{v4 as X}from"uuid";var z={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 Z from"unorm";var ee={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},et=Object.entries(ee).reduce(function(e,t){var n=C(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function en(e){return(typeof e==="undefined"?"undefined":_(e))=="object"&&e!==null&&!Array.isArray(e)}G(en,"isObject");import er from"crypto-js";import es from"slugify";var ea=es.default||es;function ec(e,t){var n=G(function(e){var n,r;return ea(e!==null&&e!==void 0?e:"",v({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))},"slugifyWithOptions");if(en(e)){var r={};var s=true,a=false,c=undefined;try{for(var o=Object.entries(e)[Symbol.iterator](),i;!(s=(i=o.next()).done);s=true){var u=C(i.value,2),l=u[0],f=u[1];r[l]=n(f)}}catch(e){a=true;c=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(a){throw c}}}return r}return n(e)}G(ec,"generateSlug");function eo(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return er.SHA256(e).toString(er.enc.Hex).slice(0,t)}G(eo,"generateShortId");var ei={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":_(e))=="object"?d(e,Date)?!1:d(e,Map)||d(e,Set)?e.size===0:d(e,WeakMap)||d(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};import eu from"fs-extra";import el from"path";var ef=eu.lstatSync,eE=eu.readdirSync,ed=eu.mkdirSync,ep=eu.readFileSync,em=eu.unlinkSync,eh=eu.statSync,ey=eu.readJsonSync;function ev(e,t,n){eu.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}G(ev,"writeFileSync");function eg(e,t,n){eu.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}G(eg,"appendFileSync");function eO(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eu.pathExistsSync(e)})}G(eO,"pathExistsSync");var eS=function(e){return e.Error="error",e.Warning="warning",e}({});import eD from"chalk";import eC from"consola";import{GraphQLError as eN}from"graphql";var e_=".cyberskill-storage";import eI from"@dotenvx/dotenvx";import{bool as eT,cleanEnv as eb,str as eA}from"envalid";import eR from"os";import eG from"path";import eP from"process";var eM=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var ew=!1;function eL(){eP.env.NODE_ENV!==eM.PRODUCTION&&!ew&&(eI.config(),ew=!0)}G(eL,"loadEnvFile");function eU(){eL();var e=eb(eP.env,{CWD:eA({default:eP.cwd()}),DEBUG:eT({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:eA({default:eG.join(eR.homedir(),e_)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}G(eU,"getEnv");var ek=eU();ek.DEBUG||(eC.level=4);function ej(e){var t=eD[e];return typeof t=="function"?t:eD.green}G(ej,"chalkKeyword");var eF={silent:eC.silent,level:eC.level,fatal:eC.fatal,error:eC.error,warn:eC.warn,log:eC.log,info:eC.info,success:eC.success,ready:eC.ready,start:eC.start,box:eC.box,debug:eC.debug,trace:eC.trace,verbose:eC.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)){eC.box(eD.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eC.log("".concat(eD.gray("File:")," ").concat(eD.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eC.log(" ".concat(ej(n)("Rule:")," ").concat(s)),eC.log(" ".concat(ej(n)("Message:")," ").concat(a))}),eC.box(ej(n)("".concat(e," : ").concat(t.length))),eC.log(eD.gray("─".repeat(40)))}};function ex(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,s=r===void 0?!0:r,a=n.returnValue,c=n.callback,o=d(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return s&&eF.error(o.message),c&&typeof c=="function"&&c(o),a||{success:!1,message:o.message,code:z.INTERNAL_SERVER_ERROR.CODE}}G(ex,"catchError");import eV from"fs-extra";var eY=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eq}from"child_process";import eB from"process";import*as eK from"util";var eQ=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});import eH from"node-fetch";var eW=eU();function eJ(e){return a(function(){var t,n,r,s;return b(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,eH("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:s=a.sent();return[2,ex(s)];case 4:return[2]}})})()}G(eJ,"getLatestPackageVersion");function e$(e){return a(function(){var t,n,r,s,a,c,o,i,u,l,f,E,d,p,m,h,y,v,g,O,S,D,C,N;return b(this,function(_){switch(_.label){case 0:_.trys.push([0,2,,3]);if(!e){if(eO(t$.PACKAGE_JSON)){t=ey(t$.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,s=t.version,a=s===void 0?"":s;return[2,{success:!0,result:{name:r,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:t$.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!eO(t$.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eQ.DEPENDENCY,isDevDependency:e.type===eQ.DEV_DEPENDENCY,installedPath:"",file:{}}}];c=ey(t$.PACKAGE_JSON),o=c.name,i=c.version,u=i===void 0?"":i,l=c.dependencies,f=l===void 0?{}:l,E=c.devDependencies,d=E===void 0?{}:E;if(e.name===o)return[2,{success:!0,result:{name:o,currentVersion:u,latestVersion:u,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===eQ.DEPENDENCY,isDevDependency:e.type===eQ.DEV_DEPENDENCY,installedPath:t$.PACKAGE_JSON,file:c}}];p=e.name in f,m=e.name in d;return[4,eJ(e.name)];case 1:h=_.sent();if(!h.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:p,isDevDependency:m,installedPath:"",file:{}}}];if(!p&&!m)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:h.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eQ.DEPENDENCY,isDevDependency:e.type===eQ.DEV_DEPENDENCY,installedPath:"",file:{}}}];g=(v=(y=f[e.name])!==null&&y!==void 0?y:d[e.name])!==null&&v!==void 0?v:"",O=tu(eW.CWD,td,e.name,tm);if(!eO(O))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:h.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:p,isDevDependency:m,installedPath:"",file:{}}}];S=ey(O),D=S.version,C=D===void 0?"":D;return[2,g!==C?{success:!0,result:{name:e.name,currentVersion:C||g,latestVersion:h.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:p,isDevDependency:m,installedPath:O,file:S}}:{success:!0,result:{name:e.name,currentVersion:g,latestVersion:h.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:g===h.result,isDependency:p,isDevDependency:m,installedPath:O,file:S}}];case 2:N=_.sent();return[2,ex(N)];case 3:return[2]}})})()}G(e$,"getPackage");function eX(e){return a(function(){var t,n,r,s,a;return b(this,function(c){try{;r=ey(t$.PACKAGE_JSON),s=(t=r.dependencies)!==null&&t!==void 0?t:{},a=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?s[e.name]=e.latestVersion:e.isDevDependency&&(a[e.name]=e.latestVersion),ev(t$.PACKAGE_JSON,JSON.stringify(r,null,4)),eF.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){ex(e)}return[2]})})()}G(eX,"updatePackage");function ez(){return a(function(){var e,t,n,r,s,a,c,o,i,u,l,f,E;return b(this,function(d){switch(d.label){case 0:d.trys.push([0,12,,13]);e=[{command:G(function(){return tz.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:G(function(){return tz.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:G(function(){return tz.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];c=a.value,o=c.command,i=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,o()];case 4:u=d.sent();return[4,ts("".concat(i," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();ex(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:E=d.sent();ex(E);return[3,13];case 13:return[2]}})})()}G(ez,"installDependencies");function eZ(e,t){return a(function(){var n,r,s,a,c,o,i,u,l,f,E,d,p,m,h,y,v;return b(this,function(g){switch(g.label){case 0:g.trys.push([0,15,,16]);if(!eO(t$.PACKAGE_JSON)){eF.error("package.json not found. Aborting setup.");return[2]}return[4,Promise.all(e.map(e$))];case 1:s=g.sent().filter(function(e){return e.success&&!!e.result&&!e.result.isCurrentProject}).map(function(e){return e.result}),a=s.filter(function(e){return!e.isInstalled}),c=s.filter(function(e){return!e.isUpToDate}),o=[];(t===null||t===void 0?void 0:t.install)&&a.length>0&&(n=o).push.apply(n,N(a.map(eX))),(t===null||t===void 0?void 0:t.update)&&c.length>0&&(r=o).push.apply(r,N(c.map(eX)));i=o.length>0;if(!i)return[3,6];return[4,Promise.all(o)];case 2:g.sent();return[4,ez()];case 3:g.sent();u=["Running ESLint with auto-fix"];return[4,tz.eslintFix()];case 4:return[4,ts.apply(void 0,u.concat([g.sent()]))];case 5:i=g.sent();g.label=6;case 6:i;f=true,E=false,d=undefined;g.label=7;case 7:g.trys.push([7,12,13,14]);p=((l=t===null||t===void 0?void 0:t.callbacks)!==null&&l!==void 0?l:[])[Symbol.iterator]();g.label=8;case 8:if(!!(f=(m=p.next()).done))return[3,11];h=m.value;return[4,h()];case 9:g.sent();g.label=10;case 10:f=true;return[3,8];case 11:return[3,14];case 12:y=g.sent();E=true;d=y;return[3,14];case 13:try{if(!f&&p.return!=null){p.return()}}finally{if(E){throw d}}return[7];case 14:return[3,16];case 15:v=g.sent();ex(v);return[3,16];case 16:return[2]}})})()}G(eZ,"setupPackages");import e0 from"node-persist";var e1=eU();function e2(){return a(function(){var e;return b(this,function(t){switch(t.label){case 0:e=e0.defaultInstance;if(e)return[3,2];return[4,e0.init({dir:e1.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}G(e2,"initNodePersist");var e4={get:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e2()];case 1:r.sent();return[4,e0.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,ex(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e2()];case 1:r.sent();return[4,e0.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ex(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return b(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e2()];case 1:n.sent();return[4,e0.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ex(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return b(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e2()];case 1:n.sent();return[4,e0.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eF.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,ex(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return b(this,function(t){try{return[2,"".concat(e1.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,ex(e,{returnValue:null})]}return[2]})})()}};var e3=eU(),e5=eK.promisify(eq);function e6(){return a(function(){var e;return b(this,function(t){switch(t.label){case 0:return[4,e$()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}G(e6,"getPackageName");function e7(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,e6()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,e4.set(t,e)];case 3:r.sent(),setTimeout(function(){return a(function(){var e;return b(this,function(n){switch(n.label){case 0:return[4,e4.getLogLink(t)];case 1:e=n.sent();e&&eF.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();ex(n);return[3,5];case 5:return[2]}})})()}G(e7,"saveErrorListToStorage");function e8(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var o,i,u,l,f;var E=s.exec(e)||[],d=a.exec(e)||[],p=c.exec(e)||[];var m,h,y,v,g,O;E.length&&r?t.push({file:r,position:"".concat(E[1],":").concat(E[2]),type:E[3]===eS.Error?eS.Error:eS.Warning,message:(m=E===null||E===void 0?void 0:(o=E[4])===null||o===void 0?void 0:o.trim())!==null&&m!==void 0?m:"",rule:(h=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&h!==void 0?h:""}):d.length?t.push({file:(y=d===null||d===void 0?void 0:d[1])!==null&&y!==void 0?y:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===eS.Error?eS.Error:eS.Warning,message:(v=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):p.length?t.push({file:"commitlint",type:eS.Error,message:(g=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&g!==void 0?g:"",rule:(O=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&e7(t),e3.DEBUG&&n.length&&(eF.warn("Unmatched lines:"),n.forEach(function(e){return eF.info(" ".concat(e))}))}G(e8,"parseTextErrors");function e9(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,c=e.ruleId,o=e.message;n.push({type:r===2?eS.Error:eS.Warning,file:t,position:"".concat(s,":").concat(a),rule:c,message:o})})}),n.length&&e7(n)}catch(t){e8(e)}}G(e9,"parseCommandOutput");function te(e){return a(function(e){var t,n,r,s,a,c,o,i,u;var l=arguments;return b(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e9;n=new AbortController;eB.on("SIGINT",function(){eF.warn("Process interrupted. Terminating..."),n.abort(),eB.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e5(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();o=c.stdout,i=c.stderr,u=c.message;[o,i].forEach(function(e){return e&&t(e)}),!i&&!o&&eF.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}G(te,"executeCommand");function tt(e){return{raw:!0,cmd:e}}G(tt,"rawCommand");function tn(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tV," ").concat(tj," ").concat(tI," ").concat(e):"".concat(tV," ").concat(t_," ").concat(e)}G(tn,"formatCLI");function tr(e,t){return typeof e=="function"?tn(e(t),t):(typeof e==="undefined"?"undefined":_(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tn(e,t):e}G(tr,"formatCommand");function ts(e,t){return a(function(){var n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eF.start("".concat(e)),e3.DEBUG&&eF.info("→ ".concat(t));return[4,te(t)];case 1:r.sent(),eF.success("".concat(e," done."));return[3,3];case 2:n=r.sent();ex(n);return[3,3];case 3:return[2]}})})()}G(ts,"runCommand");import ta from"path";var tc=eU(),to=ta;function ti(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=to).resolve.apply(r,[tc.CWD].concat(N(t)))}G(ti,"resolveWorkingPath");function tu(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=to).join.apply(r,N(t))}G(tu,"join");var tl=eU(),tf=tl.CWD,tE="@cyberskill/shared",td="node_modules",tp="dist",tm="package.json",th="package-lock.json",ty="tsconfig.json",tv=".gitignore",tg=".simple-git-hooks.json",tO="pnpm-lock.yaml",tS=".git/hooks/",tD=".git/COMMIT_EDITMSG",tC=".migrate-mongo.config.js",tN=function(){var e=eV.readJsonSync(ti(tm)).name===tE?tf:tu(tf,td,tE);return tu(e,tp)}(),t_="cyberskill",tI="src/node/cli/index.ts",tT="eslint",tb="eslint",tA="vitest";var tR="vitest",tG="@commitlint/cli",tP="@commitlint/config-conventional",tM="commitlint",tw="lint-staged",tL="lint-staged",tU="typescript",tk="tsc",tj="tsx",tF="git",tx="pnpm",tV="pnpm exec",tY="simple-git-hooks",tq="simple-git-hooks",tB="@eslint/config-inspector",tK="eslint-config-inspector",tQ="node-modules-inspector",tH="node-modules-inspector",tW="migrate-mongo",tJ="./node_modules/migrate-mongo/bin/migrate-mongo",t$={CYBERSKILL_DIRECTORY:tN,WORKING_DIRECTORY:tf,TS_CONFIG:ti(ty),GIT_IGNORE:ti(tv),GIT_HOOK:ti(tS),GIT_COMMIT_MSG:ti(tD),SIMPLE_GIT_HOOKS_JSON:ti(tg),PACKAGE_JSON:ti(tm),PACKAGE_LOCK_JSON:ti(th),PNPM_LOCK_YAML:ti(tO),NODE_MODULES:ti(td),MIGRATE_MONGO_CONFIG:ti(tC),LINT_STAGED_CONFIG:ti("".concat(tN,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:ti("".concat(tN,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:ti("".concat(tN,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ti("".concat(tN,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ti("".concat(tN,"/react/vitest/vitest.e2e.js"))};function tX(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return a(function(){var e;return b(this,function(n){switch(n.label){case 0:switch(t){case eY.CLI:return[3,1];case eY.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,eZ(s,{install:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tr(tt("".concat(tV," ").concat(r))))];case 4:return[2,tr(tt(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}G(tX,"buildCommand");var tz={simpleGitHooks:tX({type:eY.CLI,packages:[{name:tY,type:eQ.DEV_DEPENDENCY}],command:tq}),eslintInspect:tX({type:eY.CLI,packages:[{name:tB,type:eQ.DEV_DEPENDENCY}],command:tK}),nodeModulesInspect:tX({type:eY.CLI,packages:[{name:tQ,type:eQ.DEV_DEPENDENCY}],command:tH}),eslintCheck:tX({type:eY.CLI,packages:[{name:tT,type:eQ.DEV_DEPENDENCY}],command:"".concat(tb," ").concat(t$.WORKING_DIRECTORY," --no-cache")}),eslintFix:tX({type:eY.CLI,packages:[{name:tT,type:eQ.DEV_DEPENDENCY}],command:"".concat(tb," ").concat(t$.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:tX({type:eY.CLI,packages:[{name:tU,type:eQ.DEPENDENCY}],command:"".concat(tk," -p ").concat(t$.TS_CONFIG," --noEmit")}),testUnit:tX({type:eY.CLI,packages:[{name:tA,type:eQ.DEV_DEPENDENCY}],command:"".concat(tR," --config ").concat(t$.UNIT_TEST_CONFIG)}),testE2e:tX({type:eY.CLI,packages:[{name:tA,type:eQ.DEV_DEPENDENCY}],command:"".concat(tR," --config ").concat(t$.E2E_TEST_CONFIG)}),mongoMigrateCreate:G(function(e){return tX({type:eY.CLI,packages:[{name:tW,type:eQ.DEPENDENCY}],command:"".concat(tj," ").concat(tJ," create ").concat(e," -f ").concat(t$.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:tX({type:eY.CLI,packages:[{name:tW,type:eQ.DEPENDENCY}],command:"".concat(tj," ").concat(tJ," up -f ").concat(t$.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:tX({type:eY.CLI,packages:[{name:tW,type:eQ.DEPENDENCY}],command:"".concat(tj," ").concat(tJ," down -f ").concat(t$.MIGRATE_MONGO_CONFIG)}),commitLint:tX({type:eY.CLI,packages:[{name:tG,type:eQ.DEV_DEPENDENCY},{name:tP,type:eQ.DEV_DEPENDENCY}],command:"".concat(tM," --edit ").concat(t$.GIT_COMMIT_MSG," --config ").concat(t$.COMMITLINT_CONFIG)}),lintStaged:tX({type:eY.CLI,packages:[{name:tw,type:eQ.DEV_DEPENDENCY}],command:"".concat(tL," --config ").concat(t$.LINT_STAGED_CONFIG)}),configureGitHook:tX({type:eY.STRING,command:"".concat(tF," config core.hooksPath ").concat(t$.GIT_HOOK)}),build:tX({type:eY.STRING,command:"".concat(tx," run --if-present build")}),pnpmInstallStandard:tX({type:eY.STRING,command:"".concat(tx," install --ignore-scripts")}),pnpmInstallLegacy:tX({type:eY.STRING,command:"".concat(tx," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:tX({type:eY.STRING,command:"".concat(tx," install --ignore-scripts --force")}),pnpmPruneStore:tX({type:eY.STRING,command:"".concat(tx," store prune")}),pnpmCleanCache:tX({type:eY.STRING,command:"".concat(tx," cache delete")})};var tZ={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return Q(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"?tZ.getDateTime():new Date;return{id:X(),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:X,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,a=e.standalone,c=a===void 0?!1:a;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(tZ.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,c=e.aggregate,o=c===void 0?!1:c,i=e.virtuals,u=i===void 0?[]:i,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=tZ.createSchema({mongoose:t,schema:r,virtuals:u});return tZ.applyPlugins(E,[a&&$,o&&J]),tZ.applyMiddlewares(E,f),t.model(n,E)},validator:{isEmpty:function e(){return function(e){return a(function(){return b(this,function(t){return[2,!ei.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return a(function(){var n;return b(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 l({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return a(function(){return b(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!d(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:O(v({},H),{setConfig:G(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));ev(t$.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tC,"\n");eO(t$.GIT_IGNORE)?ep(t$.GIT_IGNORE,"utf-8").split("\n").includes(tC)||eg(t$.GIT_IGNORE,n):ev(t$.GIT_IGNORE,n)},"setConfig")})},t0=/*#__PURE__*/function(){"use strict";function e(t,n){o(this,e);P(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return a(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=v({},tZ.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,ex(r)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return a(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return v({},tZ.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,ex(r)];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found",code:z.NOT_FOUND.CODE}];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return a(function(){var e,t,n;var r=arguments;return b(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,ex(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return a(function(){var e,t,n;var r=arguments;return b(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,ex(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return a(function(){var n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,ex(r)];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return a(function(){var n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,ex(r)];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteMany(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter",code:z.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}}]);return e}();G(t0,"MongoController");var t1=t0,t2=/*#__PURE__*/function(){"use strict";function e(t){o(this,e);P(this,"model");this.model=t}u(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return a(function(){var e,t,n,r,s,a,c;var o=arguments;return b(this,function(i){switch(i.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=i.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:z.NOT_FOUND.CODE}];case 3:c=i.sent();return[2,ex(c)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return a(function(){var e,t,n,r,s,a,c;var o=arguments;return b(this,function(i){switch(i.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=i.sent(),a)];case 3:c=i.sent();return[2,ex(c)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return a(function(e){var t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return a(function(){var e,t,n;var r=arguments;return b(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0};return[4,this.model.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,ex(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return a(function(e){var t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return d(e,W)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return a(function(){var e,t,n,r,s;var a=arguments;return b(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,v({new:!0},n)).exec()];case 2:r=c.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:z.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,ex(s)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return a(function(){var e,t,n,r,s;var a=arguments;return b(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=c.sent(),r)];case 3:s=c.sent();return[2,ex(s)];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=a.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:z.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return b(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=a.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:z.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,ex(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return a(function(){var n,r,s,a,c;return b(this,function(o){switch(o.label){case 0:o.trys.push([0,6,,7]);n=new Set;r=0;o.label=1;case 1:if(!(r<10))return[3,5];s=eo(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!o.sent();o.label=3;case 3:if(a)return[2,{success:!0,result:s}];o.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:z.INTERNAL_SERVER_ERROR.CODE}];case 6:c=o.sent();return[2,ex(c)];case 7:return[2]}})}).call(this)}},{key:"createSlugQuery",value:function e(e){var t=e.slug,n=e.field,r=e.isObject,s=e.filter;var a=v({},s!==null&&s!==void 0?s:{});return r?O(v({},a),{$or:[l({},"slug.".concat(n),t),{slugHistory:{$elemMatch:l({},"slug.".concat(n),t)}}]}):O(v({},a),{$or:[{slug:t},{slugHistory:t}]})}},{key:"createUniqueSlug",value:function e(e){return a(function(e){var t,n,r,s,a,c,o;return b(this,function(i){switch(i.label){case 0:t=e.slug,n=e.field,r=e.isObject,s=e.filter;a=ec(t),c=a,o=1;i.label=1;case 1:return[4,this.model.exists(this.createSlugQuery({slug:c,field:n,isObject:r,filter:s}))];case 2:if(!i.sent())return[3,4];c="".concat(a,"-").concat(o++);i.label=3;case 3:return[3,1];case 4:return[2,c]}})}).apply(this,arguments)}},{key:"createSlug",value:function e(e){return a(function(e){var t,n,r,s,c,o,i,u,l,f;return b(this,function(E){switch(E.label){case 0:t=this;n=e.field,r=e.from,s=e.filter;E.label=1;case 1:E.trys.push([1,6,,7]);c=r[n];if(!en(c))return[3,3];i={success:!0};u=Object.fromEntries;return[4,Promise.all(Object.entries(c).map(function(e){var n=C(e,2),r=n[0],c=n[1];return a(function(){var e;return b(this,function(t){switch(t.label){case 0:return[4,this.createUniqueSlug({slug:c,field:r,isObject:!0,filter:s})];case 1:e=t.sent();return[2,[r,e]]}})}).call(t)}))];case 2:o=(i.result=u.apply(Object,[E.sent()]),i);return[3,5];case 3:l={success:!0};return[4,this.createUniqueSlug({slug:c,field:n,isObject:!1,filter:s})];case 4:o=(l.result=E.sent(),l);E.label=5;case 5:return[2,o];case 6:f=E.sent();return[2,ex(f)];case 7:return[2]}})}).apply(this,arguments)}},{key:"checkSlug",value:function e(e){return a(function(e){var t,n,r,s,a,c,o,i,u,l,f,E,d,p,m,h;return b(this,function(y){switch(y.label){case 0:t=e.slug,n=e.field,r=e.from,s=e.filter;y.label=1;case 1:y.trys.push([1,12,,13]);a=r[n];if(!en(a))return[3,10];c=true,o=false,i=undefined;y.label=2;case 2:y.trys.push([2,7,8,9]);u=Object.values(a)[Symbol.iterator]();y.label=3;case 3:if(!!(c=(l=u.next()).done))return[3,6];f=l.value;E=ec(f);return[4,this.model.exists(this.createSlugQuery({slug:E,field:n,isObject:!0,filter:s}))];case 4:if(y.sent())return[2,{success:!0,result:!0}];y.label=5;case 5:c=true;return[3,3];case 6:return[3,9];case 7:d=y.sent();o=true;i=d;return[3,9];case 8:try{if(!c&&u.return!=null){u.return()}}finally{if(o){throw i}}return[7];case 9:return[2,{success:!0,result:!1}];case 10:p=ec(t);m={success:!0};return[4,this.model.exists(this.createSlugQuery({slug:p,field:n,isObject:!1,filter:s}))];case 11:return[2,(m.result=y.sent()!==null,m)];case 12:h=y.sent();return[2,ex(h)];case 13:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return a(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,ex(n)];case 3:return[2]}})}).call(this)}}]);return e}();G(t2,"MongooseController");var t4=t2;export{K as C_Collection,F as C_Db,V as C_Document,q as C_Model,M as MONGO_MIGRATE_OPTIONS,t1 as MongoController,t4 as MongooseController,J as aggregatePaginate,tZ as mongo,$ as mongoosePaginate};
|