@cyberskill/shared 1.107.0 → 1.108.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 (67) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +6 -0
  2. package/dist/_tsup-dts-rollup.d.ts +6 -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 +3 -2
  9. package/dist/index.d.ts +3 -2
  10. package/dist/index.js +1 -1
  11. package/dist/nodejs/apollo-server/apollo-server.util.cjs +1 -1
  12. package/dist/nodejs/apollo-server/apollo-server.util.js +1 -1
  13. package/dist/nodejs/apollo-server/index.cjs +1 -1
  14. package/dist/nodejs/apollo-server/index.js +1 -1
  15. package/dist/nodejs/cli/cli.util.cjs +1 -1
  16. package/dist/nodejs/cli/cli.util.js +1 -1
  17. package/dist/nodejs/cli/index.cjs +1 -1
  18. package/dist/nodejs/cli/index.js +1 -1
  19. package/dist/nodejs/command/command.util.cjs +1 -1
  20. package/dist/nodejs/command/command.util.js +1 -1
  21. package/dist/nodejs/command/index.cjs +1 -1
  22. package/dist/nodejs/command/index.js +1 -1
  23. package/dist/nodejs/fs/fs.util.cjs +1 -1
  24. package/dist/nodejs/fs/fs.util.d.cts +3 -2
  25. package/dist/nodejs/fs/fs.util.d.ts +3 -2
  26. package/dist/nodejs/fs/fs.util.js +1 -1
  27. package/dist/nodejs/fs/index.cjs +1 -1
  28. package/dist/nodejs/fs/index.d.cts +3 -2
  29. package/dist/nodejs/fs/index.d.ts +3 -2
  30. package/dist/nodejs/fs/index.js +1 -1
  31. package/dist/nodejs/index.cjs +1 -1
  32. package/dist/nodejs/index.d.cts +3 -2
  33. package/dist/nodejs/index.d.ts +3 -2
  34. package/dist/nodejs/index.js +1 -1
  35. package/dist/nodejs/mongo/index.cjs +1 -1
  36. package/dist/nodejs/mongo/index.js +1 -1
  37. package/dist/nodejs/mongo/mongo.util.cjs +1 -1
  38. package/dist/nodejs/mongo/mongo.util.js +1 -1
  39. package/dist/nodejs/package/index.cjs +1 -1
  40. package/dist/nodejs/package/index.js +1 -1
  41. package/dist/nodejs/package/package.util.cjs +1 -1
  42. package/dist/nodejs/package/package.util.js +1 -1
  43. package/dist/nodejs/path/index.cjs +1 -1
  44. package/dist/nodejs/path/index.js +1 -1
  45. package/dist/nodejs/path/path.constant.cjs +1 -1
  46. package/dist/nodejs/path/path.constant.js +1 -1
  47. package/dist/nodejs/storage/index.cjs +1 -1
  48. package/dist/nodejs/storage/index.js +1 -1
  49. package/dist/nodejs/storage/storage.util.cjs +1 -1
  50. package/dist/nodejs/storage/storage.util.js +1 -1
  51. package/dist/react/index.cjs +1 -1
  52. package/dist/react/index.js +1 -1
  53. package/dist/react/next-intl/index.cjs +1 -1
  54. package/dist/react/next-intl/index.js +1 -1
  55. package/dist/react/next-intl/next-intl.provider.cjs +1 -1
  56. package/dist/react/next-intl/next-intl.provider.js +1 -1
  57. package/dist/react/storage/index.cjs +1 -1
  58. package/dist/react/storage/index.js +1 -1
  59. package/dist/react/storage/storage.hook.cjs +1 -1
  60. package/dist/react/storage/storage.hook.js +1 -1
  61. package/dist/react/storage/storage.util.cjs +1 -1
  62. package/dist/react/storage/storage.util.js +1 -1
  63. package/dist/react/vitest/index.cjs +1 -1
  64. package/dist/react/vitest/index.js +1 -1
  65. package/dist/react/vitest/vitest.unit.cjs +1 -1
  66. package/dist/react/vitest/vitest.unit.js +1 -1
  67. package/package.json +4 -4
