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