@cyberskill/shared 1.140.0 → 1.141.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 +190 -4
- package/dist/_tsup-dts-rollup.d.ts +190 -4
- 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/index.cjs +1 -1
- package/dist/node/index.d.cts +4 -0
- package/dist/node/index.d.ts +4 -0
- package/dist/node/index.js +1 -1
- package/dist/node/mongo/index.cjs +1 -1
- package/dist/node/mongo/index.d.cts +4 -0
- package/dist/node/mongo/index.d.ts +4 -0
- package/dist/node/mongo/index.js +1 -1
- package/dist/node/mongo/mongo.type.d.cts +4 -0
- package/dist/node/mongo/mongo.type.d.ts +4 -0
- package/dist/node/mongo/mongo.util.cjs +1 -1
- package/dist/node/mongo/mongo.util.js +1 -1
- package/package.json +1 -1
|
@@ -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 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 M=Object.getOwnPropertyNames;var P=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=M(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(P(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 q=function(e,t,n){return L(e,(typeof t==="undefined"?"undefined":N(t))!="symbol"?t+"":t,n)};var Y={};k(Y,{C_Collection:function(){return Z},C_Db:function(){return K},C_Document:function(){return J},C_Model:function(){return z},MONGO_MIGRATE_OPTIONS:function(){return V},MongoController:function(){return t6},MongooseController:function(){return t9},aggregatePaginate:function(){return er.default},mongo:function(){return t5},mongoosePaginate:function(){return ea.default}});module.exports=x(Y);var V="MONGO_MIGRATE_OPTIONS";var B=require("mongodb"),Q=require("mongoose");var H=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(B.Db);U(H,"C_Db");var K=H,W=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(Q.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}(Q.Model);U($,"C_Model");var z=$,X=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(B.Collection);U(X,"C_Collection");var Z=X;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),eM=F(require("consola"),1),eP=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=!1;function eq(){ex||(eL.default.config(),ex=!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 eV=eY();eV.DEBUG||(eM.default.level=4);function eB(e){var t=eG.default[e];return typeof t=="function"?t:eG.default.green}U(eB,"chalkKeyword");var eQ={silent:eM.default.silent,level:eM.default.level,fatal:eM.default.fatal,error:eM.default.error,warn:eM.default.warn,log:eM.default.log,info:eM.default.info,success:eM.default.success,ready:eM.default.ready,start:eM.default.start,box:eM.default.box,debug:eM.default.debug,trace:eM.default.trace,verbose:eM.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)){eM.default.box(eG.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,s=e.message;eM.default.log("".concat(eG.default.gray("File:")," ").concat(eG.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&eM.default.log(" ".concat(eB(n)("Rule:")," ").concat(a)),eM.default.log(" ".concat(eB(n)("Message:")," ").concat(s))}),eM.default.box(eB(n)("".concat(e," : ").concat(t.length))),eM.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 eK=F(require("fs-extra"),1);var eW=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eJ=require("child_process"),e$=F(require("process"),1),ez=F(require("util"),1);var eX=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var eZ=F(require("node-fetch"),1);var e0=eY();function e1(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,eZ.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(e1,"getLatestPackageVersion");function e2(e){return s(function(){var t,n,r,a,s,u,c,o,i,l,f,d,E,p,h,m,v,y,g;return T(this,function(O){switch(O.label){case 0:O.trys.push([0,2,,3]);if(!eA(t2.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eX.DEPENDENCY,isDevDependency:e.type===eX.DEV_DEPENDENCY,installedPath:"",file:{}}}];t=eI(t2.PACKAGE_JSON),n=t.name,r=t.version,a=r===void 0?"":r,s=t.dependencies,u=s===void 0?{}:s,c=t.devDependencies,o=c===void 0?{}:c;if(e.name===n)return[2,{success:!0,result:{name:n,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===eX.DEPENDENCY,isDevDependency:e.type===eX.DEV_DEPENDENCY,installedPath:t2.PACKAGE_JSON,file:t}}];i=e.name in u,l=e.name in o;return[4,e1(e.name)];case 1:f=O.sent();if(!f.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:i,isDevDependency:l,installedPath:"",file:{}}}];if(!i&&!l)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:f.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eX.DEPENDENCY,isDevDependency:e.type===eX.DEV_DEPENDENCY,installedPath:"",file:{}}}];p=(E=(d=u[e.name])!==null&&d!==void 0?d:o[e.name])!==null&&E!==void 0?E:"",h=th(e0.CWD,tg,e.name,tS);if(!eA(h))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:f.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:i,isDevDependency:l,installedPath:"",file:{}}}];m=eI(h),v=m.version,y=v===void 0?"":v;return[2,p!==y?{success:!0,result:{name:e.name,currentVersion:y||p,latestVersion:f.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:i,isDevDependency:l,installedPath:h,file:m}}:{success:!0,result:{name:e.name,currentVersion:p,latestVersion:f.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:p===f.result,isDependency:i,isDevDependency:l,installedPath:h,file:m}}];case 2:g=O.sent();return[2,eH(g)];case 3:return[2]}})})()}U(e2,"getPackage");function e4(e){return s(function(){var t,n,r,a,s;return T(this,function(u){try{;r=eI(t2.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(t2.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(e4,"updatePackage");function e3(){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 t3.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:U(function(){return t3.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:U(function(){return t3.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,tl("".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(e3,"installDependencies");function e5(e,t){return s(function(){var n,r,a,s,u,c,o,i,l,f,d,E;return T(this,function(p){switch(p.label){case 0:if(!eA(t2.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(e2))];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?e4(e.result):Promise.resolve()}))];case 3:p.sent();return[4,e3()];case 4:p.sent();a=["Running ESLint with auto-fix"];return[4,t3.eslintFix()];case 5:return[4,tl.apply(void 0,a.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=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[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(e5,"setupPackages");var e7=F(require("node-persist"),1);var e6=eY();function e8(){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:e6.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}U(e8,"initNodePersist");var e9={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,e8()];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,e8()];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,e8()];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,e8()];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(e6.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,eH(e,{returnValue:null})]}return[2]})})()}};var te=eY(),tt=ez.promisify(eJ.exec);function tn(e){return"error_list:".concat(e)}U(tn,"getErrorListKey");function tr(e){return s(function(){var t,n,r;return T(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tn(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,e9.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return s(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,e9.getLogLink(n)];case 1:e=t.sent();e&&eQ.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();eH(r);return[3,4];case 4:return[2]}})})()}U(tr,"saveErrorListToStorage");function ta(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&&tr(t),te.DEBUG&&n.length&&(eQ.warn("Unmatched lines:"),n.forEach(function(e){return eQ.info(" ".concat(e))}))}U(ta,"parseTextErrors");function ts(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&&tr(n)}catch(t){ta(e)}}U(ts,"parseCommandOutput");function tu(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]:ts;n=new AbortController;e$.default.on("SIGINT",function(){eQ.warn("Process interrupted. Terminating..."),n.abort(),e$.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tt(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(tu,"executeCommand");function tc(e){return{raw:!0,cmd:e}}U(tc,"rawCommand");function to(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tK," ").concat(tB," ").concat(tM," ").concat(e):"".concat(tK," ").concat(tG," ").concat(e)}U(to,"formatCLI");function ti(e,t){return typeof e=="function"?to(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"?to(e,t):e}U(ti,"formatCommand");function tl(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)),te.DEBUG&&eQ.info("→ ".concat(t));return[4,tu(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(tl,"runCommand");var tf=F(require("path"),1);var td=eY(),tE=tf.default;function tp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=tE).resolve.apply(r,[td.CWD].concat(_(t)))}U(tp,"resolveWorkingPath");function th(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=tE).join.apply(r,_(t))}U(th,"join");var tm=eY(),tv=tm.CWD,ty="@cyberskill/shared",tg="node_modules",tO="dist",tS="package.json",tD="package-lock.json",tC="tsconfig.json",t_=".gitignore",tN=".simple-git-hooks.json",tI="pnpm-lock.yaml",tb=".git/hooks/",tT=".git/COMMIT_EDITMSG",tA=".migrate-mongo.config.js",tR=function(){var e=eK.default.readJsonSync(tp(tS)).name===ty?tv:th(tv,tg,ty);return th(e,tO)}(),tG="cyberskill",tM="src/node/cli/index.ts",tP="eslint",tw="eslint",tL="vitest";var tU="vitest",tk="@commitlint/cli",tj="@commitlint/config-conventional",tF="commitlint",tx="lint-staged",tq="lint-staged",tY="typescript",tV="tsc",tB="tsx",tQ="git",tH="pnpm",tK="pnpm exec",tW="simple-git-hooks",tJ="simple-git-hooks",t$="@eslint/config-inspector",tz="eslint-config-inspector",tX="node-modules-inspector",tZ="node-modules-inspector",t0="migrate-mongo",t1="./node_modules/migrate-mongo/bin/migrate-mongo",t2={CYBERSKILL_DIRECTORY:tR,WORKING_DIRECTORY:tv,TS_CONFIG:tp(tC),GIT_IGNORE:tp(t_),GIT_HOOK:tp(tb),GIT_COMMIT_MSG:tp(tT),SIMPLE_GIT_HOOKS_JSON:tp(tN),PACKAGE_JSON:tp(tS),PACKAGE_LOCK_JSON:tp(tD),PNPM_LOCK_YAML:tp(tI),NODE_MODULES:tp(tg),MIGRATE_MONGO_CONFIG:tp(tA),LINT_STAGED_CONFIG:tp("".concat(tR,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:tp("".concat(tR,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:tp("".concat(tR,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:tp("".concat(tR,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:tp("".concat(tR,"/react/vitest/vitest.e2e.js"))};function t4(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 eW.CLI:return[3,1];case eW.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,e5(a,{update:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,ti(tc("".concat(tK," ").concat(r))))];case 4:return[2,ti(tc(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}U(t4,"buildCommand");var t3={simpleGitHooks:t4({type:eW.CLI,packages:[{name:tW,type:eX.DEV_DEPENDENCY}],command:tJ}),eslintInspect:t4({type:eW.CLI,packages:[{name:t$,type:eX.DEV_DEPENDENCY}],command:tz}),nodeModulesInspect:t4({type:eW.CLI,packages:[{name:tX,type:eX.DEV_DEPENDENCY}],command:tZ}),eslintCheck:t4({type:eW.CLI,packages:[{name:tP,type:eX.DEV_DEPENDENCY}],command:"".concat(tw," ").concat(t2.WORKING_DIRECTORY," --no-cache")}),eslintFix:t4({type:eW.CLI,packages:[{name:tP,type:eX.DEV_DEPENDENCY}],command:"".concat(tw," ").concat(t2.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:t4({type:eW.CLI,packages:[{name:tY,type:eX.DEPENDENCY}],command:"".concat(tV," -p ").concat(t2.TS_CONFIG," --noEmit")}),testUnit:t4({type:eW.CLI,packages:[{name:tL,type:eX.DEV_DEPENDENCY}],command:"".concat(tU," --config ").concat(t2.UNIT_TEST_CONFIG)}),testE2e:t4({type:eW.CLI,packages:[{name:tL,type:eX.DEV_DEPENDENCY}],command:"".concat(tU," --config ").concat(t2.E2E_TEST_CONFIG)}),mongoMigrateCreate:U(function(e){return t4({type:eW.CLI,packages:[{name:t0,type:eX.DEPENDENCY}],command:"".concat(tB," ").concat(t1," create ").concat(e," -f ").concat(t2.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:t4({type:eW.CLI,packages:[{name:t0,type:eX.DEPENDENCY}],command:"".concat(tB," ").concat(t1," up -f ").concat(t2.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:t4({type:eW.CLI,packages:[{name:t0,type:eX.DEPENDENCY}],command:"".concat(tB," ").concat(t1," down -f ").concat(t2.MIGRATE_MONGO_CONFIG)}),commitLint:t4({type:eW.CLI,packages:[{name:tk,type:eX.DEV_DEPENDENCY},{name:tj,type:eX.DEV_DEPENDENCY}],command:"".concat(tF," --edit ").concat(t2.GIT_COMMIT_MSG," --config ").concat(t2.COMMITLINT_CONFIG)}),lintStaged:t4({type:eW.CLI,packages:[{name:tx,type:eX.DEV_DEPENDENCY}],command:"".concat(tq," --config ").concat(t2.LINT_STAGED_CONFIG)}),configureGitHook:t4({type:eW.STRING,command:"".concat(tQ," config core.hooksPath ").concat(t2.GIT_HOOK)}),stageBuildDirectory:t4({type:eW.STRING,command:"".concat(tQ," add ").concat(tO)}),build:t4({type:eW.STRING,command:"".concat(tH," run --if-present build")}),pnpmInstallStandard:t4({type:eW.STRING,command:"".concat(tH," install --no-frozen-lockfile")}),pnpmInstallLegacy:t4({type:eW.STRING,command:"".concat(tH," install --no-frozen-lockfile --legacy-peer-deps")}),pnpmInstallForce:t4({type:eW.STRING,command:"".concat(tH," install --no-frozen-lockfile --force")})};var t5={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"?t5.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(t5.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=t5.createSchema({mongoose:t,schema:r,virtuals:i});return t5.applyPlugins(d,[s&&ea.default,c&&er.default]),t5.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(t2.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tA,"\n");eA(t2.GIT_IGNORE)?eC(t2.GIT_IGNORE,"utf-8").split("\n").includes(tA)||eT(t2.GIT_IGNORE,n):eb(t2.GIT_IGNORE,n)},"setConfig")})},t7=/*#__PURE__*/function(){function e(t,n){c(this,e);q(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({},t5.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({},t5.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 t6=t7,t8=/*#__PURE__*/function(){function e(t){c(this,e);q(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:"generateSlugQuery",value:function e(e,t,n,r){var a=y({},r!==null&&r!==void 0?r:{});return n?O(y({},a),{$or:[l({},"slug.".concat(t),e),{slugHistory:{$elemMatch:l({},"slug.".concat(t),e)}}]}):O(y({},a),{$or:[{slug:e},{slugHistory:e}]})}},{key:"generateUniqueSlug",value:function e(e,t,n,r){return s(function(){var a,s,u;return T(this,function(c){switch(c.label){case 0:a=ep(e),s=a,u=1;c.label=1;case 1:return[4,this.model.exists(this.generateSlugQuery(s,t,n,r))];case 2:if(!c.sent())return[3,4];s="".concat(a,"-").concat(u++);c.label=3;case 3:return[3,1];case 4:return[2,s]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return s(function(){var r,a,u,c,o,i,l;return T(this,function(f){switch(f.label){case 0:r=this;f.label=1;case 1:f.trys.push([1,6,,7]);a=t[e];if(!el(a))return[3,3];c={success:!0};o=Object.fromEntries;return[4,Promise.all(Object.entries(a).map(function(e){var t=C(e,2),a=t[0],u=t[1];return s(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,this.generateUniqueSlug(u,a,!0,n)];case 1:e=t.sent();return[2,[a,e]]}})}).call(r)}))];case 2:u=(c.result=o.apply(Object,[f.sent()]),c);return[3,5];case 3:i={success:!0};return[4,this.generateUniqueSlug(a,e,!1,n)];case 4:u=(i.result=f.sent(),i);f.label=5;case 5:return[2,u];case 6:l=f.sent();return[2,eH(l)];case 7:return[2]}})}).call(this)}},{key:"checkSlug",value:function e(e,t,n,r){return s(function(){var a,s,u,c,o,i,l,f,d,E,p,h;return T(this,function(m){switch(m.label){case 0:m.trys.push([0,11,,12]);a=n[t];if(!el(a))return[3,9];s=true,u=false,c=undefined;m.label=1;case 1:m.trys.push([1,6,7,8]);o=Object.values(a)[Symbol.iterator]();m.label=2;case 2:if(!!(s=(i=o.next()).done))return[3,5];l=i.value;f=ep(l);return[4,this.model.exists(this.generateSlugQuery(f,t,!0,r))];case 3:if(m.sent())return[2,{success:!0,result:!0}];m.label=4;case 4:s=true;return[3,2];case 5:return[3,8];case 6:d=m.sent();u=true;c=d;return[3,8];case 7:try{if(!s&&o.return!=null){o.return()}}finally{if(u){throw c}}return[7];case 8:return[2,{success:!0,result:!1}];case 9:E=ep(e);p={success:!0};return[4,this.model.exists(this.generateSlugQuery(E,t,!1,r))];case 10:return[2,(p.result=m.sent()!==null,p)];case 11:h=m.sent();return[2,eH(h)];case 12:return[2]}})}).call(this)}},{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(t8,"MongooseController");var t9=t8;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,I()?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)||b(e,n)||m()}function _(e){return n(e)||p(e)||b(e)||v()}function N(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function b(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 I(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(I=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 M=Object.getOwnPropertyNames;var P=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=M(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(P(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 q=function(e,t,n){return L(e,(typeof t==="undefined"?"undefined":N(t))!="symbol"?t+"":t,n)};var Y={};k(Y,{C_Collection:function(){return Z},C_Db:function(){return K},C_Document:function(){return J},C_Model:function(){return z},MONGO_MIGRATE_OPTIONS:function(){return V},MongoController:function(){return t6},MongooseController:function(){return t9},aggregatePaginate:function(){return er.default},mongo:function(){return t5},mongoosePaginate:function(){return ea.default}});module.exports=x(Y);var V="MONGO_MIGRATE_OPTIONS";var B=require("mongodb"),Q=require("mongoose");var H=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(B.Db);U(H,"C_Db");var K=H,W=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(Q.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}(Q.Model);U($,"C_Model");var z=$,X=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return u(this,t,arguments)}return t}(B.Collection);U(X,"C_Collection");var Z=X;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,eb=ev.default.readJsonSync;function eI(e,t,n){ev.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}U(eI,"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),eM=F(require("consola"),1),eP=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=!1;function eq(){ex||(eL.default.config(),ex=!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 eV=eY();eV.DEBUG||(eM.default.level=4);function eB(e){var t=eG.default[e];return typeof t=="function"?t:eG.default.green}U(eB,"chalkKeyword");var eQ={silent:eM.default.silent,level:eM.default.level,fatal:eM.default.fatal,error:eM.default.error,warn:eM.default.warn,log:eM.default.log,info:eM.default.info,success:eM.default.success,ready:eM.default.ready,start:eM.default.start,box:eM.default.box,debug:eM.default.debug,trace:eM.default.trace,verbose:eM.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)){eM.default.box(eG.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,s=e.message;eM.default.log("".concat(eG.default.gray("File:")," ").concat(eG.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&eM.default.log(" ".concat(eB(n)("Rule:")," ").concat(a)),eM.default.log(" ".concat(eB(n)("Message:")," ").concat(s))}),eM.default.box(eB(n)("".concat(e," : ").concat(t.length))),eM.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 eK=F(require("fs-extra"),1);var eW=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eJ=require("child_process"),e$=F(require("process"),1),ez=F(require("util"),1);var eX=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var eZ=F(require("node-fetch"),1);var e0=eY();function e1(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,eZ.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(e1,"getLatestPackageVersion");function e2(e){return s(function(){var t,n,r,a,s,u,c,o,i,l,f,d,E,p,h,m,v,y,g;return T(this,function(O){switch(O.label){case 0:O.trys.push([0,2,,3]);if(!eA(t2.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eX.DEPENDENCY,isDevDependency:e.type===eX.DEV_DEPENDENCY,installedPath:"",file:{}}}];t=eb(t2.PACKAGE_JSON),n=t.name,r=t.version,a=r===void 0?"":r,s=t.dependencies,u=s===void 0?{}:s,c=t.devDependencies,o=c===void 0?{}:c;if(e.name===n)return[2,{success:!0,result:{name:n,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===eX.DEPENDENCY,isDevDependency:e.type===eX.DEV_DEPENDENCY,installedPath:t2.PACKAGE_JSON,file:t}}];i=e.name in u,l=e.name in o;return[4,e1(e.name)];case 1:f=O.sent();if(!f.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:i,isDevDependency:l,installedPath:"",file:{}}}];if(!i&&!l)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:f.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eX.DEPENDENCY,isDevDependency:e.type===eX.DEV_DEPENDENCY,installedPath:"",file:{}}}];p=(E=(d=u[e.name])!==null&&d!==void 0?d:o[e.name])!==null&&E!==void 0?E:"",h=th(e0.CWD,tg,e.name,tS);if(!eA(h))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:f.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:i,isDevDependency:l,installedPath:"",file:{}}}];m=eb(h),v=m.version,y=v===void 0?"":v;return[2,p!==y?{success:!0,result:{name:e.name,currentVersion:y||p,latestVersion:f.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:i,isDevDependency:l,installedPath:h,file:m}}:{success:!0,result:{name:e.name,currentVersion:p,latestVersion:f.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:p===f.result,isDependency:i,isDevDependency:l,installedPath:h,file:m}}];case 2:g=O.sent();return[2,eH(g)];case 3:return[2]}})})()}U(e2,"getPackage");function e4(e){return s(function(){var t,n,r,a,s;return T(this,function(u){try{;r=eb(t2.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),eI(t2.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(e4,"updatePackage");function e3(){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 t3.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:U(function(){return t3.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:U(function(){return t3.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,tl("".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(e3,"installDependencies");function e5(e,t){return s(function(){var n,r,a,s,u,c,o,i,l,f,d,E;return T(this,function(p){switch(p.label){case 0:if(!eA(t2.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(e2))];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?e4(e.result):Promise.resolve()}))];case 3:p.sent();return[4,e3()];case 4:p.sent();a=["Running ESLint with auto-fix"];return[4,t3.eslintFix()];case 5:return[4,tl.apply(void 0,a.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=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[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(e5,"setupPackages");var e7=F(require("node-persist"),1);var e6=eY();function e8(){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:e6.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}U(e8,"initNodePersist");var e9={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,e8()];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,e8()];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,e8()];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,e8()];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(e6.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,eH(e,{returnValue:null})]}return[2]})})()}};var te=eY(),tt=ez.promisify(eJ.exec);function tn(e){return"error_list:".concat(e)}U(tn,"getErrorListKey");function tr(e){return s(function(){var t,n,r;return T(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tn(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,e9.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return s(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,e9.getLogLink(n)];case 1:e=t.sent();e&&eQ.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();eH(r);return[3,4];case 4:return[2]}})})()}U(tr,"saveErrorListToStorage");function ta(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&&tr(t),te.DEBUG&&n.length&&(eQ.warn("Unmatched lines:"),n.forEach(function(e){return eQ.info(" ".concat(e))}))}U(ta,"parseTextErrors");function ts(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&&tr(n)}catch(t){ta(e)}}U(ts,"parseCommandOutput");function tu(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]:ts;n=new AbortController;e$.default.on("SIGINT",function(){eQ.warn("Process interrupted. Terminating..."),n.abort(),e$.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tt(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(tu,"executeCommand");function tc(e){return{raw:!0,cmd:e}}U(tc,"rawCommand");function to(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tK," ").concat(tB," ").concat(tM," ").concat(e):"".concat(tK," ").concat(tG," ").concat(e)}U(to,"formatCLI");function ti(e,t){return typeof e=="function"?to(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"?to(e,t):e}U(ti,"formatCommand");function tl(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)),te.DEBUG&&eQ.info("→ ".concat(t));return[4,tu(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(tl,"runCommand");var tf=F(require("path"),1);var td=eY(),tE=tf.default;function tp(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=tE).resolve.apply(r,[td.CWD].concat(_(t)))}U(tp,"resolveWorkingPath");function th(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=tE).join.apply(r,_(t))}U(th,"join");var tm=eY(),tv=tm.CWD,ty="@cyberskill/shared",tg="node_modules",tO="dist",tS="package.json",tD="package-lock.json",tC="tsconfig.json",t_=".gitignore",tN=".simple-git-hooks.json",tb="pnpm-lock.yaml",tI=".git/hooks/",tT=".git/COMMIT_EDITMSG",tA=".migrate-mongo.config.js",tR=function(){var e=eK.default.readJsonSync(tp(tS)).name===ty?tv:th(tv,tg,ty);return th(e,tO)}(),tG="cyberskill",tM="src/node/cli/index.ts",tP="eslint",tw="eslint",tL="vitest";var tU="vitest",tk="@commitlint/cli",tj="@commitlint/config-conventional",tF="commitlint",tx="lint-staged",tq="lint-staged",tY="typescript",tV="tsc",tB="tsx",tQ="git",tH="pnpm",tK="pnpm exec",tW="simple-git-hooks",tJ="simple-git-hooks",t$="@eslint/config-inspector",tz="eslint-config-inspector",tX="node-modules-inspector",tZ="node-modules-inspector",t0="migrate-mongo",t1="./node_modules/migrate-mongo/bin/migrate-mongo",t2={CYBERSKILL_DIRECTORY:tR,WORKING_DIRECTORY:tv,TS_CONFIG:tp(tC),GIT_IGNORE:tp(t_),GIT_HOOK:tp(tI),GIT_COMMIT_MSG:tp(tT),SIMPLE_GIT_HOOKS_JSON:tp(tN),PACKAGE_JSON:tp(tS),PACKAGE_LOCK_JSON:tp(tD),PNPM_LOCK_YAML:tp(tb),NODE_MODULES:tp(tg),MIGRATE_MONGO_CONFIG:tp(tA),LINT_STAGED_CONFIG:tp("".concat(tR,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:tp("".concat(tR,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:tp("".concat(tR,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:tp("".concat(tR,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:tp("".concat(tR,"/react/vitest/vitest.e2e.js"))};function t4(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 eW.CLI:return[3,1];case eW.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,e5(a,{update:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,ti(tc("".concat(tK," ").concat(r))))];case 4:return[2,ti(tc(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}U(t4,"buildCommand");var t3={simpleGitHooks:t4({type:eW.CLI,packages:[{name:tW,type:eX.DEV_DEPENDENCY}],command:tJ}),eslintInspect:t4({type:eW.CLI,packages:[{name:t$,type:eX.DEV_DEPENDENCY}],command:tz}),nodeModulesInspect:t4({type:eW.CLI,packages:[{name:tX,type:eX.DEV_DEPENDENCY}],command:tZ}),eslintCheck:t4({type:eW.CLI,packages:[{name:tP,type:eX.DEV_DEPENDENCY}],command:"".concat(tw," ").concat(t2.WORKING_DIRECTORY," --no-cache")}),eslintFix:t4({type:eW.CLI,packages:[{name:tP,type:eX.DEV_DEPENDENCY}],command:"".concat(tw," ").concat(t2.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:t4({type:eW.CLI,packages:[{name:tY,type:eX.DEPENDENCY}],command:"".concat(tV," -p ").concat(t2.TS_CONFIG," --noEmit")}),testUnit:t4({type:eW.CLI,packages:[{name:tL,type:eX.DEV_DEPENDENCY}],command:"".concat(tU," --config ").concat(t2.UNIT_TEST_CONFIG)}),testE2e:t4({type:eW.CLI,packages:[{name:tL,type:eX.DEV_DEPENDENCY}],command:"".concat(tU," --config ").concat(t2.E2E_TEST_CONFIG)}),mongoMigrateCreate:U(function(e){return t4({type:eW.CLI,packages:[{name:t0,type:eX.DEPENDENCY}],command:"".concat(tB," ").concat(t1," create ").concat(e," -f ").concat(t2.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:t4({type:eW.CLI,packages:[{name:t0,type:eX.DEPENDENCY}],command:"".concat(tB," ").concat(t1," up -f ").concat(t2.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:t4({type:eW.CLI,packages:[{name:t0,type:eX.DEPENDENCY}],command:"".concat(tB," ").concat(t1," down -f ").concat(t2.MIGRATE_MONGO_CONFIG)}),commitLint:t4({type:eW.CLI,packages:[{name:tk,type:eX.DEV_DEPENDENCY},{name:tj,type:eX.DEV_DEPENDENCY}],command:"".concat(tF," --edit ").concat(t2.GIT_COMMIT_MSG," --config ").concat(t2.COMMITLINT_CONFIG)}),lintStaged:t4({type:eW.CLI,packages:[{name:tx,type:eX.DEV_DEPENDENCY}],command:"".concat(tq," --config ").concat(t2.LINT_STAGED_CONFIG)}),configureGitHook:t4({type:eW.STRING,command:"".concat(tQ," config core.hooksPath ").concat(t2.GIT_HOOK)}),stageBuildDirectory:t4({type:eW.STRING,command:"".concat(tQ," add ").concat(tO)}),build:t4({type:eW.STRING,command:"".concat(tH," run --if-present build")}),pnpmInstallStandard:t4({type:eW.STRING,command:"".concat(tH," install --no-frozen-lockfile")}),pnpmInstallLegacy:t4({type:eW.STRING,command:"".concat(tH," install --no-frozen-lockfile --legacy-peer-deps")}),pnpmInstallForce:t4({type:eW.STRING,command:"".concat(tH," install --no-frozen-lockfile --force")})};var t5={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"?t5.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(t5.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=t5.createSchema({mongoose:t,schema:r,virtuals:i});return t5.applyPlugins(d,[s&&ea.default,c&&er.default]),t5.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));eI(t2.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tA,"\n");eA(t2.GIT_IGNORE)?eC(t2.GIT_IGNORE,"utf-8").split("\n").includes(tA)||eT(t2.GIT_IGNORE,n):eI(t2.GIT_IGNORE,n)},"setConfig")})},t7=/*#__PURE__*/function(){function e(t,n){c(this,e);q(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({},t5.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({},t5.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 t6=t7,t8=/*#__PURE__*/function(){function e(t){c(this,e);q(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:"generateSlugQuery",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:"generateUniqueSlug",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.generateSlugQuery({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.generateUniqueSlug({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.generateUniqueSlug({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.generateSlugQuery({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.generateSlugQuery({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(t8,"MongooseController");var t9=t8;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});
|
|
@@ -54,6 +54,10 @@ export { I_Input_UpdateMany_alias_1 as I_Input_UpdateMany } from '../../_tsup-dt
|
|
|
54
54
|
export { I_DeleteOptionsExtended_alias_1 as I_DeleteOptionsExtended } from '../../_tsup-dts-rollup.cjs';
|
|
55
55
|
export { I_Input_DeleteOne_alias_1 as I_Input_DeleteOne } from '../../_tsup-dts-rollup.cjs';
|
|
56
56
|
export { I_Input_DeleteMany_alias_1 as I_Input_DeleteMany } from '../../_tsup-dts-rollup.cjs';
|
|
57
|
+
export { I_InputSlug_alias_1 as I_InputSlug } from '../../_tsup-dts-rollup.cjs';
|
|
58
|
+
export { I_Input_CreateSlug_alias_1 as I_Input_CreateSlug } from '../../_tsup-dts-rollup.cjs';
|
|
59
|
+
export { I_Input_CheckSlug_alias_1 as I_Input_CheckSlug } from '../../_tsup-dts-rollup.cjs';
|
|
60
|
+
export { I_Input_GenerateSlug_alias_1 as I_Input_GenerateSlug } from '../../_tsup-dts-rollup.cjs';
|
|
57
61
|
export { aggregatePaginate_alias_1 as aggregatePaginate } from '../../_tsup-dts-rollup.cjs';
|
|
58
62
|
export { mongoosePaginate_alias_1 as mongoosePaginate } from '../../_tsup-dts-rollup.cjs';
|
|
59
63
|
export { mongo_alias_1 as mongo } from '../../_tsup-dts-rollup.cjs';
|
|
@@ -54,6 +54,10 @@ export { I_Input_UpdateMany_alias_1 as I_Input_UpdateMany } from '../../_tsup-dt
|
|
|
54
54
|
export { I_DeleteOptionsExtended_alias_1 as I_DeleteOptionsExtended } from '../../_tsup-dts-rollup.js';
|
|
55
55
|
export { I_Input_DeleteOne_alias_1 as I_Input_DeleteOne } from '../../_tsup-dts-rollup.js';
|
|
56
56
|
export { I_Input_DeleteMany_alias_1 as I_Input_DeleteMany } from '../../_tsup-dts-rollup.js';
|
|
57
|
+
export { I_InputSlug_alias_1 as I_InputSlug } from '../../_tsup-dts-rollup.js';
|
|
58
|
+
export { I_Input_CreateSlug_alias_1 as I_Input_CreateSlug } from '../../_tsup-dts-rollup.js';
|
|
59
|
+
export { I_Input_CheckSlug_alias_1 as I_Input_CheckSlug } from '../../_tsup-dts-rollup.js';
|
|
60
|
+
export { I_Input_GenerateSlug_alias_1 as I_Input_GenerateSlug } from '../../_tsup-dts-rollup.js';
|
|
57
61
|
export { aggregatePaginate_alias_1 as aggregatePaginate } from '../../_tsup-dts-rollup.js';
|
|
58
62
|
export { mongoosePaginate_alias_1 as mongoosePaginate } from '../../_tsup-dts-rollup.js';
|
|
59
63
|
export { mongo_alias_1 as mongo } from '../../_tsup-dts-rollup.js';
|
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,o){try{var c=e[a](o);var i=c.value}catch(e){n(e);return}if(c.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 o=e.apply(t,n);function c(e){s(o,r,a,c,i,"next",e)}function i(e){s(o,r,a,c,i,"throw",e)}c(undefined)})}}function o(e,t,n){t=f(t);return S(e,T()?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 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 o,c;try{for(n=n.call(e);!(s=(o=n.next()).done);s=true){r.push(o.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 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 A(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=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 b=Object.defineProperty;var R=function(e,t,n){return t in e?b(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var G=function(e,t){return b(e,"name",{value:t,configurable:!0})};var M=function(e,t,n){return R(e,(typeof t==="undefined"?"undefined":_(t))!="symbol"?t+"":t,n)};var P="MONGO_MIGRATE_OPTIONS";import{Collection as w,Db as L}from"mongodb";import{Document as U,Model as k}from"mongoose";var F=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(L);G(F,"C_Db");var j=F,x=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(U);G(x,"C_Document");var Y=x,V=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(k);G(V,"C_Model");var B=V,q=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(w);G(q,"C_Collection");var Q=q;import{format as K}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 z}from"uuid";var X={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};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 eo(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,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true){var u=C(i.value,2),l=u[0],f=u[1];r[l]=n(f)}}catch(e){a=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(a){throw o}}}return r}return n(e)}G(eo,"generateSlug");function ec(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(ec,"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";var el=eu.lstatSync,ef=eu.readdirSync,eE=eu.mkdirSync,ed=eu.readFileSync,ep=eu.unlinkSync,em=eu.statSync,eh=eu.readJsonSync;function ey(e,t,n){eu.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}G(ey,"writeFileSync");function ev(e,t,n){eu.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}G(ev,"appendFileSync");function eg(){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(eg,"pathExistsSync");var eO=function(e){return e.Error="error",e.Warning="warning",e}({});import eS from"chalk";import eD from"consola";import{GraphQLError as eC}from"graphql";var eN=".cyberskill-storage";import e_ from"@dotenvx/dotenvx";import{bool as eI,cleanEnv as eT,str as eA}from"envalid";import eb from"node:os";import eR from"node:path";import eG from"node:process";var eM=!1;function eP(){eM||(e_.config(),eM=!0)}G(eP,"loadEnvFile");function ew(){eP();var e=eT(eG.env,{CWD:eA({default:eG.cwd()}),DEBUG:eI({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:eA({default:eR.join(eb.homedir(),eN)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}G(ew,"getEnv");var eL=ew();eL.DEBUG||(eD.level=4);function eU(e){var t=eS[e];return typeof t=="function"?t:eS.green}G(eU,"chalkKeyword");var ek={silent:eD.silent,level:eD.level,fatal:eD.fatal,error:eD.error,warn:eD.warn,log:eD.log,info:eD.info,success:eD.success,ready:eD.ready,start:eD.start,box:eD.box,debug:eD.debug,trace:eD.trace,verbose:eD.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)){eD.box(eS.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eD.log("".concat(eS.gray("File:")," ").concat(eS.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eD.log(" ".concat(eU(n)("Rule:")," ").concat(s)),eD.log(" ".concat(eU(n)("Message:")," ").concat(a))}),eD.box(eU(n)("".concat(e," : ").concat(t.length))),eD.log(eS.gray("─".repeat(40)))}};function eF(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,s=r===void 0?!0:r,a=n.returnValue,o=n.callback,c=d(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return s&&ek.error(c.message),o&&typeof o=="function"&&o(c),a||{success:!1,message:c.message,code:X.INTERNAL_SERVER_ERROR.CODE}}G(eF,"catchError");import ej from"fs-extra";var ex=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eY}from"node:child_process";import eV from"node:process";import*as eB from"node: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 eQ from"node-fetch";var eK=ew();function eH(e){return a(function(){var t,n,r,s;return A(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,eQ("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,eF(s)];case 4:return[2]}})})()}G(eH,"getLatestPackageVersion");function eW(e){return a(function(){var t,n,r,s,a,o,c,i,u,l,f,E,d,p,m,h,y,v,g;return A(this,function(O){switch(O.label){case 0:O.trys.push([0,2,,3]);if(!eg(tW.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:{}}}];t=eh(tW.PACKAGE_JSON),n=t.name,r=t.version,s=r===void 0?"":r,a=t.dependencies,o=a===void 0?{}:a,c=t.devDependencies,i=c===void 0?{}:c;if(e.name===n)return[2,{success:!0,result:{name:n,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===eq.DEPENDENCY,isDevDependency:e.type===eq.DEV_DEPENDENCY,installedPath:tW.PACKAGE_JSON,file:t}}];u=e.name in o,l=e.name in i;return[4,eH(e.name)];case 1:f=O.sent();if(!f.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}}];if(!u&&!l)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:f.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eq.DEPENDENCY,isDevDependency:e.type===eq.DEV_DEPENDENCY,installedPath:"",file:{}}}];p=(d=(E=o[e.name])!==null&&E!==void 0?E:i[e.name])!==null&&d!==void 0?d:"",m=tc(eK.CWD,tf,e.name,td);if(!eg(m))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:f.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}}];h=eh(m),y=h.version,v=y===void 0?"":y;return[2,p!==v?{success:!0,result:{name:e.name,currentVersion:v||p,latestVersion:f.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:m,file:h}}:{success:!0,result:{name:e.name,currentVersion:p,latestVersion:f.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:p===f.result,isDependency:u,isDevDependency:l,installedPath:m,file:h}}];case 2:g=O.sent();return[2,eF(g)];case 3:return[2]}})})()}G(eW,"getPackage");function eJ(e){return a(function(){var t,n,r,s,a;return A(this,function(o){try{;r=eh(tW.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),ey(tW.PACKAGE_JSON,JSON.stringify(r,null,4)),ek.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){eF(e)}return[2]})})()}G(eJ,"updatePackage");function e$(){return a(function(){var e,t,n,r,s,a,o,c,i,u,l,f,E;return A(this,function(d){switch(d.label){case 0:d.trys.push([0,12,,13]);e=[{command:G(function(){return t$.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:G(function(){return t$.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:G(function(){return t$.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];o=a.value,c=o.command,i=o.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:u=d.sent();return[4,tn("".concat(i," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();eF(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();eF(E);return[3,13];case 13:return[2]}})})()}G(e$,"installDependencies");function ez(e,t){return a(function(){var n,r,s,a,o,c,i,u,l,f,E,d;return A(this,function(p){switch(p.label){case 0:if(!eg(tW.PACKAGE_JSON)){ek.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(eW))];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?eJ(e.result):Promise.resolve()}))];case 3:p.sent();return[4,e$()];case 4:p.sent();s=["Running ESLint with auto-fix"];return[4,t$.eslintFix()];case 5:return[4,tn.apply(void 0,s.concat([p.sent()]))];case 6:r=p.sent();p.label=7;case 7:r;o=true,c=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(!!(o=(l=u.next()).done))return[3,12];f=l.value;return[4,f()];case 10:p.sent();p.label=11;case 11:o=true;return[3,9];case 12:return[3,15];case 13:E=p.sent();c=true;i=E;return[3,15];case 14:try{if(!o&&u.return!=null){u.return()}}finally{if(c){throw i}}return[7];case 15:return[3,17];case 16:d=p.sent();eF(d);return[3,17];case 17:return[2]}})})()}G(ez,"setupPackages");import eX from"node-persist";var eZ=ew();function e0(){return a(function(){var e;return A(this,function(t){switch(t.label){case 0:e=eX.defaultInstance;if(e)return[3,2];return[4,eX.init({dir:eZ.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}G(e0,"initNodePersist");var e1={get:function e(e){return a(function(){var t,n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0()];case 1:r.sent();return[4,eX.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,eF(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0()];case 1:r.sent();return[4,eX.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eF(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return A(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e0()];case 1:n.sent();return[4,eX.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eF(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return A(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e0()];case 1:n.sent();return[4,eX.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ek.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,eF(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return A(this,function(t){try{return[2,"".concat(eZ.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,eF(e,{returnValue:null})]}return[2]})})()}};var e2=ew(),e4=eB.promisify(eY);function e3(e){return"error_list:".concat(e)}G(e3,"getErrorListKey");function e5(e){return a(function(){var t,n,r;return A(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e3(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,e1.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return a(function(){var e;return A(this,function(t){switch(t.label){case 0:return[4,e1.getLogLink(n)];case 1:e=t.sent();e&&ek.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();eF(r);return[3,4];case 4:return[2]}})})()}G(e5,"saveErrorListToStorage");function e7(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.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,f;var E=s.exec(e)||[],d=a.exec(e)||[],p=o.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]===eO.Error?eO.Error:eO.Warning,message:(m=E===null||E===void 0?void 0:(c=E[4])===null||c===void 0?void 0:c.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]===eO.Error?eO.Error:eO.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:eO.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&&e5(t),e2.DEBUG&&n.length&&(ek.warn("Unmatched lines:"),n.forEach(function(e){return ek.info(" ".concat(e))}))}G(e7,"parseTextErrors");function e6(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,o=e.ruleId,c=e.message;n.push({type:r===2?eO.Error:eO.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&e5(n)}catch(t){e7(e)}}G(e6,"parseCommandOutput");function e8(e){return a(function(e){var t,n,r,s,a,o,c,i,u;var l=arguments;return A(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e6;n=new AbortController;eV.on("SIGINT",function(){ek.warn("Process interrupted. Terminating..."),n.abort(),eV.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e4(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:o=f.sent();c=o.stdout,i=o.stderr,u=o.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&ek.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}G(e8,"executeCommand");function e9(e){return{raw:!0,cmd:e}}G(e9,"rawCommand");function te(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tj," ").concat(tU," ").concat(tN," ").concat(e):"".concat(tj," ").concat(tC," ").concat(e)}G(te,"formatCLI");function tt(e,t){return typeof e=="function"?te(e(t),t):(typeof e==="undefined"?"undefined":_(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?te(e,t):e}G(tt,"formatCommand");function tn(e,t){return a(function(){var n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ek.start("".concat(e)),e2.DEBUG&&ek.info("→ ".concat(t));return[4,e8(t)];case 1:r.sent(),ek.success("".concat(e," done."));return[3,3];case 2:n=r.sent();eF(n);return[3,3];case 3:return[2]}})})()}G(tn,"runCommand");import tr from"node:path";var ts=ew(),ta=tr;function to(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ta).resolve.apply(r,[ts.CWD].concat(N(t)))}G(to,"resolveWorkingPath");function tc(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ta).join.apply(r,N(t))}G(tc,"join");var ti=ew(),tu=ti.CWD,tl="@cyberskill/shared",tf="node_modules",tE="dist",td="package.json",tp="package-lock.json",tm="tsconfig.json",th=".gitignore",ty=".simple-git-hooks.json",tv="pnpm-lock.yaml",tg=".git/hooks/",tO=".git/COMMIT_EDITMSG",tS=".migrate-mongo.config.js",tD=function(){var e=ej.readJsonSync(to(td)).name===tl?tu:tc(tu,tf,tl);return tc(e,tE)}(),tC="cyberskill",tN="src/node/cli/index.ts",t_="eslint",tI="eslint",tT="vitest";var tA="vitest",tb="@commitlint/cli",tR="@commitlint/config-conventional",tG="commitlint",tM="lint-staged",tP="lint-staged",tw="typescript",tL="tsc",tU="tsx",tk="git",tF="pnpm",tj="pnpm exec",tx="simple-git-hooks",tY="simple-git-hooks",tV="@eslint/config-inspector",tB="eslint-config-inspector",tq="node-modules-inspector",tQ="node-modules-inspector",tK="migrate-mongo",tH="./node_modules/migrate-mongo/bin/migrate-mongo",tW={CYBERSKILL_DIRECTORY:tD,WORKING_DIRECTORY:tu,TS_CONFIG:to(tm),GIT_IGNORE:to(th),GIT_HOOK:to(tg),GIT_COMMIT_MSG:to(tO),SIMPLE_GIT_HOOKS_JSON:to(ty),PACKAGE_JSON:to(td),PACKAGE_LOCK_JSON:to(tp),PNPM_LOCK_YAML:to(tv),NODE_MODULES:to(tf),MIGRATE_MONGO_CONFIG:to(tS),LINT_STAGED_CONFIG:to("".concat(tD,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:to("".concat(tD,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:to("".concat(tD,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:to("".concat(tD,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:to("".concat(tD,"/react/vitest/vitest.e2e.js"))};function tJ(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 A(this,function(n){switch(n.label){case 0:switch(t){case ex.CLI:return[3,1];case ex.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,tt(e9("".concat(tj," ").concat(r))))];case 4:return[2,tt(e9(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}G(tJ,"buildCommand");var t$={simpleGitHooks:tJ({type:ex.CLI,packages:[{name:tx,type:eq.DEV_DEPENDENCY}],command:tY}),eslintInspect:tJ({type:ex.CLI,packages:[{name:tV,type:eq.DEV_DEPENDENCY}],command:tB}),nodeModulesInspect:tJ({type:ex.CLI,packages:[{name:tq,type:eq.DEV_DEPENDENCY}],command:tQ}),eslintCheck:tJ({type:ex.CLI,packages:[{name:t_,type:eq.DEV_DEPENDENCY}],command:"".concat(tI," ").concat(tW.WORKING_DIRECTORY," --no-cache")}),eslintFix:tJ({type:ex.CLI,packages:[{name:t_,type:eq.DEV_DEPENDENCY}],command:"".concat(tI," ").concat(tW.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:tJ({type:ex.CLI,packages:[{name:tw,type:eq.DEPENDENCY}],command:"".concat(tL," -p ").concat(tW.TS_CONFIG," --noEmit")}),testUnit:tJ({type:ex.CLI,packages:[{name:tT,type:eq.DEV_DEPENDENCY}],command:"".concat(tA," --config ").concat(tW.UNIT_TEST_CONFIG)}),testE2e:tJ({type:ex.CLI,packages:[{name:tT,type:eq.DEV_DEPENDENCY}],command:"".concat(tA," --config ").concat(tW.E2E_TEST_CONFIG)}),mongoMigrateCreate:G(function(e){return tJ({type:ex.CLI,packages:[{name:tK,type:eq.DEPENDENCY}],command:"".concat(tU," ").concat(tH," create ").concat(e," -f ").concat(tW.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:tJ({type:ex.CLI,packages:[{name:tK,type:eq.DEPENDENCY}],command:"".concat(tU," ").concat(tH," up -f ").concat(tW.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:tJ({type:ex.CLI,packages:[{name:tK,type:eq.DEPENDENCY}],command:"".concat(tU," ").concat(tH," down -f ").concat(tW.MIGRATE_MONGO_CONFIG)}),commitLint:tJ({type:ex.CLI,packages:[{name:tb,type:eq.DEV_DEPENDENCY},{name:tR,type:eq.DEV_DEPENDENCY}],command:"".concat(tG," --edit ").concat(tW.GIT_COMMIT_MSG," --config ").concat(tW.COMMITLINT_CONFIG)}),lintStaged:tJ({type:ex.CLI,packages:[{name:tM,type:eq.DEV_DEPENDENCY}],command:"".concat(tP," --config ").concat(tW.LINT_STAGED_CONFIG)}),configureGitHook:tJ({type:ex.STRING,command:"".concat(tk," config core.hooksPath ").concat(tW.GIT_HOOK)}),stageBuildDirectory:tJ({type:ex.STRING,command:"".concat(tk," add ").concat(tE)}),build:tJ({type:ex.STRING,command:"".concat(tF," run --if-present build")}),pnpmInstallStandard:tJ({type:ex.STRING,command:"".concat(tF," install --no-frozen-lockfile")}),pnpmInstallLegacy:tJ({type:ex.STRING,command:"".concat(tF," install --no-frozen-lockfile --legacy-peer-deps")}),pnpmInstallForce:tJ({type:ex.STRING,command:"".concat(tF," install --no-frozen-lockfile --force")})};var tz={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return K(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:z(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:z,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,o=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)}),o||c.add(tz.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,o=e.aggregate,c=o===void 0?!1:o,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&&$,c&&J]),tz.applyMiddlewares(E,f),t.model(n,E)},validator:{isEmpty:function e(){return function(e){return a(function(){return A(this,function(t){return[2,!ei.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return a(function(){var n;return A(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 A(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));ey(tW.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tS,"\n");eg(tW.GIT_IGNORE)?ed(tW.GIT_IGNORE,"utf-8").split("\n").includes(tS)||ev(tW.GIT_IGNORE,n):ey(tW.GIT_IGNORE,n)},"setConfig")})},tX=/*#__PURE__*/function(){"use strict";function e(t,n){c(this,e);M(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return a(function(){var t,n,r;return A(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,eF(r)];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return a(function(){var t,n,r;return A(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,eF(r)];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return a(function(){var t,n;return A(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:X.NOT_FOUND.CODE}];case 2:n=r.sent();return[2,eF(n)];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return a(function(){var e,t,n;var r=arguments;return A(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,eF(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return a(function(){var e,t,n;var r=arguments;return A(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,eF(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return a(function(){var n,r;return A(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,eF(r)];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return a(function(){var n,r;return A(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,eF(r)];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return a(function(){var t,n;return A(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,eF(n)];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return a(function(){var t,n;return A(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,eF(n)];case 3:return[2]}})}).call(this)}}]);return e}();G(tX,"MongoController");var tZ=tX,t0=/*#__PURE__*/function(){"use strict";function e(t){c(this,e);M(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,o;var c=arguments;return A(this,function(i){switch(i.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;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:X.NOT_FOUND.CODE}];case 3:o=i.sent();return[2,eF(o)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return a(function(){var e,t,n,r,s,a,o;var c=arguments;return A(this,function(i){switch(i.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;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:o=i.sent();return[2,eF(o)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return a(function(){var e,t,n,r;var s=arguments;return A(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,eF(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 A(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,eF(r)];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return a(function(){var e,t,n;var r=arguments;return A(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,eF(n)];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return a(function(){var t,n;return A(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,eF(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 A(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,eF(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 A(this,function(o){switch(o.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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,v({new:!0},n)).exec()];case 2:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:X.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,eF(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 A(this,function(o){switch(o.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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=o.sent(),r)];case 3:s=o.sent();return[2,eF(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 A(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:X.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,eF(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 A(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:X.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,eF(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,o;return A(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=ec(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:X.INTERNAL_SERVER_ERROR.CODE}];case 6:o=c.sent();return[2,eF(o)];case 7:return[2]}})}).call(this)}},{key:"generateSlugQuery",value:function e(e,t,n,r){var s=v({},r!==null&&r!==void 0?r:{});return n?O(v({},s),{$or:[l({},"slug.".concat(t),e),{slugHistory:{$elemMatch:l({},"slug.".concat(t),e)}}]}):O(v({},s),{$or:[{slug:e},{slugHistory:e}]})}},{key:"generateUniqueSlug",value:function e(e,t,n,r){return a(function(){var s,a,o;return A(this,function(c){switch(c.label){case 0:s=eo(e),a=s,o=1;c.label=1;case 1:return[4,this.model.exists(this.generateSlugQuery(a,t,n,r))];case 2:if(!c.sent())return[3,4];a="".concat(s,"-").concat(o++);c.label=3;case 3:return[3,1];case 4:return[2,a]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return a(function(){var r,s,o,c,i,u,l;return A(this,function(f){switch(f.label){case 0:r=this;f.label=1;case 1:f.trys.push([1,6,,7]);s=t[e];if(!en(s))return[3,3];c={success:!0};i=Object.fromEntries;return[4,Promise.all(Object.entries(s).map(function(e){var t=C(e,2),s=t[0],o=t[1];return a(function(){var e;return A(this,function(t){switch(t.label){case 0:return[4,this.generateUniqueSlug(o,s,!0,n)];case 1:e=t.sent();return[2,[s,e]]}})}).call(r)}))];case 2:o=(c.result=i.apply(Object,[f.sent()]),c);return[3,5];case 3:u={success:!0};return[4,this.generateUniqueSlug(s,e,!1,n)];case 4:o=(u.result=f.sent(),u);f.label=5;case 5:return[2,o];case 6:l=f.sent();return[2,eF(l)];case 7:return[2]}})}).call(this)}},{key:"checkSlug",value:function e(e,t,n,r){return a(function(){var s,a,o,c,i,u,l,f,E,d,p,m;return A(this,function(h){switch(h.label){case 0:h.trys.push([0,11,,12]);s=n[t];if(!en(s))return[3,9];a=true,o=false,c=undefined;h.label=1;case 1:h.trys.push([1,6,7,8]);i=Object.values(s)[Symbol.iterator]();h.label=2;case 2:if(!!(a=(u=i.next()).done))return[3,5];l=u.value;f=eo(l);return[4,this.model.exists(this.generateSlugQuery(f,t,!0,r))];case 3:if(h.sent())return[2,{success:!0,result:!0}];h.label=4;case 4:a=true;return[3,2];case 5:return[3,8];case 6:E=h.sent();o=true;c=E;return[3,8];case 7:try{if(!a&&i.return!=null){i.return()}}finally{if(o){throw c}}return[7];case 8:return[2,{success:!0,result:!1}];case 9:d=eo(e);p={success:!0};return[4,this.model.exists(this.generateSlugQuery(d,t,!1,r))];case 10:return[2,(p.result=h.sent()!==null,p)];case 11:m=h.sent();return[2,eF(m)];case 12:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return a(function(){var t,n;return A(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,eF(n)];case 3:return[2]}})}).call(this)}}]);return e}();G(t0,"MongooseController");var t1=t0;export{Q as C_Collection,j as C_Db,Y as C_Document,B as C_Model,P as MONGO_MIGRATE_OPTIONS,tZ as MongoController,t1 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,o){try{var c=e[a](o);var i=c.value}catch(e){n(e);return}if(c.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 o=e.apply(t,n);function c(e){s(o,r,a,c,i,"next",e)}function i(e){s(o,r,a,c,i,"throw",e)}c(undefined)})}}function o(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 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 o,c;try{for(n=n.call(e);!(s=(o=n.next()).done);s=true){r.push(o.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 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 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:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=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.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 M=function(e,t,n){return R(e,(typeof t==="undefined"?"undefined":_(t))!="symbol"?t+"":t,n)};var P="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(){c(this,t);return o(this,t,arguments)}return t}(L);G(j,"C_Db");var F=j,x=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(U);G(x,"C_Document");var Y=x,V=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(k);G(V,"C_Model");var B=V,q=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(w);G(q,"C_Collection");var Q=q;import{format as K}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 z}from"uuid";var X={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};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 eo(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,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true){var u=C(i.value,2),l=u[0],f=u[1];r[l]=n(f)}}catch(e){a=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(a){throw o}}}return r}return n(e)}G(eo,"generateSlug");function ec(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(ec,"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";var el=eu.lstatSync,ef=eu.readdirSync,eE=eu.mkdirSync,ed=eu.readFileSync,ep=eu.unlinkSync,em=eu.statSync,eh=eu.readJsonSync;function ey(e,t,n){eu.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}G(ey,"writeFileSync");function ev(e,t,n){eu.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}G(ev,"appendFileSync");function eg(){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(eg,"pathExistsSync");var eO=function(e){return e.Error="error",e.Warning="warning",e}({});import eS from"chalk";import eD from"consola";import{GraphQLError as eC}from"graphql";var eN=".cyberskill-storage";import e_ from"@dotenvx/dotenvx";import{bool as eI,cleanEnv as eb,str as eT}from"envalid";import eA from"node:os";import eR from"node:path";import eG from"node:process";var eM=!1;function eP(){eM||(e_.config(),eM=!0)}G(eP,"loadEnvFile");function ew(){eP();var e=eb(eG.env,{CWD:eT({default:eG.cwd()}),DEBUG:eI({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:eT({default:eR.join(eA.homedir(),eN)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}G(ew,"getEnv");var eL=ew();eL.DEBUG||(eD.level=4);function eU(e){var t=eS[e];return typeof t=="function"?t:eS.green}G(eU,"chalkKeyword");var ek={silent:eD.silent,level:eD.level,fatal:eD.fatal,error:eD.error,warn:eD.warn,log:eD.log,info:eD.info,success:eD.success,ready:eD.ready,start:eD.start,box:eD.box,debug:eD.debug,trace:eD.trace,verbose:eD.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)){eD.box(eS.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eD.log("".concat(eS.gray("File:")," ").concat(eS.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eD.log(" ".concat(eU(n)("Rule:")," ").concat(s)),eD.log(" ".concat(eU(n)("Message:")," ").concat(a))}),eD.box(eU(n)("".concat(e," : ").concat(t.length))),eD.log(eS.gray("─".repeat(40)))}};function ej(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,s=r===void 0?!0:r,a=n.returnValue,o=n.callback,c=d(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return s&&ek.error(c.message),o&&typeof o=="function"&&o(c),a||{success:!1,message:c.message,code:X.INTERNAL_SERVER_ERROR.CODE}}G(ej,"catchError");import eF from"fs-extra";var ex=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eY}from"node:child_process";import eV from"node:process";import*as eB from"node: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 eQ from"node-fetch";var eK=ew();function eH(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,eQ("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,ej(s)];case 4:return[2]}})})()}G(eH,"getLatestPackageVersion");function eW(e){return a(function(){var t,n,r,s,a,o,c,i,u,l,f,E,d,p,m,h,y,v,g;return T(this,function(O){switch(O.label){case 0:O.trys.push([0,2,,3]);if(!eg(tW.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:{}}}];t=eh(tW.PACKAGE_JSON),n=t.name,r=t.version,s=r===void 0?"":r,a=t.dependencies,o=a===void 0?{}:a,c=t.devDependencies,i=c===void 0?{}:c;if(e.name===n)return[2,{success:!0,result:{name:n,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===eq.DEPENDENCY,isDevDependency:e.type===eq.DEV_DEPENDENCY,installedPath:tW.PACKAGE_JSON,file:t}}];u=e.name in o,l=e.name in i;return[4,eH(e.name)];case 1:f=O.sent();if(!f.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}}];if(!u&&!l)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:f.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===eq.DEPENDENCY,isDevDependency:e.type===eq.DEV_DEPENDENCY,installedPath:"",file:{}}}];p=(d=(E=o[e.name])!==null&&E!==void 0?E:i[e.name])!==null&&d!==void 0?d:"",m=tc(eK.CWD,tf,e.name,td);if(!eg(m))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:f.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}}];h=eh(m),y=h.version,v=y===void 0?"":y;return[2,p!==v?{success:!0,result:{name:e.name,currentVersion:v||p,latestVersion:f.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:m,file:h}}:{success:!0,result:{name:e.name,currentVersion:p,latestVersion:f.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:p===f.result,isDependency:u,isDevDependency:l,installedPath:m,file:h}}];case 2:g=O.sent();return[2,ej(g)];case 3:return[2]}})})()}G(eW,"getPackage");function eJ(e){return a(function(){var t,n,r,s,a;return T(this,function(o){try{;r=eh(tW.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),ey(tW.PACKAGE_JSON,JSON.stringify(r,null,4)),ek.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){ej(e)}return[2]})})()}G(eJ,"updatePackage");function e$(){return a(function(){var e,t,n,r,s,a,o,c,i,u,l,f,E;return T(this,function(d){switch(d.label){case 0:d.trys.push([0,12,,13]);e=[{command:G(function(){return t$.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:G(function(){return t$.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:G(function(){return t$.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];o=a.value,c=o.command,i=o.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:u=d.sent();return[4,tn("".concat(i," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();ej(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();ej(E);return[3,13];case 13:return[2]}})})()}G(e$,"installDependencies");function ez(e,t){return a(function(){var n,r,s,a,o,c,i,u,l,f,E,d;return T(this,function(p){switch(p.label){case 0:if(!eg(tW.PACKAGE_JSON)){ek.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(eW))];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?eJ(e.result):Promise.resolve()}))];case 3:p.sent();return[4,e$()];case 4:p.sent();s=["Running ESLint with auto-fix"];return[4,t$.eslintFix()];case 5:return[4,tn.apply(void 0,s.concat([p.sent()]))];case 6:r=p.sent();p.label=7;case 7:r;o=true,c=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(!!(o=(l=u.next()).done))return[3,12];f=l.value;return[4,f()];case 10:p.sent();p.label=11;case 11:o=true;return[3,9];case 12:return[3,15];case 13:E=p.sent();c=true;i=E;return[3,15];case 14:try{if(!o&&u.return!=null){u.return()}}finally{if(c){throw i}}return[7];case 15:return[3,17];case 16:d=p.sent();ej(d);return[3,17];case 17:return[2]}})})()}G(ez,"setupPackages");import eX from"node-persist";var eZ=ew();function e0(){return a(function(){var e;return T(this,function(t){switch(t.label){case 0:e=eX.defaultInstance;if(e)return[3,2];return[4,eX.init({dir:eZ.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}G(e0,"initNodePersist");var e1={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,e0()];case 1:r.sent();return[4,eX.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,ej(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,e0()];case 1:r.sent();return[4,eX.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ej(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,e0()];case 1:n.sent();return[4,eX.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ej(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,e0()];case 1:n.sent();return[4,eX.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ek.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,ej(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return T(this,function(t){try{return[2,"".concat(eZ.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,ej(e,{returnValue:null})]}return[2]})})()}};var e2=ew(),e4=eB.promisify(eY);function e3(e){return"error_list:".concat(e)}G(e3,"getErrorListKey");function e5(e){return a(function(){var t,n,r;return T(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e3(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,e1.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return a(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,e1.getLogLink(n)];case 1:e=t.sent();e&&ek.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();ej(r);return[3,4];case 4:return[2]}})})()}G(e5,"saveErrorListToStorage");function e7(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.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,f;var E=s.exec(e)||[],d=a.exec(e)||[],p=o.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]===eO.Error?eO.Error:eO.Warning,message:(m=E===null||E===void 0?void 0:(c=E[4])===null||c===void 0?void 0:c.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]===eO.Error?eO.Error:eO.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:eO.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&&e5(t),e2.DEBUG&&n.length&&(ek.warn("Unmatched lines:"),n.forEach(function(e){return ek.info(" ".concat(e))}))}G(e7,"parseTextErrors");function e6(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,o=e.ruleId,c=e.message;n.push({type:r===2?eO.Error:eO.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&e5(n)}catch(t){e7(e)}}G(e6,"parseCommandOutput");function e8(e){return a(function(e){var t,n,r,s,a,o,c,i,u;var l=arguments;return T(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e6;n=new AbortController;eV.on("SIGINT",function(){ek.warn("Process interrupted. Terminating..."),n.abort(),eV.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e4(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:o=f.sent();c=o.stdout,i=o.stderr,u=o.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&ek.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}G(e8,"executeCommand");function e9(e){return{raw:!0,cmd:e}}G(e9,"rawCommand");function te(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tF," ").concat(tU," ").concat(tN," ").concat(e):"".concat(tF," ").concat(tC," ").concat(e)}G(te,"formatCLI");function tt(e,t){return typeof e=="function"?te(e(t),t):(typeof e==="undefined"?"undefined":_(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?te(e,t):e}G(tt,"formatCommand");function tn(e,t){return a(function(){var n;return T(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ek.start("".concat(e)),e2.DEBUG&&ek.info("→ ".concat(t));return[4,e8(t)];case 1:r.sent(),ek.success("".concat(e," done."));return[3,3];case 2:n=r.sent();ej(n);return[3,3];case 3:return[2]}})})()}G(tn,"runCommand");import tr from"node:path";var ts=ew(),ta=tr;function to(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ta).resolve.apply(r,[ts.CWD].concat(N(t)))}G(to,"resolveWorkingPath");function tc(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ta).join.apply(r,N(t))}G(tc,"join");var ti=ew(),tu=ti.CWD,tl="@cyberskill/shared",tf="node_modules",tE="dist",td="package.json",tp="package-lock.json",tm="tsconfig.json",th=".gitignore",ty=".simple-git-hooks.json",tv="pnpm-lock.yaml",tg=".git/hooks/",tO=".git/COMMIT_EDITMSG",tS=".migrate-mongo.config.js",tD=function(){var e=eF.readJsonSync(to(td)).name===tl?tu:tc(tu,tf,tl);return tc(e,tE)}(),tC="cyberskill",tN="src/node/cli/index.ts",t_="eslint",tI="eslint",tb="vitest";var tT="vitest",tA="@commitlint/cli",tR="@commitlint/config-conventional",tG="commitlint",tM="lint-staged",tP="lint-staged",tw="typescript",tL="tsc",tU="tsx",tk="git",tj="pnpm",tF="pnpm exec",tx="simple-git-hooks",tY="simple-git-hooks",tV="@eslint/config-inspector",tB="eslint-config-inspector",tq="node-modules-inspector",tQ="node-modules-inspector",tK="migrate-mongo",tH="./node_modules/migrate-mongo/bin/migrate-mongo",tW={CYBERSKILL_DIRECTORY:tD,WORKING_DIRECTORY:tu,TS_CONFIG:to(tm),GIT_IGNORE:to(th),GIT_HOOK:to(tg),GIT_COMMIT_MSG:to(tO),SIMPLE_GIT_HOOKS_JSON:to(ty),PACKAGE_JSON:to(td),PACKAGE_LOCK_JSON:to(tp),PNPM_LOCK_YAML:to(tv),NODE_MODULES:to(tf),MIGRATE_MONGO_CONFIG:to(tS),LINT_STAGED_CONFIG:to("".concat(tD,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:to("".concat(tD,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:to("".concat(tD,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:to("".concat(tD,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:to("".concat(tD,"/react/vitest/vitest.e2e.js"))};function tJ(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 ex.CLI:return[3,1];case ex.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,tt(e9("".concat(tF," ").concat(r))))];case 4:return[2,tt(e9(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}G(tJ,"buildCommand");var t$={simpleGitHooks:tJ({type:ex.CLI,packages:[{name:tx,type:eq.DEV_DEPENDENCY}],command:tY}),eslintInspect:tJ({type:ex.CLI,packages:[{name:tV,type:eq.DEV_DEPENDENCY}],command:tB}),nodeModulesInspect:tJ({type:ex.CLI,packages:[{name:tq,type:eq.DEV_DEPENDENCY}],command:tQ}),eslintCheck:tJ({type:ex.CLI,packages:[{name:t_,type:eq.DEV_DEPENDENCY}],command:"".concat(tI," ").concat(tW.WORKING_DIRECTORY," --no-cache")}),eslintFix:tJ({type:ex.CLI,packages:[{name:t_,type:eq.DEV_DEPENDENCY}],command:"".concat(tI," ").concat(tW.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:tJ({type:ex.CLI,packages:[{name:tw,type:eq.DEPENDENCY}],command:"".concat(tL," -p ").concat(tW.TS_CONFIG," --noEmit")}),testUnit:tJ({type:ex.CLI,packages:[{name:tb,type:eq.DEV_DEPENDENCY}],command:"".concat(tT," --config ").concat(tW.UNIT_TEST_CONFIG)}),testE2e:tJ({type:ex.CLI,packages:[{name:tb,type:eq.DEV_DEPENDENCY}],command:"".concat(tT," --config ").concat(tW.E2E_TEST_CONFIG)}),mongoMigrateCreate:G(function(e){return tJ({type:ex.CLI,packages:[{name:tK,type:eq.DEPENDENCY}],command:"".concat(tU," ").concat(tH," create ").concat(e," -f ").concat(tW.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:tJ({type:ex.CLI,packages:[{name:tK,type:eq.DEPENDENCY}],command:"".concat(tU," ").concat(tH," up -f ").concat(tW.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:tJ({type:ex.CLI,packages:[{name:tK,type:eq.DEPENDENCY}],command:"".concat(tU," ").concat(tH," down -f ").concat(tW.MIGRATE_MONGO_CONFIG)}),commitLint:tJ({type:ex.CLI,packages:[{name:tA,type:eq.DEV_DEPENDENCY},{name:tR,type:eq.DEV_DEPENDENCY}],command:"".concat(tG," --edit ").concat(tW.GIT_COMMIT_MSG," --config ").concat(tW.COMMITLINT_CONFIG)}),lintStaged:tJ({type:ex.CLI,packages:[{name:tM,type:eq.DEV_DEPENDENCY}],command:"".concat(tP," --config ").concat(tW.LINT_STAGED_CONFIG)}),configureGitHook:tJ({type:ex.STRING,command:"".concat(tk," config core.hooksPath ").concat(tW.GIT_HOOK)}),stageBuildDirectory:tJ({type:ex.STRING,command:"".concat(tk," add ").concat(tE)}),build:tJ({type:ex.STRING,command:"".concat(tj," run --if-present build")}),pnpmInstallStandard:tJ({type:ex.STRING,command:"".concat(tj," install --no-frozen-lockfile")}),pnpmInstallLegacy:tJ({type:ex.STRING,command:"".concat(tj," install --no-frozen-lockfile --legacy-peer-deps")}),pnpmInstallForce:tJ({type:ex.STRING,command:"".concat(tj," install --no-frozen-lockfile --force")})};var tz={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return K(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:z(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:z,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,o=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)}),o||c.add(tz.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,o=e.aggregate,c=o===void 0?!1:o,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&&$,c&&J]),tz.applyMiddlewares(E,f),t.model(n,E)},validator:{isEmpty:function e(){return function(e){return a(function(){return T(this,function(t){return[2,!ei.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!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));ey(tW.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tS,"\n");eg(tW.GIT_IGNORE)?ed(tW.GIT_IGNORE,"utf-8").split("\n").includes(tS)||ev(tW.GIT_IGNORE,n):ey(tW.GIT_IGNORE,n)},"setConfig")})},tX=/*#__PURE__*/function(){"use strict";function e(t,n){c(this,e);M(this,"collection");this.collection=t.collection(n)}u(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=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,ej(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 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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,ej(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:X.NOT_FOUND.CODE}];case 2:n=r.sent();return[2,ej(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,ej(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,ej(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,ej(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,ej(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,ej(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:X.INTERNAL_SERVER_ERROR.CODE}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,ej(n)];case 3:return[2]}})}).call(this)}}]);return e}();G(tX,"MongoController");var tZ=tX,t0=/*#__PURE__*/function(){"use strict";function e(t){c(this,e);M(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,o;var c=arguments;return T(this,function(i){switch(i.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;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:X.NOT_FOUND.CODE}];case 3:o=i.sent();return[2,ej(o)];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return a(function(){var e,t,n,r,s,a,o;var c=arguments;return T(this,function(i){switch(i.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;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:o=i.sent();return[2,ej(o)];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,ej(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,ej(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,ej(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,ej(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 d(e,W)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,ej(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(o){switch(o.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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,v({new:!0},n)).exec()];case 2:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:X.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,ej(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(o){switch(o.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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=o.sent(),r)];case 3:s=o.sent();return[2,ej(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:X.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,ej(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:X.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,ej(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,o;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=ec(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:X.INTERNAL_SERVER_ERROR.CODE}];case 6:o=c.sent();return[2,ej(o)];case 7:return[2]}})}).call(this)}},{key:"generateSlugQuery",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:"generateUniqueSlug",value:function e(e){return a(function(e){var t,n,r,s,a,o,c;return T(this,function(i){switch(i.label){case 0:t=e.slug,n=e.field,r=e.isObject,s=e.filter;a=eo(t),o=a,c=1;i.label=1;case 1:return[4,this.model.exists(this.generateSlugQuery({slug:o,field:n,isObject:r,filter:s}))];case 2:if(!i.sent())return[3,4];o="".concat(a,"-").concat(c++);i.label=3;case 3:return[3,1];case 4:return[2,o]}})}).apply(this,arguments)}},{key:"createSlug",value:function e(e){return a(function(e){var t,n,r,s,o,c,i,u,l,f;return T(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]);o=r[n];if(!en(o))return[3,3];i={success:!0};u=Object.fromEntries;return[4,Promise.all(Object.entries(o).map(function(e){var n=C(e,2),r=n[0],o=n[1];return a(function(){var e;return T(this,function(t){switch(t.label){case 0:return[4,this.generateUniqueSlug({slug:o,field:r,isObject:!0,filter:s})];case 1:e=t.sent();return[2,[r,e]]}})}).call(t)}))];case 2:c=(i.result=u.apply(Object,[E.sent()]),i);return[3,5];case 3:l={success:!0};return[4,this.generateUniqueSlug({slug:o,field:n,isObject:!1,filter:s})];case 4:c=(l.result=E.sent(),l);E.label=5;case 5:return[2,c];case 6:f=E.sent();return[2,ej(f)];case 7:return[2]}})}).apply(this,arguments)}},{key:"checkSlug",value:function e(e){return a(function(e){var t,n,r,s,a,o,c,i,u,l,f,E,d,p,m,h;return T(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];o=true,c=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(!!(o=(l=u.next()).done))return[3,6];f=l.value;E=eo(f);return[4,this.model.exists(this.generateSlugQuery({slug:E,field:n,isObject:!0,filter:s}))];case 4:if(y.sent())return[2,{success:!0,result:!0}];y.label=5;case 5:o=true;return[3,3];case 6:return[3,9];case 7:d=y.sent();c=true;i=d;return[3,9];case 8:try{if(!o&&u.return!=null){u.return()}}finally{if(c){throw i}}return[7];case 9:return[2,{success:!0,result:!1}];case 10:p=eo(t);m={success:!0};return[4,this.model.exists(this.generateSlugQuery({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,ej(h)];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,ej(n)];case 3:return[2]}})}).call(this)}}]);return e}();G(t0,"MongooseController");var t1=t0;export{Q as C_Collection,F as C_Db,Y as C_Document,B as C_Model,P as MONGO_MIGRATE_OPTIONS,tZ as MongoController,t1 as MongooseController,J as aggregatePaginate,tz as mongo,$ as mongoosePaginate};
|
|
@@ -53,3 +53,7 @@ export { I_Input_UpdateMany_alias_2 as I_Input_UpdateMany } from '../../_tsup-dt
|
|
|
53
53
|
export { I_DeleteOptionsExtended_alias_2 as I_DeleteOptionsExtended } from '../../_tsup-dts-rollup.cjs';
|
|
54
54
|
export { I_Input_DeleteOne_alias_2 as I_Input_DeleteOne } from '../../_tsup-dts-rollup.cjs';
|
|
55
55
|
export { I_Input_DeleteMany_alias_2 as I_Input_DeleteMany } from '../../_tsup-dts-rollup.cjs';
|
|
56
|
+
export { I_InputSlug_alias_2 as I_InputSlug } from '../../_tsup-dts-rollup.cjs';
|
|
57
|
+
export { I_Input_CreateSlug_alias_2 as I_Input_CreateSlug } from '../../_tsup-dts-rollup.cjs';
|
|
58
|
+
export { I_Input_CheckSlug_alias_2 as I_Input_CheckSlug } from '../../_tsup-dts-rollup.cjs';
|
|
59
|
+
export { I_Input_GenerateSlug_alias_2 as I_Input_GenerateSlug } from '../../_tsup-dts-rollup.cjs';
|
|
@@ -53,3 +53,7 @@ export { I_Input_UpdateMany_alias_2 as I_Input_UpdateMany } from '../../_tsup-dt
|
|
|
53
53
|
export { I_DeleteOptionsExtended_alias_2 as I_DeleteOptionsExtended } from '../../_tsup-dts-rollup.js';
|
|
54
54
|
export { I_Input_DeleteOne_alias_2 as I_Input_DeleteOne } from '../../_tsup-dts-rollup.js';
|
|
55
55
|
export { I_Input_DeleteMany_alias_2 as I_Input_DeleteMany } from '../../_tsup-dts-rollup.js';
|
|
56
|
+
export { I_InputSlug_alias_2 as I_InputSlug } from '../../_tsup-dts-rollup.js';
|
|
57
|
+
export { I_Input_CreateSlug_alias_2 as I_Input_CreateSlug } from '../../_tsup-dts-rollup.js';
|
|
58
|
+
export { I_Input_CheckSlug_alias_2 as I_Input_CheckSlug } from '../../_tsup-dts-rollup.js';
|
|
59
|
+
export { I_Input_GenerateSlug_alias_2 as I_Input_GenerateSlug } from '../../_tsup-dts-rollup.js';
|