@@ -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 a=e[i](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).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 a(e){s(o,r,i,a,c,"next",e)}function c(e){s(o,r,i,a,c,"throw",e)}a(undefined)})}}function o(e,t,n){t=d(t);return C(e,M()?Reflect.construct(t,n||[],d(e).constructor):t.apply(e,n))}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function u(e,t,n){if(t)c(e.prototype,t);if(n)c(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 p(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function E(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function g(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,a;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;a=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(i)throw a}}return r}function h(){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 v(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){l(e,t,n[t])})}return e}function y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function _(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{y(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function S(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&&(R(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 A(e,n){return t(e)||g(e,n)||N(e,n)||h()}function T(e){return n(e)||E(e)||N(e)||m()}function R(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 M(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(M=function(){return!!e})()}function G(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=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(i=0)),i)try{if(n=1,r&&(s=a[0]&2?r["return"]:a[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,a[1])).done)return s;if(r=0,s)a=[a[0]&2,s.value];switch(a[0]){case 0:case 1:s=a;break;case 4:i.label++;return{value:a[1],done:false};case 5:i.label++;r=a[1];a=[0];continue;case 7:a=i.ops.pop();i.trys.pop();continue;default:if(!(s=i.trys,s=s.length>0&&s[s.length-1])&&(a[0]===6||a[0]===2)){i=0;continue}if(a[0]===3&&(!s||a[1]>s[0]&&a[1]<s[3])){i.label=a[1];break}if(a[0]===6&&i.label<s[1]){i.label=s[1];s=a;break}if(s&&i.label<s[2]){i.label=s[2];i.ops.push(a);break}if(s[2])i.ops.pop();i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e];r=0}finally{n=s=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var L=Object.create;var D=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var j=function(e,t,n){return t in e?D(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var k=function(e,t){return D(e,"name",{value:t,configurable:!0})};var U=function(e,t){for(var n in t)D(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":R(t))=="object"||typeof t=="function")try{var a=function(){var s=u.value;!w.call(e,s)&&s!==n&&D(e,s,{get:function(){return t[s]},enumerable:!(r=b(t,s))||r.enumerable})};for(var c=P(t)[Symbol.iterator](),u;!(s=(u=c.next()).done);s=true)a()}catch(e){i=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(i){throw o}}}return e};var K=function(e,t,n){return n=e!=null?L(x(e)):{},q(t||!e||!e.__esModule?D(n,"default",{value:e,enumerable:!0}):n,e)},F=function(e){return q(D({},"__esModule",{value:!0}),e)};var H=function(e,t,n){return j(e,(typeof t==="undefined"?"undefined":R(t))!="symbol"?t+"":t,n)};var Y={};U(Y,{BUILD_DIRECTORY:function(){return eW},CHECK_PACKAGE_EMPTY_RESULT:function(){return e_},COMMIT_LINT_CLI:function(){return tt},COMMIT_LINT_PACKAGE_NAME:function(){return te},CYBERSKILL_CLI:function(){return e4},CYBERSKILL_CLI_PATH:function(){return e3},CYBERSKILL_DIRECTORY:function(){return e2},CYBERSKILL_PACKAGE_NAME:function(){return eY},C_Collection:function(){return nJ},C_Db:function(){return nF},C_Document:function(){return nY},C_Model:function(){return nW},ESLINT_CLI:function(){return e8},ESLINT_INSPECT_CLI:function(){return tp},ESLINT_INSPECT_PACKAGE_NAME:function(){return tf},ESLINT_PACKAGE_NAME:function(){return e5},E_CommandType:function(){return eh},E_IssueType:function(){return Q},GIT_CLI:function(){return ta},GIT_COMMIT_EDITMSG:function(){return e0},GIT_HOOK:function(){return eZ},GIT_IGNORE:function(){return e$},LINT_STAGED_CLI:function(){return tr},LINT_STAGED_PACKAGE_NAME:function(){return tn},MIGRATE_MONGO_CLI:function(){return tm},MIGRATE_MONGO_CONFIG:function(){return e1},MIGRATE_MONGO_PACKAGE_NAME:function(){return th},MONGO_MIGRATE_OPTIONS:function(){return nk},MongoController:function(){return n9},MongooseController:function(){return rt},NODE_MODULES:function(){return eB},NODE_MODULES_INSPECT_CLI:function(){return tg},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return tE},PACKAGE_JSON:function(){return eV},PACKAGE_LOCK_JSON:function(){return eJ},PATH:function(){return tv},PLAYWRIGHT_PACKAGE_NAME:function(){return e7},PNPM_CLI:function(){return tc},PNPM_EXEC_CLI:function(){return tu},PNPM_LOCK_YAML:function(){return ez},Router:function(){return nG.Router},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return tl},SIMPLE_GIT_HOOK_CLI:function(){return td},SIMPLE_GIT_HOOK_JSON:function(){return eX},TSCONFIG_JSON:function(){return eQ},TSC_CLI:function(){return ti},TSC_PACKAGE_NAME:function(){return ts},TSX_CLI:function(){return to},VITEST_CLI:function(){return e9},VITEST_PACKAGE_NAME:function(){return e6},WORKING_DIRECTORY:function(){return eH},aggregatePaginate:function(){return nz.default},appendFileSync:function(){return eA},checkPackage:function(){return tN},clearAllErrorLists:function(){return tW},command:function(){return tC},copySync:function(){return ew},createApolloServer:function(){return ed},createCors:function(){return nw},createExpress:function(){return nj},createGitHooksConfig:function(){return ty},createWSServer:function(){return rs},express:function(){return nb.default},expressMiddleware:function(){return W.expressMiddleware},formatCommand:function(){return t0},getLatestPackageVersion:function(){return tT},getPackage:function(){return tA},getStoredErrorLists:function(){return tY},initGraphQLWS:function(){return ri},installDependencies:function(){return tG},join:function(){return eK},logNodeJS:function(){return el},lstatSync:function(){return eT},mkdirSync:function(){return eR},mongo:function(){return n6},mongoosePaginate:function(){return nZ.default},pathExistsSync:function(){return eP},rawCommand:function(){return tz},readFileSync:function(){return eN},readJsonSync:function(){return eD},removeSync:function(){return ex},resolve:function(){return eq},resolveCommands:function(){return t1},resolveWorkingPath:function(){return eU},runCommand:function(){return t4},setupPackages:function(){return tD},statSync:function(){return eL},storageNodeJS:function(){return tk},throwError:function(){return ec},unlinkSync:function(){return eM},writeFileSync:function(){return eG},writeJsonSync:function(){return eb}});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)()})}k(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 ea=ei();function ec(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 a=(o=t!==null&&t!==void 0?t:r.MESSAGE)!==null&&o!==void 0?o:"Internal server error";throw i==="graphql"?new z.GraphQLError(a,{extensions:{code:r.CODE}}):new Error(a)}k(ec,"throwError");ea.DEBUG||(X.default.level=4);function eu(e){var t=$.default[e];return typeof t=="function"?t:$.default.green}k(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(v({schema:e.schema,plugins:[e.isDev?(0,J.ApolloServerPluginLandingPageLocalDefault)():(0,J.ApolloServerPluginLandingPageProductionDefault)(),(0,V.ApolloServerPluginDrainHttpServer)({httpServer:e.server})].concat(T(e.drainServer?[{serverWillStart:function t(){return i(function(){return G(this,function(t){return[2,{drainServer:function t(){return i(function(){var t;return G(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}))}k(ed,"createApolloServer");var ef=K(require("process"),1),ep=require("yargs/helpers"),eE=K(require("yargs/yargs"),1);var eg={name:"@cyberskill/shared",type:"module",version:"1.106.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.21","@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.2",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.12.1"}};var eh=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var em=require("child_process"),ev=K(require("process"),1),ey=K(require("util"),1);var e_={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eS=K(require("node-fetch"),1);var eO=K(require("fs-extra"),1),eC=require("path");var eI=eO.default,eA=eI.appendFileSync,eT=eI.lstatSync,eR=eI.mkdirSync,eN=eI.readFileSync,eM=eI.unlinkSync,eG=eI.writeFileSync,eL=eI.statSync,eD=eO.default.readJsonSync,eb=eO.default.writeJsonSync;function eP(){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)})}k(eP,"pathExistsSync");function ex(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){eP(e)&&eO.default.removeSync(e)})}k(ex,"removeSync");function ew(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.extensions,s=S(n,["extensions"]);eO.default.copySync(e,t,v({filter:k(function(e){return eL(e).isDirectory()||!r||r.length===0?!0:r.includes((0,eC.extname)(e))},"filter")},s))}k(ew,"copySync");var ej=require("path");var ek=ei();function eU(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,ej.resolve).apply(this,[ek.CWD].concat(T(t)))}k(eU,"resolveWorkingPath");function eq(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,ej.resolve).apply(this,T(t))}k(eq,"resolve");function eK(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,ej.join).apply(this,T(t))}k(eK,"join");var eF=ei(),eH=eF.CWD,eY="@cyberskill/shared",eB="node_modules",eW="dist",eV="package.json",eJ="package-lock.json",eQ="tsconfig.json",e$=".gitignore",eX=".simple-git-hooks.json",ez="pnpm-lock.yaml",eZ=".git/hooks/",e0=".git/COMMIT_EDITMSG",e1=".migrate-mongo.config.js",e2=eK(eH,eB,eY,eW),e4="cyberskill",e3="src/nodejs/cli/index.ts",e5="eslint",e8="eslint",e6="vitest",e7="playwright",e9="vitest",te="@commitlint/cli",tt="commitlint",tn="lint-staged",tr="lint-staged",ts="typescript",ti="tsc",to="tsx",ta="git",tc="pnpm",tu="pnpm exec",tl="simple-git-hooks",td="simple-git-hooks",tf="@eslint/config-inspector",tp="eslint-config-inspector",tE="node-modules-inspector",tg="node-modules-inspector",th="migrate-mongo",tm="./node_modules/migrate-mongo/bin/migrate-mongo",tv={CYBERSKILL_DIRECTORY:e2,WORKING_DIRECTORY:eH,TS_CONFIG:eU(eQ),GIT_IGNORE:eU(e$),GIT_HOOK:eU(eZ),GIT_COMMIT_MSG:eU(e0),SIMPLE_GIT_HOOKS_JSON:eU(eX),PACKAGE_JSON:eU(eV),PACKAGE_LOCK_JSON:eU(eJ),PNPM_LOCK_YAML:eU(ez),NODE_MODULES:eU(eB),MIGRATE_MONGO_CONFIG:eU(e1),LINT_STAGED_CONFIG:eU("".concat(e2,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eU("".concat(e2,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eU("".concat(e2,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eU("".concat(e2,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eU("".concat(e2,"/react/vitest/vitest.e2e.js"))};function ty(e){var t=e.isCurrentProject;return v({"pre-commit":tr,"commit-msg":tt},t&&{"pre-push":tz("".concat(ta," pull"))})}k(ty,"createGitHooksConfig");function t_(e,t,n){return tS.apply(this,arguments)}function tS(){tS=i(function(e,t,n){return G(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eh.CLI:return[3,1];case eh.STRING:return[3,3]}return[3,4];case 1:return[4,tD(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),t0(tz("".concat(tu," ").concat(n))))];case 3:return[2,t0(tz(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tS.apply(this,arguments)}k(t_,"buildCommand");function tO(e,t,n){return /*#__PURE__*/i(function(){return G(this,function(r){return[2,t_(e,t,n)]})})}k(tO,"commandFactory");var tC={simpleGitHooks:tO(eh.CLI,tl,td),eslintInspect:tO(eh.CLI,tf,tp),nodeModulesInspect:tO(eh.CLI,tE,tg),eslintCheck:tO(eh.CLI,e5,"".concat(e8," ").concat(tv.WORKING_DIRECTORY)),eslintFix:tO(eh.CLI,e5,"".concat(e8," ").concat(tv.WORKING_DIRECTORY," --fix")),typescriptCheck:tO(eh.CLI,ts,"".concat(ti," -p ").concat(tv.TS_CONFIG," --noEmit")),configureGitHook:tO(eh.STRING,"".concat(ta," config core.hooksPath ").concat(tv.GIT_HOOK)),testUnit:tO(eh.CLI,e6,"".concat(e9," --config ").concat(tv.UNIT_TEST_CONFIG)),testE2e:tO(eh.CLI,"".concat(e6," ").concat(e7),"".concat(e9," --config ").concat(tv.E2E_TEST_CONFIG)),mongoMigrateCreate:k(function(e){return tO(eh.CLI,th,"".concat(to," ").concat(tm," create ").concat(e," -f ").concat(tv.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tO(eh.CLI,th,"".concat(to," ").concat(tm," up -f ").concat(tv.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tO(eh.CLI,th,"".concat(to," ").concat(tm," down -f ").concat(tv.MIGRATE_MONGO_CONFIG)),commitLint:tO(eh.CLI,te,"".concat(tt," --edit ").concat(tv.GIT_COMMIT_MSG," --config ").concat(tv.COMMITLINT_CONFIG)),lintStaged:tO(eh.CLI,tn,"".concat(tr," --config ").concat(tv.LINT_STAGED_CONFIG)),stageBuildDirectory:tO(eh.STRING,"".concat(ta," add ").concat(eW)),build:tO(eh.STRING,"".concat(tc," run build")),pnpmInstallStandard:tO(eh.STRING,"".concat(tc," install")),pnpmInstallLegacy:tO(eh.STRING,"".concat(tc," install --legacy-peer-deps")),pnpmInstallForce:tO(eh.STRING,"".concat(tc," install --force"))};var tI=ei();function tA(e){var t=eK(tI.CWD,eV);if(!eP(t))return!1;try{var n=eD(t),r=n.name,s=n.dependencies,i=s===void 0?{}:s,o=n.devDependencies,a=o===void 0?{}:o,c=r===e,u=e in i,l=e in a;return c||u||l?{path:t,file:n,isCurrentProject:c,isDepend:u,isDevDepend:l}:!1}catch(e){return el.warn("Failed to read package.json: ".concat(e.message)),!1}}k(tA,"getPackage");function tT(e){return tR.apply(this,arguments)}function tR(){tR=i(function(e){var t,n,r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,(0,eS.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]}})});return tR.apply(this,arguments)}k(tT,"getLatestPackageVersion");function tN(e,t){return tM.apply(this,arguments)}function tM(){tM=i(function(e,t){var n,r,s,i,o,a,c,u,l,d,f,p,E,g,h,m,y,_,S,O,C;return G(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=tA(e);if(!n)return[2,v({},e_)];c=n.path,u=n.file,l=n.isCurrentProject,d=n.isDepend,f=n.isDevDepend,p=(r=u.dependencies)!==null&&r!==void 0?r:{},E=(s=u.devDependencies)!==null&&s!==void 0?s:{},g=l?(i=u.version)!==null&&i!==void 0?i:"0.0.0":d?(o=p[e])!==null&&o!==void 0?o:"0.0.0":f?(a=E[e])!==null&&a!==void 0?a:"0.0.0":"0.0.0";if(!l)return[3,1];y=g;return[3,3];case 1:return[4,tT(e)];case 2:y=I.sent();I.label=3;case 3:h=y,m=l||g===h;if(!m&&(t===null||t===void 0?void 0:t.update)){;S=d?"dependencies":f?"devDependencies":null;S&&((_=u[S])===null||_===void 0?void 0:_[e])!==h&&(u[S]=(O=u[S])!==null&&O!==void 0?O:{},u[S][e]=h,eb(c,u),el.info('Updated "'.concat(e,'" to version ').concat(h)))}return[2,{isCurrentProject:l,installedPath:c,file:u,isUpToDate:m}];case 4:C=I.sent();return[2,(el.error('Error checking package "'.concat(e,'": ').concat(C.message)),v({},e_))];case 5:return[2]}})});return tM.apply(this,arguments)}k(tN,"checkPackage");function tG(){return tL.apply(this,arguments)}function tL(){tL=i(function(){var e,t,n,r,s,i,o,a,c,u,l,d;return G(this,function(f){switch(f.label){case 0:e=[{command:k(function(){return tC.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:k(function(){return tC.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:k(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,a=o.command,c=o.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,a()];case 4:u=f.sent();return[4,t4("".concat(c," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();el.warn("Installation attempt failed: ".concat(c)),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.")}})});return tL.apply(this,arguments)}k(tG,"installDependencies");function tD(e,t){return tb.apply(this,arguments)}function tb(){tb=i(function(e,t){var n,r,s,i,o,a,c,u,l,d,f;return G(this,function(p){switch(p.label){case 0:if(!eP(tv.PACKAGE_JSON)){el.error("package.json not found. Aborting setup.");return[2]}p.label=1;case 1:p.trys.push([1,13,,14]);n=T(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return tN(e,v({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=p.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,tG()];case 3:r=p.sent();p.label=4;case 4:r;i=true,o=false,a=undefined;p.label=5;case 5:p.trys.push([5,10,11,12]);c=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();p.label=6;case 6:if(!!(i=(u=c.next()).done))return[3,9];l=u.value;return[4,l()];case 7:p.sent();p.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:d=p.sent();o=true;a=d;return[3,12];case 11:try{if(!i&&c.return!=null){c.return()}}finally{if(o){throw a}}return[7];case 12:return[3,14];case 13:f=p.sent();throw el.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})});return tb.apply(this,arguments)}k(tD,"setupPackages");var tP=K(require("node-persist"),1);var tx=ei();function tw(){return tj.apply(this,arguments)}function tj(){tj=i(function(){var e;return G(this,function(t){switch(t.label){case 0:e=tP.default.defaultInstance;if(e)return[3,2];return[4,tP.default.init({dir:tx.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return tj.apply(this,arguments)}k(tw,"initNodePersist");var tk={get:function e(e){return i(function(){var t,n;return G(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tw()];case 1:r.sent();return[4,tP.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 i(function(){var n;return G(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tw()];case 1:r.sent();return[4,tP.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 i(function(){var t;return G(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tw()];case 1:n.sent();return[4,tP.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 i(function(){var e,t;return G(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tw()];case 1:n.sent();return[4,tP.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 i(function(){return G(this,function(t){try{return[2,"".concat(tx.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(el.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tU=ei(),tq=ey.promisify(em.exec);function tK(e){return"error_list:".concat(e)}k(tK,"getErrorListKey");function tF(e){return tH.apply(this,arguments)}function tH(){tH=i(function(e){var t,n,r;return G(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tK(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,tk.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(/*#__PURE__*/i(function(){var e;return G(this,function(t){switch(t.label){case 0:return[4,tk.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]}})});return tH.apply(this,arguments)}k(tF,"saveErrorListToStorage");function tY(){return tB.apply(this,arguments)}function tB(){tB=i(function(){var e,t,n;return G(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tk.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(/*#__PURE__*/function(){var e=i(function(e){var t;return G(this,function(n){switch(n.label){case 0:return[4,tk.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})});return function(t){return e.apply(this,arguments)}}()))];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]}})});return tB.apply(this,arguments)}k(tY,"getStoredErrorLists");function tW(){return tV.apply(this,arguments)}function tV(){tV=i(function(){var e,t,n;return G(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tk.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 tk.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]}})});return tV.apply(this,arguments)}k(tW,"clearAllErrorLists");function tJ(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 a,c,u,l,d;var f=s.exec(e)||[],p=i.exec(e)||[],E=o.exec(e)||[];var g,h,m,v,y,_;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===Q.Error?Q.Error:Q.Warning,message:(g=f===null||f===void 0?void 0:(a=f[4])===null||a===void 0?void 0:a.trim())!==null&&g!==void 0?g:"",rule:(h=f===null||f===void 0?void 0:(c=f[5])===null||c===void 0?void 0:c.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(m=p===null||p===void 0?void 0:p[1])!==null&&m!==void 0?m:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===Q.Error?Q.Error:Q.Warning,message:(v=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):E.length?t.push({file:"commitlint",type:Q.Error,message:(y=E===null||E===void 0?void 0:(l=E[1])===null||l===void 0?void 0:l.trim())!==null&&y!==void 0?y:"",rule:(_=E===null||E===void 0?void 0:(d=E[2])===null||d===void 0?void 0:d.trim())!==null&&_!==void 0?_:""}):n.push(e.trim())}}),t.length&&tF(t),tU.DEBUG&&n.length&&(el.warn("Unmatched lines:"),n.forEach(function(e){return el.info(" ".concat(e))}))}k(tJ,"parseTextErrors");function tQ(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,a=e.message;n.push({type:r===2?Q.Error:Q.Warning,file:t,position:"".concat(s,":").concat(i),rule:o,message:a})})}),n.length&&tF(n)}catch(t){tJ(e)}}k(tQ,"parseCommandOutput");function t$(e){return tX.apply(this,arguments)}function tX(){tX=i(function(e){var t,n,r,s,i,o,a,c,u;var l=arguments;return G(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tQ;n=new AbortController;ev.default.on("SIGINT",function(){el.warn("Process interrupted. Terminating..."),n.abort(),ev.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tq(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();a=o.stdout,c=o.stderr,u=o.message;[a,c].forEach(function(e){return e&&t(e)}),!c&&!a&&el.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return tX.apply(this,arguments)}k(t$,"executeCommand");function tz(e){return{raw:!0,cmd:e}}k(tz,"rawCommand");function tZ(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tu," ").concat(eY," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tu," ").concat(to," ").concat(e3," ").concat(e):"".concat(tu," ").concat(e4," ").concat(e)}k(tZ,"formatCLI");function t0(e,t){return typeof e=="function"?tZ(e(t),t):(typeof e==="undefined"?"undefined":R(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tZ(e,t):e}k(t0,"formatCommand");function t1(e){return t2.apply(this,arguments)}function t2(){t2=i(function(e){var t,n,r,s,i,o,a;var c=arguments;return G(this,function(u){switch(u.label){case 0:t=c.length>1&&c[1]!==void 0?c[1]:{};r=(n=t===null||t===void 0?void 0:t.isRemote)!==null&&n!==void 0?n:!1;if(!r)return[3,1];a=!1;return[3,3];case 1:return[4,tN(eY)];case 2:a=u.sent().isCurrentProject;u.label=3;case 3:s=a,i={isRemote:r,isCurrentProject:s},o=typeof e=="function"?e(i):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var t=A(e,2),n=t[0],r=t[1];return[n,t0(r,i)]}))]}})});return t2.apply(this,arguments)}k(t1,"resolveCommands");function t4(e,t){return t3.apply(this,arguments)}function t3(){t3=i(function(e,t){var n;return G(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);el.start("".concat(e)),tU.DEBUG&&el.info("→ ".concat(t));return[4,t$(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]}})});return t3.apply(this,arguments)}k(t4,"runCommand");function t5(){return t8.apply(this,arguments)}function t8(){t8=i(function(){var e,t;return G(this,function(n){switch(n.label){case 0:if(!eP(tv.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,tC.typescriptCheck()];case 1:return[4,t4.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]}})});return t8.apply(this,arguments)}k(t5,"checkTypescript");function t6(){return t7.apply(this,arguments)}function t7(){t7=i(function(){var e,t,n,r;var s=arguments;return G(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,t4.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,t4.apply(void 0,r.concat([i.sent()]))];case 5:t=i.sent();i.label=6;case 6:t;return[2]}})});return t7.apply(this,arguments)}k(t6,"checkEslint");function t9(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";el.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}k(t9,"printIssues");function ne(){return nt.apply(this,arguments)}function nt(){nt=i(function(){var e,t,n;return G(this,function(r){switch(r.label){case 0:return[4,tY()];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"):(t9("Warnings",n),t9("Errors",t),(t.length>0||n.length>0)&&ef.default.exit(1));return[2]}})});return nt.apply(this,arguments)}k(ne,"showCheckResult");function nn(){return nr.apply(this,arguments)}function nr(){nr=i(function(){var e,t,n,r,s,i;return G(this,function(o){switch(o.label){case 0:return[4,tW()];case 1:o.sent();return[4,tN(eY)];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(eY)];return[4,tC.build()];case 4:return[4,t4.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,tC.stageBuildDirectory()];case 6:return[4,t4.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(eY,": ").concat(s.message)),s;case 9:i=["Executing lint-staged"];return[4,tC.lintStaged()];case 10:return[4,t4.apply(void 0,i.concat([o.sent()]))];case 11:o.sent(),ne();return[2]}})});return nr.apply(this,arguments)}k(nn,"lintStaged");function ns(){return ni.apply(this,arguments)}function ni(){ni=i(function(){var e;return G(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,tC.eslintInspect()];case 1:return[4,t4.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return ni.apply(this,arguments)}k(ns,"inspectLint");function no(){return na.apply(this,arguments)}function na(){na=i(function(){return G(this,function(e){switch(e.label){case 0:return[4,tW()];case 1:e.sent();return[4,Promise.all([t5(),t6()])];case 2:e.sent(),ne();return[2]}})});return na.apply(this,arguments)}k(no,"lintCheck");function nc(){return nu.apply(this,arguments)}function nu(){nu=i(function(){return G(this,function(e){switch(e.label){case 0:return[4,tW()];case 1:e.sent();return[4,Promise.all([t5(),t6(!0)])];case 2:e.sent(),ne();return[2]}})});return nu.apply(this,arguments)}k(nc,"lintFix");function nl(){return nd.apply(this,arguments)}function nd(){nd=i(function(){var e;return G(this,function(t){switch(t.label){case 0:return[4,tW()];case 1:t.sent();e=["Validating commit message"];return[4,tC.commitLint()];case 2:return[4,t4.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),ne();return[2]}})});return nd.apply(this,arguments)}k(nl,"commitLint");function nf(){return np.apply(this,arguments)}function np(){np=i(function(){var e,t,n,r;return G(this,function(s){switch(s.label){case 0:e=["Configuring Git hooks"];return[4,tC.configureGitHook()];case 1:return[4,t4.apply(void 0,e.concat([s.sent()]))];case 2:s.sent(),ex(tv.GIT_HOOK);return[4,t1(ty)];case 3:t=s.sent();eb(tv.SIMPLE_GIT_HOOKS_JSON,t);n="\n".concat(eX,"\n");eP(tv.GIT_IGNORE)?eN(tv.GIT_IGNORE,"utf-8").split("\n").includes(eX)||eA(tv.GIT_IGNORE,n,"utf-8"):eG(tv.GIT_IGNORE,n,"utf-8");r=["Setting up simple-git-hooks"];return[4,tC.simpleGitHooks()];case 4:return[4,t4.apply(void 0,r.concat([s.sent()]))];case 5:s.sent();return[2]}})});return np.apply(this,arguments)}k(nf,"setupGitHook");function nE(){return ng.apply(this,arguments)}function ng(){ng=i(function(){return G(this,function(e){switch(e.label){case 0:return[4,tD([eY],{update:!0,postInstallActions:[nf]})];case 1:e.sent();return[2]}})});return ng.apply(this,arguments)}k(nE,"setup");function nh(){return nm.apply(this,arguments)}function nm(){nm=i(function(){return G(this,function(e){switch(e.label){case 0:ex(tv.NODE_MODULES,tv.PNPM_LOCK_YAML);return[4,tG()];case 1:e.sent();return[4,nf()];case 2:e.sent();return[2]}})});return nm.apply(this,arguments)}k(nh,"reset");function nv(){return ny.apply(this,arguments)}function ny(){ny=i(function(){var e;return G(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,tC.nodeModulesInspect()];case 1:return[4,t4.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return ny.apply(this,arguments)}k(nv,"inspect");function n_(){return nS.apply(this,arguments)}function nS(){nS=i(function(){var e;return G(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,tC.testUnit()];case 1:return[4,t4.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return nS.apply(this,arguments)}k(n_,"testUnit");function nO(){return nC.apply(this,arguments)}function nC(){nC=i(function(){var e;return G(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,tC.testE2e()];case 1:return[4,t4.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return nC.apply(this,arguments)}k(nO,"testE2E");function nI(e){return nA.apply(this,arguments)}function nA(){nA=i(function(e){var t;return G(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,tC.mongoMigrateCreate(e)];case 1:return[4,t4.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})});return nA.apply(this,arguments)}k(nI,"mongoMigrateCreate");function nT(){return nR.apply(this,arguments)}function nR(){nR=i(function(){var e;return G(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,tC.mongoMigrateUp()];case 1:return[4,t4.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return nR.apply(this,arguments)}k(nT,"mongoMigrateUp");function nN(){return nM.apply(this,arguments)}function nM(){nM=i(function(){var e;return G(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,tC.mongoMigrateDown()];case 1:return[4,t4.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return nM.apply(this,arguments)}k(nN,"mongoMigrateDown");i(function(){var e;return G(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,eE.default)((0,ep.hideBin)(ef.default.argv)).scriptName(e4).usage("$0 <command> [options]").command("lint","Check code for linting issues",no).command("lint:fix","Fix linting issues automatically",nc).command("lint:inspect","View active ESLint configuration",ns).command("lint-staged","Run lint checks on staged files",nn).command("commitlint","Validate commit message format",nl).command("setup","Initialize project setup and dependencies",nE).command("reset","Reset the project and reinstall dependencies",nh).command("inspect","Analyze installed project dependencies",nv).command("test:unit","Run unit test suite",n_).command("test:e2e","Run end-to-end test suite",nO).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},/*#__PURE__*/function(){var e=i(function(e){return G(this,function(t){switch(t.label){case 0:if(!e.name){el.error("Migration name is required.");return[2]}return[4,nI(e.name)];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}()).command("mongo:migrate:up","Apply all MongoDB migrations",nT).command("mongo:migrate:down","Rollback last MongoDB migration",nN).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(eg.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 nG=require("express");var nL=K(require("compression"),1),nD=K(require("cors"),1),nb=K(require("express"),1),nP=K(require("express-device"),1),nx=K(require("express-session"),1);function nw(e){return(0,nD.default)({origin:k(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})}k(nw,"createCors");function nj(e){var t=(0,nb.default)();return t.set("trust proxy",1),t.use(nb.default.urlencoded({extended:!0})),t.use((0,nL.default)()),t.use(nP.default.capture()),e.staticFolder&&t.use(nb.default.static(e.staticFolder)),e.sessionOptions&&t.use((0,nx.default)(e.sessionOptions)),t}k(nj,"createExpress");var nk="MONGO_MIGRATE_OPTIONS";var nU=require("mongodb"),nq=require("mongoose");var nK=/*#__PURE__*/function(e){f(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(nU.Db);k(nK,"C_Db");var nF=nK,nH=/*#__PURE__*/function(e){f(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(nq.Document);k(nH,"C_Document");var nY=nH,nB=/*#__PURE__*/function(e){f(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(nq.Model);k(nB,"C_Model");var nW=nB,nV=/*#__PURE__*/function(e){f(t,e);function t(){a(this,t);return o(this,t,arguments)}return t}(nU.Collection);k(nV,"C_Collection");var nJ=nV;var nQ=require("date-fns"),n$=K(require("migrate-mongo"),1),nX=require("mongoose"),nz=K(require("mongoose-aggregate-paginate-v2"),1),nZ=K(require("mongoose-paginate-v2"),1),n0=require("uuid");var n1=K(require("crypto-js"),1),n2=K(require("slugify"),1);var n4=n2.default.default||n2.default;function n3(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return n4(e,v({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))}k(n3,"generateSlug");function n5(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return n1.default.SHA256(e).toString(n1.default.enc.Hex).slice(0,t)}k(n5,"generateShortId");var n8={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":R(e))=="object"?p(e,Date)?!1:p(e,Map)||p(e,Set)?e.size===0:p(e,WeakMap)||p(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 n6={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,nQ.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"?n6.getDateTime():new Date;return{id:(0,n0.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:n0.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 a=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=a.virtual(t,n);r&&s.get(r)}),o||a.add(n6.createGenericSchema(t)),a},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,a=o===void 0?!1:o,c=e.virtuals,u=c===void 0?[]:c,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=n6.createSchema({mongoose:t,schema:r,virtuals:u});return n6.applyPlugins(f,[i&&nZ.default,a&&nz.default]),n6.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 _(v({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=i(function(e){return G(this,function(t){return[2,!n8.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=i(function(t){var n;return G(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()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=i(function(t){return G(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!p(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:_(v({},n$.default),{setConfig:k(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eG(tv.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e1,"\n");eP(tv.GIT_IGNORE)?eN(tv.GIT_IGNORE,"utf-8").split("\n").includes(e1)||eA(tv.GIT_IGNORE,n,"utf-8"):eG(tv.GIT_IGNORE,n,"utf-8")},"setConfig")})},n7=/*#__PURE__*/function(){function e(t,n){a(this,e);H(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){var t=this;return i(function(){var n,r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);n=v({},n6.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=i.sent(),r)];case 2:s=i.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return i(function(){var n,r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);n=e.map(function(e){return v({},n6.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=i.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=i.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return i(function(){var n,r;return G(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return i(function(){var n,r;return G(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return i(function(){var n,r;return G(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var n=this;return i(function(){var r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);return[4,n.collection.updateOne(e,{$set:t})];case 1:r=i.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:r}];case 2:s=i.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var n=this;return i(function(){var r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);return[4,n.collection.updateMany(e,{$set:t})];case 1:r=i.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:r}];case 2:s=i.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return i(function(){var n,r;return G(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return i(function(){var n,r;return G(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();k(n7,"MongoController");var n9=n7,re=/*#__PURE__*/function(){function e(t){a(this,e);H(this,"model");this.model=t}u(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;var s=this;return i(function(){var i,o,a;return G(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);i=s.model.findOne(e,t,n);r&&i.populate(r);return[4,i.exec()];case 1:o=c.sent();return[2,o?{success:!0,result:o}:{success:!1,message:"No ".concat(s.getModelName()," found."),code:eo.NOT_FOUND.CODE}];case 2:a=c.sent();return[2,{success:!1,message:a.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=arguments.length>3?arguments[3]:void 0;var s=this;return i(function(){var i,o,a;return G(this,function(c){switch(c.label){case 0:c.trys.push([0,2,,3]);i=s.model.find(e,t,n);r&&i.populate(r);o={success:!0};return[4,i.exec()];case 1:return[2,(o.result=c.sent(),o)];case 2:a=c.sent();return[2,{success:!1,message:a.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return i(function(){var r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);r={success:!0};return[4,n.model.paginate(e,t)];case 1:return[2,(r.result=i.sent(),r)];case 2:s=i.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return i(function(){var r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);r={success:!0};return[4,n.model.aggregatePaginate(n.model.aggregate(e),t)];case 1:return[2,(r.result=i.sent(),r)];case 2:s=i.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return i(function(){var n,r;return G(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return i(function(){var n,r;return G(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return i(function(){var r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);r={success:!0};return[4,n.model.insertMany(e,t)];case 1:return[2,(r.result=i.sent().map(function(e){return p(e,nX.Document)?e.toObject():null}).filter(function(e){return e!==null}),r)];case 2:s=i.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return i(function(){var s,i;return G(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,r.model.findOneAndUpdate(e,t,v({new:!0},n)).exec()];case 1:s=o.sent();return[2,s?{success:!0,result:s}:{success:!1,message:"Failed to update ".concat(r.getModelName(),"."),code:eo.NOT_FOUND.CODE}];case 2:i=o.sent();return[2,{success:!1,message:i.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return i(function(){var s,i;return G(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);s={success:!0};return[4,r.model.updateMany(e,t,n).exec()];case 1:return[2,(s.result=o.sent(),s)];case 2:i=o.sent();return[2,{success:!1,message:i.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return i(function(){var r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);return[4,n.model.findOneAndDelete(e,t).exec()];case 1:r=i.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"No ".concat(n.getModelName()," found to delete."),code:eo.NOT_FOUND.CODE}];case 2:s=i.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return i(function(){var r,s;return G(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);return[4,n.model.deleteMany(e,t).exec()];case 1:r=i.sent();return[2,r.deletedCount===0?{success:!1,message:"No documents found to delete.",code:eo.NOT_FOUND.CODE}:{success:!0,result:r}];case 2:s=i.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var n=this;return i(function(){var r,s,i,o;return G(this,function(a){switch(a.label){case 0:r=new Set;s=0;a.label=1;case 1:if(!(s<10))return[3,5];i=n5(e,s+t);o=!r.has(i);if(!o)return[3,3];r.add(i);return[4,n.model.exists({shortId:i})];case 2:o=!a.sent();a.label=3;case 3:if(o)return[2,{success:!0,result:i}];a.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:eo.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=this;return i(function(){var s,o,a,c,u,l,d,f,p,E,g;return G(this,function(h){switch(h.label){case 0:h.trys.push([0,8,,9]);s=t[e],o=k(/*#__PURE__*/function(){var e=i(function(e){var s,i,o;return G(this,function(a){switch(a.label){case 0:return[4,r.model.findOne(n6.createSlugQuery(e,n,t.id))];case 1:s=a.sent();if(!s)return[2,e];i=1;a.label=2;case 2:o="".concat(e,"-").concat(i);return[4,r.model.findOne(n6.createSlugQuery(o,n,t.id))];case 3:s=a.sent(),i++;a.label=4;case 4:if(s)return[3,2];a.label=5;case 5:return[2,o]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof s==="undefined"?"undefined":R(s))=="object"))return[3,5];a={};c=[];for(u in s)c.push(u);l=0;h.label=1;case 1:if(!(l<c.length))return[3,4];d=c[l];f=n3(s[d]);return[4,o(f)];case 2:a[d]=h.sent();h.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:a}];case 5:p=n3(s);E={success:!0};return[4,o(p)];case 6:return[2,(E.result=h.sent(),E)];case 7:return[3,9];case 8:g=h.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(g.message),code:eo.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return i(function(){var n,r;return G(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();k(re,"MongooseController");var rt=re;var rn=require("graphql-ws/use/ws"),rr=require("ws");function rs(e){return new rr.WebSocketServer({server:e.server,path:e.path})}k(rs,"createWSServer");function ri(e){return(0,rn.useServer)({schema:e.schema},e.server)}k(ri,"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,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 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});
@@ -29,12 +29,13 @@ 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 { appendFileSync_alias_1 as appendFileSync } from '../_tsup-dts-rollup.cjs';
33
32
  export { lstatSync_alias_1 as lstatSync } from '../_tsup-dts-rollup.cjs';
33
+ export { readdirSync_alias_1 as readdirSync } from '../_tsup-dts-rollup.cjs';
34
34
  export { mkdirSync_alias_1 as mkdirSync } from '../_tsup-dts-rollup.cjs';
35
35
  export { readFileSync_alias_1 as readFileSync } from '../_tsup-dts-rollup.cjs';
36
- export { unlinkSync_alias_1 as unlinkSync } from '../_tsup-dts-rollup.cjs';
37
36
  export { writeFileSync_alias_1 as writeFileSync } from '../_tsup-dts-rollup.cjs';
37
+ export { appendFileSync_alias_1 as appendFileSync } from '../_tsup-dts-rollup.cjs';
38
+ export { unlinkSync_alias_1 as unlinkSync } from '../_tsup-dts-rollup.cjs';
38
39
  export { statSync_alias_1 as statSync } from '../_tsup-dts-rollup.cjs';
39
40
  export { readJsonSync_alias_1 as readJsonSync } from '../_tsup-dts-rollup.cjs';
40
41
  export { writeJsonSync_alias_1 as writeJsonSync } from '../_tsup-dts-rollup.cjs';
@@ -29,12 +29,13 @@ 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 { appendFileSync_alias_1 as appendFileSync } from '../_tsup-dts-rollup.js';
33
32
  export { lstatSync_alias_1 as lstatSync } from '../_tsup-dts-rollup.js';
33
+ export { readdirSync_alias_1 as readdirSync } from '../_tsup-dts-rollup.js';
34
34
  export { mkdirSync_alias_1 as mkdirSync } from '../_tsup-dts-rollup.js';
35
35
  export { readFileSync_alias_1 as readFileSync } from '../_tsup-dts-rollup.js';
36
- export { unlinkSync_alias_1 as unlinkSync } from '../_tsup-dts-rollup.js';
37
36
  export { writeFileSync_alias_1 as writeFileSync } from '../_tsup-dts-rollup.js';
37
+ export { appendFileSync_alias_1 as appendFileSync } from '../_tsup-dts-rollup.js';
38
+ export { unlinkSync_alias_1 as unlinkSync } from '../_tsup-dts-rollup.js';
38
39
  export { statSync_alias_1 as statSync } from '../_tsup-dts-rollup.js';
39
40
  export { readJsonSync_alias_1 as readJsonSync } from '../_tsup-dts-rollup.js';
40
41
  export { writeJsonSync_alias_1 as writeJsonSync } from '../_tsup-dts-rollup.js';