@cyberskill/shared 1.119.0 → 1.121.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.
Files changed (55) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +3 -8
  2. package/dist/_tsup-dts-rollup.d.ts +3 -8
  3. package/dist/configs/config.util.cjs +1 -1
  4. package/dist/configs/config.util.js +1 -1
  5. package/dist/configs/eslint/index.cjs +1 -1
  6. package/dist/configs/eslint/index.js +1 -1
  7. package/dist/configs/index.cjs +1 -1
  8. package/dist/configs/index.js +1 -1
  9. package/dist/index.cjs +1 -1
  10. package/dist/index.d.cts +2 -3
  11. package/dist/index.d.ts +2 -3
  12. package/dist/index.js +1 -1
  13. package/dist/nodejs/cli/cli.util.cjs +1 -1
  14. package/dist/nodejs/cli/cli.util.js +1 -1
  15. package/dist/nodejs/cli/index.cjs +1 -1
  16. package/dist/nodejs/cli/index.js +1 -1
  17. package/dist/nodejs/command/command.util.cjs +1 -1
  18. package/dist/nodejs/command/command.util.js +1 -1
  19. package/dist/nodejs/command/index.cjs +1 -1
  20. package/dist/nodejs/command/index.js +1 -1
  21. package/dist/nodejs/fs/fs.util.cjs +1 -1
  22. package/dist/nodejs/fs/fs.util.d.cts +2 -3
  23. package/dist/nodejs/fs/fs.util.d.ts +2 -3
  24. package/dist/nodejs/fs/fs.util.js +1 -1
  25. package/dist/nodejs/fs/index.cjs +1 -1
  26. package/dist/nodejs/fs/index.d.cts +2 -3
  27. package/dist/nodejs/fs/index.d.ts +2 -3
  28. package/dist/nodejs/fs/index.js +1 -1
  29. package/dist/nodejs/index.cjs +1 -1
  30. package/dist/nodejs/index.d.cts +2 -3
  31. package/dist/nodejs/index.d.ts +2 -3
  32. package/dist/nodejs/index.js +1 -1
  33. package/dist/nodejs/mongo/index.cjs +1 -1
  34. package/dist/nodejs/mongo/index.js +1 -1
  35. package/dist/nodejs/mongo/mongo.util.cjs +1 -1
  36. package/dist/nodejs/mongo/mongo.util.js +1 -1
  37. package/dist/nodejs/package/index.cjs +1 -1
  38. package/dist/nodejs/package/index.js +1 -1
  39. package/dist/nodejs/package/package.util.cjs +1 -1
  40. package/dist/nodejs/package/package.util.js +1 -1
  41. package/dist/nodejs/path/index.cjs +1 -1
  42. package/dist/nodejs/path/index.js +1 -1
  43. package/dist/nodejs/path/path.constant.cjs +1 -1
  44. package/dist/nodejs/path/path.constant.js +1 -1
  45. package/dist/react/apollo-client/apollo-client.component.cjs +1 -1
  46. package/dist/react/apollo-client/apollo-client.component.js +1 -1
  47. package/dist/react/apollo-client/index.cjs +1 -1
  48. package/dist/react/apollo-client/index.js +1 -1
  49. package/dist/react/index.cjs +1 -1
  50. package/dist/react/index.js +1 -1
  51. package/dist/react/vitest/index.cjs +1 -1
  52. package/dist/react/vitest/index.js +1 -1
  53. package/dist/react/vitest/vitest.unit.cjs +1 -1
  54. package/dist/react/vitest/vitest.unit.js +1 -1
  55. package/package.json +1 -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(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(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 s(e){return function(){var t=this,n=arguments;return new Promise(function(s,a){var c=e.apply(t,n);function o(e){r(c,s,a,o,u,"next",e)}function u(e){r(c,s,a,o,u,"throw",e)}o(undefined)})}}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function o(e,t,n){if(t)c(e.prototype,t);if(n)c(e,n);return e}function u(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function l(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function f(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var c,o;try{for(n=n.call(e);!(s=(c=n.next()).done);s=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){a=true;o=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw o}}return r}function d(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function E(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function g(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){u(e,t,n[t])})}return e}function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function _(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{h(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function v(e,n){return t(e)||f(e,n)||y(e,n)||d()}function m(e){return n(e)||l(e)||y(e)||E()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function O(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 S=Object.create;var R=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var T=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty;var b=function(e,t,n){return t in e?R(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var D=function(e,t){return R(e,"name",{value:t,configurable:!0})};var N=function(e,t){for(var n in t)R(e,n,{get:t[n],enumerable:!0})},G=function(e,t,n,r){var s=true,a=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var o=function(){var s=i.value;!A.call(e,s)&&s!==n&&R(e,s,{get:function(){return t[s]},enumerable:!(r=I(t,s))||r.enumerable})};for(var u=C(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 M=function(e,t,n){return n=e!=null?S(T(e)):{},G(t||!e||!e.__esModule?R(n,"default",{value:e,enumerable:!0}):n,e)},P=function(e){return G(R({},"__esModule",{value:!0}),e)};var w=function(e,t,n){return b(e,(typeof t==="undefined"?"undefined":p(t))!="symbol"?t+"":t,n)};var U={};N(U,{MongoController:function(){return tY},MongooseController:function(){return tH},aggregatePaginate:function(){return j.default},mongo:function(){return tx},mongoosePaginate:function(){return x.default}});module.exports=P(U);var L=require("date-fns"),k=M(require("migrate-mongo"),1),F=require("mongoose"),j=M(require("mongoose-aggregate-paginate-v2"),1),x=M(require("mongoose-paginate-v2"),1),q=require("uuid");var Y={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 B=M(require("unorm"),1);var H={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},V=Object.entries(H).reduce(function(e,t){var n=v(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function Q(e){return(typeof e==="undefined"?"undefined":p(e))=="object"&&e!==null&&!Array.isArray(e)}D(Q,"isObject");var K=M(require("crypto-js"),1),W=M(require("slugify"),1);var $=W.default.default||W.default;function J(e,t){var n=D(function(e){var n,r;return $(e!==null&&e!==void 0?e:"",g({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))},"slugifyWithOptions");if(Q(e)){var r={};var s=true,a=false,c=undefined;try{for(var o=Object.entries(e)[Symbol.iterator](),u;!(s=(u=o.next()).done);s=true){var i=v(u.value,2),l=i[0],f=i[1];r[l]=n(f)}}catch(e){a=true;c=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(a){throw c}}}return r}return n(e)}D(J,"generateSlug");function X(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return K.default.SHA256(e).toString(K.default.enc.Hex).slice(0,t)}D(X,"generateShortId");var z={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":p(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)}};var Z=M(require("fs-extra"),1),ee=require("path");var et=Z.default,en=et.lstatSync,er=et.readdirSync,es=et.mkdirSync,ea=et.readFileSync,ec=et.writeFileSync,eo=et.appendFileSync,eu=et.unlinkSync,ei=et.statSync,el=Z.default.readJsonSync,ef=Z.default.writeJsonSync;function ed(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return Z.default.pathExistsSync(e)})}D(ed,"pathExistsSync");var eE=".cyberskill-storage";var eg=M(require("@dotenvx/dotenvx"),1),eh=require("envalid"),e_=M(require("os"),1),ev=M(require("path"),1),em=M(require("process"),1);var ep=!1;function ey(){ep||(eg.default.config(),ep=!0)}D(ey,"loadEnvFile");function eO(){ey();var e=(0,eh.cleanEnv)(em.default.env,{CWD:(0,eh.str)({default:em.default.cwd()}),DEBUG:(0,eh.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,eh.str)({default:ev.default.join(e_.default.homedir(),eE)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}D(eO,"getEnv");var eS=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eR=require("child_process"),eI=M(require("process"),1),eC=M(require("util"),1);var eT=function(e){return e.Error="error",e.Warning="warning",e}({});var eA=M(require("chalk"),1),eb=M(require("consola"),1),eD=require("graphql");var eN=eO();eN.DEBUG||(eb.default.level=4);function eG(e){var t=eA.default[e];return typeof t=="function"?t:eA.default.green}D(eG,"chalkKeyword");var eM={silent:eb.default.silent,level:eb.default.level,fatal:eb.default.fatal,error:eb.default.error,warn:eb.default.warn,log:eb.default.log,info:eb.default.info,success:eb.default.success,ready:eb.default.ready,start:eb.default.start,box:eb.default.box,debug:eb.default.debug,trace:eb.default.trace,verbose:eb.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)){eb.default.box(eA.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eb.default.log("".concat(eA.default.gray("File:")," ").concat(eA.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eb.default.log(" ".concat(eG(n)("Rule:")," ").concat(s)),eb.default.log(" ".concat(eG(n)("Message:")," ").concat(a))}),eb.default.box(eG(n)("".concat(e," : ").concat(t.length))),eb.default.log(eA.default.gray("─".repeat(40)))}};var eP={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var ew=M(require("node-fetch"),1);var eU=eO();function eL(e){var t=e5(eU.CWD,tt);if(!ed(t))return!1;try{var n=el(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 eM.warn("Failed to read package.json: ".concat(e.message)),!1}}D(eL,"getPackage");function ek(e){return /*#__PURE__*/s(function(){var t,n,r,s;return O(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,ew.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 eM.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}D(ek,"getLatestPackageVersion");function eF(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,c,o,u,i,l,f,d,E,h,_,v,m,p,y,S,R,I;return O(this,function(O){switch(O.label){case 0:O.trys.push([0,4,,5]);n=eL(e);if(!n)return[2,g({},eP)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,d=n.isDevDepend,E=(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=E[e])!==null&&c!==void 0?c:"0.0.0":d?(o=h[e])!==null&&o!==void 0?o:"0.0.0":"0.0.0";if(!l)return[3,1];p=_;return[3,3];case 1:return[4,ek(e)];case 2:p=O.sent();O.label=3;case 3:v=p,m=l||_===v;if(!m&&(t===null||t===void 0?void 0:t.update)){;S=f?"dependencies":d?"devDependencies":null;S&&((y=i[S])===null||y===void 0?void 0:y[e])!==v&&(i[S]=(R=i[S])!==null&&R!==void 0?R:{},i[S][e]=v,ef(u,i),eM.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:m}];case 4:I=O.sent();return[2,(eM.error('Error checking package "'.concat(e,'": ').concat(I.message)),g({},eP))];case 5:return[2]}})})()}D(eF,"checkPackage");function ej(){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c,o,u,i,l,f;return O(this,function(d){switch(d.label){case 0:e=[{command:D(function(){return tj.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:D(function(){return tj.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:D(function(){return tj.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];c=a.value,o=c.command,u=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,o()];case 4:i=d.sent();return[4,e1("".concat(u," using: ").concat(i),i)];case 5:d.sent();return[2];case 6:l=d.sent();eM.warn("Installation attempt failed: ".concat(u)),eM.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}D(ej,"installDependencies");function ex(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,c,o,u,i,l,f,d;return O(this,function(E){switch(E.label){case 0:if(!ed(tL.PACKAGE_JSON)){eM.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=m(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eF(e,g({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ej()];case 3:r=E.sent();E.label=4;case 4:r;a=true,c=false,o=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();E.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:E.sent();E.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=E.sent();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:d=E.sent();throw eM.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})})()}D(ex,"setupPackages");var eq=M(require("node-persist"),1);var eY=eO();function eB(){return /*#__PURE__*/s(function(){var e;return O(this,function(t){switch(t.label){case 0:e=eq.default.defaultInstance;if(e)return[3,2];return[4,eq.default.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]}})})()}D(eB,"initNodePersist");var eH={get:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eB()];case 1:r.sent();return[4,eq.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eM.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/s(function(){var n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eB()];case 1:r.sent();return[4,eq.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eM.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/s(function(){var t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eB()];case 1:n.sent();return[4,eq.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eM.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/s(function(){var e,t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eB()];case 1:n.sent();return[4,eq.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eM.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eM.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/s(function(){return O(this,function(t){try{return[2,"".concat(eY.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eM.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eV=eO(),eQ=eC.promisify(eR.exec);function eK(e){return"error_list:".concat(e)}D(eK,"getErrorListKey");function eW(e){return /*#__PURE__*/s(function(){var t,n,r;return O(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,eH.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/s(function(){var e;return O(this,function(t){switch(t.label){case 0:return[4,eH.getLogLink(n)];case 1:e=t.sent();e&&eM.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();eM.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}D(eW,"saveErrorListToStorage");function e$(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,f;var d=s.exec(e)||[],E=a.exec(e)||[],g=c.exec(e)||[];var h,_,v,m,p,y;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===eT.Error?eT.Error:eT.Warning,message:(h=d===null||d===void 0?void 0:(o=d[4])===null||o===void 0?void 0:o.trim())!==null&&h!==void 0?h:"",rule:(_=d===null||d===void 0?void 0:(u=d[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]===eT.Error?eT.Error:eT.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:eT.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:(y=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&y!==void 0?y:""}):n.push(e.trim())}}),t.length&&eW(t),eV.DEBUG&&n.length&&(eM.warn("Unmatched lines:"),n.forEach(function(e){return eM.info(" ".concat(e))}))}D(e$,"parseTextErrors");function eJ(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,c=e.ruleId,o=e.message;n.push({type:r===2?eT.Error:eT.Warning,file:t,position:"".concat(s,":").concat(a),rule:c,message:o})})}),n.length&&eW(n)}catch(t){e$(e)}}D(eJ,"parseCommandOutput");function eX(e){return /*#__PURE__*/s(function(e){var t,n,r,s,a,c,o,u,i;var l=arguments;return O(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eJ;n=new AbortController;eI.default.on("SIGINT",function(){eM.warn("Process interrupted. Terminating..."),n.abort(),eI.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(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();o=c.stdout,u=c.stderr,i=c.message;[o,u].forEach(function(e){return e&&t(e)}),!u&&!o&&eM.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}D(eX,"executeCommand");function ez(e){return{raw:!0,cmd:e}}D(ez,"rawCommand");function eZ(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tA," ").concat(e8," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tA," ").concat(tI," ").concat(td," ").concat(e):"".concat(tA," ").concat(tf," ").concat(e)}D(eZ,"formatCLI");function e0(e,t){return typeof e=="function"?eZ(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eZ(e,t):e}D(e0,"formatCommand");function e1(e,t){return /*#__PURE__*/s(function(){var n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eM.start("".concat(e)),eV.DEBUG&&eM.info("→ ".concat(t));return[4,eX(t)];case 1:r.sent(),eM.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eM.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}D(e1,"runCommand");var e2=M(require("path"),1);var e4=eO();function e3(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,e2.resolve).apply(this,[e4.CWD].concat(m(t)))}D(e3,"resolveWorkingPath");function e5(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,e2.join).apply(this,m(t))}D(e5,"join");var e6=eO(),e7=e6.CWD,e8="@cyberskill/shared",e9="node_modules",te="dist",tt="package.json",tn="package-lock.json",tr="tsconfig.json",ts=".gitignore",ta=".simple-git-hooks.json",tc="pnpm-lock.yaml",to=".git/hooks/",tu=".git/COMMIT_EDITMSG",ti=".migrate-mongo.config.js",tl=e5(e7,e9,e8,te),tf="cyberskill",td="src/nodejs/cli/index.ts",tE="eslint",tg="eslint",th="vitest",t_="playwright",tv="vitest",tm="@commitlint/cli",tp="commitlint",ty="lint-staged",tO="lint-staged",tS="typescript",tR="tsc",tI="tsx",tC="git",tT="pnpm",tA="pnpm exec",tb="simple-git-hooks",tD="simple-git-hooks",tN="@eslint/config-inspector",tG="eslint-config-inspector",tM="node-modules-inspector",tP="node-modules-inspector",tw="migrate-mongo",tU="./node_modules/migrate-mongo/bin/migrate-mongo",tL={CYBERSKILL_DIRECTORY:tl,WORKING_DIRECTORY:e7,TS_CONFIG:e3(tr),GIT_IGNORE:e3(ts),GIT_HOOK:e3(to),GIT_COMMIT_MSG:e3(tu),SIMPLE_GIT_HOOKS_JSON:e3(ta),PACKAGE_JSON:e3(tt),PACKAGE_LOCK_JSON:e3(tn),PNPM_LOCK_YAML:e3(tc),NODE_MODULES:e3(e9),MIGRATE_MONGO_CONFIG:e3(ti),LINT_STAGED_CONFIG:e3("".concat(tl,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e3("".concat(tl,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e3("".concat(tl,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e3("".concat(tl,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e3("".concat(tl,"/react/vitest/vitest.e2e.js"))};function tk(e,t,n){return /*#__PURE__*/s(function(){return O(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eS.CLI:return[3,1];case eS.STRING:return[3,3]}return[3,4];case 1:return[4,ex(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),e0(ez("".concat(tA," ").concat(n))))];case 3:return[2,e0(ez(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}D(tk,"buildCommand");function tF(e,t,n){return function(){return /*#__PURE__*/s(function(){return O(this,function(r){return[2,tk(e,t,n)]})})()}}D(tF,"commandFactory");var tj={simpleGitHooks:tF(eS.CLI,tb,tD),eslintInspect:tF(eS.CLI,tN,tG),nodeModulesInspect:tF(eS.CLI,tM,tP),eslintCheck:tF(eS.CLI,tE,"".concat(tg," ").concat(tL.WORKING_DIRECTORY)),eslintFix:tF(eS.CLI,tE,"".concat(tg," ").concat(tL.WORKING_DIRECTORY," --fix")),typescriptCheck:tF(eS.CLI,tS,"".concat(tR," -p ").concat(tL.TS_CONFIG," --noEmit")),configureGitHook:tF(eS.STRING,"".concat(tC," config core.hooksPath ").concat(tL.GIT_HOOK)),testUnit:tF(eS.CLI,th,"".concat(tv," --config ").concat(tL.UNIT_TEST_CONFIG)),testE2e:tF(eS.CLI,"".concat(th," ").concat(t_),"".concat(tv," --config ").concat(tL.E2E_TEST_CONFIG)),mongoMigrateCreate:D(function(e){return tF(eS.CLI,tw,"".concat(tI," ").concat(tU," create ").concat(e," -f ").concat(tL.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tF(eS.CLI,tw,"".concat(tI," ").concat(tU," up -f ").concat(tL.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tF(eS.CLI,tw,"".concat(tI," ").concat(tU," down -f ").concat(tL.MIGRATE_MONGO_CONFIG)),commitLint:tF(eS.CLI,tm,"".concat(tp," --edit ").concat(tL.GIT_COMMIT_MSG," --config ").concat(tL.COMMITLINT_CONFIG)),lintStaged:tF(eS.CLI,ty,"".concat(tO," --config ").concat(tL.LINT_STAGED_CONFIG)),stageBuildDirectory:tF(eS.STRING,"".concat(tC," add ").concat(te)),build:tF(eS.STRING,"".concat(tT," run build")),pnpmInstallStandard:tF(eS.STRING,"".concat(tT," install")),pnpmInstallLegacy:tF(eS.STRING,"".concat(tT," install --legacy-peer-deps")),pnpmInstallForce:tF(eS.STRING,"".concat(tT," install --force"))};var tx={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,L.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"?tx.getDateTime():new Date;return{id:(0,q.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:q.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(tx.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,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=tx.createSchema({mongoose:t,schema:r,virtuals:i});return tx.applyPlugins(d,[a&&x.default,o&&j.default]),tx.applyMiddlewares(d,f),t.model(n,d)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/s(function(){return O(this,function(t){return[2,!z.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/s(function(){var n;return O(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return u({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/s(function(){return O(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:_(g({},k.default),{setConfig:D(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));ec(tL.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(ti,"\n");ed(tL.GIT_IGNORE)?ea(tL.GIT_IGNORE,"utf-8").split("\n").includes(ti)||eo(tL.GIT_IGNORE,n,"utf-8"):ec(tL.GIT_IGNORE,n,"utf-8")},"setConfig")})},tq=/*#__PURE__*/function(){function e(t,n){a(this,e);w(this,"collection");this.collection=t.collection(n)}o(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return O(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=g({},tx.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return O(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return g({},tx.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return O(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return O(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return /*#__PURE__*/s(function(){var n,r;return O(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return /*#__PURE__*/s(function(){var n,r;return O(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(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}();D(tq,"MongoController");var tY=tq,tB=/*#__PURE__*/function(){function e(t){a(this,e);w(this,"model");this.model=t}o(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c;var o=arguments;return O(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:Y.NOT_FOUND.CODE}];case 3:c=u.sent();return[2,{success:!1,message:c.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c;var o=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return O(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,F.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return O(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,g({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:Y.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/s(function(){var n,r,s,a;return O(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=X(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:Y.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/s(function(){var r,a,c,o,i,l,f,d,E,h;return O(this,function(m){switch(m.label){case 0:r=this;m.label=1;case 1:m.trys.push([1,5,,6]);a=t[e],c=Q(a),o=D(function(t){var r=g({},n!==null&&n!==void 0?n:{});return c?_(g({},r),{$or:[u({},"slug.".concat(e),t),{slugHistory:{$elemMatch:u({},"slug.".concat(e),t)}}]}):_(g({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),i=D(function(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(o(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!c)return[3,3];l={success:!0};f=Object.fromEntries;return[4,Promise.all(Object.entries(a).map(function(e){var t=v(e,2),n=t[0],r=t[1];return /*#__PURE__*/s(function(){var e,t;return O(this,function(s){switch(s.label){case 0:e=J(r);t=[n];return[4,i(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(l.result=f.apply(Object,[m.sent()]),l)];case 3:d=J(a);E={success:!0};return[4,i(d)];case 4:return[2,(E.result=m.sent(),E)];case 5:h=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(h.message),code:Y.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();D(tB,"MongooseController");var tH=tB;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(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(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 s(e){return function(){var t=this,n=arguments;return new Promise(function(s,a){var c=e.apply(t,n);function o(e){r(c,s,a,o,u,"next",e)}function u(e){r(c,s,a,o,u,"throw",e)}o(undefined)})}}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function o(e,t,n){if(t)c(e.prototype,t);if(n)c(e,n);return e}function u(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function l(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function f(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var c,o;try{for(n=n.call(e);!(s=(c=n.next()).done);s=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){a=true;o=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw o}}return r}function d(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function E(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function g(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){u(e,t,n[t])})}return e}function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function _(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{h(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function v(e,n){return t(e)||f(e,n)||y(e,n)||d()}function m(e){return n(e)||l(e)||y(e)||E()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function O(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 S=Object.create;var R=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var T=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty;var D=function(e,t,n){return t in e?R(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var b=function(e,t){return R(e,"name",{value:t,configurable:!0})};var N=function(e,t){for(var n in t)R(e,n,{get:t[n],enumerable:!0})},G=function(e,t,n,r){var s=true,a=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var o=function(){var s=i.value;!A.call(e,s)&&s!==n&&R(e,s,{get:function(){return t[s]},enumerable:!(r=I(t,s))||r.enumerable})};for(var u=C(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 M=function(e,t,n){return n=e!=null?S(T(e)):{},G(t||!e||!e.__esModule?R(n,"default",{value:e,enumerable:!0}):n,e)},P=function(e){return G(R({},"__esModule",{value:!0}),e)};var w=function(e,t,n){return D(e,(typeof t==="undefined"?"undefined":p(t))!="symbol"?t+"":t,n)};var U={};N(U,{MongoController:function(){return tq},MongooseController:function(){return tB},aggregatePaginate:function(){return j.default},mongo:function(){return tj},mongoosePaginate:function(){return x.default}});module.exports=P(U);var L=require("date-fns"),k=M(require("migrate-mongo"),1),F=require("mongoose"),j=M(require("mongoose-aggregate-paginate-v2"),1),x=M(require("mongoose-paginate-v2"),1),q=require("uuid");var Y={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 B=M(require("unorm"),1);var H={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},V=Object.entries(H).reduce(function(e,t){var n=v(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function Q(e){return(typeof e==="undefined"?"undefined":p(e))=="object"&&e!==null&&!Array.isArray(e)}b(Q,"isObject");var K=M(require("crypto-js"),1),W=M(require("slugify"),1);var $=W.default.default||W.default;function J(e,t){var n=b(function(e){var n,r;return $(e!==null&&e!==void 0?e:"",g({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))},"slugifyWithOptions");if(Q(e)){var r={};var s=true,a=false,c=undefined;try{for(var o=Object.entries(e)[Symbol.iterator](),u;!(s=(u=o.next()).done);s=true){var i=v(u.value,2),l=i[0],f=i[1];r[l]=n(f)}}catch(e){a=true;c=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(a){throw c}}}return r}return n(e)}b(J,"generateSlug");function X(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return K.default.SHA256(e).toString(K.default.enc.Hex).slice(0,t)}b(X,"generateShortId");var z={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":p(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)}};var Z=M(require("fs-extra"),1),ee=require("path");var et=Z.default,en=et.lstatSync,er=et.readdirSync,es=et.mkdirSync,ea=et.readFileSync,ec=et.unlinkSync,eo=et.statSync,eu=Z.default.readJsonSync;function ei(e,t,n){Z.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}b(ei,"writeFileSync");function el(e,t,n){Z.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}b(el,"appendFileSync");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return Z.default.pathExistsSync(e)})}b(ef,"pathExistsSync");var ed=".cyberskill-storage";var eE=M(require("@dotenvx/dotenvx"),1),eg=require("envalid"),eh=M(require("os"),1),e_=M(require("path"),1),ev=M(require("process"),1);var em=!1;function ep(){em||(eE.default.config(),em=!0)}b(ep,"loadEnvFile");function ey(){ep();var e=(0,eg.cleanEnv)(ev.default.env,{CWD:(0,eg.str)({default:ev.default.cwd()}),DEBUG:(0,eg.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,eg.str)({default:e_.default.join(eh.default.homedir(),ed)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}b(ey,"getEnv");var eO=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eS=require("child_process"),eR=M(require("process"),1),eI=M(require("util"),1);var eC=function(e){return e.Error="error",e.Warning="warning",e}({});var eT=M(require("chalk"),1),eA=M(require("consola"),1),eD=require("graphql");var eb=ey();eb.DEBUG||(eA.default.level=4);function eN(e){var t=eT.default[e];return typeof t=="function"?t:eT.default.green}b(eN,"chalkKeyword");var eG={silent:eA.default.silent,level:eA.default.level,fatal:eA.default.fatal,error:eA.default.error,warn:eA.default.warn,log:eA.default.log,info:eA.default.info,success:eA.default.success,ready:eA.default.ready,start:eA.default.start,box:eA.default.box,debug:eA.default.debug,trace:eA.default.trace,verbose:eA.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)){eA.default.box(eT.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eA.default.log("".concat(eT.default.gray("File:")," ").concat(eT.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eA.default.log(" ".concat(eN(n)("Rule:")," ").concat(s)),eA.default.log(" ".concat(eN(n)("Message:")," ").concat(a))}),eA.default.box(eN(n)("".concat(e," : ").concat(t.length))),eA.default.log(eT.default.gray("─".repeat(40)))}};var eM={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eP=M(require("node-fetch"),1);var ew=ey();function eU(e){var t=e3(ew.CWD,te);if(!ef(t))return!1;try{var n=eu(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 eG.warn("Failed to read package.json: ".concat(e.message)),!1}}b(eU,"getPackage");function eL(e){return /*#__PURE__*/s(function(){var t,n,r,s;return O(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,eP.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 eG.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}b(eL,"getLatestPackageVersion");function ek(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,c,o,u,i,l,f,d,E,h,_,v,m,p,y,S,R,I;return O(this,function(O){switch(O.label){case 0:O.trys.push([0,4,,5]);n=eU(e);if(!n)return[2,g({},eM)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,d=n.isDevDepend,E=(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=E[e])!==null&&c!==void 0?c:"0.0.0":d?(o=h[e])!==null&&o!==void 0?o:"0.0.0":"0.0.0";if(!l)return[3,1];p=_;return[3,3];case 1:return[4,eL(e)];case 2:p=O.sent();O.label=3;case 3:v=p,m=l||_===v;if(!m&&(t===null||t===void 0?void 0:t.update)){;S=f?"dependencies":d?"devDependencies":null;S&&((y=i[S])===null||y===void 0?void 0:y[e])!==v&&(i[S]=(R=i[S])!==null&&R!==void 0?R:{},i[S][e]=v,ei(u,JSON.stringify(i,null,4)),eG.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:m}];case 4:I=O.sent();return[2,(eG.error('Error checking package "'.concat(e,'": ').concat(I.message)),g({},eM))];case 5:return[2]}})})()}b(ek,"checkPackage");function eF(){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c,o,u,i,l,f;return O(this,function(d){switch(d.label){case 0:e=[{command:b(function(){return tF.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:b(function(){return tF.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:b(function(){return tF.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,u=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,o()];case 4:i=d.sent();return[4,e0("".concat(u," using: ").concat(i),i)];case 5:d.sent();return[2];case 6:l=d.sent();eG.warn("Installation attempt failed: ".concat(u)),eG.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}b(eF,"installDependencies");function ej(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,c,o,u,i,l,f,d;return O(this,function(E){switch(E.label){case 0:if(!ef(tU.PACKAGE_JSON)){eG.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=m(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ek(e,g({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eF()];case 3:r=E.sent();E.label=4;case 4:r;a=true,c=false,o=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();E.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:E.sent();E.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=E.sent();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:d=E.sent();throw eG.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})})()}b(ej,"setupPackages");var ex=M(require("node-persist"),1);var eq=ey();function eY(){return /*#__PURE__*/s(function(){var e;return O(this,function(t){switch(t.label){case 0:e=ex.default.defaultInstance;if(e)return[3,2];return[4,ex.default.init({dir:eq.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]}})})()}b(eY,"initNodePersist");var eB={get:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eY()];case 1:r.sent();return[4,ex.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eG.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/s(function(){var n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eY()];case 1:r.sent();return[4,ex.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eG.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/s(function(){var t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eY()];case 1:n.sent();return[4,ex.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eG.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/s(function(){var e,t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eY()];case 1:n.sent();return[4,ex.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eG.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eG.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/s(function(){return O(this,function(t){try{return[2,"".concat(eq.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eG.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eH=ey(),eV=eI.promisify(eS.exec);function eQ(e){return"error_list:".concat(e)}b(eQ,"getErrorListKey");function eK(e){return /*#__PURE__*/s(function(){var t,n,r;return O(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eQ(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eB.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/s(function(){var e;return O(this,function(t){switch(t.label){case 0:return[4,eB.getLogLink(n)];case 1:e=t.sent();e&&eG.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();eG.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}b(eK,"saveErrorListToStorage");function eW(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,f;var d=s.exec(e)||[],E=a.exec(e)||[],g=c.exec(e)||[];var h,_,v,m,p,y;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===eC.Error?eC.Error:eC.Warning,message:(h=d===null||d===void 0?void 0:(o=d[4])===null||o===void 0?void 0:o.trim())!==null&&h!==void 0?h:"",rule:(_=d===null||d===void 0?void 0:(u=d[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]===eC.Error?eC.Error:eC.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:eC.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:(y=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&y!==void 0?y:""}):n.push(e.trim())}}),t.length&&eK(t),eH.DEBUG&&n.length&&(eG.warn("Unmatched lines:"),n.forEach(function(e){return eG.info(" ".concat(e))}))}b(eW,"parseTextErrors");function e$(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&&eK(n)}catch(t){eW(e)}}b(e$,"parseCommandOutput");function eJ(e){return /*#__PURE__*/s(function(e){var t,n,r,s,a,c,o,u,i;var l=arguments;return O(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e$;n=new AbortController;eR.default.on("SIGINT",function(){eG.warn("Process interrupted. Terminating..."),n.abort(),eR.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eV(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();o=c.stdout,u=c.stderr,i=c.message;[o,u].forEach(function(e){return e&&t(e)}),!u&&!o&&eG.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}b(eJ,"executeCommand");function eX(e){return{raw:!0,cmd:e}}b(eX,"rawCommand");function ez(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tT," ").concat(e7," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tT," ").concat(tR," ").concat(tf," ").concat(e):"".concat(tT," ").concat(tl," ").concat(e)}b(ez,"formatCLI");function eZ(e,t){return typeof e=="function"?ez(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ez(e,t):e}b(eZ,"formatCommand");function e0(e,t){return /*#__PURE__*/s(function(){var n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eG.start("".concat(e)),eH.DEBUG&&eG.info("→ ".concat(t));return[4,eJ(t)];case 1:r.sent(),eG.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eG.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}b(e0,"runCommand");var e1=M(require("path"),1);var e2=ey();function e4(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,e1.resolve).apply(this,[e2.CWD].concat(m(t)))}b(e4,"resolveWorkingPath");function e3(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,e1.join).apply(this,m(t))}b(e3,"join");var e5=ey(),e6=e5.CWD,e7="@cyberskill/shared",e8="node_modules",e9="dist",te="package.json",tt="package-lock.json",tn="tsconfig.json",tr=".gitignore",ts=".simple-git-hooks.json",ta="pnpm-lock.yaml",tc=".git/hooks/",to=".git/COMMIT_EDITMSG",tu=".migrate-mongo.config.js",ti=e3(e6,e8,e7,e9),tl="cyberskill",tf="src/nodejs/cli/index.ts",td="eslint",tE="eslint",tg="vitest",th="playwright",t_="vitest",tv="@commitlint/cli",tm="commitlint",tp="lint-staged",ty="lint-staged",tO="typescript",tS="tsc",tR="tsx",tI="git",tC="pnpm",tT="pnpm exec",tA="simple-git-hooks",tD="simple-git-hooks",tb="@eslint/config-inspector",tN="eslint-config-inspector",tG="node-modules-inspector",tM="node-modules-inspector",tP="migrate-mongo",tw="./node_modules/migrate-mongo/bin/migrate-mongo",tU={CYBERSKILL_DIRECTORY:ti,WORKING_DIRECTORY:e6,TS_CONFIG:e4(tn),GIT_IGNORE:e4(tr),GIT_HOOK:e4(tc),GIT_COMMIT_MSG:e4(to),SIMPLE_GIT_HOOKS_JSON:e4(ts),PACKAGE_JSON:e4(te),PACKAGE_LOCK_JSON:e4(tt),PNPM_LOCK_YAML:e4(ta),NODE_MODULES:e4(e8),MIGRATE_MONGO_CONFIG:e4(tu),LINT_STAGED_CONFIG:e4("".concat(ti,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:e4("".concat(ti,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:e4("".concat(ti,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e4("".concat(ti,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e4("".concat(ti,"/react/vitest/vitest.e2e.js"))};function tL(e,t,n){return /*#__PURE__*/s(function(){return O(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eO.CLI:return[3,1];case eO.STRING:return[3,3]}return[3,4];case 1:return[4,ej(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eZ(eX("".concat(tT," ").concat(n))))];case 3:return[2,eZ(eX(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}b(tL,"buildCommand");function tk(e,t,n){return function(){return /*#__PURE__*/s(function(){return O(this,function(r){return[2,tL(e,t,n)]})})()}}b(tk,"commandFactory");var tF={simpleGitHooks:tk(eO.CLI,tA,tD),eslintInspect:tk(eO.CLI,tb,tN),nodeModulesInspect:tk(eO.CLI,tG,tM),eslintCheck:tk(eO.CLI,td,"".concat(tE," ").concat(tU.WORKING_DIRECTORY," --no-cache")),eslintFix:tk(eO.CLI,td,"".concat(tE," ").concat(tU.WORKING_DIRECTORY," --fix --no-cache")),typescriptCheck:tk(eO.CLI,tO,"".concat(tS," -p ").concat(tU.TS_CONFIG," --noEmit")),configureGitHook:tk(eO.STRING,"".concat(tI," config core.hooksPath ").concat(tU.GIT_HOOK)),testUnit:tk(eO.CLI,tg,"".concat(t_," --config ").concat(tU.UNIT_TEST_CONFIG)),testE2e:tk(eO.CLI,"".concat(tg," ").concat(th),"".concat(t_," --config ").concat(tU.E2E_TEST_CONFIG)),mongoMigrateCreate:b(function(e){return tk(eO.CLI,tP,"".concat(tR," ").concat(tw," create ").concat(e," -f ").concat(tU.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tk(eO.CLI,tP,"".concat(tR," ").concat(tw," up -f ").concat(tU.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tk(eO.CLI,tP,"".concat(tR," ").concat(tw," down -f ").concat(tU.MIGRATE_MONGO_CONFIG)),commitLint:tk(eO.CLI,tv,"".concat(tm," --edit ").concat(tU.GIT_COMMIT_MSG," --config ").concat(tU.COMMITLINT_CONFIG)),lintStaged:tk(eO.CLI,tp,"".concat(ty," --config ").concat(tU.LINT_STAGED_CONFIG)),stageBuildDirectory:tk(eO.STRING,"".concat(tI," add ").concat(e9)),build:tk(eO.STRING,"".concat(tC," run build")),pnpmInstallStandard:tk(eO.STRING,"".concat(tC," install")),pnpmInstallLegacy:tk(eO.STRING,"".concat(tC," install --legacy-peer-deps")),pnpmInstallForce:tk(eO.STRING,"".concat(tC," install --force"))};var tj={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,L.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"?tj.getDateTime():new Date;return{id:(0,q.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:q.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(tj.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,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=tj.createSchema({mongoose:t,schema:r,virtuals:i});return tj.applyPlugins(d,[a&&x.default,o&&j.default]),tj.applyMiddlewares(d,f),t.model(n,d)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/s(function(){return O(this,function(t){return[2,!z.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/s(function(){var n;return O(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return u({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/s(function(){return O(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:_(g({},k.default),{setConfig:b(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));ei(tU.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tu,"\n");ef(tU.GIT_IGNORE)?ea(tU.GIT_IGNORE,"utf-8").split("\n").includes(tu)||el(tU.GIT_IGNORE,n):ei(tU.GIT_IGNORE,n)},"setConfig")})},tx=/*#__PURE__*/function(){function e(t,n){a(this,e);w(this,"collection");this.collection=t.collection(n)}o(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return O(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=g({},tj.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return O(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return g({},tj.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return O(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return O(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return /*#__PURE__*/s(function(){var n,r;return O(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return /*#__PURE__*/s(function(){var n,r;return O(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(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}();b(tx,"MongoController");var tq=tx,tY=/*#__PURE__*/function(){function e(t){a(this,e);w(this,"model");this.model=t}o(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c;var o=arguments;return O(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:Y.NOT_FOUND.CODE}];case 3:c=u.sent();return[2,{success:!1,message:c.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c;var o=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return O(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,F.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return O(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,g({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:Y.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/s(function(){var n,r,s,a;return O(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=X(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:Y.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/s(function(){var r,a,c,o,i,l,f,d,E,h;return O(this,function(m){switch(m.label){case 0:r=this;m.label=1;case 1:m.trys.push([1,5,,6]);a=t[e],c=Q(a),o=b(function(t){var r=g({},n!==null&&n!==void 0?n:{});return c?_(g({},r),{$or:[u({},"slug.".concat(e),t),{slugHistory:{$elemMatch:u({},"slug.".concat(e),t)}}]}):_(g({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),i=b(function(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(o(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!c)return[3,3];l={success:!0};f=Object.fromEntries;return[4,Promise.all(Object.entries(a).map(function(e){var t=v(e,2),n=t[0],r=t[1];return /*#__PURE__*/s(function(){var e,t;return O(this,function(s){switch(s.label){case 0:e=J(r);t=[n];return[4,i(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(l.result=f.apply(Object,[m.sent()]),l)];case 3:d=J(a);E={success:!0};return[4,i(d)];case 4:return[2,(E.result=m.sent(),E)];case 5:h=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(h.message),code:Y.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();b(tY,"MongooseController");var tB=tY;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(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,s,a,o){try{var c=e[a](o);var i=c.value}catch(e){n(e);return}if(c.done){t(i)}else{Promise.resolve(i).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,a){var o=e.apply(t,n);function c(e){r(o,s,a,c,i,"next",e)}function i(e){r(o,s,a,c,i,"throw",e)}c(undefined)})}}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)o(e.prototype,t);if(n)o(e,n);return e}function i(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function u(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function l(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function E(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var o,c;try{for(n=n.call(e);!(s=(o=n.next()).done);s=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){a=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw c}}return r}function f(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){i(e,t,n[t])})}return e}function m(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function g(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{m(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function _(e,n){return t(e)||E(e,n)||O(e,n)||f()}function p(e){return n(e)||l(e)||O(e)||d()}function v(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function O(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 y(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(a=0)),a)try{if(n=1,r&&(s=c[0]&2?r["return"]:c[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,c[1])).done)return s;if(r=0,s)c=[c[0]&2,s.value];switch(c[0]){case 0:case 1:s=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){a.label=c[1];break}if(c[0]===6&&a.label<s[1]){a.label=s[1];s=c;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(c);break}if(s[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var S=Object.defineProperty;var R=function(e,t,n){return t in e?S(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var I=function(e,t){return S(e,"name",{value:t,configurable:!0})};var T=function(e,t,n){return R(e,(typeof t==="undefined"?"undefined":v(t))!="symbol"?t+"":t,n)};import{format as C}from"date-fns";import A from"migrate-mongo";import{Document as D}from"mongoose";import N from"mongoose-aggregate-paginate-v2";import b from"mongoose-paginate-v2";import{v4 as G}from"uuid";var M={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 P from"unorm";var w={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},U=Object.entries(w).reduce(function(e,t){var n=_(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function L(e){return(typeof e==="undefined"?"undefined":v(e))=="object"&&e!==null&&!Array.isArray(e)}I(L,"isObject");import k from"crypto-js";import F from"slugify";var j=F.default||F;function x(e,t){var n=I(function(e){var n,r;return j(e!==null&&e!==void 0?e:"",h({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))},"slugifyWithOptions");if(L(e)){var r={};var s=true,a=false,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true){var u=_(i.value,2),l=u[0],E=u[1];r[l]=n(E)}}catch(e){a=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(a){throw o}}}return r}return n(e)}I(x,"generateSlug");function Y(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return k.SHA256(e).toString(k.enc.Hex).slice(0,t)}I(Y,"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":v(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)}};import B from"fs-extra";var H=B.lstatSync,Q=B.readdirSync,V=B.mkdirSync,K=B.readFileSync,W=B.writeFileSync,$=B.appendFileSync,J=B.unlinkSync,X=B.statSync,z=B.readJsonSync,Z=B.writeJsonSync;function ee(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return B.pathExistsSync(e)})}I(ee,"pathExistsSync");var et=".cyberskill-storage";import en from"@dotenvx/dotenvx";import{bool as er,cleanEnv as es,str as ea}from"envalid";import eo from"node:os";import ec from"node:path";import ei from"node:process";var eu=!1;function el(){eu||(en.config(),eu=!0)}I(el,"loadEnvFile");function eE(){el();var e=es(ei.env,{CWD:ea({default:ei.cwd()}),DEBUG:er({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:ea({default:ec.join(eo.homedir(),et)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}I(eE,"getEnv");var ef=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as ed}from"node:child_process";import eh from"node:process";import*as em from"node:util";var eg=function(e){return e.Error="error",e.Warning="warning",e}({});import e_ from"chalk";import ep from"consola";import{GraphQLError as ev}from"graphql";var eO=eE();eO.DEBUG||(ep.level=4);function ey(e){var t=e_[e];return typeof t=="function"?t:e_.green}I(ey,"chalkKeyword");var eS={silent:ep.silent,level:ep.level,fatal:ep.fatal,error:ep.error,warn:ep.warn,log:ep.log,info:ep.info,success:ep.success,ready:ep.ready,start:ep.start,box:ep.box,debug:ep.debug,trace:ep.trace,verbose:ep.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){ep.box(e_.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;ep.log("".concat(e_.gray("File:")," ").concat(e_.blue("".concat(t).concat(r?":".concat(r):"")))),s&&ep.log(" ".concat(ey(n)("Rule:")," ").concat(s)),ep.log(" ".concat(ey(n)("Message:")," ").concat(a))}),ep.box(ey(n)("".concat(e," : ").concat(t.length))),ep.log(e_.gray("─".repeat(40)))}};var eR={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import eI from"node-fetch";var eT=eE();function eC(e){var t=eX(eT.CWD,e4);if(!ee(t))return!1;try{var n=z(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,i=r===e,u=e in a,l=e in c;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return eS.warn("Failed to read package.json: ".concat(e.message)),!1}}I(eC,"getPackage");function eA(e){return /*#__PURE__*/s(function(){var t,n,r,s;return y(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,eI("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 eS.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}I(eA,"getLatestPackageVersion");function eD(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,o,c,i,u,l,E,f,d,m,g,_,p,v,O,S,R,I;return y(this,function(y){switch(y.label){case 0:y.trys.push([0,4,,5]);n=eC(e);if(!n)return[2,h({},eR)];i=n.path,u=n.file,l=n.isCurrentProject,E=n.isDepend,f=n.isDevDepend,d=(r=u.dependencies)!==null&&r!==void 0?r:{},m=(s=u.devDependencies)!==null&&s!==void 0?s:{},g=l?(a=u.version)!==null&&a!==void 0?a:"0.0.0":E?(o=d[e])!==null&&o!==void 0?o:"0.0.0":f?(c=m[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];v=g;return[3,3];case 1:return[4,eA(e)];case 2:v=y.sent();y.label=3;case 3:_=v,p=l||g===_;if(!p&&(t===null||t===void 0?void 0:t.update)){;S=E?"dependencies":f?"devDependencies":null;S&&((O=u[S])===null||O===void 0?void 0:O[e])!==_&&(u[S]=(R=u[S])!==null&&R!==void 0?R:{},u[S][e]=_,Z(i,u),eS.info('Updated "'.concat(e,'" to version ').concat(_)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:p}];case 4:I=y.sent();return[2,(eS.error('Error checking package "'.concat(e,'": ').concat(I.message)),h({},eR))];case 5:return[2]}})})()}I(eD,"checkPackage");function eN(){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o,c,i,u,l,E;return y(this,function(f){switch(f.label){case 0:e=[{command:I(function(){return tG.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:I(function(){return tG.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:I(function(){return tG.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];o=a.value,c=o.command,i=o.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,eQ("".concat(i," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();eS.warn("Installation attempt failed: ".concat(i)),eS.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:E=f.sent();n=true;r=E;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}I(eN,"installDependencies");function eb(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,o,c,i,u,l,E,f;return y(this,function(d){switch(d.label){case 0:if(!ee(tD.PACKAGE_JSON)){eS.error("package.json not found. Aborting setup.");return[2]}d.label=1;case 1:d.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eD(e,h({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=d.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eN()];case 3:r=d.sent();d.label=4;case 4:r;a=true,o=false,c=undefined;d.label=5;case 5:d.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();d.label=6;case 6:if(!!(a=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:d.sent();d.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:E=d.sent();o=true;c=E;return[3,12];case 11:try{if(!a&&i.return!=null){i.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:f=d.sent();throw eS.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}I(eb,"setupPackages");import eG from"node-persist";var eM=eE();function eP(){return /*#__PURE__*/s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=eG.defaultInstance;if(e)return[3,2];return[4,eG.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]}})})()}I(eP,"initNodePersist");var ew={get:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eP()];case 1:r.sent();return[4,eG.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eS.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/s(function(){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eP()];case 1:r.sent();return[4,eG.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eS.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/s(function(){var t;return y(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eP()];case 1:n.sent();return[4,eG.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eS.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/s(function(){var e,t;return y(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eP()];case 1:n.sent();return[4,eG.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eS.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eS.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/s(function(){return y(this,function(t){try{return[2,"".concat(eM.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eS.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eU=eE(),eL=em.promisify(ed);function ek(e){return"error_list:".concat(e)}I(ek,"getErrorListKey");function eF(e){return /*#__PURE__*/s(function(){var t,n,r;return y(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__*/s(function(){var e;return y(this,function(t){switch(t.label){case 0:return[4,ew.getLogLink(n)];case 1:e=t.sent();e&&eS.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();eS.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}I(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.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,E;var f=s.exec(e)||[],d=a.exec(e)||[],h=o.exec(e)||[];var m,g,_,p,v,O;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===eg.Error?eg.Error:eg.Warning,message:(m=f===null||f===void 0?void 0:(c=f[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(g=f===null||f===void 0?void 0:(i=f[5])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:""}):d.length?t.push({file:(_=d===null||d===void 0?void 0:d[1])!==null&&_!==void 0?_:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===eg.Error?eg.Error:eg.Warning,message:(p=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&p!==void 0?p:""}):h.length?t.push({file:"commitlint",type:eg.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&&eF(t),eU.DEBUG&&n.length&&(eS.warn("Unmatched lines:"),n.forEach(function(e){return eS.info(" ".concat(e))}))}I(ej,"parseTextErrors");function ex(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?eg.Error:eg.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&eF(n)}catch(t){ej(e)}}I(ex,"parseCommandOutput");function eY(e){return /*#__PURE__*/s(function(e){var t,n,r,s,a,o,c,i,u;var l=arguments;return y(this,function(E){switch(E.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ex;n=new AbortController;eh.on("SIGINT",function(){eS.warn("Process interrupted. Terminating..."),n.abort(),eh.exit()});E.label=1;case 1:E.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eL(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=E.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});E.label=3;case 3:return[3,5];case 4:o=E.sent();c=o.stdout,i=o.stderr,u=o.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&eS.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}I(eY,"executeCommand");function eq(e){return{raw:!0,cmd:e}}I(eq,"rawCommand");function eB(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tv," ").concat(e0," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tv," ").concat(tg," ").concat(ts," ").concat(e):"".concat(tv," ").concat(tr," ").concat(e)}I(eB,"formatCLI");function eH(e,t){return typeof e=="function"?eB(e(t),t):(typeof e==="undefined"?"undefined":v(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eB(e,t):e}I(eH,"formatCommand");function eQ(e,t){return /*#__PURE__*/s(function(){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eS.start("".concat(e)),eU.DEBUG&&eS.info("→ ".concat(t));return[4,eY(t)];case 1:r.sent(),eS.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eS.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}I(eQ,"runCommand");import eV,{join as eK,resolve as eW}from"node:path";var e$=eE();function eJ(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eW.apply(void 0,[e$.CWD].concat(p(t)))}I(eJ,"resolveWorkingPath");function eX(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eK.apply(void 0,p(t))}I(eX,"join");var ez=eE(),eZ=ez.CWD,e0="@cyberskill/shared",e1="node_modules",e2="dist",e4="package.json",e3="package-lock.json",e5="tsconfig.json",e6=".gitignore",e7=".simple-git-hooks.json",e8="pnpm-lock.yaml",e9=".git/hooks/",te=".git/COMMIT_EDITMSG",tt=".migrate-mongo.config.js",tn=eX(eZ,e1,e0,e2),tr="cyberskill",ts="src/nodejs/cli/index.ts",ta="eslint",to="eslint",tc="vitest",ti="playwright",tu="vitest",tl="@commitlint/cli",tE="commitlint",tf="lint-staged",td="lint-staged",th="typescript",tm="tsc",tg="tsx",t_="git",tp="pnpm",tv="pnpm exec",tO="simple-git-hooks",ty="simple-git-hooks",tS="@eslint/config-inspector",tR="eslint-config-inspector",tI="node-modules-inspector",tT="node-modules-inspector",tC="migrate-mongo",tA="./node_modules/migrate-mongo/bin/migrate-mongo",tD={CYBERSKILL_DIRECTORY:tn,WORKING_DIRECTORY:eZ,TS_CONFIG:eJ(e5),GIT_IGNORE:eJ(e6),GIT_HOOK:eJ(e9),GIT_COMMIT_MSG:eJ(te),SIMPLE_GIT_HOOKS_JSON:eJ(e7),PACKAGE_JSON:eJ(e4),PACKAGE_LOCK_JSON:eJ(e3),PNPM_LOCK_YAML:eJ(e8),NODE_MODULES:eJ(e1),MIGRATE_MONGO_CONFIG:eJ(tt),LINT_STAGED_CONFIG:eJ("".concat(tn,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eJ("".concat(tn,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eJ("".concat(tn,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eJ("".concat(tn,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eJ("".concat(tn,"/react/vitest/vitest.e2e.js"))};function tN(e,t,n){return /*#__PURE__*/s(function(){return y(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(),eH(eq("".concat(tv," ").concat(n))))];case 3:return[2,eH(eq(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}I(tN,"buildCommand");function tb(e,t,n){return function(){return /*#__PURE__*/s(function(){return y(this,function(r){return[2,tN(e,t,n)]})})()}}I(tb,"commandFactory");var tG={simpleGitHooks:tb(ef.CLI,tO,ty),eslintInspect:tb(ef.CLI,tS,tR),nodeModulesInspect:tb(ef.CLI,tI,tT),eslintCheck:tb(ef.CLI,ta,"".concat(to," ").concat(tD.WORKING_DIRECTORY)),eslintFix:tb(ef.CLI,ta,"".concat(to," ").concat(tD.WORKING_DIRECTORY," --fix")),typescriptCheck:tb(ef.CLI,th,"".concat(tm," -p ").concat(tD.TS_CONFIG," --noEmit")),configureGitHook:tb(ef.STRING,"".concat(t_," config core.hooksPath ").concat(tD.GIT_HOOK)),testUnit:tb(ef.CLI,tc,"".concat(tu," --config ").concat(tD.UNIT_TEST_CONFIG)),testE2e:tb(ef.CLI,"".concat(tc," ").concat(ti),"".concat(tu," --config ").concat(tD.E2E_TEST_CONFIG)),mongoMigrateCreate:I(function(e){return tb(ef.CLI,tC,"".concat(tg," ").concat(tA," create ").concat(e," -f ").concat(tD.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tb(ef.CLI,tC,"".concat(tg," ").concat(tA," up -f ").concat(tD.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tb(ef.CLI,tC,"".concat(tg," ").concat(tA," down -f ").concat(tD.MIGRATE_MONGO_CONFIG)),commitLint:tb(ef.CLI,tl,"".concat(tE," --edit ").concat(tD.GIT_COMMIT_MSG," --config ").concat(tD.COMMITLINT_CONFIG)),lintStaged:tb(ef.CLI,tf,"".concat(td," --config ").concat(tD.LINT_STAGED_CONFIG)),stageBuildDirectory:tb(ef.STRING,"".concat(t_," add ").concat(e2)),build:tb(ef.STRING,"".concat(tp," run build")),pnpmInstallStandard:tb(ef.STRING,"".concat(tp," install")),pnpmInstallLegacy:tb(ef.STRING,"".concat(tp," install --legacy-peer-deps")),pnpmInstallForce:tb(ef.STRING,"".concat(tp," install --force"))};var tM={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return C(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"?tM.getDateTime():new Date;return{id:G(),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:G,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,o=a===void 0?!1:a;var c=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=c.virtual(t,n);r&&s.get(r)}),o||c.add(tM.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,o=e.aggregate,c=o===void 0?!1:o,i=e.virtuals,u=i===void 0?[]:i,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=tM.createSchema({mongoose:t,schema:r,virtuals:u});return tM.applyPlugins(f,[a&&b,c&&N]),tM.applyMiddlewares(f,E),t.model(n,f)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/s(function(){return y(this,function(t){return[2,!q.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/s(function(){var n;return y(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return i({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/s(function(){return y(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:g(h({},A),{setConfig:I(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));W(tD.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tt,"\n");ee(tD.GIT_IGNORE)?K(tD.GIT_IGNORE,"utf-8").split("\n").includes(tt)||$(tD.GIT_IGNORE,n,"utf-8"):W(tD.GIT_IGNORE,n,"utf-8")},"setConfig")})},tP=/*#__PURE__*/function(){"use strict";function e(t,n){a(this,e);T(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=h({},tM.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return h({},tM.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return y(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return y(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return /*#__PURE__*/s(function(){var n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return /*#__PURE__*/s(function(){var n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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}();I(tP,"MongoController");var tw=tP,tU=/*#__PURE__*/function(){"use strict";function e(t){a(this,e);T(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o;var c=arguments;return y(this,function(i){switch(i.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=i.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:M.NOT_FOUND.CODE}];case 3:o=i.sent();return[2,{success:!1,message:o.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o;var c=arguments;return y(this,function(i){switch(i.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=i.sent(),a)];case 3:o=i.sent();return[2,{success:!1,message:o.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return y(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,D)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return y(this,function(o){switch(o.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,h({new:!0},n)).exec()];case 2:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:M.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return y(this,function(o){switch(o.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};o.label=1;case 1:o.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=o.sent(),r)];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/s(function(){var n,r,s,a;return y(this,function(o){switch(o.label){case 0:n=new Set;r=0;o.label=1;case 1:if(!(r<10))return[3,5];s=Y(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!o.sent();o.label=3;case 3:if(a)return[2,{success:!0,result:s}];o.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:M.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/s(function(){var r,a,o,c,u,l,E,f,d,m;return y(this,function(p){switch(p.label){case 0:r=this;p.label=1;case 1:p.trys.push([1,5,,6]);a=t[e],o=L(a),c=I(function(t){var r=h({},n!==null&&n!==void 0?n:{});return o?g(h({},r),{$or:[i({},"slug.".concat(e),t),{slugHistory:{$elemMatch:i({},"slug.".concat(e),t)}}]}):g(h({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),u=I(function(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(c(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!o)return[3,3];l={success:!0};E=Object.fromEntries;return[4,Promise.all(Object.entries(a).map(function(e){var t=_(e,2),n=t[0],r=t[1];return /*#__PURE__*/s(function(){var e,t;return y(this,function(s){switch(s.label){case 0:e=x(r);t=[n];return[4,u(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(l.result=E.apply(Object,[p.sent()]),l)];case 3:f=x(a);d={success:!0};return[4,u(f)];case 4:return[2,(d.result=p.sent(),d)];case 5:m=p.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(m.message),code:M.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();I(tU,"MongooseController");var tL=tU;export{tw as MongoController,tL as MongooseController,N as aggregatePaginate,tM as mongo,b as mongoosePaginate};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,s,a,o){try{var c=e[a](o);var i=c.value}catch(e){n(e);return}if(c.done){t(i)}else{Promise.resolve(i).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,a){var o=e.apply(t,n);function c(e){r(o,s,a,c,i,"next",e)}function i(e){r(o,s,a,c,i,"throw",e)}c(undefined)})}}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)o(e.prototype,t);if(n)o(e,n);return e}function i(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function u(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function l(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function E(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var o,c;try{for(n=n.call(e);!(s=(o=n.next()).done);s=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){a=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw c}}return r}function f(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){i(e,t,n[t])})}return e}function m(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function g(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{m(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function _(e,n){return t(e)||E(e,n)||O(e,n)||f()}function p(e){return n(e)||l(e)||O(e)||d()}function v(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function O(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 y(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(a=0)),a)try{if(n=1,r&&(s=c[0]&2?r["return"]:c[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,c[1])).done)return s;if(r=0,s)c=[c[0]&2,s.value];switch(c[0]){case 0:case 1:s=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){a.label=c[1];break}if(c[0]===6&&a.label<s[1]){a.label=s[1];s=c;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(c);break}if(s[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var S=Object.defineProperty;var R=function(e,t,n){return t in e?S(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var I=function(e,t){return S(e,"name",{value:t,configurable:!0})};var T=function(e,t,n){return R(e,(typeof t==="undefined"?"undefined":v(t))!="symbol"?t+"":t,n)};import{format as C}from"date-fns";import A from"migrate-mongo";import{Document as D}from"mongoose";import N from"mongoose-aggregate-paginate-v2";import b from"mongoose-paginate-v2";import{v4 as G}from"uuid";var M={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 P from"unorm";var w={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},U=Object.entries(w).reduce(function(e,t){var n=_(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function L(e){return(typeof e==="undefined"?"undefined":v(e))=="object"&&e!==null&&!Array.isArray(e)}I(L,"isObject");import k from"crypto-js";import F from"slugify";var j=F.default||F;function x(e,t){var n=I(function(e){var n,r;return j(e!==null&&e!==void 0?e:"",h({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))},"slugifyWithOptions");if(L(e)){var r={};var s=true,a=false,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true){var u=_(i.value,2),l=u[0],E=u[1];r[l]=n(E)}}catch(e){a=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(a){throw o}}}return r}return n(e)}I(x,"generateSlug");function Y(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return k.SHA256(e).toString(k.enc.Hex).slice(0,t)}I(Y,"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":v(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)}};import B from"fs-extra";var H=B.lstatSync,Q=B.readdirSync,V=B.mkdirSync,K=B.readFileSync,W=B.unlinkSync,$=B.statSync,J=B.readJsonSync;function X(e,t,n){B.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}I(X,"writeFileSync");function z(e,t,n){B.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}I(z,"appendFileSync");function Z(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return B.pathExistsSync(e)})}I(Z,"pathExistsSync");var ee=".cyberskill-storage";import et from"@dotenvx/dotenvx";import{bool as en,cleanEnv as er,str as es}from"envalid";import ea from"node:os";import eo from"node:path";import ec from"node:process";var ei=!1;function eu(){ei||(et.config(),ei=!0)}I(eu,"loadEnvFile");function el(){eu();var e=er(ec.env,{CWD:es({default:ec.cwd()}),DEBUG:en({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:es({default:eo.join(ea.homedir(),ee)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}I(el,"getEnv");var eE=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as ef}from"node:child_process";import ed from"node:process";import*as eh from"node:util";var em=function(e){return e.Error="error",e.Warning="warning",e}({});import eg from"chalk";import e_ from"consola";import{GraphQLError as ep}from"graphql";var ev=el();ev.DEBUG||(e_.level=4);function eO(e){var t=eg[e];return typeof t=="function"?t:eg.green}I(eO,"chalkKeyword");var ey={silent:e_.silent,level:e_.level,fatal:e_.fatal,error:e_.error,warn:e_.warn,log:e_.log,info:e_.info,success:e_.success,ready:e_.ready,start:e_.start,box:e_.box,debug:e_.debug,trace:e_.trace,verbose:e_.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)){e_.box(eg.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;e_.log("".concat(eg.gray("File:")," ").concat(eg.blue("".concat(t).concat(r?":".concat(r):"")))),s&&e_.log(" ".concat(eO(n)("Rule:")," ").concat(s)),e_.log(" ".concat(eO(n)("Message:")," ").concat(a))}),e_.box(eO(n)("".concat(e," : ").concat(t.length))),e_.log(eg.gray("─".repeat(40)))}};var eS={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import eR from"node-fetch";var eI=el();function eT(e){var t=eJ(eI.CWD,e2);if(!Z(t))return!1;try{var n=J(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,i=r===e,u=e in a,l=e in c;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return ey.warn("Failed to read package.json: ".concat(e.message)),!1}}I(eT,"getPackage");function eC(e){return /*#__PURE__*/s(function(){var t,n,r,s;return y(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,eR("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]}})})()}I(eC,"getLatestPackageVersion");function eA(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,o,c,i,u,l,E,f,d,m,g,_,p,v,O,S,R,I;return y(this,function(y){switch(y.label){case 0:y.trys.push([0,4,,5]);n=eT(e);if(!n)return[2,h({},eS)];i=n.path,u=n.file,l=n.isCurrentProject,E=n.isDepend,f=n.isDevDepend,d=(r=u.dependencies)!==null&&r!==void 0?r:{},m=(s=u.devDependencies)!==null&&s!==void 0?s:{},g=l?(a=u.version)!==null&&a!==void 0?a:"0.0.0":E?(o=d[e])!==null&&o!==void 0?o:"0.0.0":f?(c=m[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];v=g;return[3,3];case 1:return[4,eC(e)];case 2:v=y.sent();y.label=3;case 3:_=v,p=l||g===_;if(!p&&(t===null||t===void 0?void 0:t.update)){;S=E?"dependencies":f?"devDependencies":null;S&&((O=u[S])===null||O===void 0?void 0:O[e])!==_&&(u[S]=(R=u[S])!==null&&R!==void 0?R:{},u[S][e]=_,X(i,JSON.stringify(u,null,4)),ey.info('Updated "'.concat(e,'" to version ').concat(_)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:p}];case 4:I=y.sent();return[2,(ey.error('Error checking package "'.concat(e,'": ').concat(I.message)),h({},eS))];case 5:return[2]}})})()}I(eA,"checkPackage");function eD(){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o,c,i,u,l,E;return y(this,function(f){switch(f.label){case 0:e=[{command:I(function(){return tb.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:I(function(){return tb.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:I(function(){return tb.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];o=a.value,c=o.command,i=o.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,eH("".concat(i," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();ey.warn("Installation attempt failed: ".concat(i)),ey.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:E=f.sent();n=true;r=E;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}I(eD,"installDependencies");function eN(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,o,c,i,u,l,E,f;return y(this,function(d){switch(d.label){case 0:if(!Z(tA.PACKAGE_JSON)){ey.error("package.json not found. Aborting setup.");return[2]}d.label=1;case 1:d.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eA(e,h({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=d.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eD()];case 3:r=d.sent();d.label=4;case 4:r;a=true,o=false,c=undefined;d.label=5;case 5:d.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();d.label=6;case 6:if(!!(a=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:d.sent();d.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:E=d.sent();o=true;c=E;return[3,12];case 11:try{if(!a&&i.return!=null){i.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:f=d.sent();throw ey.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}I(eN,"setupPackages");import eb from"node-persist";var eG=el();function eM(){return /*#__PURE__*/s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=eb.defaultInstance;if(e)return[3,2];return[4,eb.init({dir:eG.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]}})})()}I(eM,"initNodePersist");var eP={get:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eM()];case 1:r.sent();return[4,eb.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__*/s(function(){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eM()];case 1:r.sent();return[4,eb.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__*/s(function(){var t;return y(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eM()];case 1:n.sent();return[4,eb.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__*/s(function(){var e,t;return y(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eM()];case 1:n.sent();return[4,eb.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__*/s(function(){return y(this,function(t){try{return[2,"".concat(eG.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ey.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ew=el(),eU=eh.promisify(ef);function eL(e){return"error_list:".concat(e)}I(eL,"getErrorListKey");function ek(e){return /*#__PURE__*/s(function(){var t,n,r;return y(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eL(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eP.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/s(function(){var e;return y(this,function(t){switch(t.label){case 0:return[4,eP.getLogLink(n)];case 1:e=t.sent();e&&ey.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();ey.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}I(ek,"saveErrorListToStorage");function eF(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,E;var f=s.exec(e)||[],d=a.exec(e)||[],h=o.exec(e)||[];var m,g,_,p,v,O;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===em.Error?em.Error:em.Warning,message:(m=f===null||f===void 0?void 0:(c=f[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(g=f===null||f===void 0?void 0:(i=f[5])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:""}):d.length?t.push({file:(_=d===null||d===void 0?void 0:d[1])!==null&&_!==void 0?_:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===em.Error?em.Error:em.Warning,message:(p=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&p!==void 0?p:""}):h.length?t.push({file:"commitlint",type:em.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&&ek(t),ew.DEBUG&&n.length&&(ey.warn("Unmatched lines:"),n.forEach(function(e){return ey.info(" ".concat(e))}))}I(eF,"parseTextErrors");function ej(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?em.Error:em.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&ek(n)}catch(t){eF(e)}}I(ej,"parseCommandOutput");function ex(e){return /*#__PURE__*/s(function(e){var t,n,r,s,a,o,c,i,u;var l=arguments;return y(this,function(E){switch(E.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ej;n=new AbortController;ed.on("SIGINT",function(){ey.warn("Process interrupted. Terminating..."),n.abort(),ed.exit()});E.label=1;case 1:E.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eU(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=E.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});E.label=3;case 3:return[3,5];case 4:o=E.sent();c=o.stdout,i=o.stderr,u=o.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&ey.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}I(ex,"executeCommand");function eY(e){return{raw:!0,cmd:e}}I(eY,"rawCommand");function eq(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tp," ").concat(eZ," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tp," ").concat(tm," ").concat(tr," ").concat(e):"".concat(tp," ").concat(tn," ").concat(e)}I(eq,"formatCLI");function eB(e,t){return typeof e=="function"?eq(e(t),t):(typeof e==="undefined"?"undefined":v(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eq(e,t):e}I(eB,"formatCommand");function eH(e,t){return /*#__PURE__*/s(function(){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ey.start("".concat(e)),ew.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]}})})()}I(eH,"runCommand");import eQ,{join as eV,resolve as eK}from"node:path";var eW=el();function e$(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eK.apply(void 0,[eW.CWD].concat(p(t)))}I(e$,"resolveWorkingPath");function eJ(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eV.apply(void 0,p(t))}I(eJ,"join");var eX=el(),ez=eX.CWD,eZ="@cyberskill/shared",e0="node_modules",e1="dist",e2="package.json",e4="package-lock.json",e3="tsconfig.json",e5=".gitignore",e6=".simple-git-hooks.json",e7="pnpm-lock.yaml",e8=".git/hooks/",e9=".git/COMMIT_EDITMSG",te=".migrate-mongo.config.js",tt=eJ(ez,e0,eZ,e1),tn="cyberskill",tr="src/nodejs/cli/index.ts",ts="eslint",ta="eslint",to="vitest",tc="playwright",ti="vitest",tu="@commitlint/cli",tl="commitlint",tE="lint-staged",tf="lint-staged",td="typescript",th="tsc",tm="tsx",tg="git",t_="pnpm",tp="pnpm exec",tv="simple-git-hooks",tO="simple-git-hooks",ty="@eslint/config-inspector",tS="eslint-config-inspector",tR="node-modules-inspector",tI="node-modules-inspector",tT="migrate-mongo",tC="./node_modules/migrate-mongo/bin/migrate-mongo",tA={CYBERSKILL_DIRECTORY:tt,WORKING_DIRECTORY:ez,TS_CONFIG:e$(e3),GIT_IGNORE:e$(e5),GIT_HOOK:e$(e8),GIT_COMMIT_MSG:e$(e9),SIMPLE_GIT_HOOKS_JSON:e$(e6),PACKAGE_JSON:e$(e2),PACKAGE_LOCK_JSON:e$(e4),PNPM_LOCK_YAML:e$(e7),NODE_MODULES:e$(e0),MIGRATE_MONGO_CONFIG:e$(te),LINT_STAGED_CONFIG:e$("".concat(tt,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:e$("".concat(tt,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:e$("".concat(tt,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e$("".concat(tt,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e$("".concat(tt,"/react/vitest/vitest.e2e.js"))};function tD(e,t,n){return /*#__PURE__*/s(function(){return y(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eE.CLI:return[3,1];case eE.STRING:return[3,3]}return[3,4];case 1:return[4,eN(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eB(eY("".concat(tp," ").concat(n))))];case 3:return[2,eB(eY(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}I(tD,"buildCommand");function tN(e,t,n){return function(){return /*#__PURE__*/s(function(){return y(this,function(r){return[2,tD(e,t,n)]})})()}}I(tN,"commandFactory");var tb={simpleGitHooks:tN(eE.CLI,tv,tO),eslintInspect:tN(eE.CLI,ty,tS),nodeModulesInspect:tN(eE.CLI,tR,tI),eslintCheck:tN(eE.CLI,ts,"".concat(ta," ").concat(tA.WORKING_DIRECTORY," --no-cache")),eslintFix:tN(eE.CLI,ts,"".concat(ta," ").concat(tA.WORKING_DIRECTORY," --fix --no-cache")),typescriptCheck:tN(eE.CLI,td,"".concat(th," -p ").concat(tA.TS_CONFIG," --noEmit")),configureGitHook:tN(eE.STRING,"".concat(tg," config core.hooksPath ").concat(tA.GIT_HOOK)),testUnit:tN(eE.CLI,to,"".concat(ti," --config ").concat(tA.UNIT_TEST_CONFIG)),testE2e:tN(eE.CLI,"".concat(to," ").concat(tc),"".concat(ti," --config ").concat(tA.E2E_TEST_CONFIG)),mongoMigrateCreate:I(function(e){return tN(eE.CLI,tT,"".concat(tm," ").concat(tC," create ").concat(e," -f ").concat(tA.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tN(eE.CLI,tT,"".concat(tm," ").concat(tC," up -f ").concat(tA.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tN(eE.CLI,tT,"".concat(tm," ").concat(tC," down -f ").concat(tA.MIGRATE_MONGO_CONFIG)),commitLint:tN(eE.CLI,tu,"".concat(tl," --edit ").concat(tA.GIT_COMMIT_MSG," --config ").concat(tA.COMMITLINT_CONFIG)),lintStaged:tN(eE.CLI,tE,"".concat(tf," --config ").concat(tA.LINT_STAGED_CONFIG)),stageBuildDirectory:tN(eE.STRING,"".concat(tg," add ").concat(e1)),build:tN(eE.STRING,"".concat(t_," run build")),pnpmInstallStandard:tN(eE.STRING,"".concat(t_," install")),pnpmInstallLegacy:tN(eE.STRING,"".concat(t_," install --legacy-peer-deps")),pnpmInstallForce:tN(eE.STRING,"".concat(t_," install --force"))};var tG={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return C(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"?tG.getDateTime():new Date;return{id:G(),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:G,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,o=a===void 0?!1:a;var c=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=c.virtual(t,n);r&&s.get(r)}),o||c.add(tG.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,o=e.aggregate,c=o===void 0?!1:o,i=e.virtuals,u=i===void 0?[]:i,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=tG.createSchema({mongoose:t,schema:r,virtuals:u});return tG.applyPlugins(f,[a&&b,c&&N]),tG.applyMiddlewares(f,E),t.model(n,f)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/s(function(){return y(this,function(t){return[2,!q.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/s(function(){var n;return y(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return i({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/s(function(){return y(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:g(h({},A),{setConfig:I(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));X(tA.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(te,"\n");Z(tA.GIT_IGNORE)?K(tA.GIT_IGNORE,"utf-8").split("\n").includes(te)||z(tA.GIT_IGNORE,n):X(tA.GIT_IGNORE,n)},"setConfig")})},tM=/*#__PURE__*/function(){"use strict";function e(t,n){a(this,e);T(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=h({},tG.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return h({},tG.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return y(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return y(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return /*#__PURE__*/s(function(){var n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return /*#__PURE__*/s(function(){var n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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}();I(tM,"MongoController");var tP=tM,tw=/*#__PURE__*/function(){"use strict";function e(t){a(this,e);T(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o;var c=arguments;return y(this,function(i){switch(i.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=i.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:M.NOT_FOUND.CODE}];case 3:o=i.sent();return[2,{success:!1,message:o.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o;var c=arguments;return y(this,function(i){switch(i.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=i.sent(),a)];case 3:o=i.sent();return[2,{success:!1,message:o.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return y(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,D)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return y(this,function(o){switch(o.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,h({new:!0},n)).exec()];case 2:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:M.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return y(this,function(o){switch(o.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};o.label=1;case 1:o.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=o.sent(),r)];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/s(function(){var n,r,s,a;return y(this,function(o){switch(o.label){case 0:n=new Set;r=0;o.label=1;case 1:if(!(r<10))return[3,5];s=Y(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!o.sent();o.label=3;case 3:if(a)return[2,{success:!0,result:s}];o.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:M.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/s(function(){var r,a,o,c,u,l,E,f,d,m;return y(this,function(p){switch(p.label){case 0:r=this;p.label=1;case 1:p.trys.push([1,5,,6]);a=t[e],o=L(a),c=I(function(t){var r=h({},n!==null&&n!==void 0?n:{});return o?g(h({},r),{$or:[i({},"slug.".concat(e),t),{slugHistory:{$elemMatch:i({},"slug.".concat(e),t)}}]}):g(h({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),u=I(function(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(c(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!o)return[3,3];l={success:!0};E=Object.fromEntries;return[4,Promise.all(Object.entries(a).map(function(e){var t=_(e,2),n=t[0],r=t[1];return /*#__PURE__*/s(function(){var e,t;return y(this,function(s){switch(s.label){case 0:e=x(r);t=[n];return[4,u(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(l.result=E.apply(Object,[p.sent()]),l)];case 3:f=x(a);d={success:!0};return[4,u(f)];case 4:return[2,(d.result=p.sent(),d)];case 5:m=p.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(m.message),code:M.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();I(tw,"MongooseController");var tU=tw;export{tP as MongoController,tU as MongooseController,N as aggregatePaginate,tG as mongo,b 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 u=i.value}catch(e){n(e);return}if(i.done){t(u)}else{Promise.resolve(u).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,u,"next",e)}function u(e){n(c,a,o,i,u,"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 u(e){return t(e)||o(e)||l(e)||c()}function s(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 u([e,t])}}function u(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":s(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 u=v(t)[Symbol.iterator](),l;!(a=(l=u.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&u.return!=null){u.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 tu},getLatestPackageVersion:function(){return ti},getPackage:function(){return tc},installDependencies:function(){return ts},setupPackages:function(){return tl}});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("@dotenvx/dotenvx"),1),P=require("envalid"),R=I(require("os"),1),G=I(require("path"),1),k=I(require("process"),1);var L=!1;function N(){L||(w.default.config(),L=!0)}y(N,"loadEnvFile");function D(){N();var e=(0,P.cleanEnv)(k.default.env,{CWD:(0,P.str)({default:k.default.cwd()}),DEBUG:(0,P.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,P.str)({default:G.default.join(R.default.homedir(),T)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}y(D,"getEnv");var j=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var U=require("child_process"),A=I(require("process"),1),M=I(require("util"),1);var x=function(e){return e.Error="error",e.Warning="warning",e}({});var F=I(require("chalk"),1),K=I(require("consola"),1),Y=require("graphql");var q=D();q.DEBUG||(K.default.level=4);function B(e){var t=F.default[e];return typeof t=="function"?t:F.default.green}y(B,"chalkKeyword");var W={silent:K.default.silent,level:K.default.level,fatal:K.default.fatal,error:K.default.error,warn:K.default.warn,log:K.default.log,info:K.default.info,success:K.default.success,ready:K.default.ready,start:K.default.start,box:K.default.box,debug:K.default.debug,trace:K.default.trace,verbose:K.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)){K.default.box(F.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;K.default.log("".concat(F.default.gray("File:")," ").concat(F.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&K.default.log(" ".concat(B(n)("Rule:")," ").concat(a)),K.default.log(" ".concat(B(n)("Message:")," ").concat(o))}),K.default.box(B(n)("".concat(e," : ").concat(t.length))),K.default.log(F.default.gray("─".repeat(40)))}};var J=I(require("path"),1);var H=D();function V(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,J.resolve).apply(this,[H.CWD].concat(u(t)))}y(V,"resolveWorkingPath");function $(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,J.join).apply(this,u(t))}y($,"join");var z=D(),Q=z.CWD,X="@cyberskill/shared",Z="node_modules",ee="dist",et="package.json",en="package-lock.json",er="tsconfig.json",ea=".gitignore",eo=".simple-git-hooks.json",ec="pnpm-lock.yaml",ei=".git/hooks/",eu=".git/COMMIT_EDITMSG",es=".migrate-mongo.config.js",el=$(Q,Z,X,ee),ef="cyberskill",ed="src/nodejs/cli/index.ts",ep="eslint",eg="eslint",ev="vitest",em="playwright",eh="vitest",ey="@commitlint/cli",e_="commitlint",eE="lint-staged",eI="lint-staged",eb="typescript",eC="tsc",eO="tsx",eS="git",eT="pnpm",ew="pnpm exec",eP="simple-git-hooks",eR="simple-git-hooks",eG="@eslint/config-inspector",ek="eslint-config-inspector",eL="node-modules-inspector",eN="node-modules-inspector",eD="migrate-mongo",ej="./node_modules/migrate-mongo/bin/migrate-mongo",eU={CYBERSKILL_DIRECTORY:el,WORKING_DIRECTORY:Q,TS_CONFIG:V(er),GIT_IGNORE:V(ea),GIT_HOOK:V(ei),GIT_COMMIT_MSG:V(eu),SIMPLE_GIT_HOOKS_JSON:V(eo),PACKAGE_JSON:V(et),PACKAGE_LOCK_JSON:V(en),PNPM_LOCK_YAML:V(ec),NODE_MODULES:V(Z),MIGRATE_MONGO_CONFIG:V(es),LINT_STAGED_CONFIG:V("".concat(el,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:V("".concat(el,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:V("".concat(el,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:V("".concat(el,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:V("".concat(el,"/react/vitest/vitest.e2e.js"))};function eA(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 j.CLI:return[3,1];case j.STRING:return[3,3]}return[3,4];case 1:return[4,tl(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eZ(eQ("".concat(ew," ").concat(n))))];case 3:return[2,eZ(eQ(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}y(eA,"buildCommand");function eM(e,t,n){return function(){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,eA(e,t,n)]})})()}}y(eM,"commandFactory");var ex={simpleGitHooks:eM(j.CLI,eP,eR),eslintInspect:eM(j.CLI,eG,ek),nodeModulesInspect:eM(j.CLI,eL,eN),eslintCheck:eM(j.CLI,ep,"".concat(eg," ").concat(eU.WORKING_DIRECTORY)),eslintFix:eM(j.CLI,ep,"".concat(eg," ").concat(eU.WORKING_DIRECTORY," --fix")),typescriptCheck:eM(j.CLI,eb,"".concat(eC," -p ").concat(eU.TS_CONFIG," --noEmit")),configureGitHook:eM(j.STRING,"".concat(eS," config core.hooksPath ").concat(eU.GIT_HOOK)),testUnit:eM(j.CLI,ev,"".concat(eh," --config ").concat(eU.UNIT_TEST_CONFIG)),testE2e:eM(j.CLI,"".concat(ev," ").concat(em),"".concat(eh," --config ").concat(eU.E2E_TEST_CONFIG)),mongoMigrateCreate:y(function(e){return eM(j.CLI,eD,"".concat(eO," ").concat(ej," create ").concat(e," -f ").concat(eU.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:eM(j.CLI,eD,"".concat(eO," ").concat(ej," up -f ").concat(eU.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:eM(j.CLI,eD,"".concat(eO," ").concat(ej," down -f ").concat(eU.MIGRATE_MONGO_CONFIG)),commitLint:eM(j.CLI,ey,"".concat(e_," --edit ").concat(eU.GIT_COMMIT_MSG," --config ").concat(eU.COMMITLINT_CONFIG)),lintStaged:eM(j.CLI,eE,"".concat(eI," --config ").concat(eU.LINT_STAGED_CONFIG)),stageBuildDirectory:eM(j.STRING,"".concat(eS," add ").concat(ee)),build:eM(j.STRING,"".concat(eT," run build")),pnpmInstallStandard:eM(j.STRING,"".concat(eT," install")),pnpmInstallLegacy:eM(j.STRING,"".concat(eT," install --legacy-peer-deps")),pnpmInstallForce:eM(j.STRING,"".concat(eT," install --force"))};var eF=I(require("node-persist"),1);var eK=D();function eY(){return /*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=eF.default.defaultInstance;if(e)return[3,2];return[4,eF.default.init({dir:eK.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(eY,"initNodePersist");var eq={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,eY()];case 1:r.sent();return[4,eF.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(W.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,eY()];case 1:r.sent();return[4,eF.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();W.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,eY()];case 1:n.sent();return[4,eF.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();W.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,eY()];case 1:n.sent();return[4,eF.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(W.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(W.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(eK.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(W.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eB=D(),eW=M.promisify(U.exec);function eJ(e){return"error_list:".concat(e)}y(eJ,"getErrorListKey");function eH(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=eJ(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eq.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(function(){return /*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eq.getLogLink(n)];case 1:e=t.sent();e&&W.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:a=o.sent();W.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})})()}y(eH,"saveErrorListToStorage");function eV(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,u,s,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]===x.Error?x.Error:x.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:(u=d[5])===null||u===void 0?void 0:u.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]===x.Error?x.Error:x.Warning,message:(y=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&y!==void 0?y:""}):g.length?t.push({file:"commitlint",type:x.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&&eH(t),eB.DEBUG&&n.length&&(W.warn("Unmatched lines:"),n.forEach(function(e){return W.info(" ".concat(e))}))}y(eV,"parseTextErrors");function e$(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?x.Error:x.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&eH(n)}catch(t){eV(e)}}y(e$,"parseCommandOutput");function ez(e){return /*#__PURE__*/r(function(e){var t,n,r,a,o,c,i,u,s;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e$;n=new AbortController;A.default.on("SIGINT",function(){W.warn("Process interrupted. Terminating..."),n.abort(),A.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eW(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,u=c.stderr,s=c.message;[i,u].forEach(function(e){return e&&t(e)}),!u&&!i&&W.error("Command failed: ".concat(s));return[3,5];case 5:return[2]}})}).apply(this,arguments)}y(ez,"executeCommand");function eQ(e){return{raw:!0,cmd:e}}y(eQ,"rawCommand");function eX(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(ew," ").concat(X," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(ew," ").concat(eO," ").concat(ed," ").concat(e):"".concat(ew," ").concat(ef," ").concat(e)}y(eX,"formatCLI");function eZ(e,t){return typeof e=="function"?eX(e(t),t):(typeof e==="undefined"?"undefined":s(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eX(e,t):e}y(eZ,"formatCommand");function e0(e,t){return /*#__PURE__*/r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);W.start("".concat(e)),eB.DEBUG&&W.info("→ ".concat(t));return[4,ez(t)];case 1:r.sent(),W.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw W.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}y(e0,"runCommand");var e1=I(require("fs-extra"),1),e2=require("path");var e3=e1.default,e4=e3.lstatSync,e5=e3.readdirSync,e6=e3.mkdirSync,e7=e3.readFileSync,e8=e3.writeFileSync,e9=e3.appendFileSync,te=e3.unlinkSync,tt=e3.statSync,tn=e1.default.readJsonSync,tr=e1.default.writeJsonSync;function ta(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return e1.default.pathExistsSync(e)})}y(ta,"pathExistsSync");var to=D();function tc(e){var t=$(to.CWD,et);if(!ta(t))return!1;try{var n=tn(t),r=n.name,a=n.dependencies,o=a===void 0?{}:a,c=n.devDependencies,i=c===void 0?{}:c,u=r===e,s=e in o,l=e in i;return u||s||l?{path:t,file:n,isCurrentProject:u,isDepend:s,isDevDepend:l}:!1}catch(e){return W.warn("Failed to read package.json: ".concat(e.message)),!1}}y(tc,"getPackage");function ti(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 W.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})})()}y(ti,"getLatestPackageVersion");function tu(e,t){return /*#__PURE__*/r(function(){var n,r,a,o,c,u,s,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=tc(e);if(!n)return[2,i({},O)];s=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?(u=m[e])!==null&&u!==void 0?u:"0.0.0":"0.0.0";if(!d)return[3,1];E=h;return[3,3];case 1:return[4,ti(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,tr(s,l),W.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:d,installedPath:s,file:l,isUpToDate:_}];case 4:S=f.sent();return[2,(W.error('Error checking package "'.concat(e,'": ').concat(S.message)),i({},O))];case 5:return[2]}})})()}y(tu,"checkPackage");function ts(){return /*#__PURE__*/r(function(){var e,t,n,r,a,o,c,i,u,s,l,d;return f(this,function(f){switch(f.label){case 0:e=[{command:y(function(){return ex.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return ex.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return ex.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,u=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:s=f.sent();return[4,e0("".concat(u," using: ").concat(s),s)];case 5:f.sent();return[2];case 6:l=f.sent();W.warn("Installation attempt failed: ".concat(u)),W.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(ts,"installDependencies");function tl(e,t){return /*#__PURE__*/r(function(){var n,r,a,o,c,s,l,d,p,g,v;return f(this,function(f){switch(f.label){case 0:if(!ta(eU.PACKAGE_JSON)){W.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=u(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return tu(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,ts()];case 3:r=f.sent();f.label=4;case 4:r;o=true,c=false,s=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;s=g;return[3,12];case 11:try{if(!o&&l.return!=null){l.return()}}finally{if(c){throw s}}return[7];case 12:return[3,14];case 13:v=f.sent();throw W.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})})()}y(tl,"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 u=i.value}catch(e){n(e);return}if(i.done){t(u)}else{Promise.resolve(u).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,u,"next",e)}function u(e){n(c,a,o,i,u,"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 u(e){return t(e)||o(e)||l(e)||c()}function s(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 u([e,t])}}function u(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 g=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var m=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var y=function(e,t){return g(e,"name",{value:t,configurable:!0})};var _=function(e,t){for(var n in t)g(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":s(t))=="object"||typeof t=="function")try{var i=function(){var a=l.value;!h.call(e,a)&&a!==n&&g(e,a,{get:function(){return t[a]},enumerable:!(r=p(t,a))||r.enumerable})};for(var u=v(t)[Symbol.iterator](),l;!(a=(l=u.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&u.return!=null){u.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?g(n,"default",{value:e,enumerable:!0}):n,e)},b=function(e){return E(g({},"__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 tu}});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("@dotenvx/dotenvx"),1),P=require("envalid"),R=I(require("os"),1),G=I(require("path"),1),k=I(require("process"),1);var L=!1;function N(){L||(w.default.config(),L=!0)}y(N,"loadEnvFile");function D(){N();var e=(0,P.cleanEnv)(k.default.env,{CWD:(0,P.str)({default:k.default.cwd()}),DEBUG:(0,P.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,P.str)({default:G.default.join(R.default.homedir(),T)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}y(D,"getEnv");var j=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var U=require("child_process"),A=I(require("process"),1),M=I(require("util"),1);var x=function(e){return e.Error="error",e.Warning="warning",e}({});var F=I(require("chalk"),1),K=I(require("consola"),1),Y=require("graphql");var q=D();q.DEBUG||(K.default.level=4);function B(e){var t=F.default[e];return typeof t=="function"?t:F.default.green}y(B,"chalkKeyword");var W={silent:K.default.silent,level:K.default.level,fatal:K.default.fatal,error:K.default.error,warn:K.default.warn,log:K.default.log,info:K.default.info,success:K.default.success,ready:K.default.ready,start:K.default.start,box:K.default.box,debug:K.default.debug,trace:K.default.trace,verbose:K.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)){K.default.box(F.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;K.default.log("".concat(F.default.gray("File:")," ").concat(F.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&K.default.log(" ".concat(B(n)("Rule:")," ").concat(a)),K.default.log(" ".concat(B(n)("Message:")," ").concat(o))}),K.default.box(B(n)("".concat(e," : ").concat(t.length))),K.default.log(F.default.gray("─".repeat(40)))}};var J=I(require("path"),1);var H=D();function V(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,J.resolve).apply(this,[H.CWD].concat(u(t)))}y(V,"resolveWorkingPath");function $(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,J.join).apply(this,u(t))}y($,"join");var z=D(),Q=z.CWD,X="@cyberskill/shared",Z="node_modules",ee="dist",et="package.json",en="package-lock.json",er="tsconfig.json",ea=".gitignore",eo=".simple-git-hooks.json",ec="pnpm-lock.yaml",ei=".git/hooks/",eu=".git/COMMIT_EDITMSG",es=".migrate-mongo.config.js",el=$(Q,Z,X,ee),ef="cyberskill",ed="src/nodejs/cli/index.ts",eg="eslint",ep="eslint",ev="vitest",em="playwright",eh="vitest",ey="@commitlint/cli",e_="commitlint",eE="lint-staged",eI="lint-staged",eb="typescript",eC="tsc",eO="tsx",eS="git",eT="pnpm",ew="pnpm exec",eP="simple-git-hooks",eR="simple-git-hooks",eG="@eslint/config-inspector",ek="eslint-config-inspector",eL="node-modules-inspector",eN="node-modules-inspector",eD="migrate-mongo",ej="./node_modules/migrate-mongo/bin/migrate-mongo",eU={CYBERSKILL_DIRECTORY:el,WORKING_DIRECTORY:Q,TS_CONFIG:V(er),GIT_IGNORE:V(ea),GIT_HOOK:V(ei),GIT_COMMIT_MSG:V(eu),SIMPLE_GIT_HOOKS_JSON:V(eo),PACKAGE_JSON:V(et),PACKAGE_LOCK_JSON:V(en),PNPM_LOCK_YAML:V(ec),NODE_MODULES:V(Z),MIGRATE_MONGO_CONFIG:V(es),LINT_STAGED_CONFIG:V("".concat(el,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:V("".concat(el,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:V("".concat(el,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:V("".concat(el,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:V("".concat(el,"/react/vitest/vitest.e2e.js"))};function eA(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 j.CLI:return[3,1];case j.STRING:return[3,3]}return[3,4];case 1:return[4,tu(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eZ(eQ("".concat(ew," ").concat(n))))];case 3:return[2,eZ(eQ(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}y(eA,"buildCommand");function eM(e,t,n){return function(){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,eA(e,t,n)]})})()}}y(eM,"commandFactory");var ex={simpleGitHooks:eM(j.CLI,eP,eR),eslintInspect:eM(j.CLI,eG,ek),nodeModulesInspect:eM(j.CLI,eL,eN),eslintCheck:eM(j.CLI,eg,"".concat(ep," ").concat(eU.WORKING_DIRECTORY," --no-cache")),eslintFix:eM(j.CLI,eg,"".concat(ep," ").concat(eU.WORKING_DIRECTORY," --fix --no-cache")),typescriptCheck:eM(j.CLI,eb,"".concat(eC," -p ").concat(eU.TS_CONFIG," --noEmit")),configureGitHook:eM(j.STRING,"".concat(eS," config core.hooksPath ").concat(eU.GIT_HOOK)),testUnit:eM(j.CLI,ev,"".concat(eh," --config ").concat(eU.UNIT_TEST_CONFIG)),testE2e:eM(j.CLI,"".concat(ev," ").concat(em),"".concat(eh," --config ").concat(eU.E2E_TEST_CONFIG)),mongoMigrateCreate:y(function(e){return eM(j.CLI,eD,"".concat(eO," ").concat(ej," create ").concat(e," -f ").concat(eU.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:eM(j.CLI,eD,"".concat(eO," ").concat(ej," up -f ").concat(eU.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:eM(j.CLI,eD,"".concat(eO," ").concat(ej," down -f ").concat(eU.MIGRATE_MONGO_CONFIG)),commitLint:eM(j.CLI,ey,"".concat(e_," --edit ").concat(eU.GIT_COMMIT_MSG," --config ").concat(eU.COMMITLINT_CONFIG)),lintStaged:eM(j.CLI,eE,"".concat(eI," --config ").concat(eU.LINT_STAGED_CONFIG)),stageBuildDirectory:eM(j.STRING,"".concat(eS," add ").concat(ee)),build:eM(j.STRING,"".concat(eT," run build")),pnpmInstallStandard:eM(j.STRING,"".concat(eT," install")),pnpmInstallLegacy:eM(j.STRING,"".concat(eT," install --legacy-peer-deps")),pnpmInstallForce:eM(j.STRING,"".concat(eT," install --force"))};var eF=I(require("node-persist"),1);var eK=D();function eY(){return /*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=eF.default.defaultInstance;if(e)return[3,2];return[4,eF.default.init({dir:eK.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(eY,"initNodePersist");var eq={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,eY()];case 1:r.sent();return[4,eF.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(W.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,eY()];case 1:r.sent();return[4,eF.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();W.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,eY()];case 1:n.sent();return[4,eF.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();W.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,eY()];case 1:n.sent();return[4,eF.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(W.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(W.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(eK.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(W.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eB=D(),eW=M.promisify(U.exec);function eJ(e){return"error_list:".concat(e)}y(eJ,"getErrorListKey");function eH(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=eJ(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eq.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(function(){return /*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eq.getLogLink(n)];case 1:e=t.sent();e&&W.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:a=o.sent();W.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})})()}y(eH,"saveErrorListToStorage");function eV(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,u,s,l,f;var d=a.exec(e)||[],g=o.exec(e)||[],p=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]===x.Error?x.Error:x.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:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&m!==void 0?m:""}):g.length?t.push({file:(h=g===null||g===void 0?void 0:g[1])!==null&&h!==void 0?h:"",position:"".concat(g[2],":").concat(g[3]),type:g[4]===x.Error?x.Error:x.Warning,message:(y=g===null||g===void 0?void 0:(s=g[5])===null||s===void 0?void 0:s.trim())!==null&&y!==void 0?y:""}):p.length?t.push({file:"commitlint",type:x.Error,message:(_=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&_!==void 0?_:"",rule:(E=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&E!==void 0?E:""}):n.push(e.trim())}}),t.length&&eH(t),eB.DEBUG&&n.length&&(W.warn("Unmatched lines:"),n.forEach(function(e){return W.info(" ".concat(e))}))}y(eV,"parseTextErrors");function e$(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?x.Error:x.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&eH(n)}catch(t){eV(e)}}y(e$,"parseCommandOutput");function ez(e){return /*#__PURE__*/r(function(e){var t,n,r,a,o,c,i,u,s;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e$;n=new AbortController;A.default.on("SIGINT",function(){W.warn("Process interrupted. Terminating..."),n.abort(),A.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eW(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,u=c.stderr,s=c.message;[i,u].forEach(function(e){return e&&t(e)}),!u&&!i&&W.error("Command failed: ".concat(s));return[3,5];case 5:return[2]}})}).apply(this,arguments)}y(ez,"executeCommand");function eQ(e){return{raw:!0,cmd:e}}y(eQ,"rawCommand");function eX(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(ew," ").concat(X," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(ew," ").concat(eO," ").concat(ed," ").concat(e):"".concat(ew," ").concat(ef," ").concat(e)}y(eX,"formatCLI");function eZ(e,t){return typeof e=="function"?eX(e(t),t):(typeof e==="undefined"?"undefined":s(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eX(e,t):e}y(eZ,"formatCommand");function e0(e,t){return /*#__PURE__*/r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);W.start("".concat(e)),eB.DEBUG&&W.info("→ ".concat(t));return[4,ez(t)];case 1:r.sent(),W.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw W.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}y(e0,"runCommand");var e1=I(require("fs-extra"),1),e2=require("path");var e3=e1.default,e4=e3.lstatSync,e5=e3.readdirSync,e6=e3.mkdirSync,e8=e3.readFileSync,e7=e3.unlinkSync,e9=e3.statSync,te=e1.default.readJsonSync;function tt(e,t,n){e1.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}y(tt,"writeFileSync");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 e1.default.pathExistsSync(e)})}y(tn,"pathExistsSync");var tr=D();function ta(e){var t=$(tr.CWD,et);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,u=r===e,s=e in o,l=e in i;return u||s||l?{path:t,file:n,isCurrentProject:u,isDepend:s,isDevDepend:l}:!1}catch(e){return W.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 W.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,u,s,l,d,g,p,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)];s=n.path,l=n.file,d=n.isCurrentProject,g=n.isDepend,p=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":g?(c=v[e])!==null&&c!==void 0?c:"0.0.0":p?(u=m[e])!==null&&u!==void 0?u:"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=g?"dependencies":p?"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(s,JSON.stringify(l,null,4)),W.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:d,installedPath:s,file:l,isUpToDate:_}];case 4:S=f.sent();return[2,(W.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,u,s,l,d;return f(this,function(f){switch(f.label){case 0:e=[{command:y(function(){return ex.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return ex.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return ex.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,u=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:s=f.sent();return[4,e0("".concat(u," using: ").concat(s),s)];case 5:f.sent();return[2];case 6:l=f.sent();W.warn("Installation attempt failed: ".concat(u)),W.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 tu(e,t){return /*#__PURE__*/r(function(){var n,r,a,o,c,s,l,d,g,p,v;return f(this,function(f){switch(f.label){case 0:if(!tn(eU.PACKAGE_JSON)){W.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=u(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,s=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];g=d.value;return[4,g()];case 7:f.sent();f.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:p=f.sent();c=true;s=p;return[3,12];case 11:try{if(!o&&l.return!=null){l.return()}}finally{if(c){throw s}}return[7];case 12:return[3,14];case 13:v=f.sent();throw W.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})})()}y(tu,"setupPackages");0&&(module.exports={CHECK_PACKAGE_EMPTY_RESULT:CHECK_PACKAGE_EMPTY_RESULT,checkPackage:checkPackage,getLatestPackageVersion:getLatestPackageVersion,getPackage:getPackage,installDependencies:installDependencies,setupPackages:setupPackages});