@cyberskill/shared 1.108.0 → 1.109.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +13 -0
  2. package/dist/_tsup-dts-rollup.d.ts +13 -0
  3. package/dist/configs/config.util.cjs +1 -1
  4. package/dist/configs/config.util.js +1 -1
  5. package/dist/configs/index.cjs +1 -1
  6. package/dist/configs/index.js +1 -1
  7. package/dist/index.cjs +1 -1
  8. package/dist/index.d.cts +2 -0
  9. package/dist/index.d.ts +2 -0
  10. package/dist/index.js +1 -1
  11. package/dist/nodejs/cli/cli.util.cjs +1 -1
  12. package/dist/nodejs/cli/cli.util.js +1 -1
  13. package/dist/nodejs/cli/index.cjs +1 -1
  14. package/dist/nodejs/cli/index.js +1 -1
  15. package/dist/nodejs/command/command.util.cjs +1 -1
  16. package/dist/nodejs/command/command.util.js +1 -1
  17. package/dist/nodejs/command/index.cjs +1 -1
  18. package/dist/nodejs/command/index.js +1 -1
  19. package/dist/nodejs/fs/fs.util.cjs +1 -1
  20. package/dist/nodejs/fs/fs.util.d.cts +1 -0
  21. package/dist/nodejs/fs/fs.util.d.ts +1 -0
  22. package/dist/nodejs/fs/fs.util.js +1 -1
  23. package/dist/nodejs/fs/index.cjs +1 -1
  24. package/dist/nodejs/fs/index.d.cts +1 -0
  25. package/dist/nodejs/fs/index.d.ts +1 -0
  26. package/dist/nodejs/fs/index.js +1 -1
  27. package/dist/nodejs/index.cjs +1 -1
  28. package/dist/nodejs/index.d.cts +2 -0
  29. package/dist/nodejs/index.d.ts +2 -0
  30. package/dist/nodejs/index.js +1 -1
  31. package/dist/nodejs/mongo/index.cjs +1 -1
  32. package/dist/nodejs/mongo/index.js +1 -1
  33. package/dist/nodejs/mongo/mongo.util.cjs +1 -1
  34. package/dist/nodejs/mongo/mongo.util.js +1 -1
  35. package/dist/nodejs/package/index.cjs +1 -1
  36. package/dist/nodejs/package/index.js +1 -1
  37. package/dist/nodejs/package/package.util.cjs +1 -1
  38. package/dist/nodejs/package/package.util.js +1 -1
  39. package/dist/nodejs/path/index.cjs +1 -1
  40. package/dist/nodejs/path/index.d.cts +1 -0
  41. package/dist/nodejs/path/index.d.ts +1 -0
  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/nodejs/path/path.util.cjs +1 -1
  46. package/dist/nodejs/path/path.util.d.cts +1 -0
  47. package/dist/nodejs/path/path.util.d.ts +1 -0
  48. package/dist/nodejs/path/path.util.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 +2 -2
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e,t,n,r,s,i,o){try{var c=e[i](o);var a=c.value}catch(e){n(e);return}if(c.done){t(a)}else{Promise.resolve(a).then(r,s)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var o=e.apply(t,n);function c(e){s(o,r,i,c,a,"next",e)}function a(e){s(o,r,i,c,a,"throw",e)}c(undefined)})}}function o(e,t,n){t=d(t);return C(e,P()?Reflect.construct(t,n||[],d(e).constructor):t.apply(e,n))}function c(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function u(e,t,n){if(t)a(e.prototype,t);if(n)a(e,n);return e}function l(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function d(e){d=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return d(e)}function f(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)I(e,t)}function E(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function _(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function p(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var i=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){i=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(i)throw c}}return r}function g(){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 m(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){l(e,t,n[t])})}return e}function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function S(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{v(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function y(e,t){if(e==null)return{};var n=O(e,t);var r,s;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(s=0;s<i.length;s++){r=i[s];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;n[r]=e[r]}}return n}function O(e,t){if(e==null)return{};var n={};var r=Object.keys(e);var s,i;for(i=0;i<r.length;i++){s=r[i];if(t.indexOf(s)>=0)continue;n[s]=e[s]}return n}function C(e,t){if(t&&(T(t)==="object"||typeof t==="function")){return t}return r(e)}function I(e,t){I=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return I(e,t)}function R(e,n){return t(e)||p(e,n)||N(e,n)||g()}function A(e){return n(e)||_(e)||N(e)||m()}function T(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function N(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function P(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(P=function(){return!!e})()}function M(e,t){var n,r,s,i={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 a([e,t])}}function a(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(i=0)),i)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:i.label++;return{value:c[1],done:false};case 5:i.label++;r=c[1];c=[0];continue;case 7:c=i.ops.pop();i.trys.pop();continue;default:if(!(s=i.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){i=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){i.label=c[1];break}if(c[0]===6&&i.label<s[1]){i.label=s[1];s=c;break}if(s&&i.label<s[2]){i.label=s[2];i.ops.push(c);break}if(s[2])i.ops.pop();i.trys.pop();continue}c=t.call(e,i)}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 G=Object.create;var b=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var j=function(e,t,n){return t in e?b(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var U=function(e,t){return b(e,"name",{value:t,configurable:!0})};var k=function(e,t){for(var n in t)b(e,n,{get:t[n],enumerable:!0})},q=function(e,t,n,r){var s=true,i=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":T(t))=="object"||typeof t=="function")try{var c=function(){var s=u.value;!w.call(e,s)&&s!==n&&b(e,s,{get:function(){return t[s]},enumerable:!(r=L(t,s))||r.enumerable})};for(var a=D(t)[Symbol.iterator](),u;!(s=(u=a.next()).done);s=true)c()}catch(e){i=true;o=e}finally{try{if(!s&&a.return!=null){a.return()}}finally{if(i){throw o}}}return e};var K=function(e,t,n){return n=e!=null?G(x(e)):{},q(t||!e||!e.__esModule?b(n,"default",{value:e,enumerable:!0}):n,e)},F=function(e){return q(b({},"__esModule",{value:!0}),e)};var H=function(e,t,n){return j(e,(typeof t==="undefined"?"undefined":T(t))!="symbol"?t+"":t,n)};var Y={};k(Y,{BUILD_DIRECTORY:function(){return eV},CHECK_PACKAGE_EMPTY_RESULT:function(){return eS},COMMIT_LINT_CLI:function(){return tn},COMMIT_LINT_PACKAGE_NAME:function(){return tt},CYBERSKILL_CLI:function(){return e3},CYBERSKILL_CLI_PATH:function(){return e5},CYBERSKILL_DIRECTORY:function(){return e4},CYBERSKILL_PACKAGE_NAME:function(){return eB},C_Collection:function(){return nS},C_Db:function(){return n_},C_Document:function(){return ng},C_Model:function(){return nh},ESLINT_CLI:function(){return e6},ESLINT_INSPECT_CLI:function(){return t_},ESLINT_INSPECT_PACKAGE_NAME:function(){return tE},ESLINT_PACKAGE_NAME:function(){return e8},E_CommandType:function(){return eg},E_IssueType:function(){return Q},GIT_CLI:function(){return ta},GIT_COMMIT_EDITMSG:function(){return e1},GIT_HOOK:function(){return e0},GIT_IGNORE:function(){return eX},LINT_STAGED_CLI:function(){return ts},LINT_STAGED_PACKAGE_NAME:function(){return tr},MIGRATE_MONGO_CLI:function(){return th},MIGRATE_MONGO_CONFIG:function(){return e2},MIGRATE_MONGO_PACKAGE_NAME:function(){return tm},MONGO_MIGRATE_OPTIONS:function(){return nl},MongoController:function(){return nx},MongooseController:function(){return nj},NODE_MODULES:function(){return eW},NODE_MODULES_INSPECT_CLI:function(){return tg},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return tp},PACKAGE_JSON:function(){return eJ},PACKAGE_LOCK_JSON:function(){return eQ},PATH:function(){return tv},PLAYWRIGHT_PACKAGE_NAME:function(){return e9},PNPM_CLI:function(){return tu},PNPM_EXEC_CLI:function(){return tl},PNPM_LOCK_YAML:function(){return eZ},Router:function(){return nn.Router},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return td},SIMPLE_GIT_HOOK_CLI:function(){return tf},SIMPLE_GIT_HOOK_JSON:function(){return ez},TSCONFIG_JSON:function(){return e$},TSC_CLI:function(){return to},TSC_PACKAGE_NAME:function(){return ti},TSX_CLI:function(){return tc},VITEST_CLI:function(){return te},VITEST_PACKAGE_NAME:function(){return e7},WORKING_DIRECTORY:function(){return eY},aggregatePaginate:function(){return nI.default},appendFileSync:function(){return eM},checkPackage:function(){return tT},clearAllErrorLists:function(){return tk},command:function(){return tC},copySync:function(){return ej},createApolloServer:function(){return ed},createCors:function(){return na},createExpress:function(){return nu},createGitHooksConfig:function(){return tS},createWSServer:function(){return nq},express:function(){return ni.default},expressMiddleware:function(){return W.expressMiddleware},formatCommand:function(){return tB},getLatestPackageVersion:function(){return tA},getPackage:function(){return tR},getStoredErrorLists:function(){return tU},initGraphQLWS:function(){return nK},installDependencies:function(){return tN},join:function(){return eF},logNodeJS:function(){return el},lstatSync:function(){return eR},mkdirSync:function(){return eT},mongo:function(){return nL},mongoosePaginate:function(){return nR.default},pathExistsSync:function(){return ex},rawCommand:function(){return tH},readFileSync:function(){return eN},readJsonSync:function(){return eL},readdirSync:function(){return eA},removeSync:function(){return ew},resolve:function(){return eK},resolveCommands:function(){return tW},resolveWorkingPath:function(){return eq},runCommand:function(){return tV},setupPackages:function(){return tP},statSync:function(){return eb},storageNodeJS:function(){return tL},throwError:function(){return ea},unlinkSync:function(){return eG},writeFileSync:function(){return eP},writeJsonSync:function(){return eD}});module.exports=F(Y);var B=require("@apollo/server"),W=require("@apollo/server/express4"),V=require("@apollo/server/plugin/drainHttpServer"),J=require("@apollo/server/plugin/landingPage/default");var Q=function(e){return e.Error="error",e.Warning="warning",e}({});var $=K(require("chalk"),1),X=K(require("consola"),1),z=require("graphql");var Z=".cyberskill-storage";var ee=K(require("dotenv"),1),et=require("envalid"),en=K(require("os"),1),er=K(require("path"),1),es=K(require("process"),1);ee.default.config();function ei(){var e={DEBUG:es.default.env.DEBUG||!1,CWD:es.default.env.CWD||es.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:es.default.env.CYBERSKILL_STORAGE_DIRECTORY||er.default.join(en.default.homedir(),Z)};return(0,et.cleanEnv)(e,{DEBUG:(0,et.bool)(),CWD:(0,et.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,et.str)()})}U(ei,"getEnv");var eo={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var ec=ei();function ea(e){var t=e.message,n=e.status,r=n===void 0?eo.INTERNAL_SERVER_ERROR:n,s=e.type,i=s===void 0?"graphql":s;var o;var c=(o=t!==null&&t!==void 0?t:r.MESSAGE)!==null&&o!==void 0?o:"Internal server error";throw i==="graphql"?new z.GraphQLError(c,{extensions:{code:r.CODE}}):new Error(c)}U(ea,"throwError");ec.DEBUG||(X.default.level=4);function eu(e){var t=$.default[e];return typeof t=="function"?t:$.default.green}U(eu,"chalkKeyword");var el={silent:X.default.silent,level:X.default.level,fatal:X.default.fatal,error:X.default.error,warn:X.default.warn,log:X.default.log,info:X.default.info,success:X.default.success,ready:X.default.ready,start:X.default.start,box:X.default.box,debug:X.default.debug,trace:X.default.trace,verbose:X.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){X.default.box($.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,i=e.message;X.default.log("".concat($.default.gray("File:")," ").concat($.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&X.default.log(" ".concat(eu(n)("Rule:")," ").concat(s)),X.default.log(" ".concat(eu(n)("Message:")," ").concat(i))}),X.default.box(eu(n)("".concat(e," : ").concat(t.length))),X.default.log($.default.gray("─".repeat(40)))}};function ed(e){return new B.ApolloServer(h({schema:e.schema,plugins:[e.isDev?(0,J.ApolloServerPluginLandingPageLocalDefault)():(0,J.ApolloServerPluginLandingPageProductionDefault)(),(0,V.ApolloServerPluginDrainHttpServer)({httpServer:e.server})].concat(A(e.drainServer?[{serverWillStart:function t(){return /*#__PURE__*/i(function(){return M(this,function(t){return[2,{drainServer:function t(){return /*#__PURE__*/i(function(){var t;return M(this,function(n){(t=e.drainServer)===null||t===void 0?void 0:t.call(e),el.info("Apollo Server drainServer hook called");return[2]})})()}}]})})()}}]:[]))},e.isDev&&{introspection:!0,includeStacktraceInErrorResponses:!0}))}U(ed,"createApolloServer");var ef=K(require("process"),1),eE=require("yargs/helpers"),e_=K(require("yargs/yargs"),1);var ep={name:"@cyberskill/shared",type:"module",version:"1.107.0",description:"CyberSkill Shared",author:"Stephen Cheng",license:"MIT",homepage:"https://github.com/cyberskill-world/shared#readme",repository:{type:"git",url:"git+https://github.com/cyberskill-world/shared.git"},bugs:{url:"https://github.com/cyberskill-world/shared/issues"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./configs":{types:"./dist/configs/index.d.ts",import:"./dist/configs/index.js",require:"./dist/configs/index.cjs"},"./configs/commitlint":{types:"./dist/configs/commitlint/index.d.ts",import:"./dist/configs/commitlint/index.js",require:"./dist/configs/commitlint/index.cjs"},"./configs/eslint":{types:"./dist/configs/eslint/index.d.ts",import:"./dist/configs/eslint/index.js",require:"./dist/configs/eslint/index.cjs"},"./configs/graphql-codegen":{types:"./dist/configs/graphql-codegen/index.d.ts",import:"./dist/configs/graphql-codegen/index.js",require:"./dist/configs/graphql-codegen/index.cjs"},"./configs/lint-staged":{types:"./dist/configs/lint-staged/index.d.ts",import:"./dist/configs/lint-staged/index.js",require:"./dist/configs/lint-staged/index.cjs"},"./constants":{types:"./dist/constants/index.d.ts",import:"./dist/constants/index.js",require:"./dist/constants/index.cjs"},"./nodejs":{types:"./dist/nodejs/index.d.ts",import:"./dist/nodejs/index.js",require:"./dist/nodejs/index.cjs"},"./nodejs/apollo-server":{types:"./dist/nodejs/apollo-server/index.d.ts",import:"./dist/nodejs/apollo-server/index.js",require:"./dist/nodejs/apollo-server/index.cjs"},"./nodejs/cli":{types:"./dist/nodejs/cli/index.d.ts",import:"./dist/nodejs/cli/index.js",require:"./dist/nodejs/cli/index.cjs"},"./nodejs/command":{types:"./dist/nodejs/command/index.d.ts",import:"./dist/nodejs/command/index.js",require:"./dist/nodejs/command/index.cjs"},"./nodejs/express":{types:"./dist/nodejs/express/index.d.ts",import:"./dist/nodejs/express/index.js",require:"./dist/nodejs/express/index.cjs"},"./nodejs/fs":{types:"./dist/nodejs/fs/index.d.ts",import:"./dist/nodejs/fs/index.js",require:"./dist/nodejs/fs/index.cjs"},"./nodejs/log":{types:"./dist/nodejs/log/index.d.ts",import:"./dist/nodejs/log/index.js",require:"./dist/nodejs/log/index.cjs"},"./nodejs/mongo":{types:"./dist/nodejs/mongo/index.d.ts",import:"./dist/nodejs/mongo/index.js",require:"./dist/nodejs/mongo/index.cjs"},"./nodejs/package":{types:"./dist/nodejs/package/index.d.ts",import:"./dist/nodejs/package/index.js",require:"./dist/nodejs/package/index.cjs"},"./nodejs/path":{types:"./dist/nodejs/path/index.d.ts",import:"./dist/nodejs/path/index.js",require:"./dist/nodejs/path/index.cjs"},"./nodejs/storage":{types:"./dist/nodejs/storage/index.d.ts",import:"./dist/nodejs/storage/index.js",require:"./dist/nodejs/storage/index.cjs"},"./nodejs/ws":{types:"./dist/nodejs/ws/index.d.ts",import:"./dist/nodejs/ws/index.js",require:"./dist/nodejs/ws/index.cjs"},"./react":{types:"./dist/react/index.d.ts",import:"./dist/react/index.js",require:"./dist/react/index.cjs"},"./react/apollo-client":{types:"./dist/react/apollo-client/index.d.ts",import:"./dist/react/apollo-client/index.js",require:"./dist/react/apollo-client/index.cjs"},"./react/apollo-error":{types:"./dist/react/apollo-error/index.d.ts",import:"./dist/react/apollo-error/index.js",require:"./dist/react/apollo-error/index.cjs"},"./react/i18next":{types:"./dist/react/i18next/index.d.ts",import:"./dist/react/i18next/index.js",require:"./dist/react/i18next/index.cjs"},"./react/loading":{types:"./dist/react/loading/index.d.ts",import:"./dist/react/loading/index.js",require:"./dist/react/loading/index.cjs"},"./react/log":{types:"./dist/react/log/index.d.ts",import:"./dist/react/log/index.js",require:"./dist/react/log/index.cjs"},"./react/next-intl":{types:"./dist/react/next-intl/index.d.ts",import:"./dist/react/next-intl/index.js",require:"./dist/react/next-intl/index.cjs"},"./react/storage":{types:"./dist/react/storage/index.d.ts",import:"./dist/react/storage/index.js",require:"./dist/react/storage/index.cjs"},"./react/toast":{types:"./dist/react/toast/index.d.ts",import:"./dist/react/toast/index.js",require:"./dist/react/toast/index.cjs"},"./react/vitest":{types:"./dist/react/vitest/index.d.ts",import:"./dist/react/vitest/index.js",require:"./dist/react/vitest/index.cjs"},"./styles/reset.css":{import:"./dist/styles/reset.css",require:"./dist/styles/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./utils":{types:"./dist/utils/index.d.ts",import:"./dist/utils/index.js",require:"./dist/utils/index.cjs"}},main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",bin:{cyberskill:"./dist/nodejs/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"dotenv -e .env -- tsup --watch",lint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint","lint:fix":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:fix","lint:inspect":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:inspect",reset:"dotenv -e .env -- tsx src/nodejs/cli/index.ts reset",setup:"dotenv -e .env -- tsx src/nodejs/cli/index.ts setup",inspect:"dotenv -e .env -- tsx src/nodejs/cli/index.ts inspect","test:unit":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:unit","test:e2e":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:e2e",commitlint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts commitlint","lint-staged":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint-staged"},dependencies:{"@antfu/eslint-config":"4.12.0","@apollo/client":"3.13.8","@apollo/server":"4.12.0","@eddeee888/gcg-typescript-resolver-files":"0.12.0","@eslint-react/eslint-plugin":"1.48.4","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@microsoft/api-extractor":"7.52.5","@next/eslint-plugin-next":"15.3.1","@swc/core":"1.11.22","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.2",chalk:"5.4.1",classnames:"2.5.1",compression:"1.8.0",consola:"3.4.2",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.0",dotenv:"16.5.0","dotenv-cli":"8.0.0",envalid:"8.0.0","eslint-config-next":"15.3.1","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.20",express:"4.21.2","express-device":"0.4.2","express-session":"1.18.1","fs-extra":"11.3.0",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"25.0.1",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.16.0",mongoose:"8.13.2","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.0","next-intl":"4.0.3","node-fetch":"3.3.2","node-persist":"4.0.4",ora:"8.2.0",playwright:"1.52.0","postcss-modules":"6.0.1",qs:"6.14.0",react:"19.1.0","react-dom":"19.1.0","react-hot-toast":"2.5.2","react-i18next":"15.5.1","react-icons":"5.5.0",sass:"1.87.0",slugify:"1.6.6",tsup:"8.4.0",tsx:"4.19.3",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.3",vitest:"3.1.2","vitest-browser-react":"0.1.1",ws:"8.18.1",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.0","@eslint/config-inspector":"1.0.2","@types/compression":"1.7.5","@types/cors":"2.8.17","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.1","@types/fs-extra":"11.0.4","@types/migrate-mongo":"10.0.5","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.2","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.25.1","lint-staged":"15.5.1","node-modules-inspector":"0.6.6","simple-git-hooks":"2.13.0"}};var eg=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var em=require("child_process"),eh=K(require("process"),1),ev=K(require("util"),1);var eS={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var ey=K(require("node-fetch"),1);var eO=K(require("fs-extra"),1),eC=require("path");var eI=eO.default,eR=eI.lstatSync,eA=eI.readdirSync,eT=eI.mkdirSync,eN=eI.readFileSync,eP=eI.writeFileSync,eM=eI.appendFileSync,eG=eI.unlinkSync,eb=eI.statSync,eL=eO.default.readJsonSync,eD=eO.default.writeJsonSync;function ex(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eO.default.pathExistsSync(e)})}U(ex,"pathExistsSync");function ew(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){ex(e)&&eO.default.removeSync(e)})}U(ew,"removeSync");function ej(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.extensions,s=y(n,["extensions"]);eO.default.copySync(e,t,h({filter:U(function(e){return eb(e).isDirectory()||!r||r.length===0?!0:r.includes((0,eC.extname)(e))},"filter")},s))}U(ej,"copySync");var eU=require("path");var ek=ei();function eq(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eU.resolve).apply(this,[ek.CWD].concat(A(t)))}U(eq,"resolveWorkingPath");function eK(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eU.resolve).apply(this,A(t))}U(eK,"resolve");function eF(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eU.join).apply(this,A(t))}U(eF,"join");var eH=ei(),eY=eH.CWD,eB="@cyberskill/shared",eW="node_modules",eV="dist",eJ="package.json",eQ="package-lock.json",e$="tsconfig.json",eX=".gitignore",ez=".simple-git-hooks.json",eZ="pnpm-lock.yaml",e0=".git/hooks/",e1=".git/COMMIT_EDITMSG",e2=".migrate-mongo.config.js",e4=eF(eY,eW,eB,eV),e3="cyberskill",e5="src/nodejs/cli/index.ts",e8="eslint",e6="eslint",e7="vitest",e9="playwright",te="vitest",tt="@commitlint/cli",tn="commitlint",tr="lint-staged",ts="lint-staged",ti="typescript",to="tsc",tc="tsx",ta="git",tu="pnpm",tl="pnpm exec",td="simple-git-hooks",tf="simple-git-hooks",tE="@eslint/config-inspector",t_="eslint-config-inspector",tp="node-modules-inspector",tg="node-modules-inspector",tm="migrate-mongo",th="./node_modules/migrate-mongo/bin/migrate-mongo",tv={CYBERSKILL_DIRECTORY:e4,WORKING_DIRECTORY:eY,TS_CONFIG:eq(e$),GIT_IGNORE:eq(eX),GIT_HOOK:eq(e0),GIT_COMMIT_MSG:eq(e1),SIMPLE_GIT_HOOKS_JSON:eq(ez),PACKAGE_JSON:eq(eJ),PACKAGE_LOCK_JSON:eq(eQ),PNPM_LOCK_YAML:eq(eZ),NODE_MODULES:eq(eW),MIGRATE_MONGO_CONFIG:eq(e2),LINT_STAGED_CONFIG:eq("".concat(e4,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eq("".concat(e4,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eq("".concat(e4,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eq("".concat(e4,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eq("".concat(e4,"/react/vitest/vitest.e2e.js"))};function tS(e){var t=e.isCurrentProject;return h({"pre-commit":ts,"commit-msg":tn},t&&{"pre-push":tH("".concat(ta," pull"))})}U(tS,"createGitHooksConfig");function ty(e,t,n){return /*#__PURE__*/i(function(){return M(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eg.CLI:return[3,1];case eg.STRING:return[3,3]}return[3,4];case 1:return[4,tP(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),tB(tH("".concat(tl," ").concat(n))))];case 3:return[2,tB(tH(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}U(ty,"buildCommand");function tO(e,t,n){return function(){return /*#__PURE__*/i(function(){return M(this,function(r){return[2,ty(e,t,n)]})})()}}U(tO,"commandFactory");var tC={simpleGitHooks:tO(eg.CLI,td,tf),eslintInspect:tO(eg.CLI,tE,t_),nodeModulesInspect:tO(eg.CLI,tp,tg),eslintCheck:tO(eg.CLI,e8,"".concat(e6," ").concat(tv.WORKING_DIRECTORY)),eslintFix:tO(eg.CLI,e8,"".concat(e6," ").concat(tv.WORKING_DIRECTORY," --fix")),typescriptCheck:tO(eg.CLI,ti,"".concat(to," -p ").concat(tv.TS_CONFIG," --noEmit")),configureGitHook:tO(eg.STRING,"".concat(ta," config core.hooksPath ").concat(tv.GIT_HOOK)),testUnit:tO(eg.CLI,e7,"".concat(te," --config ").concat(tv.UNIT_TEST_CONFIG)),testE2e:tO(eg.CLI,"".concat(e7," ").concat(e9),"".concat(te," --config ").concat(tv.E2E_TEST_CONFIG)),mongoMigrateCreate:U(function(e){return tO(eg.CLI,tm,"".concat(tc," ").concat(th," create ").concat(e," -f ").concat(tv.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tO(eg.CLI,tm,"".concat(tc," ").concat(th," up -f ").concat(tv.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tO(eg.CLI,tm,"".concat(tc," ").concat(th," down -f ").concat(tv.MIGRATE_MONGO_CONFIG)),commitLint:tO(eg.CLI,tt,"".concat(tn," --edit ").concat(tv.GIT_COMMIT_MSG," --config ").concat(tv.COMMITLINT_CONFIG)),lintStaged:tO(eg.CLI,tr,"".concat(ts," --config ").concat(tv.LINT_STAGED_CONFIG)),stageBuildDirectory:tO(eg.STRING,"".concat(ta," add ").concat(eV)),build:tO(eg.STRING,"".concat(tu," run build")),pnpmInstallStandard:tO(eg.STRING,"".concat(tu," install")),pnpmInstallLegacy:tO(eg.STRING,"".concat(tu," install --legacy-peer-deps")),pnpmInstallForce:tO(eg.STRING,"".concat(tu," install --force"))};var tI=ei();function tR(e){var t=eF(tI.CWD,eJ);if(!ex(t))return!1;try{var n=eL(t),r=n.name,s=n.dependencies,i=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,a=r===e,u=e in i,l=e in c;return a||u||l?{path:t,file:n,isCurrentProject:a,isDepend:u,isDevDepend:l}:!1}catch(e){return el.warn("Failed to read package.json: ".concat(e.message)),!1}}U(tR,"getPackage");function tA(e){return /*#__PURE__*/i(function(){var t,n,r,s;return M(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,(0,ey.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=i.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=i.sent(),r=n.version;return[2,r];case 3:s=i.sent();throw el.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}U(tA,"getLatestPackageVersion");function tT(e,t){return /*#__PURE__*/i(function(){var n,r,s,i,o,c,a,u,l,d,f,E,_,p,g,m,v,S,y,O,C;return M(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=tR(e);if(!n)return[2,h({},eS)];a=n.path,u=n.file,l=n.isCurrentProject,d=n.isDepend,f=n.isDevDepend,E=(r=u.dependencies)!==null&&r!==void 0?r:{},_=(s=u.devDependencies)!==null&&s!==void 0?s:{},p=l?(i=u.version)!==null&&i!==void 0?i:"0.0.0":d?(o=E[e])!==null&&o!==void 0?o:"0.0.0":f?(c=_[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];v=p;return[3,3];case 1:return[4,tA(e)];case 2:v=I.sent();I.label=3;case 3:g=v,m=l||p===g;if(!m&&(t===null||t===void 0?void 0:t.update)){;y=d?"dependencies":f?"devDependencies":null;y&&((S=u[y])===null||S===void 0?void 0:S[e])!==g&&(u[y]=(O=u[y])!==null&&O!==void 0?O:{},u[y][e]=g,eD(a,u),el.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:l,installedPath:a,file:u,isUpToDate:m}];case 4:C=I.sent();return[2,(el.error('Error checking package "'.concat(e,'": ').concat(C.message)),h({},eS))];case 5:return[2]}})})()}U(tT,"checkPackage");function tN(){return /*#__PURE__*/i(function(){var e,t,n,r,s,i,o,c,a,u,l,d;return M(this,function(f){switch(f.label){case 0:e=[{command:U(function(){return tC.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:U(function(){return tC.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:U(function(){return tC.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=(i=s.next()).done))return[3,8];o=i.value,c=o.command,a=o.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,tV("".concat(a," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();el.warn("Installation attempt failed: ".concat(a)),el.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}U(tN,"installDependencies");function tP(e,t){return /*#__PURE__*/i(function(){var n,r,s,i,o,c,a,u,l,d,f;return M(this,function(E){switch(E.label){case 0:if(!ex(tv.PACKAGE_JSON)){el.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=A(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return tT(e,h({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,tN()];case 3:r=E.sent();E.label=4;case 4:r;i=true,o=false,c=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);a=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();E.label=6;case 6:if(!!(i=(u=a.next()).done))return[3,9];l=u.value;return[4,l()];case 7:E.sent();E.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:d=E.sent();o=true;c=d;return[3,12];case 11:try{if(!i&&a.return!=null){a.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:f=E.sent();throw el.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}U(tP,"setupPackages");var tM=K(require("node-persist"),1);var tG=ei();function tb(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=tM.default.defaultInstance;if(e)return[3,2];return[4,tM.default.init({dir:tG.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}U(tb,"initNodePersist");var tL={get:function e(e){return /*#__PURE__*/i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tb()];case 1:r.sent();return[4,tM.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(el.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/i(function(){var n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tb()];case 1:r.sent();return[4,tM.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();el.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/i(function(){var t;return M(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tb()];case 1:n.sent();return[4,tM.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();el.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/i(function(){var e,t;return M(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tb()];case 1:n.sent();return[4,tM.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(el.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(el.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/i(function(){return M(this,function(t){try{return[2,"".concat(tG.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(el.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tD=ei(),tx=ev.promisify(em.exec);function tw(e){return"error_list:".concat(e)}U(tw,"getErrorListKey");function tj(e){return /*#__PURE__*/i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tw(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,tL.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:return[4,tL.getLogLink(n)];case 1:e=t.sent();e&&el.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();el.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}U(tj,"saveErrorListToStorage");function tU(){return /*#__PURE__*/i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tL.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return /*#__PURE__*/i(function(){var t;return M(this,function(n){switch(n.label){case 0:return[4,tL.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(el.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})})()}U(tU,"getStoredErrorLists");function tk(){return /*#__PURE__*/i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tL.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return tL.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();el.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})})()}U(tk,"clearAllErrorLists");function tq(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,i=/^(.+?)\((\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,a,u,l,d;var f=s.exec(e)||[],E=i.exec(e)||[],_=o.exec(e)||[];var p,g,m,h,v,S;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===Q.Error?Q.Error:Q.Warning,message:(p=f===null||f===void 0?void 0:(c=f[4])===null||c===void 0?void 0:c.trim())!==null&&p!==void 0?p:"",rule:(g=f===null||f===void 0?void 0:(a=f[5])===null||a===void 0?void 0:a.trim())!==null&&g!==void 0?g:""}):E.length?t.push({file:(m=E===null||E===void 0?void 0:E[1])!==null&&m!==void 0?m:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===Q.Error?Q.Error:Q.Warning,message:(h=E===null||E===void 0?void 0:(u=E[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):_.length?t.push({file:"commitlint",type:Q.Error,message:(v=_===null||_===void 0?void 0:(l=_[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(S=_===null||_===void 0?void 0:(d=_[2])===null||d===void 0?void 0:d.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&tj(t),tD.DEBUG&&n.length&&(el.warn("Unmatched lines:"),n.forEach(function(e){return el.info(" ".concat(e))}))}U(tq,"parseTextErrors");function tK(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,i=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?Q.Error:Q.Warning,file:t,position:"".concat(s,":").concat(i),rule:o,message:c})})}),n.length&&tj(n)}catch(t){tq(e)}}U(tK,"parseCommandOutput");function tF(e){return /*#__PURE__*/i(function(e){var t,n,r,s,i,o,c,a,u;var l=arguments;return M(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tK;n=new AbortController;eh.default.on("SIGINT",function(){el.warn("Process interrupted. Terminating..."),n.abort(),eh.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tx(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),s=r.stdout,i=r.stderr;[s,i].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();c=o.stdout,a=o.stderr,u=o.message;[c,a].forEach(function(e){return e&&t(e)}),!a&&!c&&el.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}U(tF,"executeCommand");function tH(e){return{raw:!0,cmd:e}}U(tH,"rawCommand");function tY(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tl," ").concat(eB," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tl," ").concat(tc," ").concat(e5," ").concat(e):"".concat(tl," ").concat(e3," ").concat(e)}U(tY,"formatCLI");function tB(e,t){return typeof e=="function"?tY(e(t),t):(typeof e==="undefined"?"undefined":T(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tY(e,t):e}U(tB,"formatCommand");function tW(e){return /*#__PURE__*/i(function(e){var t,n,r,s,i,o,c;var a=arguments;return M(this,function(u){switch(u.label){case 0:t=a.length>1&&a[1]!==void 0?a[1]:{};r=(n=t===null||t===void 0?void 0:t.isRemote)!==null&&n!==void 0?n:!1;if(!r)return[3,1];c=!1;return[3,3];case 1:return[4,tT(eB)];case 2:c=u.sent().isCurrentProject;u.label=3;case 3:s=c,i={isRemote:r,isCurrentProject:s},o=typeof e=="function"?e(i):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var t=R(e,2),n=t[0],r=t[1];return[n,tB(r,i)]}))]}})}).apply(this,arguments)}U(tW,"resolveCommands");function tV(e,t){return /*#__PURE__*/i(function(){var n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);el.start("".concat(e)),tD.DEBUG&&el.info("→ ".concat(t));return[4,tF(t)];case 1:r.sent(),el.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw el.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}U(tV,"runCommand");function tJ(){return /*#__PURE__*/i(function(){var e,t;return M(this,function(n){switch(n.label){case 0:if(!ex(tv.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,tC.typescriptCheck()];case 1:return[4,tV.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=el.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}U(tJ,"checkTypescript");function tQ(){return /*#__PURE__*/i(function(){var e,t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,tC.eslintFix()];case 1:return[4,tV.apply(void 0,n.concat([i.sent()]))];case 2:t=i.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,tC.eslintCheck()];case 4:return[4,tV.apply(void 0,r.concat([i.sent()]))];case 5:t=i.sent();i.label=6;case 6:t;return[2]}})}).apply(this,arguments)}U(tQ,"checkEslint");function t$(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";el.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}U(t$,"printIssues");function tX(){return /*#__PURE__*/i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:return[4,tU()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===Q.Error}),n=e.filter(function(e){return e.type===Q.Warning});!t.length&&!n.length?el.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(t$("Warnings",n),t$("Errors",t),(t.length>0||n.length>0)&&ef.default.exit(1));return[2]}})})()}U(tX,"showCheckResult");function tz(){return /*#__PURE__*/i(function(){var e,t,n,r,s,i;return M(this,function(o){switch(o.label){case 0:return[4,tk()];case 1:o.sent();return[4,tT(eB)];case 2:e=o.sent(),t=e.isCurrentProject;if(!t)return[3,9];o.label=3;case 3:o.trys.push([3,8,,9]);n=["Building package: ".concat(eB)];return[4,tC.build()];case 4:return[4,tV.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,tC.stageBuildDirectory()];case 6:return[4,tV.apply(void 0,r.concat([o.sent()]))];case 7:o.sent();return[3,9];case 8:s=o.sent();throw el.error("Error building and staging ".concat(eB,": ").concat(s.message)),s;case 9:i=["Executing lint-staged"];return[4,tC.lintStaged()];case 10:return[4,tV.apply(void 0,i.concat([o.sent()]))];case 11:o.sent(),tX();return[2]}})})()}U(tz,"lintStaged");function tZ(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,tC.eslintInspect()];case 1:return[4,tV.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(tZ,"inspectLint");function t0(){return /*#__PURE__*/i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tk()];case 1:e.sent();return[4,Promise.all([tJ(),tQ()])];case 2:e.sent(),tX();return[2]}})})()}U(t0,"lintCheck");function t1(){return /*#__PURE__*/i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tk()];case 1:e.sent();return[4,Promise.all([tJ(),tQ(!0)])];case 2:e.sent(),tX();return[2]}})})()}U(t1,"lintFix");function t2(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:return[4,tk()];case 1:t.sent();e=["Validating commit message"];return[4,tC.commitLint()];case 2:return[4,tV.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tX();return[2]}})})()}U(t2,"commitLint");function t4(){return /*#__PURE__*/i(function(){var e,t,n,r;return M(this,function(s){switch(s.label){case 0:e=["Configuring Git hooks"];return[4,tC.configureGitHook()];case 1:return[4,tV.apply(void 0,e.concat([s.sent()]))];case 2:s.sent(),ew(tv.GIT_HOOK);return[4,tW(tS)];case 3:t=s.sent();eD(tv.SIMPLE_GIT_HOOKS_JSON,t);n="\n".concat(ez,"\n");ex(tv.GIT_IGNORE)?eN(tv.GIT_IGNORE,"utf-8").split("\n").includes(ez)||eM(tv.GIT_IGNORE,n,"utf-8"):eP(tv.GIT_IGNORE,n,"utf-8");r=["Setting up simple-git-hooks"];return[4,tC.simpleGitHooks()];case 4:return[4,tV.apply(void 0,r.concat([s.sent()]))];case 5:s.sent();return[2]}})})()}U(t4,"setupGitHook");function t3(){return /*#__PURE__*/i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tP([eB],{update:!0,postInstallActions:[t4]})];case 1:e.sent();return[2]}})})()}U(t3,"setup");function t5(){return /*#__PURE__*/i(function(){return M(this,function(e){switch(e.label){case 0:ew(tv.NODE_MODULES,tv.PNPM_LOCK_YAML);return[4,tN()];case 1:e.sent();return[4,t4()];case 2:e.sent();return[2]}})})()}U(t5,"reset");function t8(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,tC.nodeModulesInspect()];case 1:return[4,tV.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(t8,"inspect");function t6(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,tC.testUnit()];case 1:return[4,tV.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(t6,"testUnit");function t7(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,tC.testE2e()];case 1:return[4,tV.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(t7,"testE2E");function t9(e){return /*#__PURE__*/i(function(){var t;return M(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,tC.mongoMigrateCreate(e)];case 1:return[4,tV.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}U(t9,"mongoMigrateCreate");function ne(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,tC.mongoMigrateUp()];case 1:return[4,tV.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(ne,"mongoMigrateUp");function nt(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,tC.mongoMigrateDown()];case 1:return[4,tV.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(nt,"mongoMigrateDown");(function(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,e_.default)((0,eE.hideBin)(ef.default.argv)).scriptName(e3).usage("$0 <command> [options]").command("lint","Check code for linting issues",t0).command("lint:fix","Fix linting issues automatically",t1).command("lint:inspect","View active ESLint configuration",tZ).command("lint-staged","Run lint checks on staged files",tz).command("commitlint","Validate commit message format",t2).command("setup","Initialize project setup and dependencies",t3).command("reset","Reset the project and reinstall dependencies",t5).command("inspect","Analyze installed project dependencies",t8).command("test:unit","Run unit test suite",t6).command("test:e2e","Run end-to-end test suite",t7).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},function(e){return /*#__PURE__*/i(function(){return M(this,function(t){switch(t.label){case 0:if(!e.name){el.error("Migration name is required.");return[2]}return[4,t9(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",ne).command("mongo:migrate:down","Rollback last MongoDB migration",nt).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(ep.version).epilog('\uD83D\uDCA1 Tip: Use "--help" with any command to see options\n').parse()];case 1:t.sent();return[3,3];case 2:e=t.sent();el.error("Fatal: ".concat(e.message)),ef.default.exit(1);return[3,3];case 3:return[2]}})})()})();var nn=require("express");var nr=K(require("compression"),1),ns=K(require("cors"),1),ni=K(require("express"),1),no=K(require("express-device"),1),nc=K(require("express-session"),1);function na(e){return(0,ns.default)({origin:U(function(t,n){var r;e.isDev||((r=e.whiteList)===null||r===void 0?void 0:r.includes(t!==null&&t!==void 0?t:""))?n(null,!0):n(null,!1)},"origin"),credentials:!0})}U(na,"createCors");function nu(e){var t=(0,ni.default)();return t.set("trust proxy",1),t.use(ni.default.urlencoded({extended:!0})),t.use((0,nr.default)()),t.use(no.default.capture()),e.staticFolder&&t.use(ni.default.static(e.staticFolder)),e.sessionOptions&&t.use((0,nc.default)(e.sessionOptions)),t}U(nu,"createExpress");var nl="MONGO_MIGRATE_OPTIONS";var nd=require("mongodb"),nf=require("mongoose");var nE=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nd.Db);U(nE,"C_Db");var n_=nE,np=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nf.Document);U(np,"C_Document");var ng=np,nm=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nf.Model);U(nm,"C_Model");var nh=nm,nv=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nd.Collection);U(nv,"C_Collection");var nS=nv;var ny=require("date-fns"),nO=K(require("migrate-mongo"),1),nC=require("mongoose"),nI=K(require("mongoose-aggregate-paginate-v2"),1),nR=K(require("mongoose-paginate-v2"),1),nA=require("uuid");var nT=K(require("crypto-js"),1),nN=K(require("slugify"),1);var nP=nN.default.default||nN.default;function nM(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return nP(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))}U(nM,"generateSlug");function nG(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return nT.default.SHA256(e).toString(nT.default.enc.Hex).slice(0,t)}U(nG,"generateShortId");var nb={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":T(e))=="object"?E(e,Date)?!1:E(e,Map)||E(e,Set)?e.size===0:E(e,WeakMap)||E(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};var nL={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,ny.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"?nL.getDateTime():new Date;return{id:(0,nA.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:nA.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,i=e.standalone,o=i===void 0?!1:i;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(nL.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,i=s===void 0?!1:s,o=e.aggregate,c=o===void 0?!1:o,a=e.virtuals,u=a===void 0?[]:a,l=e.middlewares,d=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=nL.createSchema({mongoose:t,schema:r,virtuals:u});return nL.applyPlugins(f,[i&&nR.default,c&&nI.default]),nL.applyMiddlewares(f,d),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return S(h({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/i(function(){return M(this,function(t){return[2,!nb.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/i(function(){var n;return M(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return l({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/i(function(){return M(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!E(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:S(h({},nO.default),{setConfig:U(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eP(tv.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e2,"\n");ex(tv.GIT_IGNORE)?eN(tv.GIT_IGNORE,"utf-8").split("\n").includes(e2)||eM(tv.GIT_IGNORE,n,"utf-8"):eP(tv.GIT_IGNORE,n,"utf-8")},"setConfig")})},nD=/*#__PURE__*/function(){function e(t,n){c(this,e);H(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=h({},nL.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__*/i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return h({},nL.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__*/i(function(){var t,n;return M(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__*/i(function(){var e,t,n;var r=arguments;return M(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__*/i(function(){var e,t,n;var r=arguments;return M(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__*/i(function(){var n,r;return M(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__*/i(function(){var n,r;return M(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__*/i(function(){var t,n;return M(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__*/i(function(){var t,n;return M(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}();U(nD,"MongoController");var nx=nD,nw=/*#__PURE__*/function(){function e(t){c(this,e);H(this,"model");this.model=t}u(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/i(function(){var e,t,n,r,s,i,o;var c=arguments;return M(this,function(a){switch(a.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;a.label=1;case 1:a.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:i=a.sent();return[2,i?{success:!0,result:i}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:eo.NOT_FOUND.CODE}];case 3:o=a.sent();return[2,{success:!1,message:o.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/i(function(){var e,t,n,r,s,i,o;var c=arguments;return M(this,function(a){switch(a.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;a.label=1;case 1:a.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);i={success:!0};return[4,s.exec()];case 2:return[2,(i.result=a.sent(),i)];case 3:o=a.sent();return[2,{success:!1,message:o.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=i.sent(),n)];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/i(function(e){var t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=i.sent(),n)];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/i(function(){var e,t,n;var r=arguments;return M(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/i(function(e){var t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=i.sent().map(function(e){return E(e,nC.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r,s;var i=arguments;return M(this,function(o){switch(o.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:{},t=i.length>1&&i[1]!==void 0?i[1]:{},n=i.length>2&&i[2]!==void 0?i[2]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,h({new:!0},n)).exec()];case 2:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:eo.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r,s;var i=arguments;return M(this,function(o){switch(o.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:{},t=i.length>1&&i[1]!==void 0?i[1]:{},n=i.length>2&&i[2]!==void 0?i[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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=i.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:eo.NOT_FOUND.CODE}];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=i.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:eo.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/i(function(){var n,r,s,i;return M(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=nG(e,r+t);i=!n.has(s);if(!i)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:i=!o.sent();o.label=3;case 3:if(i)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:eo.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t){return /*#__PURE__*/i(function(e,t){var n,r,s,o,c,a,u,l,d,f,E,_,p;var g=arguments;return M(this,function(m){switch(m.label){case 0:n=this;r=g.length>2&&g[2]!==void 0?g[2]:{};m.label=1;case 1:m.trys.push([1,9,,10]);s=t[e],o=U(function(e){return /*#__PURE__*/i(function(){var n,s,i;return M(this,function(o){switch(o.label){case 0:return[4,this.model.findOne(nL.createSlugQuery(e,r,t.id))];case 1:n=o.sent();if(!n)return[2,e];s=1;o.label=2;case 2:i="".concat(e,"-").concat(s);return[4,this.model.findOne(nL.createSlugQuery(i,r,t.id))];case 3:n=o.sent(),s++;o.label=4;case 4:if(n)return[3,2];o.label=5;case 5:return[2,i]}})}).call(n)},"createUniqueSlug");if(!((typeof s==="undefined"?"undefined":T(s))=="object"))return[3,6];c={};a=[];for(u in s)a.push(u);l=0;m.label=2;case 2:if(!(l<a.length))return[3,5];d=a[l];f=nM(s[d]);return[4,o(f)];case 3:c[d]=m.sent();m.label=4;case 4:l++;return[3,2];case 5:return[2,{success:!0,result:c}];case 6:E=nM(s);_={success:!0};return[4,o(E)];case 7:return[2,(_.result=m.sent(),_)];case 8:return[3,10];case 9:p=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(p.message),code:eo.INTERNAL_SERVER_ERROR.CODE}];case 10:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();U(nw,"MongooseController");var nj=nw;var nU=require("graphql-ws/use/ws"),nk=require("ws");function nq(e){return new nk.WebSocketServer({server:e.server,path:e.path})}U(nq,"createWSServer");function nK(e){return(0,nU.useServer)({schema:e.schema},e.server)}U(nK,"initGraphQLWS");0&&(module.exports={BUILD_DIRECTORY:BUILD_DIRECTORY,CHECK_PACKAGE_EMPTY_RESULT:CHECK_PACKAGE_EMPTY_RESULT,COMMIT_LINT_CLI:COMMIT_LINT_CLI,COMMIT_LINT_PACKAGE_NAME:COMMIT_LINT_PACKAGE_NAME,CYBERSKILL_CLI:CYBERSKILL_CLI,CYBERSKILL_CLI_PATH:CYBERSKILL_CLI_PATH,CYBERSKILL_DIRECTORY:CYBERSKILL_DIRECTORY,CYBERSKILL_PACKAGE_NAME:CYBERSKILL_PACKAGE_NAME,C_Collection:C_Collection,C_Db:C_Db,C_Document:C_Document,C_Model:C_Model,ESLINT_CLI:ESLINT_CLI,ESLINT_INSPECT_CLI:ESLINT_INSPECT_CLI,ESLINT_INSPECT_PACKAGE_NAME:ESLINT_INSPECT_PACKAGE_NAME,ESLINT_PACKAGE_NAME:ESLINT_PACKAGE_NAME,E_CommandType:E_CommandType,E_IssueType:E_IssueType,GIT_CLI:GIT_CLI,GIT_COMMIT_EDITMSG:GIT_COMMIT_EDITMSG,GIT_HOOK:GIT_HOOK,GIT_IGNORE:GIT_IGNORE,LINT_STAGED_CLI:LINT_STAGED_CLI,LINT_STAGED_PACKAGE_NAME:LINT_STAGED_PACKAGE_NAME,MIGRATE_MONGO_CLI:MIGRATE_MONGO_CLI,MIGRATE_MONGO_CONFIG:MIGRATE_MONGO_CONFIG,MIGRATE_MONGO_PACKAGE_NAME:MIGRATE_MONGO_PACKAGE_NAME,MONGO_MIGRATE_OPTIONS:MONGO_MIGRATE_OPTIONS,MongoController:MongoController,MongooseController:MongooseController,NODE_MODULES:NODE_MODULES,NODE_MODULES_INSPECT_CLI:NODE_MODULES_INSPECT_CLI,NODE_MODULES_INSPECT_PACKAGE_NAME:NODE_MODULES_INSPECT_PACKAGE_NAME,PACKAGE_JSON:PACKAGE_JSON,PACKAGE_LOCK_JSON:PACKAGE_LOCK_JSON,PATH:PATH,PLAYWRIGHT_PACKAGE_NAME:PLAYWRIGHT_PACKAGE_NAME,PNPM_CLI:PNPM_CLI,PNPM_EXEC_CLI:PNPM_EXEC_CLI,PNPM_LOCK_YAML:PNPM_LOCK_YAML,Router:Router,SIMPLE_GIT_HOOKS_PACKAGE_NAME:SIMPLE_GIT_HOOKS_PACKAGE_NAME,SIMPLE_GIT_HOOK_CLI:SIMPLE_GIT_HOOK_CLI,SIMPLE_GIT_HOOK_JSON:SIMPLE_GIT_HOOK_JSON,TSCONFIG_JSON:TSCONFIG_JSON,TSC_CLI:TSC_CLI,TSC_PACKAGE_NAME:TSC_PACKAGE_NAME,TSX_CLI:TSX_CLI,VITEST_CLI:VITEST_CLI,VITEST_PACKAGE_NAME:VITEST_PACKAGE_NAME,WORKING_DIRECTORY:WORKING_DIRECTORY,aggregatePaginate:aggregatePaginate,appendFileSync:appendFileSync,checkPackage:checkPackage,clearAllErrorLists:clearAllErrorLists,command:command,copySync:copySync,createApolloServer:createApolloServer,createCors:createCors,createExpress:createExpress,createGitHooksConfig:createGitHooksConfig,createWSServer:createWSServer,express:express,expressMiddleware:expressMiddleware,formatCommand:formatCommand,getLatestPackageVersion:getLatestPackageVersion,getPackage:getPackage,getStoredErrorLists:getStoredErrorLists,initGraphQLWS:initGraphQLWS,installDependencies:installDependencies,join:join,logNodeJS:logNodeJS,lstatSync:lstatSync,mkdirSync:mkdirSync,mongo:mongo,mongoosePaginate:mongoosePaginate,pathExistsSync:pathExistsSync,rawCommand:rawCommand,readFileSync:readFileSync,readJsonSync:readJsonSync,readdirSync:readdirSync,removeSync:removeSync,resolve:resolve,resolveCommands:resolveCommands,resolveWorkingPath:resolveWorkingPath,runCommand:runCommand,setupPackages:setupPackages,statSync:statSync,storageNodeJS:storageNodeJS,throwError:throwError,unlinkSync:unlinkSync,writeFileSync:writeFileSync,writeJsonSync:writeJsonSync});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e,t,n,r,s,i,o){try{var c=e[i](o);var a=c.value}catch(e){n(e);return}if(c.done){t(a)}else{Promise.resolve(a).then(r,s)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var o=e.apply(t,n);function c(e){s(o,r,i,c,a,"next",e)}function a(e){s(o,r,i,c,a,"throw",e)}c(undefined)})}}function o(e,t,n){t=d(t);return C(e,P()?Reflect.construct(t,n||[],d(e).constructor):t.apply(e,n))}function c(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function u(e,t,n){if(t)a(e.prototype,t);if(n)a(e,n);return e}function l(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function d(e){d=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return d(e)}function f(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)I(e,t)}function E(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function _(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function p(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var i=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){i=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(i)throw c}}return r}function g(){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 m(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function h(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){l(e,t,n[t])})}return e}function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function S(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{v(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function y(e,t){if(e==null)return{};var n=O(e,t);var r,s;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(s=0;s<i.length;s++){r=i[s];if(t.indexOf(r)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;n[r]=e[r]}}return n}function O(e,t){if(e==null)return{};var n={};var r=Object.keys(e);var s,i;for(i=0;i<r.length;i++){s=r[i];if(t.indexOf(s)>=0)continue;n[s]=e[s]}return n}function C(e,t){if(t&&(T(t)==="object"||typeof t==="function")){return t}return r(e)}function I(e,t){I=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return I(e,t)}function R(e,n){return t(e)||p(e,n)||N(e,n)||g()}function A(e){return n(e)||_(e)||N(e)||m()}function T(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function N(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function P(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(P=function(){return!!e})()}function M(e,t){var n,r,s,i={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 a([e,t])}}function a(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(i=0)),i)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:i.label++;return{value:c[1],done:false};case 5:i.label++;r=c[1];c=[0];continue;case 7:c=i.ops.pop();i.trys.pop();continue;default:if(!(s=i.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){i=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){i.label=c[1];break}if(c[0]===6&&i.label<s[1]){i.label=s[1];s=c;break}if(s&&i.label<s[2]){i.label=s[2];i.ops.push(c);break}if(s[2])i.ops.pop();i.trys.pop();continue}c=t.call(e,i)}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 G=Object.create;var b=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var j=function(e,t,n){return t in e?b(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var U=function(e,t){return b(e,"name",{value:t,configurable:!0})};var k=function(e,t){for(var n in t)b(e,n,{get:t[n],enumerable:!0})},q=function(e,t,n,r){var s=true,i=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":T(t))=="object"||typeof t=="function")try{var c=function(){var s=u.value;!w.call(e,s)&&s!==n&&b(e,s,{get:function(){return t[s]},enumerable:!(r=L(t,s))||r.enumerable})};for(var a=D(t)[Symbol.iterator](),u;!(s=(u=a.next()).done);s=true)c()}catch(e){i=true;o=e}finally{try{if(!s&&a.return!=null){a.return()}}finally{if(i){throw o}}}return e};var K=function(e,t,n){return n=e!=null?G(x(e)):{},q(t||!e||!e.__esModule?b(n,"default",{value:e,enumerable:!0}):n,e)},F=function(e){return q(b({},"__esModule",{value:!0}),e)};var H=function(e,t,n){return j(e,(typeof t==="undefined"?"undefined":T(t))!="symbol"?t+"":t,n)};var Y={};k(Y,{BUILD_DIRECTORY:function(){return eQ},CHECK_PACKAGE_EMPTY_RESULT:function(){return eS},COMMIT_LINT_CLI:function(){return ts},COMMIT_LINT_PACKAGE_NAME:function(){return tr},CYBERSKILL_CLI:function(){return e8},CYBERSKILL_CLI_PATH:function(){return e6},CYBERSKILL_DIRECTORY:function(){return e5},CYBERSKILL_PACKAGE_NAME:function(){return eV},C_Collection:function(){return nO},C_Db:function(){return ng},C_Document:function(){return nh},C_Model:function(){return nS},ESLINT_CLI:function(){return e9},ESLINT_INSPECT_CLI:function(){return tg},ESLINT_INSPECT_PACKAGE_NAME:function(){return tp},ESLINT_PACKAGE_NAME:function(){return e7},E_CommandType:function(){return eg},E_IssueType:function(){return Q},GIT_CLI:function(){return tl},GIT_COMMIT_EDITMSG:function(){return e4},GIT_HOOK:function(){return e2},GIT_IGNORE:function(){return eZ},LINT_STAGED_CLI:function(){return to},LINT_STAGED_PACKAGE_NAME:function(){return ti},MIGRATE_MONGO_CLI:function(){return tS},MIGRATE_MONGO_CONFIG:function(){return e3},MIGRATE_MONGO_PACKAGE_NAME:function(){return tv},MONGO_MIGRATE_OPTIONS:function(){return nf},MongoController:function(){return nj},MongooseController:function(){return nk},NODE_MODULES:function(){return eJ},NODE_MODULES_INSPECT_CLI:function(){return th},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return tm},PACKAGE_JSON:function(){return e$},PACKAGE_LOCK_JSON:function(){return eX},PATH:function(){return ty},PLAYWRIGHT_PACKAGE_NAME:function(){return tt},PNPM_CLI:function(){return td},PNPM_EXEC_CLI:function(){return tf},PNPM_LOCK_YAML:function(){return e1},Router:function(){return ns.Router},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return tE},SIMPLE_GIT_HOOK_CLI:function(){return t_},SIMPLE_GIT_HOOK_JSON:function(){return e0},TSCONFIG_JSON:function(){return ez},TSC_CLI:function(){return ta},TSC_PACKAGE_NAME:function(){return tc},TSX_CLI:function(){return tu},VITEST_CLI:function(){return tn},VITEST_PACKAGE_NAME:function(){return te},WORKING_DIRECTORY:function(){return eW},aggregatePaginate:function(){return nA.default},appendFileSync:function(){return eG},checkPackage:function(){return tP},clearAllErrorLists:function(){return tK},command:function(){return tR},copySync:function(){return eU},createApolloServer:function(){return ed},createCors:function(){return nl},createExpress:function(){return nd},createGitHooksConfig:function(){return tO},createWSServer:function(){return nF},express:function(){return nc.default},expressMiddleware:function(){return W.expressMiddleware},formatCommand:function(){return tV},fs:function(){return eI},getLatestPackageVersion:function(){return tN},getPackage:function(){return tT},getStoredErrorLists:function(){return tq},initGraphQLWS:function(){return nH},installDependencies:function(){return tM},join:function(){return eY},logNodeJS:function(){return el},lstatSync:function(){return eA},mkdirSync:function(){return eN},mongo:function(){return nx},mongoosePaginate:function(){return nT.default},path:function(){return eK},pathExistsSync:function(){return ew},rawCommand:function(){return tB},readFileSync:function(){return eP},readJsonSync:function(){return eD},readdirSync:function(){return eT},removeSync:function(){return ej},resolve:function(){return eH},resolveCommands:function(){return tJ},resolveWorkingPath:function(){return eF},runCommand:function(){return tQ},setupPackages:function(){return tG},statSync:function(){return eL},storageNodeJS:function(){return tx},throwError:function(){return ea},unlinkSync:function(){return eb},writeFileSync:function(){return eM},writeJsonSync:function(){return ex}});module.exports=F(Y);var B=require("@apollo/server"),W=require("@apollo/server/express4"),V=require("@apollo/server/plugin/drainHttpServer"),J=require("@apollo/server/plugin/landingPage/default");var Q=function(e){return e.Error="error",e.Warning="warning",e}({});var $=K(require("chalk"),1),X=K(require("consola"),1),z=require("graphql");var Z=".cyberskill-storage";var ee=K(require("dotenv"),1),et=require("envalid"),en=K(require("os"),1),er=K(require("path"),1),es=K(require("process"),1);ee.default.config();function ei(){var e={DEBUG:es.default.env.DEBUG||!1,CWD:es.default.env.CWD||es.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:es.default.env.CYBERSKILL_STORAGE_DIRECTORY||er.default.join(en.default.homedir(),Z)};return(0,et.cleanEnv)(e,{DEBUG:(0,et.bool)(),CWD:(0,et.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,et.str)()})}U(ei,"getEnv");var eo={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var ec=ei();function ea(e){var t=e.message,n=e.status,r=n===void 0?eo.INTERNAL_SERVER_ERROR:n,s=e.type,i=s===void 0?"graphql":s;var o;var c=(o=t!==null&&t!==void 0?t:r.MESSAGE)!==null&&o!==void 0?o:"Internal server error";throw i==="graphql"?new z.GraphQLError(c,{extensions:{code:r.CODE}}):new Error(c)}U(ea,"throwError");ec.DEBUG||(X.default.level=4);function eu(e){var t=$.default[e];return typeof t=="function"?t:$.default.green}U(eu,"chalkKeyword");var el={silent:X.default.silent,level:X.default.level,fatal:X.default.fatal,error:X.default.error,warn:X.default.warn,log:X.default.log,info:X.default.info,success:X.default.success,ready:X.default.ready,start:X.default.start,box:X.default.box,debug:X.default.debug,trace:X.default.trace,verbose:X.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){X.default.box($.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,i=e.message;X.default.log("".concat($.default.gray("File:")," ").concat($.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&X.default.log(" ".concat(eu(n)("Rule:")," ").concat(s)),X.default.log(" ".concat(eu(n)("Message:")," ").concat(i))}),X.default.box(eu(n)("".concat(e," : ").concat(t.length))),X.default.log($.default.gray("─".repeat(40)))}};function ed(e){return new B.ApolloServer(h({schema:e.schema,plugins:[e.isDev?(0,J.ApolloServerPluginLandingPageLocalDefault)():(0,J.ApolloServerPluginLandingPageProductionDefault)(),(0,V.ApolloServerPluginDrainHttpServer)({httpServer:e.server})].concat(A(e.drainServer?[{serverWillStart:function t(){return /*#__PURE__*/i(function(){return M(this,function(t){return[2,{drainServer:function t(){return /*#__PURE__*/i(function(){var t;return M(this,function(n){(t=e.drainServer)===null||t===void 0?void 0:t.call(e),el.info("Apollo Server drainServer hook called");return[2]})})()}}]})})()}}]:[]))},e.isDev&&{introspection:!0,includeStacktraceInErrorResponses:!0}))}U(ed,"createApolloServer");var ef=K(require("process"),1),eE=require("yargs/helpers"),e_=K(require("yargs/yargs"),1);var ep={name:"@cyberskill/shared",type:"module",version:"1.108.0",description:"CyberSkill Shared",author:"Stephen Cheng",license:"MIT",homepage:"https://github.com/cyberskill-world/shared#readme",repository:{type:"git",url:"git+https://github.com/cyberskill-world/shared.git"},bugs:{url:"https://github.com/cyberskill-world/shared/issues"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./configs":{types:"./dist/configs/index.d.ts",import:"./dist/configs/index.js",require:"./dist/configs/index.cjs"},"./configs/commitlint":{types:"./dist/configs/commitlint/index.d.ts",import:"./dist/configs/commitlint/index.js",require:"./dist/configs/commitlint/index.cjs"},"./configs/eslint":{types:"./dist/configs/eslint/index.d.ts",import:"./dist/configs/eslint/index.js",require:"./dist/configs/eslint/index.cjs"},"./configs/graphql-codegen":{types:"./dist/configs/graphql-codegen/index.d.ts",import:"./dist/configs/graphql-codegen/index.js",require:"./dist/configs/graphql-codegen/index.cjs"},"./configs/lint-staged":{types:"./dist/configs/lint-staged/index.d.ts",import:"./dist/configs/lint-staged/index.js",require:"./dist/configs/lint-staged/index.cjs"},"./constants":{types:"./dist/constants/index.d.ts",import:"./dist/constants/index.js",require:"./dist/constants/index.cjs"},"./nodejs":{types:"./dist/nodejs/index.d.ts",import:"./dist/nodejs/index.js",require:"./dist/nodejs/index.cjs"},"./nodejs/apollo-server":{types:"./dist/nodejs/apollo-server/index.d.ts",import:"./dist/nodejs/apollo-server/index.js",require:"./dist/nodejs/apollo-server/index.cjs"},"./nodejs/cli":{types:"./dist/nodejs/cli/index.d.ts",import:"./dist/nodejs/cli/index.js",require:"./dist/nodejs/cli/index.cjs"},"./nodejs/command":{types:"./dist/nodejs/command/index.d.ts",import:"./dist/nodejs/command/index.js",require:"./dist/nodejs/command/index.cjs"},"./nodejs/express":{types:"./dist/nodejs/express/index.d.ts",import:"./dist/nodejs/express/index.js",require:"./dist/nodejs/express/index.cjs"},"./nodejs/fs":{types:"./dist/nodejs/fs/index.d.ts",import:"./dist/nodejs/fs/index.js",require:"./dist/nodejs/fs/index.cjs"},"./nodejs/log":{types:"./dist/nodejs/log/index.d.ts",import:"./dist/nodejs/log/index.js",require:"./dist/nodejs/log/index.cjs"},"./nodejs/mongo":{types:"./dist/nodejs/mongo/index.d.ts",import:"./dist/nodejs/mongo/index.js",require:"./dist/nodejs/mongo/index.cjs"},"./nodejs/package":{types:"./dist/nodejs/package/index.d.ts",import:"./dist/nodejs/package/index.js",require:"./dist/nodejs/package/index.cjs"},"./nodejs/path":{types:"./dist/nodejs/path/index.d.ts",import:"./dist/nodejs/path/index.js",require:"./dist/nodejs/path/index.cjs"},"./nodejs/storage":{types:"./dist/nodejs/storage/index.d.ts",import:"./dist/nodejs/storage/index.js",require:"./dist/nodejs/storage/index.cjs"},"./nodejs/ws":{types:"./dist/nodejs/ws/index.d.ts",import:"./dist/nodejs/ws/index.js",require:"./dist/nodejs/ws/index.cjs"},"./react":{types:"./dist/react/index.d.ts",import:"./dist/react/index.js",require:"./dist/react/index.cjs"},"./react/apollo-client":{types:"./dist/react/apollo-client/index.d.ts",import:"./dist/react/apollo-client/index.js",require:"./dist/react/apollo-client/index.cjs"},"./react/apollo-error":{types:"./dist/react/apollo-error/index.d.ts",import:"./dist/react/apollo-error/index.js",require:"./dist/react/apollo-error/index.cjs"},"./react/i18next":{types:"./dist/react/i18next/index.d.ts",import:"./dist/react/i18next/index.js",require:"./dist/react/i18next/index.cjs"},"./react/loading":{types:"./dist/react/loading/index.d.ts",import:"./dist/react/loading/index.js",require:"./dist/react/loading/index.cjs"},"./react/log":{types:"./dist/react/log/index.d.ts",import:"./dist/react/log/index.js",require:"./dist/react/log/index.cjs"},"./react/next-intl":{types:"./dist/react/next-intl/index.d.ts",import:"./dist/react/next-intl/index.js",require:"./dist/react/next-intl/index.cjs"},"./react/storage":{types:"./dist/react/storage/index.d.ts",import:"./dist/react/storage/index.js",require:"./dist/react/storage/index.cjs"},"./react/toast":{types:"./dist/react/toast/index.d.ts",import:"./dist/react/toast/index.js",require:"./dist/react/toast/index.cjs"},"./react/vitest":{types:"./dist/react/vitest/index.d.ts",import:"./dist/react/vitest/index.js",require:"./dist/react/vitest/index.cjs"},"./styles/reset.css":{import:"./dist/styles/reset.css",require:"./dist/styles/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./utils":{types:"./dist/utils/index.d.ts",import:"./dist/utils/index.js",require:"./dist/utils/index.cjs"}},main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",bin:{cyberskill:"./dist/nodejs/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"dotenv -e .env -- tsup --watch",lint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint","lint:fix":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:fix","lint:inspect":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:inspect",reset:"dotenv -e .env -- tsx src/nodejs/cli/index.ts reset",setup:"dotenv -e .env -- tsx src/nodejs/cli/index.ts setup",inspect:"dotenv -e .env -- tsx src/nodejs/cli/index.ts inspect","test:unit":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:unit","test:e2e":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:e2e",commitlint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts commitlint","lint-staged":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint-staged"},dependencies:{"@antfu/eslint-config":"4.12.0","@apollo/client":"3.13.8","@apollo/server":"4.12.0","@eddeee888/gcg-typescript-resolver-files":"0.12.0","@eslint-react/eslint-plugin":"1.48.4","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@microsoft/api-extractor":"7.52.5","@next/eslint-plugin-next":"15.3.1","@swc/core":"1.11.22","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.2",chalk:"5.4.1",classnames:"2.5.1",compression:"1.8.0",consola:"3.4.2",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.0",dotenv:"16.5.0","dotenv-cli":"8.0.0",envalid:"8.0.0","eslint-config-next":"15.3.1","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.20",express:"4.21.2","express-device":"0.4.2","express-session":"1.18.1","fs-extra":"11.3.0",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"25.0.1",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.16.0",mongoose:"8.13.2","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.0","next-intl":"4.1.0","node-fetch":"3.3.2","node-persist":"4.0.4",ora:"8.2.0",playwright:"1.52.0","postcss-modules":"6.0.1",qs:"6.14.0",react:"19.1.0","react-dom":"19.1.0","react-hot-toast":"2.5.2","react-i18next":"15.5.1","react-icons":"5.5.0",sass:"1.87.0",slugify:"1.6.6",tsup:"8.4.0",tsx:"4.19.3",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.3",vitest:"3.1.2","vitest-browser-react":"0.1.1",ws:"8.18.1",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.0","@eslint/config-inspector":"1.0.2","@types/compression":"1.7.5","@types/cors":"2.8.17","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.1","@types/fs-extra":"11.0.4","@types/migrate-mongo":"10.0.5","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.2","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.25.1","lint-staged":"15.5.1","node-modules-inspector":"0.6.6","simple-git-hooks":"2.13.0"}};var eg=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var em=require("child_process"),eh=K(require("process"),1),ev=K(require("util"),1);var eS={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var ey=K(require("node-fetch"),1);var eO=K(require("fs-extra"),1),eC=require("path");var eI=eO.default,eR=eO.default,eA=eR.lstatSync,eT=eR.readdirSync,eN=eR.mkdirSync,eP=eR.readFileSync,eM=eR.writeFileSync,eG=eR.appendFileSync,eb=eR.unlinkSync,eL=eR.statSync,eD=eO.default.readJsonSync,ex=eO.default.writeJsonSync;function ew(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eO.default.pathExistsSync(e)})}U(ew,"pathExistsSync");function ej(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){ew(e)&&eO.default.removeSync(e)})}U(ej,"removeSync");function eU(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.extensions,s=y(n,["extensions"]);eO.default.copySync(e,t,h({filter:U(function(e){return eL(e).isDirectory()||!r||r.length===0?!0:r.includes((0,eC.extname)(e))},"filter")},s))}U(eU,"copySync");var ek=K(require("path"),1);var eq=ei(),eK=ek.default;function eF(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,ek.resolve).apply(this,[eq.CWD].concat(A(t)))}U(eF,"resolveWorkingPath");function eH(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,ek.resolve).apply(this,A(t))}U(eH,"resolve");function eY(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,ek.join).apply(this,A(t))}U(eY,"join");var eB=ei(),eW=eB.CWD,eV="@cyberskill/shared",eJ="node_modules",eQ="dist",e$="package.json",eX="package-lock.json",ez="tsconfig.json",eZ=".gitignore",e0=".simple-git-hooks.json",e1="pnpm-lock.yaml",e2=".git/hooks/",e4=".git/COMMIT_EDITMSG",e3=".migrate-mongo.config.js",e5=eY(eW,eJ,eV,eQ),e8="cyberskill",e6="src/nodejs/cli/index.ts",e7="eslint",e9="eslint",te="vitest",tt="playwright",tn="vitest",tr="@commitlint/cli",ts="commitlint",ti="lint-staged",to="lint-staged",tc="typescript",ta="tsc",tu="tsx",tl="git",td="pnpm",tf="pnpm exec",tE="simple-git-hooks",t_="simple-git-hooks",tp="@eslint/config-inspector",tg="eslint-config-inspector",tm="node-modules-inspector",th="node-modules-inspector",tv="migrate-mongo",tS="./node_modules/migrate-mongo/bin/migrate-mongo",ty={CYBERSKILL_DIRECTORY:e5,WORKING_DIRECTORY:eW,TS_CONFIG:eF(ez),GIT_IGNORE:eF(eZ),GIT_HOOK:eF(e2),GIT_COMMIT_MSG:eF(e4),SIMPLE_GIT_HOOKS_JSON:eF(e0),PACKAGE_JSON:eF(e$),PACKAGE_LOCK_JSON:eF(eX),PNPM_LOCK_YAML:eF(e1),NODE_MODULES:eF(eJ),MIGRATE_MONGO_CONFIG:eF(e3),LINT_STAGED_CONFIG:eF("".concat(e5,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eF("".concat(e5,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eF("".concat(e5,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eF("".concat(e5,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eF("".concat(e5,"/react/vitest/vitest.e2e.js"))};function tO(e){var t=e.isCurrentProject;return h({"pre-commit":to,"commit-msg":ts},t&&{"pre-push":tB("".concat(tl," pull"))})}U(tO,"createGitHooksConfig");function tC(e,t,n){return /*#__PURE__*/i(function(){return M(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eg.CLI:return[3,1];case eg.STRING:return[3,3]}return[3,4];case 1:return[4,tG(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),tV(tB("".concat(tf," ").concat(n))))];case 3:return[2,tV(tB(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}U(tC,"buildCommand");function tI(e,t,n){return function(){return /*#__PURE__*/i(function(){return M(this,function(r){return[2,tC(e,t,n)]})})()}}U(tI,"commandFactory");var tR={simpleGitHooks:tI(eg.CLI,tE,t_),eslintInspect:tI(eg.CLI,tp,tg),nodeModulesInspect:tI(eg.CLI,tm,th),eslintCheck:tI(eg.CLI,e7,"".concat(e9," ").concat(ty.WORKING_DIRECTORY)),eslintFix:tI(eg.CLI,e7,"".concat(e9," ").concat(ty.WORKING_DIRECTORY," --fix")),typescriptCheck:tI(eg.CLI,tc,"".concat(ta," -p ").concat(ty.TS_CONFIG," --noEmit")),configureGitHook:tI(eg.STRING,"".concat(tl," config core.hooksPath ").concat(ty.GIT_HOOK)),testUnit:tI(eg.CLI,te,"".concat(tn," --config ").concat(ty.UNIT_TEST_CONFIG)),testE2e:tI(eg.CLI,"".concat(te," ").concat(tt),"".concat(tn," --config ").concat(ty.E2E_TEST_CONFIG)),mongoMigrateCreate:U(function(e){return tI(eg.CLI,tv,"".concat(tu," ").concat(tS," create ").concat(e," -f ").concat(ty.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tI(eg.CLI,tv,"".concat(tu," ").concat(tS," up -f ").concat(ty.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tI(eg.CLI,tv,"".concat(tu," ").concat(tS," down -f ").concat(ty.MIGRATE_MONGO_CONFIG)),commitLint:tI(eg.CLI,tr,"".concat(ts," --edit ").concat(ty.GIT_COMMIT_MSG," --config ").concat(ty.COMMITLINT_CONFIG)),lintStaged:tI(eg.CLI,ti,"".concat(to," --config ").concat(ty.LINT_STAGED_CONFIG)),stageBuildDirectory:tI(eg.STRING,"".concat(tl," add ").concat(eQ)),build:tI(eg.STRING,"".concat(td," run build")),pnpmInstallStandard:tI(eg.STRING,"".concat(td," install")),pnpmInstallLegacy:tI(eg.STRING,"".concat(td," install --legacy-peer-deps")),pnpmInstallForce:tI(eg.STRING,"".concat(td," install --force"))};var tA=ei();function tT(e){var t=eY(tA.CWD,e$);if(!ew(t))return!1;try{var n=eD(t),r=n.name,s=n.dependencies,i=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,a=r===e,u=e in i,l=e in c;return a||u||l?{path:t,file:n,isCurrentProject:a,isDepend:u,isDevDepend:l}:!1}catch(e){return el.warn("Failed to read package.json: ".concat(e.message)),!1}}U(tT,"getPackage");function tN(e){return /*#__PURE__*/i(function(){var t,n,r,s;return M(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,(0,ey.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=i.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=i.sent(),r=n.version;return[2,r];case 3:s=i.sent();throw el.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}U(tN,"getLatestPackageVersion");function tP(e,t){return /*#__PURE__*/i(function(){var n,r,s,i,o,c,a,u,l,d,f,E,_,p,g,m,v,S,y,O,C;return M(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=tT(e);if(!n)return[2,h({},eS)];a=n.path,u=n.file,l=n.isCurrentProject,d=n.isDepend,f=n.isDevDepend,E=(r=u.dependencies)!==null&&r!==void 0?r:{},_=(s=u.devDependencies)!==null&&s!==void 0?s:{},p=l?(i=u.version)!==null&&i!==void 0?i:"0.0.0":d?(o=E[e])!==null&&o!==void 0?o:"0.0.0":f?(c=_[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];v=p;return[3,3];case 1:return[4,tN(e)];case 2:v=I.sent();I.label=3;case 3:g=v,m=l||p===g;if(!m&&(t===null||t===void 0?void 0:t.update)){;y=d?"dependencies":f?"devDependencies":null;y&&((S=u[y])===null||S===void 0?void 0:S[e])!==g&&(u[y]=(O=u[y])!==null&&O!==void 0?O:{},u[y][e]=g,ex(a,u),el.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:l,installedPath:a,file:u,isUpToDate:m}];case 4:C=I.sent();return[2,(el.error('Error checking package "'.concat(e,'": ').concat(C.message)),h({},eS))];case 5:return[2]}})})()}U(tP,"checkPackage");function tM(){return /*#__PURE__*/i(function(){var e,t,n,r,s,i,o,c,a,u,l,d;return M(this,function(f){switch(f.label){case 0:e=[{command:U(function(){return tR.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:U(function(){return tR.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:U(function(){return tR.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=(i=s.next()).done))return[3,8];o=i.value,c=o.command,a=o.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,tQ("".concat(a," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();el.warn("Installation attempt failed: ".concat(a)),el.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}U(tM,"installDependencies");function tG(e,t){return /*#__PURE__*/i(function(){var n,r,s,i,o,c,a,u,l,d,f;return M(this,function(E){switch(E.label){case 0:if(!ew(ty.PACKAGE_JSON)){el.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=A(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return tP(e,h({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,tM()];case 3:r=E.sent();E.label=4;case 4:r;i=true,o=false,c=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);a=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();E.label=6;case 6:if(!!(i=(u=a.next()).done))return[3,9];l=u.value;return[4,l()];case 7:E.sent();E.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:d=E.sent();o=true;c=d;return[3,12];case 11:try{if(!i&&a.return!=null){a.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:f=E.sent();throw el.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}U(tG,"setupPackages");var tb=K(require("node-persist"),1);var tL=ei();function tD(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=tb.default.defaultInstance;if(e)return[3,2];return[4,tb.default.init({dir:tL.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}U(tD,"initNodePersist");var tx={get:function e(e){return /*#__PURE__*/i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tD()];case 1:r.sent();return[4,tb.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(el.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/i(function(){var n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tD()];case 1:r.sent();return[4,tb.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();el.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/i(function(){var t;return M(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tD()];case 1:n.sent();return[4,tb.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();el.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/i(function(){var e,t;return M(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tD()];case 1:n.sent();return[4,tb.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(el.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(el.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/i(function(){return M(this,function(t){try{return[2,"".concat(tL.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(el.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tw=ei(),tj=ev.promisify(em.exec);function tU(e){return"error_list:".concat(e)}U(tU,"getErrorListKey");function tk(e){return /*#__PURE__*/i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tU(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,tx.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:return[4,tx.getLogLink(n)];case 1:e=t.sent();e&&el.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();el.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}U(tk,"saveErrorListToStorage");function tq(){return /*#__PURE__*/i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tx.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return /*#__PURE__*/i(function(){var t;return M(this,function(n){switch(n.label){case 0:return[4,tx.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(el.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})})()}U(tq,"getStoredErrorLists");function tK(){return /*#__PURE__*/i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tx.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return tx.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();el.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})})()}U(tK,"clearAllErrorLists");function tF(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,i=/^(.+?)\((\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,a,u,l,d;var f=s.exec(e)||[],E=i.exec(e)||[],_=o.exec(e)||[];var p,g,m,h,v,S;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===Q.Error?Q.Error:Q.Warning,message:(p=f===null||f===void 0?void 0:(c=f[4])===null||c===void 0?void 0:c.trim())!==null&&p!==void 0?p:"",rule:(g=f===null||f===void 0?void 0:(a=f[5])===null||a===void 0?void 0:a.trim())!==null&&g!==void 0?g:""}):E.length?t.push({file:(m=E===null||E===void 0?void 0:E[1])!==null&&m!==void 0?m:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===Q.Error?Q.Error:Q.Warning,message:(h=E===null||E===void 0?void 0:(u=E[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):_.length?t.push({file:"commitlint",type:Q.Error,message:(v=_===null||_===void 0?void 0:(l=_[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(S=_===null||_===void 0?void 0:(d=_[2])===null||d===void 0?void 0:d.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&tk(t),tw.DEBUG&&n.length&&(el.warn("Unmatched lines:"),n.forEach(function(e){return el.info(" ".concat(e))}))}U(tF,"parseTextErrors");function tH(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,i=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?Q.Error:Q.Warning,file:t,position:"".concat(s,":").concat(i),rule:o,message:c})})}),n.length&&tk(n)}catch(t){tF(e)}}U(tH,"parseCommandOutput");function tY(e){return /*#__PURE__*/i(function(e){var t,n,r,s,i,o,c,a,u;var l=arguments;return M(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tH;n=new AbortController;eh.default.on("SIGINT",function(){el.warn("Process interrupted. Terminating..."),n.abort(),eh.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tj(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),s=r.stdout,i=r.stderr;[s,i].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();c=o.stdout,a=o.stderr,u=o.message;[c,a].forEach(function(e){return e&&t(e)}),!a&&!c&&el.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}U(tY,"executeCommand");function tB(e){return{raw:!0,cmd:e}}U(tB,"rawCommand");function tW(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tf," ").concat(eV," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tf," ").concat(tu," ").concat(e6," ").concat(e):"".concat(tf," ").concat(e8," ").concat(e)}U(tW,"formatCLI");function tV(e,t){return typeof e=="function"?tW(e(t),t):(typeof e==="undefined"?"undefined":T(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tW(e,t):e}U(tV,"formatCommand");function tJ(e){return /*#__PURE__*/i(function(e){var t,n,r,s,i,o,c;var a=arguments;return M(this,function(u){switch(u.label){case 0:t=a.length>1&&a[1]!==void 0?a[1]:{};r=(n=t===null||t===void 0?void 0:t.isRemote)!==null&&n!==void 0?n:!1;if(!r)return[3,1];c=!1;return[3,3];case 1:return[4,tP(eV)];case 2:c=u.sent().isCurrentProject;u.label=3;case 3:s=c,i={isRemote:r,isCurrentProject:s},o=typeof e=="function"?e(i):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var t=R(e,2),n=t[0],r=t[1];return[n,tV(r,i)]}))]}})}).apply(this,arguments)}U(tJ,"resolveCommands");function tQ(e,t){return /*#__PURE__*/i(function(){var n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);el.start("".concat(e)),tw.DEBUG&&el.info("→ ".concat(t));return[4,tY(t)];case 1:r.sent(),el.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw el.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}U(tQ,"runCommand");function t$(){return /*#__PURE__*/i(function(){var e,t;return M(this,function(n){switch(n.label){case 0:if(!ew(ty.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,tR.typescriptCheck()];case 1:return[4,tQ.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=el.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}U(t$,"checkTypescript");function tX(){return /*#__PURE__*/i(function(){var e,t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,tR.eslintFix()];case 1:return[4,tQ.apply(void 0,n.concat([i.sent()]))];case 2:t=i.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,tR.eslintCheck()];case 4:return[4,tQ.apply(void 0,r.concat([i.sent()]))];case 5:t=i.sent();i.label=6;case 6:t;return[2]}})}).apply(this,arguments)}U(tX,"checkEslint");function tz(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";el.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}U(tz,"printIssues");function tZ(){return /*#__PURE__*/i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:return[4,tq()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===Q.Error}),n=e.filter(function(e){return e.type===Q.Warning});!t.length&&!n.length?el.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tz("Warnings",n),tz("Errors",t),(t.length>0||n.length>0)&&ef.default.exit(1));return[2]}})})()}U(tZ,"showCheckResult");function t0(){return /*#__PURE__*/i(function(){var e,t,n,r,s,i;return M(this,function(o){switch(o.label){case 0:return[4,tK()];case 1:o.sent();return[4,tP(eV)];case 2:e=o.sent(),t=e.isCurrentProject;if(!t)return[3,9];o.label=3;case 3:o.trys.push([3,8,,9]);n=["Building package: ".concat(eV)];return[4,tR.build()];case 4:return[4,tQ.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,tR.stageBuildDirectory()];case 6:return[4,tQ.apply(void 0,r.concat([o.sent()]))];case 7:o.sent();return[3,9];case 8:s=o.sent();throw el.error("Error building and staging ".concat(eV,": ").concat(s.message)),s;case 9:i=["Executing lint-staged"];return[4,tR.lintStaged()];case 10:return[4,tQ.apply(void 0,i.concat([o.sent()]))];case 11:o.sent(),tZ();return[2]}})})()}U(t0,"lintStaged");function t1(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,tR.eslintInspect()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(t1,"inspectLint");function t2(){return /*#__PURE__*/i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tK()];case 1:e.sent();return[4,Promise.all([t$(),tX()])];case 2:e.sent(),tZ();return[2]}})})()}U(t2,"lintCheck");function t4(){return /*#__PURE__*/i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tK()];case 1:e.sent();return[4,Promise.all([t$(),tX(!0)])];case 2:e.sent(),tZ();return[2]}})})()}U(t4,"lintFix");function t3(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:return[4,tK()];case 1:t.sent();e=["Validating commit message"];return[4,tR.commitLint()];case 2:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tZ();return[2]}})})()}U(t3,"commitLint");function t5(){return /*#__PURE__*/i(function(){var e,t,n,r;return M(this,function(s){switch(s.label){case 0:e=["Configuring Git hooks"];return[4,tR.configureGitHook()];case 1:return[4,tQ.apply(void 0,e.concat([s.sent()]))];case 2:s.sent(),ej(ty.GIT_HOOK);return[4,tJ(tO)];case 3:t=s.sent();ex(ty.SIMPLE_GIT_HOOKS_JSON,t);n="\n".concat(e0,"\n");ew(ty.GIT_IGNORE)?eP(ty.GIT_IGNORE,"utf-8").split("\n").includes(e0)||eG(ty.GIT_IGNORE,n,"utf-8"):eM(ty.GIT_IGNORE,n,"utf-8");r=["Setting up simple-git-hooks"];return[4,tR.simpleGitHooks()];case 4:return[4,tQ.apply(void 0,r.concat([s.sent()]))];case 5:s.sent();return[2]}})})()}U(t5,"setupGitHook");function t8(){return /*#__PURE__*/i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tG([eV],{update:!0,postInstallActions:[t5]})];case 1:e.sent();return[2]}})})()}U(t8,"setup");function t6(){return /*#__PURE__*/i(function(){return M(this,function(e){switch(e.label){case 0:ej(ty.NODE_MODULES,ty.PNPM_LOCK_YAML);return[4,tM()];case 1:e.sent();return[4,t5()];case 2:e.sent();return[2]}})})()}U(t6,"reset");function t7(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,tR.nodeModulesInspect()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(t7,"inspect");function t9(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,tR.testUnit()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(t9,"testUnit");function ne(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,tR.testE2e()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(ne,"testE2E");function nt(e){return /*#__PURE__*/i(function(){var t;return M(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,tR.mongoMigrateCreate(e)];case 1:return[4,tQ.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}U(nt,"mongoMigrateCreate");function nn(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,tR.mongoMigrateUp()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(nn,"mongoMigrateUp");function nr(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,tR.mongoMigrateDown()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}U(nr,"mongoMigrateDown");(function(){return /*#__PURE__*/i(function(){var e;return M(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,e_.default)((0,eE.hideBin)(ef.default.argv)).scriptName(e8).usage("$0 <command> [options]").command("lint","Check code for linting issues",t2).command("lint:fix","Fix linting issues automatically",t4).command("lint:inspect","View active ESLint configuration",t1).command("lint-staged","Run lint checks on staged files",t0).command("commitlint","Validate commit message format",t3).command("setup","Initialize project setup and dependencies",t8).command("reset","Reset the project and reinstall dependencies",t6).command("inspect","Analyze installed project dependencies",t7).command("test:unit","Run unit test suite",t9).command("test:e2e","Run end-to-end test suite",ne).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},function(e){return /*#__PURE__*/i(function(){return M(this,function(t){switch(t.label){case 0:if(!e.name){el.error("Migration name is required.");return[2]}return[4,nt(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",nn).command("mongo:migrate:down","Rollback last MongoDB migration",nr).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(ep.version).epilog('\uD83D\uDCA1 Tip: Use "--help" with any command to see options\n').parse()];case 1:t.sent();return[3,3];case 2:e=t.sent();el.error("Fatal: ".concat(e.message)),ef.default.exit(1);return[3,3];case 3:return[2]}})})()})();var ns=require("express");var ni=K(require("compression"),1),no=K(require("cors"),1),nc=K(require("express"),1),na=K(require("express-device"),1),nu=K(require("express-session"),1);function nl(e){return(0,no.default)({origin:U(function(t,n){var r;e.isDev||((r=e.whiteList)===null||r===void 0?void 0:r.includes(t!==null&&t!==void 0?t:""))?n(null,!0):n(null,!1)},"origin"),credentials:!0})}U(nl,"createCors");function nd(e){var t=(0,nc.default)();return t.set("trust proxy",1),t.use(nc.default.urlencoded({extended:!0})),t.use((0,ni.default)()),t.use(na.default.capture()),e.staticFolder&&t.use(nc.default.static(e.staticFolder)),e.sessionOptions&&t.use((0,nu.default)(e.sessionOptions)),t}U(nd,"createExpress");var nf="MONGO_MIGRATE_OPTIONS";var nE=require("mongodb"),n_=require("mongoose");var np=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nE.Db);U(np,"C_Db");var ng=np,nm=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(n_.Document);U(nm,"C_Document");var nh=nm,nv=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(n_.Model);U(nv,"C_Model");var nS=nv,ny=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nE.Collection);U(ny,"C_Collection");var nO=ny;var nC=require("date-fns"),nI=K(require("migrate-mongo"),1),nR=require("mongoose"),nA=K(require("mongoose-aggregate-paginate-v2"),1),nT=K(require("mongoose-paginate-v2"),1),nN=require("uuid");var nP=K(require("crypto-js"),1),nM=K(require("slugify"),1);var nG=nM.default.default||nM.default;function nb(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return nG(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))}U(nb,"generateSlug");function nL(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return nP.default.SHA256(e).toString(nP.default.enc.Hex).slice(0,t)}U(nL,"generateShortId");var nD={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":T(e))=="object"?E(e,Date)?!1:E(e,Map)||E(e,Set)?e.size===0:E(e,WeakMap)||E(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};var nx={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,nC.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"?nx.getDateTime():new Date;return{id:(0,nN.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:nN.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,i=e.standalone,o=i===void 0?!1:i;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(nx.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,i=s===void 0?!1:s,o=e.aggregate,c=o===void 0?!1:o,a=e.virtuals,u=a===void 0?[]:a,l=e.middlewares,d=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=nx.createSchema({mongoose:t,schema:r,virtuals:u});return nx.applyPlugins(f,[i&&nT.default,c&&nA.default]),nx.applyMiddlewares(f,d),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return S(h({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/i(function(){return M(this,function(t){return[2,!nD.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/i(function(){var n;return M(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return l({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/i(function(){return M(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!E(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:S(h({},nI.default),{setConfig:U(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eM(ty.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e3,"\n");ew(ty.GIT_IGNORE)?eP(ty.GIT_IGNORE,"utf-8").split("\n").includes(e3)||eG(ty.GIT_IGNORE,n,"utf-8"):eM(ty.GIT_IGNORE,n,"utf-8")},"setConfig")})},nw=/*#__PURE__*/function(){function e(t,n){c(this,e);H(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=h({},nx.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__*/i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return h({},nx.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__*/i(function(){var t,n;return M(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__*/i(function(){var e,t,n;var r=arguments;return M(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__*/i(function(){var e,t,n;var r=arguments;return M(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__*/i(function(){var n,r;return M(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__*/i(function(){var n,r;return M(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__*/i(function(){var t,n;return M(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__*/i(function(){var t,n;return M(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}();U(nw,"MongoController");var nj=nw,nU=/*#__PURE__*/function(){function e(t){c(this,e);H(this,"model");this.model=t}u(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/i(function(){var e,t,n,r,s,i,o;var c=arguments;return M(this,function(a){switch(a.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;a.label=1;case 1:a.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:i=a.sent();return[2,i?{success:!0,result:i}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:eo.NOT_FOUND.CODE}];case 3:o=a.sent();return[2,{success:!1,message:o.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/i(function(){var e,t,n,r,s,i,o;var c=arguments;return M(this,function(a){switch(a.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;a.label=1;case 1:a.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);i={success:!0};return[4,s.exec()];case 2:return[2,(i.result=a.sent(),i)];case 3:o=a.sent();return[2,{success:!1,message:o.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=i.sent(),n)];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/i(function(e){var t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=i.sent(),n)];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/i(function(){var e,t,n;var r=arguments;return M(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/i(function(e){var t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=i.sent().map(function(e){return E(e,nR.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r,s;var i=arguments;return M(this,function(o){switch(o.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:{},t=i.length>1&&i[1]!==void 0?i[1]:{},n=i.length>2&&i[2]!==void 0?i[2]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,h({new:!0},n)).exec()];case 2:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:eo.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r,s;var i=arguments;return M(this,function(o){switch(o.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:{},t=i.length>1&&i[1]!==void 0?i[1]:{},n=i.length>2&&i[2]!==void 0?i[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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=i.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:eo.NOT_FOUND.CODE}];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/i(function(){var e,t,n,r;var s=arguments;return M(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};i.label=1;case 1:i.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=i.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:eo.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/i(function(){var n,r,s,i;return M(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=nL(e,r+t);i=!n.has(s);if(!i)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:i=!o.sent();o.label=3;case 3:if(i)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:eo.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t){return /*#__PURE__*/i(function(e,t){var n,r,s,o,c,a,u,l,d,f,E,_,p;var g=arguments;return M(this,function(m){switch(m.label){case 0:n=this;r=g.length>2&&g[2]!==void 0?g[2]:{};m.label=1;case 1:m.trys.push([1,9,,10]);s=t[e],o=U(function(e){return /*#__PURE__*/i(function(){var n,s,i;return M(this,function(o){switch(o.label){case 0:return[4,this.model.findOne(nx.createSlugQuery(e,r,t.id))];case 1:n=o.sent();if(!n)return[2,e];s=1;o.label=2;case 2:i="".concat(e,"-").concat(s);return[4,this.model.findOne(nx.createSlugQuery(i,r,t.id))];case 3:n=o.sent(),s++;o.label=4;case 4:if(n)return[3,2];o.label=5;case 5:return[2,i]}})}).call(n)},"createUniqueSlug");if(!((typeof s==="undefined"?"undefined":T(s))=="object"))return[3,6];c={};a=[];for(u in s)a.push(u);l=0;m.label=2;case 2:if(!(l<a.length))return[3,5];d=a[l];f=nb(s[d]);return[4,o(f)];case 3:c[d]=m.sent();m.label=4;case 4:l++;return[3,2];case 5:return[2,{success:!0,result:c}];case 6:E=nb(s);_={success:!0};return[4,o(E)];case 7:return[2,(_.result=m.sent(),_)];case 8:return[3,10];case 9:p=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(p.message),code:eo.INTERNAL_SERVER_ERROR.CODE}];case 10:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();U(nU,"MongooseController");var nk=nU;var nq=require("graphql-ws/use/ws"),nK=require("ws");function nF(e){return new nK.WebSocketServer({server:e.server,path:e.path})}U(nF,"createWSServer");function nH(e){return(0,nq.useServer)({schema:e.schema},e.server)}U(nH,"initGraphQLWS");0&&(module.exports={BUILD_DIRECTORY:BUILD_DIRECTORY,CHECK_PACKAGE_EMPTY_RESULT:CHECK_PACKAGE_EMPTY_RESULT,COMMIT_LINT_CLI:COMMIT_LINT_CLI,COMMIT_LINT_PACKAGE_NAME:COMMIT_LINT_PACKAGE_NAME,CYBERSKILL_CLI:CYBERSKILL_CLI,CYBERSKILL_CLI_PATH:CYBERSKILL_CLI_PATH,CYBERSKILL_DIRECTORY:CYBERSKILL_DIRECTORY,CYBERSKILL_PACKAGE_NAME:CYBERSKILL_PACKAGE_NAME,C_Collection:C_Collection,C_Db:C_Db,C_Document:C_Document,C_Model:C_Model,ESLINT_CLI:ESLINT_CLI,ESLINT_INSPECT_CLI:ESLINT_INSPECT_CLI,ESLINT_INSPECT_PACKAGE_NAME:ESLINT_INSPECT_PACKAGE_NAME,ESLINT_PACKAGE_NAME:ESLINT_PACKAGE_NAME,E_CommandType:E_CommandType,E_IssueType:E_IssueType,GIT_CLI:GIT_CLI,GIT_COMMIT_EDITMSG:GIT_COMMIT_EDITMSG,GIT_HOOK:GIT_HOOK,GIT_IGNORE:GIT_IGNORE,LINT_STAGED_CLI:LINT_STAGED_CLI,LINT_STAGED_PACKAGE_NAME:LINT_STAGED_PACKAGE_NAME,MIGRATE_MONGO_CLI:MIGRATE_MONGO_CLI,MIGRATE_MONGO_CONFIG:MIGRATE_MONGO_CONFIG,MIGRATE_MONGO_PACKAGE_NAME:MIGRATE_MONGO_PACKAGE_NAME,MONGO_MIGRATE_OPTIONS:MONGO_MIGRATE_OPTIONS,MongoController:MongoController,MongooseController:MongooseController,NODE_MODULES:NODE_MODULES,NODE_MODULES_INSPECT_CLI:NODE_MODULES_INSPECT_CLI,NODE_MODULES_INSPECT_PACKAGE_NAME:NODE_MODULES_INSPECT_PACKAGE_NAME,PACKAGE_JSON:PACKAGE_JSON,PACKAGE_LOCK_JSON:PACKAGE_LOCK_JSON,PATH:PATH,PLAYWRIGHT_PACKAGE_NAME:PLAYWRIGHT_PACKAGE_NAME,PNPM_CLI:PNPM_CLI,PNPM_EXEC_CLI:PNPM_EXEC_CLI,PNPM_LOCK_YAML:PNPM_LOCK_YAML,Router:Router,SIMPLE_GIT_HOOKS_PACKAGE_NAME:SIMPLE_GIT_HOOKS_PACKAGE_NAME,SIMPLE_GIT_HOOK_CLI:SIMPLE_GIT_HOOK_CLI,SIMPLE_GIT_HOOK_JSON:SIMPLE_GIT_HOOK_JSON,TSCONFIG_JSON:TSCONFIG_JSON,TSC_CLI:TSC_CLI,TSC_PACKAGE_NAME:TSC_PACKAGE_NAME,TSX_CLI:TSX_CLI,VITEST_CLI:VITEST_CLI,VITEST_PACKAGE_NAME:VITEST_PACKAGE_NAME,WORKING_DIRECTORY:WORKING_DIRECTORY,aggregatePaginate:aggregatePaginate,appendFileSync:appendFileSync,checkPackage:checkPackage,clearAllErrorLists:clearAllErrorLists,command:command,copySync:copySync,createApolloServer:createApolloServer,createCors:createCors,createExpress:createExpress,createGitHooksConfig:createGitHooksConfig,createWSServer:createWSServer,express:express,expressMiddleware:expressMiddleware,formatCommand:formatCommand,fs:fs,getLatestPackageVersion:getLatestPackageVersion,getPackage:getPackage,getStoredErrorLists:getStoredErrorLists,initGraphQLWS:initGraphQLWS,installDependencies:installDependencies,join:join,logNodeJS:logNodeJS,lstatSync:lstatSync,mkdirSync:mkdirSync,mongo:mongo,mongoosePaginate:mongoosePaginate,path:path,pathExistsSync:pathExistsSync,rawCommand:rawCommand,readFileSync:readFileSync,readJsonSync:readJsonSync,readdirSync:readdirSync,removeSync:removeSync,resolve:resolve,resolveCommands:resolveCommands,resolveWorkingPath:resolveWorkingPath,runCommand:runCommand,setupPackages:setupPackages,statSync:statSync,storageNodeJS:storageNodeJS,throwError:throwError,unlinkSync:unlinkSync,writeFileSync:writeFileSync,writeJsonSync:writeJsonSync});
@@ -29,6 +29,7 @@ export { I_CopySyncOptions_alias_1 as I_CopySyncOptions } from '../_tsup-dts-rol
29
29
  export { pathExistsSync_alias_1 as pathExistsSync } from '../_tsup-dts-rollup.cjs';
30
30
  export { removeSync_alias_1 as removeSync } from '../_tsup-dts-rollup.cjs';
31
31
  export { copySync_alias_1 as copySync } from '../_tsup-dts-rollup.cjs';
32
+ export { fs_alias_1 as fs } from '../_tsup-dts-rollup.cjs';
32
33
  export { lstatSync_alias_1 as lstatSync } from '../_tsup-dts-rollup.cjs';
33
34
  export { readdirSync_alias_1 as readdirSync } from '../_tsup-dts-rollup.cjs';
34
35
  export { mkdirSync_alias_1 as mkdirSync } from '../_tsup-dts-rollup.cjs';
@@ -164,6 +165,7 @@ export { command_alias_1 as command } from '../_tsup-dts-rollup.cjs';
164
165
  export { resolveWorkingPath_alias_1 as resolveWorkingPath } from '../_tsup-dts-rollup.cjs';
165
166
  export { resolve_alias_1 as resolve } from '../_tsup-dts-rollup.cjs';
166
167
  export { join_alias_1 as join } from '../_tsup-dts-rollup.cjs';
168
+ export { path_alias_1 as path } from '../_tsup-dts-rollup.cjs';
167
169
  export { storageNodeJS_alias_1 as storageNodeJS } from '../_tsup-dts-rollup.cjs';
168
170
  export { createWSServer_alias_1 as createWSServer } from '../_tsup-dts-rollup.cjs';
169
171
  export { initGraphQLWS_alias_1 as initGraphQLWS } from '../_tsup-dts-rollup.cjs';
@@ -29,6 +29,7 @@ export { I_CopySyncOptions_alias_1 as I_CopySyncOptions } from '../_tsup-dts-rol
29
29
  export { pathExistsSync_alias_1 as pathExistsSync } from '../_tsup-dts-rollup.js';
30
30
  export { removeSync_alias_1 as removeSync } from '../_tsup-dts-rollup.js';
31
31
  export { copySync_alias_1 as copySync } from '../_tsup-dts-rollup.js';
32
+ export { fs_alias_1 as fs } from '../_tsup-dts-rollup.js';
32
33
  export { lstatSync_alias_1 as lstatSync } from '../_tsup-dts-rollup.js';
33
34
  export { readdirSync_alias_1 as readdirSync } from '../_tsup-dts-rollup.js';
34
35
  export { mkdirSync_alias_1 as mkdirSync } from '../_tsup-dts-rollup.js';
@@ -164,6 +165,7 @@ export { command_alias_1 as command } from '../_tsup-dts-rollup.js';
164
165
  export { resolveWorkingPath_alias_1 as resolveWorkingPath } from '../_tsup-dts-rollup.js';
165
166
  export { resolve_alias_1 as resolve } from '../_tsup-dts-rollup.js';
166
167
  export { join_alias_1 as join } from '../_tsup-dts-rollup.js';
168
+ export { path_alias_1 as path } from '../_tsup-dts-rollup.js';
167
169
  export { storageNodeJS_alias_1 as storageNodeJS } from '../_tsup-dts-rollup.js';
168
170
  export { createWSServer_alias_1 as createWSServer } from '../_tsup-dts-rollup.js';
169
171
  export { initGraphQLWS_alias_1 as initGraphQLWS } from '../_tsup-dts-rollup.js';