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