@cyberskill/shared 1.107.0 → 1.109.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_tsup-dts-rollup.d.cts +19 -0
- package/dist/_tsup-dts-rollup.d.ts +19 -0
- 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.d.cts +5 -2
- package/dist/index.d.ts +5 -2
- package/dist/index.js +1 -1
- package/dist/nodejs/apollo-server/apollo-server.util.cjs +1 -1
- package/dist/nodejs/apollo-server/apollo-server.util.js +1 -1
- package/dist/nodejs/apollo-server/index.cjs +1 -1
- package/dist/nodejs/apollo-server/index.js +1 -1
- package/dist/nodejs/cli/cli.util.cjs +1 -1
- package/dist/nodejs/cli/cli.util.js +1 -1
- package/dist/nodejs/cli/index.cjs +1 -1
- package/dist/nodejs/cli/index.js +1 -1
- package/dist/nodejs/command/command.util.cjs +1 -1
- package/dist/nodejs/command/command.util.js +1 -1
- package/dist/nodejs/command/index.cjs +1 -1
- package/dist/nodejs/command/index.js +1 -1
- package/dist/nodejs/fs/fs.util.cjs +1 -1
- package/dist/nodejs/fs/fs.util.d.cts +4 -2
- package/dist/nodejs/fs/fs.util.d.ts +4 -2
- package/dist/nodejs/fs/fs.util.js +1 -1
- package/dist/nodejs/fs/index.cjs +1 -1
- package/dist/nodejs/fs/index.d.cts +4 -2
- package/dist/nodejs/fs/index.d.ts +4 -2
- package/dist/nodejs/fs/index.js +1 -1
- package/dist/nodejs/index.cjs +1 -1
- package/dist/nodejs/index.d.cts +5 -2
- package/dist/nodejs/index.d.ts +5 -2
- package/dist/nodejs/index.js +1 -1
- package/dist/nodejs/mongo/index.cjs +1 -1
- package/dist/nodejs/mongo/index.js +1 -1
- package/dist/nodejs/mongo/mongo.util.cjs +1 -1
- package/dist/nodejs/mongo/mongo.util.js +1 -1
- package/dist/nodejs/package/index.cjs +1 -1
- package/dist/nodejs/package/index.js +1 -1
- package/dist/nodejs/package/package.util.cjs +1 -1
- package/dist/nodejs/package/package.util.js +1 -1
- package/dist/nodejs/path/index.cjs +1 -1
- package/dist/nodejs/path/index.d.cts +1 -0
- package/dist/nodejs/path/index.d.ts +1 -0
- package/dist/nodejs/path/index.js +1 -1
- package/dist/nodejs/path/path.constant.cjs +1 -1
- package/dist/nodejs/path/path.constant.js +1 -1
- package/dist/nodejs/path/path.util.cjs +1 -1
- package/dist/nodejs/path/path.util.d.cts +1 -0
- package/dist/nodejs/path/path.util.d.ts +1 -0
- package/dist/nodejs/path/path.util.js +1 -1
- package/dist/nodejs/storage/index.cjs +1 -1
- package/dist/nodejs/storage/index.js +1 -1
- package/dist/nodejs/storage/storage.util.cjs +1 -1
- package/dist/nodejs/storage/storage.util.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.js +1 -1
- package/dist/react/next-intl/index.cjs +1 -1
- package/dist/react/next-intl/index.js +1 -1
- package/dist/react/next-intl/next-intl.provider.cjs +1 -1
- package/dist/react/next-intl/next-intl.provider.js +1 -1
- package/dist/react/storage/index.cjs +1 -1
- package/dist/react/storage/index.js +1 -1
- package/dist/react/storage/storage.hook.cjs +1 -1
- package/dist/react/storage/storage.hook.js +1 -1
- package/dist/react/storage/storage.util.cjs +1 -1
- package/dist/react/storage/storage.util.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 +5 -5
|
@@ -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(t){if(Array.isArray(t))return e(t)}function n(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function r(e,t,n,r,s,a,o){try{var c=e[a](o);var u=c.value}catch(e){n(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,a){var o=e.apply(t,n);function c(e){r(o,s,a,c,u,"next",e)}function u(e){r(o,s,a,c,u,"throw",e)}c(undefined)})}}function a(e,t,n){t=l(t);return m(e,R()?Reflect.construct(t,n||[],l(e).constructor):t.apply(e,n))}function o(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function c(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)c(e.prototype,t);if(n)c(e,n);return e}function i(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 l(e){l=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return l(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)O(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 E(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}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){i(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 p(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 m(e,t){if(t&&(S(t)==="object"||typeof t==="function")){return t}return n(e)}function O(e,t){O=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return O(e,t)}function y(e){return t(e)||E(e)||_(e)||g()}function S(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function _(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 R(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(R=function(){return!!e})()}function C(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 u([e,t])}}function u(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 I=Object.create;var T=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var N=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var M=function(e,t,n){return t in e?T(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var G=function(e,t){return T(e,"name",{value:t,configurable:!0})};var w=function(e,t){for(var n in t)T(e,n,{get:t[n],enumerable:!0})},P=function(e,t,n,r){var s=true,a=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":S(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!b.call(e,s)&&s!==n&&T(e,s,{get:function(){return t[s]},enumerable:!(r=D(t,s))||r.enumerable})};for(var u=A(t)[Symbol.iterator](),i;!(s=(i=u.next()).done);s=true)c()}catch(e){a=true;o=e}finally{try{if(!s&&u.return!=null){u.return()}}finally{if(a){throw o}}}return e};var L=function(e,t,n){return n=e!=null?I(N(e)):{},P(t||!e||!e.__esModule?T(n,"default",{value:e,enumerable:!0}):n,e)},U=function(e){return P(T({},"__esModule",{value:!0}),e)};var k=function(e,t,n){return M(e,(typeof t==="undefined"?"undefined":S(t))!="symbol"?t+"":t,n)};var F={};w(F,{C_Collection:function(){return $},C_Db:function(){return B},C_Document:function(){return H},C_Model:function(){return K},MONGO_MIGRATE_OPTIONS:function(){return j},MongoController:function(){return t3},MongooseController:function(){return t6},aggregatePaginate:function(){return Z.default},mongo:function(){return t2},mongoosePaginate:function(){return ee.default}});module.exports=U(F);var j="MONGO_MIGRATE_OPTIONS";var q=require("mongodb"),x=require("mongoose");var Y=/*#__PURE__*/function(e){f(t,e);function t(){o(this,t);return a(this,t,arguments)}return t}(q.Db);G(Y,"C_Db");var B=Y,Q=/*#__PURE__*/function(e){f(t,e);function t(){o(this,t);return a(this,t,arguments)}return t}(x.Document);G(Q,"C_Document");var H=Q,V=/*#__PURE__*/function(e){f(t,e);function t(){o(this,t);return a(this,t,arguments)}return t}(x.Model);G(V,"C_Model");var K=V,W=/*#__PURE__*/function(e){f(t,e);function t(){o(this,t);return a(this,t,arguments)}return t}(q.Collection);G(W,"C_Collection");var $=W;var J=require("date-fns"),X=L(require("migrate-mongo"),1),z=require("mongoose"),Z=L(require("mongoose-aggregate-paginate-v2"),1),ee=L(require("mongoose-paginate-v2"),1),et=require("uuid");var en={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 er=L(require("crypto-js"),1),es=L(require("slugify"),1);var ea=es.default.default||es.default;function eo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return ea(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))}G(eo,"generateSlug");function ec(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return er.default.SHA256(e).toString(er.default.enc.Hex).slice(0,t)}G(ec,"generateShortId");var eu={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":S(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 ei=L(require("fs-extra"),1),el=require("path");var ef=ei.default,ed=ef.appendFileSync,eE=ef.lstatSync,eg=ef.mkdirSync,eh=ef.readFileSync,ev=ef.unlinkSync,ep=ef.writeFileSync,em=ef.statSync,eO=ei.default.readJsonSync,ey=ei.default.writeJsonSync;function eS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ei.default.pathExistsSync(e)})}G(eS,"pathExistsSync");var e_=".cyberskill-storage";var eR=L(require("dotenv"),1),eC=require("envalid"),eI=L(require("os"),1),eT=L(require("path"),1),eD=L(require("process"),1);eR.default.config();function eA(){var e={DEBUG:eD.default.env.DEBUG||!1,CWD:eD.default.env.CWD||eD.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:eD.default.env.CYBERSKILL_STORAGE_DIRECTORY||eT.default.join(eI.default.homedir(),e_)};return(0,eC.cleanEnv)(e,{DEBUG:(0,eC.bool)(),CWD:(0,eC.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,eC.str)()})}G(eA,"getEnv");var eN=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eb=require("child_process"),eM=L(require("process"),1),eG=L(require("util"),1);var ew=function(e){return e.Error="error",e.Warning="warning",e}({});var eP=L(require("chalk"),1),eL=L(require("consola"),1),eU=require("graphql");var ek=eA();ek.DEBUG||(eL.default.level=4);function eF(e){var t=eP.default[e];return typeof t=="function"?t:eP.default.green}G(eF,"chalkKeyword");var ej={silent:eL.default.silent,level:eL.default.level,fatal:eL.default.fatal,error:eL.default.error,warn:eL.default.warn,log:eL.default.log,info:eL.default.info,success:eL.default.success,ready:eL.default.ready,start:eL.default.start,box:eL.default.box,debug:eL.default.debug,trace:eL.default.trace,verbose:eL.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){eL.default.box(eP.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eL.default.log("".concat(eP.default.gray("File:")," ").concat(eP.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eL.default.log(" ".concat(eF(n)("Rule:")," ").concat(s)),eL.default.log(" ".concat(eF(n)("Message:")," ").concat(a))}),eL.default.box(eF(n)("".concat(e," : ").concat(t.length))),eL.default.log(eP.default.gray("─".repeat(40)))}};var eq={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var ex=L(require("node-fetch"),1);var eY=eA();function eB(e){var t=tl(eY.CWD,tv);if(!eS(t))return!1;try{var n=eO(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,u=r===e,i=e in a,l=e in c;return u||i||l?{path:t,file:n,isCurrentProject:u,isDepend:i,isDevDepend:l}:!1}catch(e){return ej.warn("Failed to read package.json: ".concat(e.message)),!1}}G(eB,"getPackage");function eQ(e){return eH.apply(this,arguments)}function eH(){eH=s(function(e){var t,n,r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,ex.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:s=a.sent();throw ej.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})});return eH.apply(this,arguments)}G(eQ,"getLatestPackageVersion");function eV(e,t){return eK.apply(this,arguments)}function eK(){eK=s(function(e,t){var n,r,s,a,o,c,u,i,l,f,d,E,g,v,p,m,O,y,S,_,R;return C(this,function(C){switch(C.label){case 0:C.trys.push([0,4,,5]);n=eB(e);if(!n)return[2,h({},eq)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,d=n.isDevDepend,E=(r=i.dependencies)!==null&&r!==void 0?r:{},g=(s=i.devDependencies)!==null&&s!==void 0?s:{},v=l?(a=i.version)!==null&&a!==void 0?a:"0.0.0":f?(o=E[e])!==null&&o!==void 0?o:"0.0.0":d?(c=g[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];O=v;return[3,3];case 1:return[4,eQ(e)];case 2:O=C.sent();C.label=3;case 3:p=O,m=l||v===p;if(!m&&(t===null||t===void 0?void 0:t.update)){;S=f?"dependencies":d?"devDependencies":null;S&&((y=i[S])===null||y===void 0?void 0:y[e])!==p&&(i[S]=(_=i[S])!==null&&_!==void 0?_:{},i[S][e]=p,ey(u,i),ej.info('Updated "'.concat(e,'" to version ').concat(p)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:m}];case 4:R=C.sent();return[2,(ej.error('Error checking package "'.concat(e,'": ').concat(R.message)),h({},eq))];case 5:return[2]}})});return eK.apply(this,arguments)}G(eV,"checkPackage");function eW(){return e$.apply(this,arguments)}function e$(){e$=s(function(){var e,t,n,r,s,a,o,c,u,i,l,f;return C(this,function(d){switch(d.label){case 0:e=[{command:G(function(){return t1.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:G(function(){return t1.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:G(function(){return t1.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,u=o.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:i=d.sent();return[4,ta("".concat(u," using: ").concat(i),i)];case 5:d.sent();return[2];case 6:l=d.sent();ej.warn("Installation attempt failed: ".concat(u)),ej.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return e$.apply(this,arguments)}G(eW,"installDependencies");function eJ(e,t){return eX.apply(this,arguments)}function eX(){eX=s(function(e,t){var n,r,s,a,o,c,u,i,l,f,d;return C(this,function(E){switch(E.label){case 0:if(!eS(tX.PACKAGE_JSON)){ej.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=y(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eV(e,h({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eW()];case 3:r=E.sent();E.label=4;case 4:r;a=true,o=false,c=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();E.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:E.sent();E.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=E.sent();o=true;c=f;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:d=E.sent();throw ej.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})});return eX.apply(this,arguments)}G(eJ,"setupPackages");var ez=L(require("node-persist"),1);var eZ=eA();function e0(){return e1.apply(this,arguments)}function e1(){e1=s(function(){var e;return C(this,function(t){switch(t.label){case 0:e=ez.default.defaultInstance;if(e)return[3,2];return[4,ez.default.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]}})});return e1.apply(this,arguments)}G(e0,"initNodePersist");var e2={get:function e(e){return s(function(){var t,n;return C(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0()];case 1:r.sent();return[4,ez.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ej.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return s(function(){var n;return C(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0()];case 1:r.sent();return[4,ez.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ej.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return s(function(){var t;return C(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e0()];case 1:n.sent();return[4,ez.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ej.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return s(function(){var e,t;return C(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e0()];case 1:n.sent();return[4,ez.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ej.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ej.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return s(function(){return C(this,function(t){try{return[2,"".concat(eZ.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ej.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e4=eA(),e3=eG.promisify(eb.exec);function e5(e){return"error_list:".concat(e)}G(e5,"getErrorListKey");function e6(e){return e8.apply(this,arguments)}function e8(){e8=s(function(e){var t,n,r;return C(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e5(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,e2.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/s(function(){var e;return C(this,function(t){switch(t.label){case 0:return[4,e2.getLogLink(n)];case 1:e=t.sent();e&&ej.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=a.sent();ej.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return e8.apply(this,arguments)}G(e6,"saveErrorListToStorage");function e7(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,u,i,l,f;var d=s.exec(e)||[],E=a.exec(e)||[],g=o.exec(e)||[];var h,v,p,m,O,y;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===ew.Error?ew.Error:ew.Warning,message:(h=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&h!==void 0?h:"",rule:(v=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):E.length?t.push({file:(p=E===null||E===void 0?void 0:E[1])!==null&&p!==void 0?p:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===ew.Error?ew.Error:ew.Warning,message:(m=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):g.length?t.push({file:"commitlint",type:ew.Error,message:(O=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&O!==void 0?O:"",rule:(y=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&y!==void 0?y:""}):n.push(e.trim())}}),t.length&&e6(t),e4.DEBUG&&n.length&&(ej.warn("Unmatched lines:"),n.forEach(function(e){return ej.info(" ".concat(e))}))}G(e7,"parseTextErrors");function e9(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?ew.Error:ew.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&e6(n)}catch(t){e7(e)}}G(e9,"parseCommandOutput");function te(e){return tt.apply(this,arguments)}function tt(){tt=s(function(e){var t,n,r,s,a,o,c,u,i;var l=arguments;return C(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e9;n=new AbortController;eM.default.on("SIGINT",function(){ej.warn("Process interrupted. Terminating..."),n.abort(),eM.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e3(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:o=f.sent();c=o.stdout,u=o.stderr,i=o.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&ej.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})});return tt.apply(this,arguments)}G(te,"executeCommand");function tn(e){return{raw:!0,cmd:e}}G(tn,"rawCommand");function tr(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tY," ").concat(tE," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tY," ").concat(tj," ").concat(tD," ").concat(e):"".concat(tY," ").concat(tT," ").concat(e)}G(tr,"formatCLI");function ts(e,t){return typeof e=="function"?tr(e(t),t):(typeof e==="undefined"?"undefined":S(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tr(e,t):e}G(ts,"formatCommand");function ta(e,t){return to.apply(this,arguments)}function to(){to=s(function(e,t){var n;return C(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ej.start("".concat(e)),e4.DEBUG&&ej.info("→ ".concat(t));return[4,te(t)];case 1:r.sent(),ej.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ej.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return to.apply(this,arguments)}G(ta,"runCommand");var tc=require("path");var tu=eA();function ti(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,tc.resolve).apply(this,[tu.CWD].concat(y(t)))}G(ti,"resolveWorkingPath");function tl(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,tc.join).apply(this,y(t))}G(tl,"join");var tf=eA(),td=tf.CWD,tE="@cyberskill/shared",tg="node_modules",th="dist",tv="package.json",tp="package-lock.json",tm="tsconfig.json",tO=".gitignore",ty=".simple-git-hooks.json",tS="pnpm-lock.yaml",t_=".git/hooks/",tR=".git/COMMIT_EDITMSG",tC=".migrate-mongo.config.js",tI=tl(td,tg,tE,th),tT="cyberskill",tD="src/nodejs/cli/index.ts",tA="eslint",tN="eslint",tb="vitest",tM="playwright",tG="vitest",tw="@commitlint/cli",tP="commitlint",tL="lint-staged",tU="lint-staged",tk="typescript",tF="tsc",tj="tsx",tq="git",tx="pnpm",tY="pnpm exec",tB="simple-git-hooks",tQ="simple-git-hooks",tH="@eslint/config-inspector",tV="eslint-config-inspector",tK="node-modules-inspector",tW="node-modules-inspector",t$="migrate-mongo",tJ="./node_modules/migrate-mongo/bin/migrate-mongo",tX={CYBERSKILL_DIRECTORY:tI,WORKING_DIRECTORY:td,TS_CONFIG:ti(tm),GIT_IGNORE:ti(tO),GIT_HOOK:ti(t_),GIT_COMMIT_MSG:ti(tR),SIMPLE_GIT_HOOKS_JSON:ti(ty),PACKAGE_JSON:ti(tv),PACKAGE_LOCK_JSON:ti(tp),PNPM_LOCK_YAML:ti(tS),NODE_MODULES:ti(tg),MIGRATE_MONGO_CONFIG:ti(tC),LINT_STAGED_CONFIG:ti("".concat(tI,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ti("".concat(tI,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ti("".concat(tI,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ti("".concat(tI,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ti("".concat(tI,"/react/vitest/vitest.e2e.js"))};function tz(e,t,n){return tZ.apply(this,arguments)}function tZ(){tZ=s(function(e,t,n){return C(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eN.CLI:return[3,1];case eN.STRING:return[3,3]}return[3,4];case 1:return[4,eJ(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ts(tn("".concat(tY," ").concat(n))))];case 3:return[2,ts(tn(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tZ.apply(this,arguments)}G(tz,"buildCommand");function t0(e,t,n){return /*#__PURE__*/s(function(){return C(this,function(r){return[2,tz(e,t,n)]})})}G(t0,"commandFactory");var t1={simpleGitHooks:t0(eN.CLI,tB,tQ),eslintInspect:t0(eN.CLI,tH,tV),nodeModulesInspect:t0(eN.CLI,tK,tW),eslintCheck:t0(eN.CLI,tA,"".concat(tN," ").concat(tX.WORKING_DIRECTORY)),eslintFix:t0(eN.CLI,tA,"".concat(tN," ").concat(tX.WORKING_DIRECTORY," --fix")),typescriptCheck:t0(eN.CLI,tk,"".concat(tF," -p ").concat(tX.TS_CONFIG," --noEmit")),configureGitHook:t0(eN.STRING,"".concat(tq," config core.hooksPath ").concat(tX.GIT_HOOK)),testUnit:t0(eN.CLI,tb,"".concat(tG," --config ").concat(tX.UNIT_TEST_CONFIG)),testE2e:t0(eN.CLI,"".concat(tb," ").concat(tM),"".concat(tG," --config ").concat(tX.E2E_TEST_CONFIG)),mongoMigrateCreate:G(function(e){return t0(eN.CLI,t$,"".concat(tj," ").concat(tJ," create ").concat(e," -f ").concat(tX.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:t0(eN.CLI,t$,"".concat(tj," ").concat(tJ," up -f ").concat(tX.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:t0(eN.CLI,t$,"".concat(tj," ").concat(tJ," down -f ").concat(tX.MIGRATE_MONGO_CONFIG)),commitLint:t0(eN.CLI,tw,"".concat(tP," --edit ").concat(tX.GIT_COMMIT_MSG," --config ").concat(tX.COMMITLINT_CONFIG)),lintStaged:t0(eN.CLI,tL,"".concat(tU," --config ").concat(tX.LINT_STAGED_CONFIG)),stageBuildDirectory:t0(eN.STRING,"".concat(tq," add ").concat(th)),build:t0(eN.STRING,"".concat(tx," run build")),pnpmInstallStandard:t0(eN.STRING,"".concat(tx," install")),pnpmInstallLegacy:t0(eN.STRING,"".concat(tx," install --legacy-peer-deps")),pnpmInstallForce:t0(eN.STRING,"".concat(tx," install --force"))};var t2={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,J.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"?t2.getDateTime():new Date;return{id:(0,et.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:et.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,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(t2.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,u=e.virtuals,i=u===void 0?[]:u,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=t2.createSchema({mongoose:t,schema:r,virtuals:i});return t2.applyPlugins(d,[a&&ee.default,c&&Z.default]),t2.applyMiddlewares(d,f),t.model(n,d)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return p(h({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=s(function(e){return C(this,function(t){return[2,!eu.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=s(function(t){var n;return C(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 i({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=s(function(t){return C(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)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:p(h({},X.default),{setConfig:G(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));ep(tX.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tC,"\n");eS(tX.GIT_IGNORE)?eh(tX.GIT_IGNORE,"utf-8").split("\n").includes(tC)||ed(tX.GIT_IGNORE,n,"utf-8"):ep(tX.GIT_IGNORE,n,"utf-8")},"setConfig")})},t4=/*#__PURE__*/function(){function e(t,n){o(this,e);k(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){var t=this;return s(function(){var n,r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n=h({},t2.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return s(function(){var n,r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n=e.map(function(e){return h({},t2.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=a.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return s(function(){var n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return s(function(){var n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return s(function(){var n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var n=this;return s(function(){var r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.collection.updateOne(e,{$set:t})];case 1:r=a.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var n=this;return s(function(){var r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.collection.updateMany(e,{$set:t})];case 1:r=a.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return s(function(){var n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return s(function(){var n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();G(t4,"MongoController");var t3=t4,t5=/*#__PURE__*/function(){function e(t){o(this,e);k(this,"model");this.model=t}u(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;var a=this;return s(function(){var s,o,c;return C(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);s=a.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 1:o=u.sent();return[2,o?{success:!0,result:o}:{success:!1,message:"No ".concat(a.getModelName()," found."),code:en.NOT_FOUND.CODE}];case 2:c=u.sent();return[2,{success:!1,message:c.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;var a=this;return s(function(){var s,o,c;return C(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);s=a.model.find(e,t,n);r&&s.populate(r);o={success:!0};return[4,s.exec()];case 1:return[2,(o.result=u.sent(),o)];case 2:c=u.sent();return[2,{success:!1,message:c.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.paginate(e,t)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.aggregatePaginate(n.model.aggregate(e),t)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return s(function(){var n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return s(function(){var n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.insertMany(e,t)];case 1:return[2,(r.result=a.sent().map(function(e){return d(e,z.Document)?e.toObject():null}).filter(function(e){return e!==null}),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return s(function(){var s,a;return C(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,r.model.findOneAndUpdate(e,t,h({new:!0},n)).exec()];case 1:s=o.sent();return[2,s?{success:!0,result:s}:{success:!1,message:"Failed to update ".concat(r.getModelName(),"."),code:en.NOT_FOUND.CODE}];case 2:a=o.sent();return[2,{success:!1,message:a.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return s(function(){var s,a;return C(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);s={success:!0};return[4,r.model.updateMany(e,t,n).exec()];case 1:return[2,(s.result=o.sent(),s)];case 2:a=o.sent();return[2,{success:!1,message:a.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.model.findOneAndDelete(e,t).exec()];case 1:r=a.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"No ".concat(n.getModelName()," found to delete."),code:en.NOT_FOUND.CODE}];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.model.deleteMany(e,t).exec()];case 1:r=a.sent();return[2,r.deletedCount===0?{success:!1,message:"No documents found to delete.",code:en.NOT_FOUND.CODE}:{success:!0,result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var n=this;return s(function(){var r,s,a,o;return C(this,function(c){switch(c.label){case 0:r=new Set;s=0;c.label=1;case 1:if(!(s<10))return[3,5];a=ec(e,s+t);o=!r.has(a);if(!o)return[3,3];r.add(a);return[4,n.model.exists({shortId:a})];case 2:o=!c.sent();c.label=3;case 3:if(o)return[2,{success:!0,result:a}];c.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:en.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return s(function(){var a,o,c,u,i,l,f,d,E,g,h;return C(this,function(v){switch(v.label){case 0:v.trys.push([0,8,,9]);a=t[e],o=G(/*#__PURE__*/function(){var e=s(function(e){var s,a,o;return C(this,function(c){switch(c.label){case 0:return[4,r.model.findOne(t2.createSlugQuery(e,n,t.id))];case 1:s=c.sent();if(!s)return[2,e];a=1;c.label=2;case 2:o="".concat(e,"-").concat(a);return[4,r.model.findOne(t2.createSlugQuery(o,n,t.id))];case 3:s=c.sent(),a++;c.label=4;case 4:if(s)return[3,2];c.label=5;case 5:return[2,o]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof a==="undefined"?"undefined":S(a))=="object"))return[3,5];c={};u=[];for(i in a)u.push(i);l=0;v.label=1;case 1:if(!(l<u.length))return[3,4];f=u[l];d=eo(a[f]);return[4,o(d)];case 2:c[f]=v.sent();v.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:c}];case 5:E=eo(a);g={success:!0};return[4,o(E)];case 6:return[2,(g.result=v.sent(),g)];case 7:return[3,9];case 8:h=v.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(h.message),code:en.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return s(function(){var n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();G(t5,"MongooseController");var t6=t5;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(t){if(Array.isArray(t))return e(t)}function n(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function r(e,t,n,r,s,a,o){try{var c=e[a](o);var u=c.value}catch(e){n(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,a){var o=e.apply(t,n);function c(e){r(o,s,a,c,u,"next",e)}function u(e){r(o,s,a,c,u,"throw",e)}c(undefined)})}}function a(e,t,n){t=l(t);return p(e,R()?Reflect.construct(t,n||[],l(e).constructor):t.apply(e,n))}function o(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function c(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)c(e.prototype,t);if(n)c(e,n);return e}function i(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 l(e){l=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return l(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)m(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 E(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function _(){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){i(e,t,n[t])})}return e}function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function v(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{h(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function p(e,t){if(t&&(y(t)==="object"||typeof t==="function")){return t}return n(e)}function m(e,t){m=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return m(e,t)}function O(e){return t(e)||E(e)||S(e)||_()}function y(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function S(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 R(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(R=function(){return!!e})()}function C(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 u([e,t])}}function u(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 I=Object.create;var T=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var b=Object.getPrototypeOf,N=Object.prototype.hasOwnProperty;var M=function(e,t,n){return t in e?T(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var G=function(e,t){return T(e,"name",{value:t,configurable:!0})};var P=function(e,t){for(var n in t)T(e,n,{get:t[n],enumerable:!0})},w=function(e,t,n,r){var s=true,a=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":y(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!N.call(e,s)&&s!==n&&T(e,s,{get:function(){return t[s]},enumerable:!(r=D(t,s))||r.enumerable})};for(var u=A(t)[Symbol.iterator](),i;!(s=(i=u.next()).done);s=true)c()}catch(e){a=true;o=e}finally{try{if(!s&&u.return!=null){u.return()}}finally{if(a){throw o}}}return e};var U=function(e,t,n){return n=e!=null?I(b(e)):{},w(t||!e||!e.__esModule?T(n,"default",{value:e,enumerable:!0}):n,e)},L=function(e){return w(T({},"__esModule",{value:!0}),e)};var k=function(e,t,n){return M(e,(typeof t==="undefined"?"undefined":y(t))!="symbol"?t+"":t,n)};var F={};P(F,{C_Collection:function(){return $},C_Db:function(){return B},C_Document:function(){return H},C_Model:function(){return K},MONGO_MIGRATE_OPTIONS:function(){return j},MongoController:function(){return tJ},MongooseController:function(){return tz},aggregatePaginate:function(){return Z.default},mongo:function(){return tW},mongoosePaginate:function(){return ee.default}});module.exports=L(F);var j="MONGO_MIGRATE_OPTIONS";var q=require("mongodb"),x=require("mongoose");var Y=/*#__PURE__*/function(e){f(t,e);function t(){o(this,t);return a(this,t,arguments)}return t}(q.Db);G(Y,"C_Db");var B=Y,Q=/*#__PURE__*/function(e){f(t,e);function t(){o(this,t);return a(this,t,arguments)}return t}(x.Document);G(Q,"C_Document");var H=Q,V=/*#__PURE__*/function(e){f(t,e);function t(){o(this,t);return a(this,t,arguments)}return t}(x.Model);G(V,"C_Model");var K=V,W=/*#__PURE__*/function(e){f(t,e);function t(){o(this,t);return a(this,t,arguments)}return t}(q.Collection);G(W,"C_Collection");var $=W;var J=require("date-fns"),X=U(require("migrate-mongo"),1),z=require("mongoose"),Z=U(require("mongoose-aggregate-paginate-v2"),1),ee=U(require("mongoose-paginate-v2"),1),et=require("uuid");var en={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 er=U(require("crypto-js"),1),es=U(require("slugify"),1);var ea=es.default.default||es.default;function eo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return ea(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))}G(eo,"generateSlug");function ec(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return er.default.SHA256(e).toString(er.default.enc.Hex).slice(0,t)}G(ec,"generateShortId");var eu={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":y(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 ei=U(require("fs-extra"),1),el=require("path");var ef=ei.default,ed=ef.lstatSync,eE=ef.readdirSync,e_=ef.mkdirSync,eg=ef.readFileSync,eh=ef.writeFileSync,ev=ef.appendFileSync,ep=ef.unlinkSync,em=ef.statSync,eO=ei.default.readJsonSync,ey=ei.default.writeJsonSync;function eS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ei.default.pathExistsSync(e)})}G(eS,"pathExistsSync");var eR=".cyberskill-storage";var eC=U(require("dotenv"),1),eI=require("envalid"),eT=U(require("os"),1),eD=U(require("path"),1),eA=U(require("process"),1);eC.default.config();function eb(){var e={DEBUG:eA.default.env.DEBUG||!1,CWD:eA.default.env.CWD||eA.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:eA.default.env.CYBERSKILL_STORAGE_DIRECTORY||eD.default.join(eT.default.homedir(),eR)};return(0,eI.cleanEnv)(e,{DEBUG:(0,eI.bool)(),CWD:(0,eI.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,eI.str)()})}G(eb,"getEnv");var eN=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eM=require("child_process"),eG=U(require("process"),1),eP=U(require("util"),1);var ew=function(e){return e.Error="error",e.Warning="warning",e}({});var eU=U(require("chalk"),1),eL=U(require("consola"),1),ek=require("graphql");var eF=eb();eF.DEBUG||(eL.default.level=4);function ej(e){var t=eU.default[e];return typeof t=="function"?t:eU.default.green}G(ej,"chalkKeyword");var eq={silent:eL.default.silent,level:eL.default.level,fatal:eL.default.fatal,error:eL.default.error,warn:eL.default.warn,log:eL.default.log,info:eL.default.info,success:eL.default.success,ready:eL.default.ready,start:eL.default.start,box:eL.default.box,debug:eL.default.debug,trace:eL.default.trace,verbose:eL.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){eL.default.box(eU.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eL.default.log("".concat(eU.default.gray("File:")," ").concat(eU.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eL.default.log(" ".concat(ej(n)("Rule:")," ").concat(s)),eL.default.log(" ".concat(ej(n)("Message:")," ").concat(a))}),eL.default.box(ej(n)("".concat(e," : ").concat(t.length))),eL.default.log(eU.default.gray("─".repeat(40)))}};var ex={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eY=U(require("node-fetch"),1);var eB=eb();function eQ(e){var t=tr(eB.CWD,ti);if(!eS(t))return!1;try{var n=eO(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,u=r===e,i=e in a,l=e in c;return u||i||l?{path:t,file:n,isCurrentProject:u,isDepend:i,isDevDepend:l}:!1}catch(e){return eq.warn("Failed to read package.json: ".concat(e.message)),!1}}G(eQ,"getPackage");function eH(e){return /*#__PURE__*/s(function(){var t,n,r,s;return C(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,eY.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:s=a.sent();throw eq.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}G(eH,"getLatestPackageVersion");function eV(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,o,c,u,i,l,f,d,E,_,h,v,p,m,O,y,S,R;return C(this,function(C){switch(C.label){case 0:C.trys.push([0,4,,5]);n=eQ(e);if(!n)return[2,g({},ex)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,d=n.isDevDepend,E=(r=i.dependencies)!==null&&r!==void 0?r:{},_=(s=i.devDependencies)!==null&&s!==void 0?s:{},h=l?(a=i.version)!==null&&a!==void 0?a:"0.0.0":f?(o=E[e])!==null&&o!==void 0?o:"0.0.0":d?(c=_[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];m=h;return[3,3];case 1:return[4,eH(e)];case 2:m=C.sent();C.label=3;case 3:v=m,p=l||h===v;if(!p&&(t===null||t===void 0?void 0:t.update)){;y=f?"dependencies":d?"devDependencies":null;y&&((O=i[y])===null||O===void 0?void 0:O[e])!==v&&(i[y]=(S=i[y])!==null&&S!==void 0?S:{},i[y][e]=v,ey(u,i),eq.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:p}];case 4:R=C.sent();return[2,(eq.error('Error checking package "'.concat(e,'": ').concat(R.message)),g({},ex))];case 5:return[2]}})})()}G(eV,"checkPackage");function eK(){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o,c,u,i,l,f;return C(this,function(d){switch(d.label){case 0:e=[{command:G(function(){return tK.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:G(function(){return tK.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:G(function(){return tK.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,u=o.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:i=d.sent();return[4,e9("".concat(u," using: ").concat(i),i)];case 5:d.sent();return[2];case 6:l=d.sent();eq.warn("Installation attempt failed: ".concat(u)),eq.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}G(eK,"installDependencies");function eW(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,o,c,u,i,l,f,d;return C(this,function(E){switch(E.label){case 0:if(!eS(tQ.PACKAGE_JSON)){eq.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=O(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eV(e,g({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eK()];case 3:r=E.sent();E.label=4;case 4:r;a=true,o=false,c=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();E.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:E.sent();E.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=E.sent();o=true;c=f;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:d=E.sent();throw eq.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})})()}G(eW,"setupPackages");var e$=U(require("node-persist"),1);var eJ=eb();function eX(){return /*#__PURE__*/s(function(){var e;return C(this,function(t){switch(t.label){case 0:e=e$.default.defaultInstance;if(e)return[3,2];return[4,e$.default.init({dir:eJ.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}G(eX,"initNodePersist");var ez={get:function e(e){return /*#__PURE__*/s(function(){var t,n;return C(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eX()];case 1:r.sent();return[4,e$.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eq.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 C(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eX()];case 1:r.sent();return[4,e$.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eq.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 C(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eX()];case 1:n.sent();return[4,e$.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eq.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 C(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eX()];case 1:n.sent();return[4,e$.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eq.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eq.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/s(function(){return C(this,function(t){try{return[2,"".concat(eJ.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eq.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eZ=eb(),e0=eP.promisify(eM.exec);function e1(e){return"error_list:".concat(e)}G(e1,"getErrorListKey");function e2(e){return /*#__PURE__*/s(function(){var t,n,r;return C(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e1(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,ez.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/s(function(){var e;return C(this,function(t){switch(t.label){case 0:return[4,ez.getLogLink(n)];case 1:e=t.sent();e&&eq.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();eq.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}G(e2,"saveErrorListToStorage");function e4(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,u,i,l,f;var d=s.exec(e)||[],E=a.exec(e)||[],_=o.exec(e)||[];var g,h,v,p,m,O;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===ew.Error?ew.Error:ew.Warning,message:(g=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(h=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):E.length?t.push({file:(v=E===null||E===void 0?void 0:E[1])!==null&&v!==void 0?v:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===ew.Error?ew.Error:ew.Warning,message:(p=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&p!==void 0?p:""}):_.length?t.push({file:"commitlint",type:ew.Error,message:(m=_===null||_===void 0?void 0:(l=_[1])===null||l===void 0?void 0:l.trim())!==null&&m!==void 0?m:"",rule:(O=_===null||_===void 0?void 0:(f=_[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&e2(t),eZ.DEBUG&&n.length&&(eq.warn("Unmatched lines:"),n.forEach(function(e){return eq.info(" ".concat(e))}))}G(e4,"parseTextErrors");function e3(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?ew.Error:ew.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&e2(n)}catch(t){e4(e)}}G(e3,"parseCommandOutput");function e5(e){return /*#__PURE__*/s(function(e){var t,n,r,s,a,o,c,u,i;var l=arguments;return C(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e3;n=new AbortController;eG.default.on("SIGINT",function(){eq.warn("Process interrupted. Terminating..."),n.abort(),eG.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e0(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:o=f.sent();c=o.stdout,u=o.stderr,i=o.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&eq.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}G(e5,"executeCommand");function e6(e){return{raw:!0,cmd:e}}G(e6,"rawCommand");function e7(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tU," ").concat(to," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tU," ").concat(tG," ").concat(tO," ").concat(e):"".concat(tU," ").concat(tm," ").concat(e)}G(e7,"formatCLI");function e8(e,t){return typeof e=="function"?e7(e(t),t):(typeof e==="undefined"?"undefined":y(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e7(e,t):e}G(e8,"formatCommand");function e9(e,t){return /*#__PURE__*/s(function(){var n;return C(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eq.start("".concat(e)),eZ.DEBUG&&eq.info("→ ".concat(t));return[4,e5(t)];case 1:r.sent(),eq.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eq.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}G(e9,"runCommand");var te=U(require("path"),1);var tt=eb();function tn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,te.resolve).apply(this,[tt.CWD].concat(O(t)))}G(tn,"resolveWorkingPath");function tr(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,te.join).apply(this,O(t))}G(tr,"join");var ts=eb(),ta=ts.CWD,to="@cyberskill/shared",tc="node_modules",tu="dist",ti="package.json",tl="package-lock.json",tf="tsconfig.json",td=".gitignore",tE=".simple-git-hooks.json",t_="pnpm-lock.yaml",tg=".git/hooks/",th=".git/COMMIT_EDITMSG",tv=".migrate-mongo.config.js",tp=tr(ta,tc,to,tu),tm="cyberskill",tO="src/nodejs/cli/index.ts",ty="eslint",tS="eslint",tR="vitest",tC="playwright",tI="vitest",tT="@commitlint/cli",tD="commitlint",tA="lint-staged",tb="lint-staged",tN="typescript",tM="tsc",tG="tsx",tP="git",tw="pnpm",tU="pnpm exec",tL="simple-git-hooks",tk="simple-git-hooks",tF="@eslint/config-inspector",tj="eslint-config-inspector",tq="node-modules-inspector",tx="node-modules-inspector",tY="migrate-mongo",tB="./node_modules/migrate-mongo/bin/migrate-mongo",tQ={CYBERSKILL_DIRECTORY:tp,WORKING_DIRECTORY:ta,TS_CONFIG:tn(tf),GIT_IGNORE:tn(td),GIT_HOOK:tn(tg),GIT_COMMIT_MSG:tn(th),SIMPLE_GIT_HOOKS_JSON:tn(tE),PACKAGE_JSON:tn(ti),PACKAGE_LOCK_JSON:tn(tl),PNPM_LOCK_YAML:tn(t_),NODE_MODULES:tn(tc),MIGRATE_MONGO_CONFIG:tn(tv),LINT_STAGED_CONFIG:tn("".concat(tp,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:tn("".concat(tp,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:tn("".concat(tp,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:tn("".concat(tp,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:tn("".concat(tp,"/react/vitest/vitest.e2e.js"))};function tH(e,t,n){return /*#__PURE__*/s(function(){return C(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eN.CLI:return[3,1];case eN.STRING:return[3,3]}return[3,4];case 1:return[4,eW(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),e8(e6("".concat(tU," ").concat(n))))];case 3:return[2,e8(e6(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}G(tH,"buildCommand");function tV(e,t,n){return function(){return /*#__PURE__*/s(function(){return C(this,function(r){return[2,tH(e,t,n)]})})()}}G(tV,"commandFactory");var tK={simpleGitHooks:tV(eN.CLI,tL,tk),eslintInspect:tV(eN.CLI,tF,tj),nodeModulesInspect:tV(eN.CLI,tq,tx),eslintCheck:tV(eN.CLI,ty,"".concat(tS," ").concat(tQ.WORKING_DIRECTORY)),eslintFix:tV(eN.CLI,ty,"".concat(tS," ").concat(tQ.WORKING_DIRECTORY," --fix")),typescriptCheck:tV(eN.CLI,tN,"".concat(tM," -p ").concat(tQ.TS_CONFIG," --noEmit")),configureGitHook:tV(eN.STRING,"".concat(tP," config core.hooksPath ").concat(tQ.GIT_HOOK)),testUnit:tV(eN.CLI,tR,"".concat(tI," --config ").concat(tQ.UNIT_TEST_CONFIG)),testE2e:tV(eN.CLI,"".concat(tR," ").concat(tC),"".concat(tI," --config ").concat(tQ.E2E_TEST_CONFIG)),mongoMigrateCreate:G(function(e){return tV(eN.CLI,tY,"".concat(tG," ").concat(tB," create ").concat(e," -f ").concat(tQ.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tV(eN.CLI,tY,"".concat(tG," ").concat(tB," up -f ").concat(tQ.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tV(eN.CLI,tY,"".concat(tG," ").concat(tB," down -f ").concat(tQ.MIGRATE_MONGO_CONFIG)),commitLint:tV(eN.CLI,tT,"".concat(tD," --edit ").concat(tQ.GIT_COMMIT_MSG," --config ").concat(tQ.COMMITLINT_CONFIG)),lintStaged:tV(eN.CLI,tA,"".concat(tb," --config ").concat(tQ.LINT_STAGED_CONFIG)),stageBuildDirectory:tV(eN.STRING,"".concat(tP," add ").concat(tu)),build:tV(eN.STRING,"".concat(tw," run build")),pnpmInstallStandard:tV(eN.STRING,"".concat(tw," install")),pnpmInstallLegacy:tV(eN.STRING,"".concat(tw," install --legacy-peer-deps")),pnpmInstallForce:tV(eN.STRING,"".concat(tw," install --force"))};var tW={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,J.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"?tW.getDateTime():new Date;return{id:(0,et.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:et.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,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(tW.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,u=e.virtuals,i=u===void 0?[]:u,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=tW.createSchema({mongoose:t,schema:r,virtuals:i});return tW.applyPlugins(d,[a&&ee.default,c&&Z.default]),tW.applyMiddlewares(d,f),t.model(n,d)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return v(g({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/s(function(){return C(this,function(t){return[2,!eu.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/s(function(){var n;return C(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 i({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/s(function(){return C(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({},X.default),{setConfig:G(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");eS(tQ.GIT_IGNORE)?eg(tQ.GIT_IGNORE,"utf-8").split("\n").includes(tv)||ev(tQ.GIT_IGNORE,n,"utf-8"):eh(tQ.GIT_IGNORE,n,"utf-8")},"setConfig")})},t$=/*#__PURE__*/function(){function e(t,n){o(this,e);k(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=g({},tW.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__*/s(function(){var t,n,r;return C(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return g({},tW.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__*/s(function(){var t,n;return C(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 C(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__*/s(function(){var e,t,n;var r=arguments;return C(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__*/s(function(){var n,r;return C(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__*/s(function(){var n,r;return C(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__*/s(function(){var t,n;return C(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 C(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}();G(t$,"MongoController");var tJ=t$,tX=/*#__PURE__*/function(){function e(t){o(this,e);k(this,"model");this.model=t}u(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,s,a,o;var c=arguments;return C(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]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=u.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:en.NOT_FOUND.CODE}];case 3:o=u.sent();return[2,{success:!1,message:o.message,code:en.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,s,a,o;var c=arguments;return C(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]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=u.sent(),a)];case 3:o=u.sent();return[2,{success:!1,message:o.message,code:en.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 s=arguments;return C(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:en.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 s=arguments;return C(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:en.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 C(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:en.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 C(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:en.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 s=arguments;return C(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,z.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:en.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,s;var a=arguments;return C(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:en.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:en.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,s;var a=arguments;return C(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:en.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 s=arguments;return C(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:en.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:en.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 s=arguments;return C(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:en.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:en.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,s,a;return C(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:en.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t){return /*#__PURE__*/s(function(e,t){var n,r,a,o,c,u,i,l,f,d,E,_,g;var h=arguments;return C(this,function(v){switch(v.label){case 0:n=this;r=h.length>2&&h[2]!==void 0?h[2]:{};v.label=1;case 1:v.trys.push([1,9,,10]);a=t[e],o=G(function(e){return /*#__PURE__*/s(function(){var n,s,a;return C(this,function(o){switch(o.label){case 0:return[4,this.model.findOne(tW.createSlugQuery(e,r,t.id))];case 1:n=o.sent();if(!n)return[2,e];s=1;o.label=2;case 2:a="".concat(e,"-").concat(s);return[4,this.model.findOne(tW.createSlugQuery(a,r,t.id))];case 3:n=o.sent(),s++;o.label=4;case 4:if(n)return[3,2];o.label=5;case 5:return[2,a]}})}).call(n)},"createUniqueSlug");if(!((typeof a==="undefined"?"undefined":y(a))=="object"))return[3,6];c={};u=[];for(i in a)u.push(i);l=0;v.label=2;case 2:if(!(l<u.length))return[3,5];f=u[l];d=eo(a[f]);return[4,o(d)];case 3:c[f]=v.sent();v.label=4;case 4:l++;return[3,2];case 5:return[2,{success:!0,result:c}];case 6:E=eo(a);_={success:!0};return[4,o(E)];case 7:return[2,(_.result=v.sent(),_)];case 8:return[3,10];case 9:g=v.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(g.message),code:en.INTERNAL_SERVER_ERROR.CODE}];case 10:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return C(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:en.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();G(tX,"MongooseController");var tz=tX;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 +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(t){if(Array.isArray(t))return e(t)}function n(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function r(e,t,n,r,s,o,a){try{var c=e[o](a);var i=c.value}catch(e){n(e);return}if(c.done){t(i)}else{Promise.resolve(i).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,o){var a=e.apply(t,n);function c(e){r(a,s,o,c,i,"next",e)}function i(e){r(a,s,o,c,i,"throw",e)}c(undefined)})}}function o(e,t,n){t=l(t);return v(e,_()?Reflect.construct(t,n||[],l(e).constructor):t.apply(e,n))}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function c(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)c(e.prototype,t);if(n)c(e,n);return e}function u(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function l(e){l=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return l(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)O(e,t)}function E(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function d(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}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 p(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){u(e,t,n[t])})}return e}function m(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function g(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{m(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function v(e,t){if(t&&(S(t)==="object"||typeof t==="function")){return t}return n(e)}function O(e,t){O=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return O(e,t)}function y(e){return t(e)||d(e)||R(e)||h()}function S(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function R(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 _(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(_=function(){return!!e})()}function I(e,t){var n,r,s,o={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=c(0),a["throw"]=c(1),a["return"]=c(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,c[0]&&(o=0)),o)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:o.label++;return{value:c[1],done:false};case 5:o.label++;r=c[1];c=[0];continue;case 7:c=o.ops.pop();o.trys.pop();continue;default:if(!(s=o.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){o=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){o.label=c[1];break}if(c[0]===6&&o.label<s[1]){o.label=s[1];s=c;break}if(s&&o.label<s[2]){o.label=s[2];o.ops.push(c);break}if(s[2])o.ops.pop();o.trys.pop();continue}c=t.call(e,o)}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 C=Object.defineProperty;var T=function(e,t,n){return t in e?C(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var A=function(e,t){return C(e,"name",{value:t,configurable:!0})};var D=function(e,t,n){return T(e,(typeof t==="undefined"?"undefined":S(t))!="symbol"?t+"":t,n)};var N="MONGO_MIGRATE_OPTIONS";import{Collection as b,Db as G}from"mongodb";import{Document as M,Model as w}from"mongoose";var P=/*#__PURE__*/function(e){"use strict";f(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(G);A(P,"C_Db");var L=P,U=/*#__PURE__*/function(e){"use strict";f(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(M);A(U,"C_Document");var k=U,F=/*#__PURE__*/function(e){"use strict";f(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(w);A(F,"C_Model");var j=F,x=/*#__PURE__*/function(e){"use strict";f(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(b);A(x,"C_Collection");var Y=x;import{format as B}from"date-fns";import q from"migrate-mongo";import{Document as Q}from"mongoose";import H from"mongoose-aggregate-paginate-v2";import V from"mongoose-paginate-v2";import{v4 as K}from"uuid";var W={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 $ from"crypto-js";import J from"slugify";var X=J.default||J;function z(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return X(e,p({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))}A(z,"generateSlug");function Z(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return $.SHA256(e).toString($.enc.Hex).slice(0,t)}A(Z,"generateShortId");var ee={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":S(e))=="object"?E(e,Date)?!1:E(e,Map)||E(e,Set)?e.size===0:E(e,WeakMap)||E(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};import et from"fs-extra";var en=et.appendFileSync,er=et.lstatSync,es=et.mkdirSync,eo=et.readFileSync,ea=et.unlinkSync,ec=et.writeFileSync,ei=et.statSync,eu=et.readJsonSync,el=et.writeJsonSync;function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return et.pathExistsSync(e)})}A(ef,"pathExistsSync");var eE=".cyberskill-storage";import ed from"dotenv";import{bool as eh,cleanEnv as ep,str as em}from"envalid";import eg from"node:os";import ev from"node:path";import eO from"node:process";ed.config();function ey(){var e={DEBUG:eO.env.DEBUG||!1,CWD:eO.env.CWD||eO.cwd(),CYBERSKILL_STORAGE_DIRECTORY:eO.env.CYBERSKILL_STORAGE_DIRECTORY||ev.join(eg.homedir(),eE)};return ep(e,{DEBUG:eh(),CWD:em(),CYBERSKILL_STORAGE_DIRECTORY:em()})}A(ey,"getEnv");var eS=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eR}from"node:child_process";import e_ from"node:process";import*as eI from"node:util";var eC=function(e){return e.Error="error",e.Warning="warning",e}({});import eT from"chalk";import eA from"consola";import{GraphQLError as eD}from"graphql";var eN=ey();eN.DEBUG||(eA.level=4);function eb(e){var t=eT[e];return typeof t=="function"?t:eT.green}A(eb,"chalkKeyword");var eG={silent:eA.silent,level:eA.level,fatal:eA.fatal,error:eA.error,warn:eA.warn,log:eA.log,info:eA.info,success:eA.success,ready:eA.ready,start:eA.start,box:eA.box,debug:eA.debug,trace:eA.trace,verbose:eA.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)){eA.box(eT.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,o=e.message;eA.log("".concat(eT.gray("File:")," ").concat(eT.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eA.log(" ".concat(eb(n)("Rule:")," ").concat(s)),eA.log(" ".concat(eb(n)("Message:")," ").concat(o))}),eA.box(eb(n)("".concat(e," : ").concat(t.length))),eA.log(eT.gray("─".repeat(40)))}};var eM={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import ew from"node-fetch";var eP=ey();function eL(e){var t=tr(eP.CWD,tu);if(!ef(t))return!1;try{var n=eu(t),r=n.name,s=n.dependencies,o=s===void 0?{}:s,a=n.devDependencies,c=a===void 0?{}:a,i=r===e,u=e in o,l=e in c;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return eG.warn("Failed to read package.json: ".concat(e.message)),!1}}A(eL,"getPackage");function eU(e){return ek.apply(this,arguments)}function ek(){ek=s(function(e){var t,n,r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,ew("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.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=o.sent(),r=n.version;return[2,r];case 3:s=o.sent();throw eG.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})});return ek.apply(this,arguments)}A(eU,"getLatestPackageVersion");function eF(e,t){return ej.apply(this,arguments)}function ej(){ej=s(function(e,t){var n,r,s,o,a,c,i,u,l,f,E,d,h,m,g,v,O,y,S,R,_;return I(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=eL(e);if(!n)return[2,p({},eM)];i=n.path,u=n.file,l=n.isCurrentProject,f=n.isDepend,E=n.isDevDepend,d=(r=u.dependencies)!==null&&r!==void 0?r:{},h=(s=u.devDependencies)!==null&&s!==void 0?s:{},m=l?(o=u.version)!==null&&o!==void 0?o:"0.0.0":f?(a=d[e])!==null&&a!==void 0?a:"0.0.0":E?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];O=m;return[3,3];case 1:return[4,eU(e)];case 2:O=I.sent();I.label=3;case 3:g=O,v=l||m===g;if(!v&&(t===null||t===void 0?void 0:t.update)){;S=f?"dependencies":E?"devDependencies":null;S&&((y=u[S])===null||y===void 0?void 0:y[e])!==g&&(u[S]=(R=u[S])!==null&&R!==void 0?R:{},u[S][e]=g,el(i,u),eG.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:v}];case 4:_=I.sent();return[2,(eG.error('Error checking package "'.concat(e,'": ').concat(_.message)),p({},eM))];case 5:return[2]}})});return ej.apply(this,arguments)}A(eF,"checkPackage");function ex(){return eY.apply(this,arguments)}function eY(){eY=s(function(){var e,t,n,r,s,o,a,c,i,u,l,f;return I(this,function(E){switch(E.label){case 0:e=[{command:A(function(){return tW.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:A(function(){return tW.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:A(function(){return tW.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);s=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(o=s.next()).done))return[3,8];a=o.value,c=a.command,i=a.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,c()];case 4:u=E.sent();return[4,e8("".concat(i," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();eG.warn("Installation attempt failed: ".concat(i)),eG.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=E.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eY.apply(this,arguments)}A(ex,"installDependencies");function eB(e,t){return eq.apply(this,arguments)}function eq(){eq=s(function(e,t){var n,r,s,o,a,c,i,u,l,f,E;return I(this,function(d){switch(d.label){case 0:if(!ef(tQ.PACKAGE_JSON)){eG.error("package.json not found. Aborting setup.");return[2]}d.label=1;case 1:d.trys.push([1,13,,14]);n=y(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eF(e,p({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=d.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ex()];case 3:r=d.sent();d.label=4;case 4:r;o=true,a=false,c=undefined;d.label=5;case 5:d.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();d.label=6;case 6:if(!!(o=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:d.sent();d.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:f=d.sent();a=true;c=f;return[3,12];case 11:try{if(!o&&i.return!=null){i.return()}}finally{if(a){throw c}}return[7];case 12:return[3,14];case 13:E=d.sent();throw eG.error('Failed to setup "'.concat(e.join(", "),'": ').concat(E.message)),E;case 14:return[2]}})});return eq.apply(this,arguments)}A(eB,"setupPackages");import eQ from"node-persist";var eH=ey();function eV(){return eK.apply(this,arguments)}function eK(){eK=s(function(){var e;return I(this,function(t){switch(t.label){case 0:e=eQ.defaultInstance;if(e)return[3,2];return[4,eQ.init({dir:eH.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return eK.apply(this,arguments)}A(eV,"initNodePersist");var eW={get:function e(e){return s(function(){var t,n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eV()];case 1:r.sent();return[4,eQ.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eG.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return s(function(){var n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eV()];case 1:r.sent();return[4,eQ.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eG.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return s(function(){var t;return I(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eV()];case 1:n.sent();return[4,eQ.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eG.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return s(function(){var e,t;return I(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eV()];case 1:n.sent();return[4,eQ.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eG.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eG.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return s(function(){return I(this,function(t){try{return[2,"".concat(eH.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eG.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e$=ey(),eJ=eI.promisify(eR);function eX(e){return"error_list:".concat(e)}A(eX,"getErrorListKey");function ez(e){return eZ.apply(this,arguments)}function eZ(){eZ=s(function(e){var t,n,r;return I(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eX(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eW.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/s(function(){var e;return I(this,function(t){switch(t.label){case 0:return[4,eW.getLogLink(n)];case 1:e=t.sent();e&&eG.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=o.sent();eG.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return eZ.apply(this,arguments)}A(ez,"saveErrorListToStorage");function e0(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,f;var E=s.exec(e)||[],d=o.exec(e)||[],h=a.exec(e)||[];var p,m,g,v,O,y;E.length&&r?t.push({file:r,position:"".concat(E[1],":").concat(E[2]),type:E[3]===eC.Error?eC.Error:eC.Warning,message:(p=E===null||E===void 0?void 0:(c=E[4])===null||c===void 0?void 0:c.trim())!==null&&p!==void 0?p:"",rule:(m=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):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]===eC.Error?eC.Error:eC.Warning,message:(v=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):h.length?t.push({file:"commitlint",type:eC.Error,message:(O=h===null||h===void 0?void 0:(l=h[1])===null||l===void 0?void 0:l.trim())!==null&&O!==void 0?O:"",rule:(y=h===null||h===void 0?void 0:(f=h[2])===null||f===void 0?void 0:f.trim())!==null&&y!==void 0?y:""}):n.push(e.trim())}}),t.length&&ez(t),e$.DEBUG&&n.length&&(eG.warn("Unmatched lines:"),n.forEach(function(e){return eG.info(" ".concat(e))}))}A(e0,"parseTextErrors");function e2(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,o=e.column,a=e.ruleId,c=e.message;n.push({type:r===2?eC.Error:eC.Warning,file:t,position:"".concat(s,":").concat(o),rule:a,message:c})})}),n.length&&ez(n)}catch(t){e0(e)}}A(e2,"parseCommandOutput");function e1(e){return e4.apply(this,arguments)}function e4(){e4=s(function(e){var t,n,r,s,o,a,c,i,u;var l=arguments;return I(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e2;n=new AbortController;e_.on("SIGINT",function(){eG.warn("Process interrupted. Terminating..."),n.abort(),e_.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eJ(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,o=r.stderr;[s,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:a=f.sent();c=a.stdout,i=a.stderr,u=a.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&eG.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return e4.apply(this,arguments)}A(e1,"executeCommand");function e3(e){return{raw:!0,cmd:e}}A(e3,"rawCommand");function e5(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tL," ").concat(ta," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tL," ").concat(tM," ").concat(ty," ").concat(e):"".concat(tL," ").concat(tO," ").concat(e)}A(e5,"formatCLI");function e6(e,t){return typeof e=="function"?e5(e(t),t):(typeof e==="undefined"?"undefined":S(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e5(e,t):e}A(e6,"formatCommand");function e8(e,t){return e7.apply(this,arguments)}function e7(){e7=s(function(e,t){var n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eG.start("".concat(e)),e$.DEBUG&&eG.info("→ ".concat(t));return[4,e1(t)];case 1:r.sent(),eG.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eG.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return e7.apply(this,arguments)}A(e8,"runCommand");import{join as e9,resolve as te}from"node:path";var tt=ey();function tn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return te.apply(void 0,[tt.CWD].concat(y(t)))}A(tn,"resolveWorkingPath");function tr(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return e9.apply(void 0,y(t))}A(tr,"join");var ts=ey(),to=ts.CWD,ta="@cyberskill/shared",tc="node_modules",ti="dist",tu="package.json",tl="package-lock.json",tf="tsconfig.json",tE=".gitignore",td=".simple-git-hooks.json",th="pnpm-lock.yaml",tp=".git/hooks/",tm=".git/COMMIT_EDITMSG",tg=".migrate-mongo.config.js",tv=tr(to,tc,ta,ti),tO="cyberskill",ty="src/nodejs/cli/index.ts",tS="eslint",tR="eslint",t_="vitest",tI="playwright",tC="vitest",tT="@commitlint/cli",tA="commitlint",tD="lint-staged",tN="lint-staged",tb="typescript",tG="tsc",tM="tsx",tw="git",tP="pnpm",tL="pnpm exec",tU="simple-git-hooks",tk="simple-git-hooks",tF="@eslint/config-inspector",tj="eslint-config-inspector",tx="node-modules-inspector",tY="node-modules-inspector",tB="migrate-mongo",tq="./node_modules/migrate-mongo/bin/migrate-mongo",tQ={CYBERSKILL_DIRECTORY:tv,WORKING_DIRECTORY:to,TS_CONFIG:tn(tf),GIT_IGNORE:tn(tE),GIT_HOOK:tn(tp),GIT_COMMIT_MSG:tn(tm),SIMPLE_GIT_HOOKS_JSON:tn(td),PACKAGE_JSON:tn(tu),PACKAGE_LOCK_JSON:tn(tl),PNPM_LOCK_YAML:tn(th),NODE_MODULES:tn(tc),MIGRATE_MONGO_CONFIG:tn(tg),LINT_STAGED_CONFIG:tn("".concat(tv,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:tn("".concat(tv,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:tn("".concat(tv,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:tn("".concat(tv,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:tn("".concat(tv,"/react/vitest/vitest.e2e.js"))};function tH(e,t,n){return tV.apply(this,arguments)}function tV(){tV=s(function(e,t,n){return I(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eS.CLI:return[3,1];case eS.STRING:return[3,3]}return[3,4];case 1:return[4,eB(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),e6(e3("".concat(tL," ").concat(n))))];case 3:return[2,e6(e3(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tV.apply(this,arguments)}A(tH,"buildCommand");function tK(e,t,n){return /*#__PURE__*/s(function(){return I(this,function(r){return[2,tH(e,t,n)]})})}A(tK,"commandFactory");var tW={simpleGitHooks:tK(eS.CLI,tU,tk),eslintInspect:tK(eS.CLI,tF,tj),nodeModulesInspect:tK(eS.CLI,tx,tY),eslintCheck:tK(eS.CLI,tS,"".concat(tR," ").concat(tQ.WORKING_DIRECTORY)),eslintFix:tK(eS.CLI,tS,"".concat(tR," ").concat(tQ.WORKING_DIRECTORY," --fix")),typescriptCheck:tK(eS.CLI,tb,"".concat(tG," -p ").concat(tQ.TS_CONFIG," --noEmit")),configureGitHook:tK(eS.STRING,"".concat(tw," config core.hooksPath ").concat(tQ.GIT_HOOK)),testUnit:tK(eS.CLI,t_,"".concat(tC," --config ").concat(tQ.UNIT_TEST_CONFIG)),testE2e:tK(eS.CLI,"".concat(t_," ").concat(tI),"".concat(tC," --config ").concat(tQ.E2E_TEST_CONFIG)),mongoMigrateCreate:A(function(e){return tK(eS.CLI,tB,"".concat(tM," ").concat(tq," create ").concat(e," -f ").concat(tQ.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tK(eS.CLI,tB,"".concat(tM," ").concat(tq," up -f ").concat(tQ.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tK(eS.CLI,tB,"".concat(tM," ").concat(tq," down -f ").concat(tQ.MIGRATE_MONGO_CONFIG)),commitLint:tK(eS.CLI,tT,"".concat(tA," --edit ").concat(tQ.GIT_COMMIT_MSG," --config ").concat(tQ.COMMITLINT_CONFIG)),lintStaged:tK(eS.CLI,tD,"".concat(tN," --config ").concat(tQ.LINT_STAGED_CONFIG)),stageBuildDirectory:tK(eS.STRING,"".concat(tw," add ").concat(ti)),build:tK(eS.STRING,"".concat(tP," run build")),pnpmInstallStandard:tK(eS.STRING,"".concat(tP," install")),pnpmInstallLegacy:tK(eS.STRING,"".concat(tP," install --legacy-peer-deps")),pnpmInstallForce:tK(eS.STRING,"".concat(tP," install --force"))};var t$={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return B(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:K(),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:K,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,o=e.standalone,a=o===void 0?!1:o;var c=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=c.virtual(t,n);r&&s.get(r)}),a||c.add(t$.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,o=s===void 0?!1:s,a=e.aggregate,c=a===void 0?!1:a,i=e.virtuals,u=i===void 0?[]:i,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var E=t$.createSchema({mongoose:t,schema:r,virtuals:u});return t$.applyPlugins(E,[o&&V,c&&H]),t$.applyMiddlewares(E,f),t.model(n,E)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return g(p({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=s(function(e){return I(this,function(t){return[2,!ee.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=s(function(t){var n;return I(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return u({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=s(function(t){return I(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!E(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:g(p({},q),{setConfig:A(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));ec(tQ.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tg,"\n");ef(tQ.GIT_IGNORE)?eo(tQ.GIT_IGNORE,"utf-8").split("\n").includes(tg)||en(tQ.GIT_IGNORE,n,"utf-8"):ec(tQ.GIT_IGNORE,n,"utf-8")},"setConfig")})},tJ=/*#__PURE__*/function(){"use strict";function e(t,n){a(this,e);D(this,"collection");this.collection=t.collection(n)}i(e,[{key:"createOne",value:function e(e){var t=this;return s(function(){var n,r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);n=p({},t$.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=o.sent(),r)];case 2:s=o.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return s(function(){var n,r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);n=e.map(function(e){return p({},t$.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=o.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=o.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return s(function(){var n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return s(function(){var n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return s(function(){var n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var n=this;return s(function(){var r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,n.collection.updateOne(e,{$set:t})];case 1:r=o.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:r}];case 2:s=o.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var n=this;return s(function(){var r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,n.collection.updateMany(e,{$set:t})];case 1:r=o.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:r}];case 2:s=o.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return s(function(){var n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return s(function(){var n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();A(tJ,"MongoController");var tX=tJ,tz=/*#__PURE__*/function(){"use strict";function e(t){a(this,e);D(this,"model");this.model=t}i(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;var o=this;return s(function(){var s,a,c;return I(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);s=o.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 1:a=i.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(o.getModelName()," found."),code:W.NOT_FOUND.CODE}];case 2:c=i.sent();return[2,{success:!1,message:c.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;var o=this;return s(function(){var s,a,c;return I(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);s=o.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 1:return[2,(a.result=i.sent(),a)];case 2:c=i.sent();return[2,{success:!1,message:c.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);r={success:!0};return[4,n.model.paginate(e,t)];case 1:return[2,(r.result=o.sent(),r)];case 2:s=o.sent();return[2,{success:!1,message:s.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);r={success:!0};return[4,n.model.aggregatePaginate(n.model.aggregate(e),t)];case 1:return[2,(r.result=o.sent(),r)];case 2:s=o.sent();return[2,{success:!1,message:s.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return s(function(){var n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return s(function(){var n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);r={success:!0};return[4,n.model.insertMany(e,t)];case 1:return[2,(r.result=o.sent().map(function(e){return E(e,Q)?e.toObject():null}).filter(function(e){return e!==null}),r)];case 2:s=o.sent();return[2,{success:!1,message:s.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return s(function(){var s,o;return I(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,r.model.findOneAndUpdate(e,t,p({new:!0},n)).exec()];case 1:s=a.sent();return[2,s?{success:!0,result:s}:{success:!1,message:"Failed to update ".concat(r.getModelName(),"."),code:W.NOT_FOUND.CODE}];case 2:o=a.sent();return[2,{success:!1,message:o.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return s(function(){var s,o;return I(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);s={success:!0};return[4,r.model.updateMany(e,t,n).exec()];case 1:return[2,(s.result=a.sent(),s)];case 2:o=a.sent();return[2,{success:!1,message:o.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,n.model.findOneAndDelete(e,t).exec()];case 1:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"No ".concat(n.getModelName()," found to delete."),code:W.NOT_FOUND.CODE}];case 2:s=o.sent();return[2,{success:!1,message:s.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return s(function(){var r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,n.model.deleteMany(e,t).exec()];case 1:r=o.sent();return[2,r.deletedCount===0?{success:!1,message:"No documents found to delete.",code:W.NOT_FOUND.CODE}:{success:!0,result:r}];case 2:s=o.sent();return[2,{success:!1,message:s.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var n=this;return s(function(){var r,s,o,a;return I(this,function(c){switch(c.label){case 0:r=new Set;s=0;c.label=1;case 1:if(!(s<10))return[3,5];o=Z(e,s+t);a=!r.has(o);if(!a)return[3,3];r.add(o);return[4,n.model.exists({shortId:o})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:o}];c.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:W.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return s(function(){var o,a,c,i,u,l,f,E,d,h,p;return I(this,function(m){switch(m.label){case 0:m.trys.push([0,8,,9]);o=t[e],a=A(/*#__PURE__*/function(){var e=s(function(e){var s,o,a;return I(this,function(c){switch(c.label){case 0:return[4,r.model.findOne(t$.createSlugQuery(e,n,t.id))];case 1:s=c.sent();if(!s)return[2,e];o=1;c.label=2;case 2:a="".concat(e,"-").concat(o);return[4,r.model.findOne(t$.createSlugQuery(a,n,t.id))];case 3:s=c.sent(),o++;c.label=4;case 4:if(s)return[3,2];c.label=5;case 5:return[2,a]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof o==="undefined"?"undefined":S(o))=="object"))return[3,5];c={};i=[];for(u in o)i.push(u);l=0;m.label=1;case 1:if(!(l<i.length))return[3,4];f=i[l];E=z(o[f]);return[4,a(E)];case 2:c[f]=m.sent();m.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:c}];case 5:d=z(o);h={success:!0};return[4,a(d)];case 6:return[2,(h.result=m.sent(),h)];case 7:return[3,9];case 8:p=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(p.message),code:W.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return s(function(){var n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();A(tz,"MongooseController");var tZ=tz;export{Y as C_Collection,L as C_Db,k as C_Document,j as C_Model,N as MONGO_MIGRATE_OPTIONS,tX as MongoController,tZ as MongooseController,H as aggregatePaginate,t$ as mongo,V 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(t){if(Array.isArray(t))return e(t)}function n(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function r(e,t,n,r,s,o,a){try{var c=e[o](a);var i=c.value}catch(e){n(e);return}if(c.done){t(i)}else{Promise.resolve(i).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,o){var a=e.apply(t,n);function c(e){r(a,s,o,c,i,"next",e)}function i(e){r(a,s,o,c,i,"throw",e)}c(undefined)})}}function o(e,t,n){t=l(t);return p(e,R()?Reflect.construct(t,n||[],l(e).constructor):t.apply(e,n))}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function c(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)c(e.prototype,t);if(n)c(e,n);return e}function u(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function l(e){l=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return l(e)}function E(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)v(e,t)}function f(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function d(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}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 _(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){u(e,t,n[t])})}return e}function m(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function g(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{m(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function p(e,t){if(t&&(S(t)==="object"||typeof t==="function")){return t}return n(e)}function v(e,t){v=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return v(e,t)}function O(e){return t(e)||d(e)||y(e)||h()}function S(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(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 R(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(R=function(){return!!e})()}function I(e,t){var n,r,s,o={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=c(0),a["throw"]=c(1),a["return"]=c(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,c[0]&&(o=0)),o)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:o.label++;return{value:c[1],done:false};case 5:o.label++;r=c[1];c=[0];continue;case 7:c=o.ops.pop();o.trys.pop();continue;default:if(!(s=o.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){o=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){o.label=c[1];break}if(c[0]===6&&o.label<s[1]){o.label=s[1];s=c;break}if(s&&o.label<s[2]){o.label=s[2];o.ops.push(c);break}if(s[2])o.ops.pop();o.trys.pop();continue}c=t.call(e,o)}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 C=Object.defineProperty;var T=function(e,t,n){return t in e?C(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var A=function(e,t){return C(e,"name",{value:t,configurable:!0})};var D=function(e,t,n){return T(e,(typeof t==="undefined"?"undefined":S(t))!="symbol"?t+"":t,n)};var N="MONGO_MIGRATE_OPTIONS";import{Collection as b,Db as G}from"mongodb";import{Document as M,Model as P}from"mongoose";var w=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(G);A(w,"C_Db");var U=w,L=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(M);A(L,"C_Document");var k=L,F=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(P);A(F,"C_Model");var j=F,x=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(b);A(x,"C_Collection");var Y=x;import{format as B}from"date-fns";import q from"migrate-mongo";import{Document as Q}from"mongoose";import H from"mongoose-aggregate-paginate-v2";import V from"mongoose-paginate-v2";import{v4 as K}from"uuid";var W={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 $ from"crypto-js";import J from"slugify";var X=J.default||J;function z(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return X(e,_({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))}A(z,"generateSlug");function Z(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return $.SHA256(e).toString($.enc.Hex).slice(0,t)}A(Z,"generateShortId");var ee={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":S(e))=="object"?f(e,Date)?!1:f(e,Map)||f(e,Set)?e.size===0:f(e,WeakMap)||f(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 et from"fs-extra";var en=et.lstatSync,er=et.readdirSync,es=et.mkdirSync,eo=et.readFileSync,ea=et.writeFileSync,ec=et.appendFileSync,ei=et.unlinkSync,eu=et.statSync,el=et.readJsonSync,eE=et.writeJsonSync;function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return et.pathExistsSync(e)})}A(ef,"pathExistsSync");var ed=".cyberskill-storage";import eh from"dotenv";import{bool as e_,cleanEnv as em,str as eg}from"envalid";import ep from"node:os";import ev from"node:path";import eO from"node:process";eh.config();function eS(){var e={DEBUG:eO.env.DEBUG||!1,CWD:eO.env.CWD||eO.cwd(),CYBERSKILL_STORAGE_DIRECTORY:eO.env.CYBERSKILL_STORAGE_DIRECTORY||ev.join(ep.homedir(),ed)};return em(e,{DEBUG:e_(),CWD:eg(),CYBERSKILL_STORAGE_DIRECTORY:eg()})}A(eS,"getEnv");var ey=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eR}from"node:child_process";import eI from"node:process";import*as eC from"node:util";var eT=function(e){return e.Error="error",e.Warning="warning",e}({});import eA from"chalk";import eD from"consola";import{GraphQLError as eN}from"graphql";var eb=eS();eb.DEBUG||(eD.level=4);function eG(e){var t=eA[e];return typeof t=="function"?t:eA.green}A(eG,"chalkKeyword");var eM={silent:eD.silent,level:eD.level,fatal:eD.fatal,error:eD.error,warn:eD.warn,log:eD.log,info:eD.info,success:eD.success,ready:eD.ready,start:eD.start,box:eD.box,debug:eD.debug,trace:eD.trace,verbose:eD.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){eD.box(eA.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,o=e.message;eD.log("".concat(eA.gray("File:")," ").concat(eA.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eD.log(" ".concat(eG(n)("Rule:")," ").concat(s)),eD.log(" ".concat(eG(n)("Message:")," ").concat(o))}),eD.box(eG(n)("".concat(e," : ").concat(t.length))),eD.log(eA.gray("─".repeat(40)))}};var eP={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import ew from"node-fetch";var eU=eS();function eL(e){var t=e7(eU.CWD,tr);if(!ef(t))return!1;try{var n=el(t),r=n.name,s=n.dependencies,o=s===void 0?{}:s,a=n.devDependencies,c=a===void 0?{}:a,i=r===e,u=e in o,l=e in c;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return eM.warn("Failed to read package.json: ".concat(e.message)),!1}}A(eL,"getPackage");function ek(e){return /*#__PURE__*/s(function(){var t,n,r,s;return I(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,ew("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.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=o.sent(),r=n.version;return[2,r];case 3:s=o.sent();throw eM.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}A(ek,"getLatestPackageVersion");function eF(e,t){return /*#__PURE__*/s(function(){var n,r,s,o,a,c,i,u,l,E,f,d,h,m,g,p,v,O,S,y,R;return I(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=eL(e);if(!n)return[2,_({},eP)];i=n.path,u=n.file,l=n.isCurrentProject,E=n.isDepend,f=n.isDevDepend,d=(r=u.dependencies)!==null&&r!==void 0?r:{},h=(s=u.devDependencies)!==null&&s!==void 0?s:{},m=l?(o=u.version)!==null&&o!==void 0?o:"0.0.0":E?(a=d[e])!==null&&a!==void 0?a:"0.0.0":f?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];v=m;return[3,3];case 1:return[4,ek(e)];case 2:v=I.sent();I.label=3;case 3:g=v,p=l||m===g;if(!p&&(t===null||t===void 0?void 0:t.update)){;S=E?"dependencies":f?"devDependencies":null;S&&((O=u[S])===null||O===void 0?void 0:O[e])!==g&&(u[S]=(y=u[S])!==null&&y!==void 0?y:{},u[S][e]=g,eE(i,u),eM.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:p}];case 4:R=I.sent();return[2,(eM.error('Error checking package "'.concat(e,'": ').concat(R.message)),_({},eP))];case 5:return[2]}})})()}A(eF,"checkPackage");function ej(){return /*#__PURE__*/s(function(){var e,t,n,r,s,o,a,c,i,u,l,E;return I(this,function(f){switch(f.label){case 0:e=[{command:A(function(){return tY.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:A(function(){return tY.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:A(function(){return tY.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);s=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(o=s.next()).done))return[3,8];a=o.value,c=a.command,i=a.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,e1("".concat(i," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();eM.warn("Installation attempt failed: ".concat(i)),eM.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:E=f.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:throw new Error("All dependency installation strategies failed.")}})})()}A(ej,"installDependencies");function ex(e,t){return /*#__PURE__*/s(function(){var n,r,s,o,a,c,i,u,l,E,f;return I(this,function(d){switch(d.label){case 0:if(!ef(tF.PACKAGE_JSON)){eM.error("package.json not found. Aborting setup.");return[2]}d.label=1;case 1:d.trys.push([1,13,,14]);n=O(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eF(e,_({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=d.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ej()];case 3:r=d.sent();d.label=4;case 4:r;o=true,a=false,c=undefined;d.label=5;case 5:d.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();d.label=6;case 6:if(!!(o=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:d.sent();d.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:E=d.sent();a=true;c=E;return[3,12];case 11:try{if(!o&&i.return!=null){i.return()}}finally{if(a){throw c}}return[7];case 12:return[3,14];case 13:f=d.sent();throw eM.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}A(ex,"setupPackages");import eY from"node-persist";var eB=eS();function eq(){return /*#__PURE__*/s(function(){var e;return I(this,function(t){switch(t.label){case 0:e=eY.defaultInstance;if(e)return[3,2];return[4,eY.init({dir:eB.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]}})})()}A(eq,"initNodePersist");var eQ={get:function e(e){return /*#__PURE__*/s(function(){var t,n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eq()];case 1:r.sent();return[4,eY.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eM.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 I(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eq()];case 1:r.sent();return[4,eY.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eM.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 I(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eq()];case 1:n.sent();return[4,eY.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eM.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 I(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eq()];case 1:n.sent();return[4,eY.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eM.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eM.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/s(function(){return I(this,function(t){try{return[2,"".concat(eB.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eM.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eH=eS(),eV=eC.promisify(eR);function eK(e){return"error_list:".concat(e)}A(eK,"getErrorListKey");function eW(e){return /*#__PURE__*/s(function(){var t,n,r;return I(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eK(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eQ.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(function(){return /*#__PURE__*/s(function(){var e;return I(this,function(t){switch(t.label){case 0:return[4,eQ.getLogLink(n)];case 1:e=t.sent();e&&eM.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=o.sent();eM.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}A(eW,"saveErrorListToStorage");function e$(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\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=o.exec(e)||[],h=a.exec(e)||[];var _,m,g,p,v,O;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===eT.Error?eT.Error:eT.Warning,message:(_=f===null||f===void 0?void 0:(c=f[4])===null||c===void 0?void 0:c.trim())!==null&&_!==void 0?_:"",rule:(m=f===null||f===void 0?void 0:(i=f[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):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]===eT.Error?eT.Error:eT.Warning,message:(p=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&p!==void 0?p:""}):h.length?t.push({file:"commitlint",type:eT.Error,message:(v=h===null||h===void 0?void 0:(l=h[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(O=h===null||h===void 0?void 0:(E=h[2])===null||E===void 0?void 0:E.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&eW(t),eH.DEBUG&&n.length&&(eM.warn("Unmatched lines:"),n.forEach(function(e){return eM.info(" ".concat(e))}))}A(e$,"parseTextErrors");function eJ(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,o=e.column,a=e.ruleId,c=e.message;n.push({type:r===2?eT.Error:eT.Warning,file:t,position:"".concat(s,":").concat(o),rule:a,message:c})})}),n.length&&eW(n)}catch(t){e$(e)}}A(eJ,"parseCommandOutput");function eX(e){return /*#__PURE__*/s(function(e){var t,n,r,s,o,a,c,i,u;var l=arguments;return I(this,function(E){switch(E.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eJ;n=new AbortController;eI.on("SIGINT",function(){eM.warn("Process interrupted. Terminating..."),n.abort(),eI.exit()});E.label=1;case 1:E.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eV(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=E.sent(),s=r.stdout,o=r.stderr;[s,o].forEach(function(e){return e&&t(e)});E.label=3;case 3:return[3,5];case 4:a=E.sent();c=a.stdout,i=a.stderr,u=a.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&eM.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}A(eX,"executeCommand");function ez(e){return{raw:!0,cmd:e}}A(ez,"rawCommand");function eZ(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tN," ").concat(te," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tN," ").concat(tT," ").concat(th," ").concat(e):"".concat(tN," ").concat(td," ").concat(e)}A(eZ,"formatCLI");function e0(e,t){return typeof e=="function"?eZ(e(t),t):(typeof e==="undefined"?"undefined":S(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eZ(e,t):e}A(e0,"formatCommand");function e1(e,t){return /*#__PURE__*/s(function(){var n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eM.start("".concat(e)),eH.DEBUG&&eM.info("→ ".concat(t));return[4,eX(t)];case 1:r.sent(),eM.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eM.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}A(e1,"runCommand");import e2,{join as e4,resolve as e3}from"node:path";var e5=eS();function e6(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return e3.apply(void 0,[e5.CWD].concat(O(t)))}A(e6,"resolveWorkingPath");function e7(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return e4.apply(void 0,O(t))}A(e7,"join");var e8=eS(),e9=e8.CWD,te="@cyberskill/shared",tt="node_modules",tn="dist",tr="package.json",ts="package-lock.json",to="tsconfig.json",ta=".gitignore",tc=".simple-git-hooks.json",ti="pnpm-lock.yaml",tu=".git/hooks/",tl=".git/COMMIT_EDITMSG",tE=".migrate-mongo.config.js",tf=e7(e9,tt,te,tn),td="cyberskill",th="src/nodejs/cli/index.ts",t_="eslint",tm="eslint",tg="vitest",tp="playwright",tv="vitest",tO="@commitlint/cli",tS="commitlint",ty="lint-staged",tR="lint-staged",tI="typescript",tC="tsc",tT="tsx",tA="git",tD="pnpm",tN="pnpm exec",tb="simple-git-hooks",tG="simple-git-hooks",tM="@eslint/config-inspector",tP="eslint-config-inspector",tw="node-modules-inspector",tU="node-modules-inspector",tL="migrate-mongo",tk="./node_modules/migrate-mongo/bin/migrate-mongo",tF={CYBERSKILL_DIRECTORY:tf,WORKING_DIRECTORY:e9,TS_CONFIG:e6(to),GIT_IGNORE:e6(ta),GIT_HOOK:e6(tu),GIT_COMMIT_MSG:e6(tl),SIMPLE_GIT_HOOKS_JSON:e6(tc),PACKAGE_JSON:e6(tr),PACKAGE_LOCK_JSON:e6(ts),PNPM_LOCK_YAML:e6(ti),NODE_MODULES:e6(tt),MIGRATE_MONGO_CONFIG:e6(tE),LINT_STAGED_CONFIG:e6("".concat(tf,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e6("".concat(tf,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e6("".concat(tf,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e6("".concat(tf,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e6("".concat(tf,"/react/vitest/vitest.e2e.js"))};function tj(e,t,n){return /*#__PURE__*/s(function(){return I(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ey.CLI:return[3,1];case ey.STRING:return[3,3]}return[3,4];case 1:return[4,ex(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),e0(ez("".concat(tN," ").concat(n))))];case 3:return[2,e0(ez(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}A(tj,"buildCommand");function tx(e,t,n){return function(){return /*#__PURE__*/s(function(){return I(this,function(r){return[2,tj(e,t,n)]})})()}}A(tx,"commandFactory");var tY={simpleGitHooks:tx(ey.CLI,tb,tG),eslintInspect:tx(ey.CLI,tM,tP),nodeModulesInspect:tx(ey.CLI,tw,tU),eslintCheck:tx(ey.CLI,t_,"".concat(tm," ").concat(tF.WORKING_DIRECTORY)),eslintFix:tx(ey.CLI,t_,"".concat(tm," ").concat(tF.WORKING_DIRECTORY," --fix")),typescriptCheck:tx(ey.CLI,tI,"".concat(tC," -p ").concat(tF.TS_CONFIG," --noEmit")),configureGitHook:tx(ey.STRING,"".concat(tA," config core.hooksPath ").concat(tF.GIT_HOOK)),testUnit:tx(ey.CLI,tg,"".concat(tv," --config ").concat(tF.UNIT_TEST_CONFIG)),testE2e:tx(ey.CLI,"".concat(tg," ").concat(tp),"".concat(tv," --config ").concat(tF.E2E_TEST_CONFIG)),mongoMigrateCreate:A(function(e){return tx(ey.CLI,tL,"".concat(tT," ").concat(tk," create ").concat(e," -f ").concat(tF.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tx(ey.CLI,tL,"".concat(tT," ").concat(tk," up -f ").concat(tF.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tx(ey.CLI,tL,"".concat(tT," ").concat(tk," down -f ").concat(tF.MIGRATE_MONGO_CONFIG)),commitLint:tx(ey.CLI,tO,"".concat(tS," --edit ").concat(tF.GIT_COMMIT_MSG," --config ").concat(tF.COMMITLINT_CONFIG)),lintStaged:tx(ey.CLI,ty,"".concat(tR," --config ").concat(tF.LINT_STAGED_CONFIG)),stageBuildDirectory:tx(ey.STRING,"".concat(tA," add ").concat(tn)),build:tx(ey.STRING,"".concat(tD," run build")),pnpmInstallStandard:tx(ey.STRING,"".concat(tD," install")),pnpmInstallLegacy:tx(ey.STRING,"".concat(tD," install --legacy-peer-deps")),pnpmInstallForce:tx(ey.STRING,"".concat(tD," install --force"))};var tB={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return B(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"?tB.getDateTime():new Date;return{id:K(),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:K,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,o=e.standalone,a=o===void 0?!1:o;var c=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=c.virtual(t,n);r&&s.get(r)}),a||c.add(tB.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,o=s===void 0?!1:s,a=e.aggregate,c=a===void 0?!1:a,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=tB.createSchema({mongoose:t,schema:r,virtuals:u});return tB.applyPlugins(f,[o&&V,c&&H]),tB.applyMiddlewares(f,E),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return g(_({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/s(function(){return I(this,function(t){return[2,!ee.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/s(function(){var n;return I(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return u({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/s(function(){return I(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!f(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:g(_({},q),{setConfig:A(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));ea(tF.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tE,"\n");ef(tF.GIT_IGNORE)?eo(tF.GIT_IGNORE,"utf-8").split("\n").includes(tE)||ec(tF.GIT_IGNORE,n,"utf-8"):ea(tF.GIT_IGNORE,n,"utf-8")},"setConfig")})},tq=/*#__PURE__*/function(){"use strict";function e(t,n){a(this,e);D(this,"collection");this.collection=t.collection(n)}i(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=_({},tB.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__*/s(function(){var t,n,r;return I(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return _({},tB.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__*/s(function(){var t,n;return I(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 I(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__*/s(function(){var e,t,n;var r=arguments;return I(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__*/s(function(){var n,r;return I(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__*/s(function(){var n,r;return I(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__*/s(function(){var t,n;return I(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 I(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}();A(tq,"MongoController");var tQ=tq,tH=/*#__PURE__*/function(){"use strict";function e(t){a(this,e);D(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,s,o,a;var c=arguments;return I(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:o=i.sent();return[2,o?{success:!0,result:o}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:W.NOT_FOUND.CODE}];case 3:a=i.sent();return[2,{success:!1,message:a.message,code:W.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,s,o,a;var c=arguments;return I(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);o={success:!0};return[4,s.exec()];case 2:return[2,(o.result=i.sent(),o)];case 3:a=i.sent();return[2,{success:!1,message:a.message,code:W.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 s=arguments;return I(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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=o.sent(),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:W.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 s=arguments;return I(this,function(o){switch(o.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=o.sent(),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:W.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 I(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:W.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 I(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:W.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 s=arguments;return I(this,function(o){switch(o.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=o.sent().map(function(e){return f(e,Q)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:W.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,s;var o=arguments;return I(this,function(a){switch(a.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,_({new:!0},n)).exec()];case 2:r=a.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:W.NOT_FOUND.CODE}];case 3:s=a.sent();return[2,{success:!1,message:s.message,code:W.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,s;var o=arguments;return I(this,function(a){switch(a.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{};a.label=1;case 1:a.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=a.sent(),r)];case 3:s=a.sent();return[2,{success:!1,message:s.message,code:W.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 s=arguments;return I(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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=o.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:W.NOT_FOUND.CODE}];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:W.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 s=arguments;return I(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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=o.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:W.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:W.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,s,o;return I(this,function(a){switch(a.label){case 0:n=new Set;r=0;a.label=1;case 1:if(!(r<10))return[3,5];s=Z(e,r+t);o=!n.has(s);if(!o)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:o=!a.sent();a.label=3;case 3:if(o)return[2,{success:!0,result:s}];a.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:W.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t){return /*#__PURE__*/s(function(e,t){var n,r,o,a,c,i,u,l,E,f,d,h,_;var m=arguments;return I(this,function(g){switch(g.label){case 0:n=this;r=m.length>2&&m[2]!==void 0?m[2]:{};g.label=1;case 1:g.trys.push([1,9,,10]);o=t[e],a=A(function(e){return /*#__PURE__*/s(function(){var n,s,o;return I(this,function(a){switch(a.label){case 0:return[4,this.model.findOne(tB.createSlugQuery(e,r,t.id))];case 1:n=a.sent();if(!n)return[2,e];s=1;a.label=2;case 2:o="".concat(e,"-").concat(s);return[4,this.model.findOne(tB.createSlugQuery(o,r,t.id))];case 3:n=a.sent(),s++;a.label=4;case 4:if(n)return[3,2];a.label=5;case 5:return[2,o]}})}).call(n)},"createUniqueSlug");if(!((typeof o==="undefined"?"undefined":S(o))=="object"))return[3,6];c={};i=[];for(u in o)i.push(u);l=0;g.label=2;case 2:if(!(l<i.length))return[3,5];E=i[l];f=z(o[E]);return[4,a(f)];case 3:c[E]=g.sent();g.label=4;case 4:l++;return[3,2];case 5:return[2,{success:!0,result:c}];case 6:d=z(o);h={success:!0};return[4,a(d)];case 7:return[2,(h.result=g.sent(),h)];case 8:return[3,10];case 9:_=g.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(_.message),code:W.INTERNAL_SERVER_ERROR.CODE}];case 10:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return I(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:W.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();A(tH,"MongooseController");var tV=tH;export{Y as C_Collection,U as C_Db,k as C_Document,j as C_Model,N as MONGO_MIGRATE_OPTIONS,tQ as MongoController,tV as MongooseController,H as aggregatePaginate,tB as mongo,V as mongoosePaginate};
|