@cyberskill/shared 1.126.0 → 1.127.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.
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e,t,n,r,s,i,o){try{var c=e[i](o);var a=c.value}catch(e){n(e);return}if(c.done){t(a)}else{Promise.resolve(a).then(r,s)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var o=e.apply(t,n);function c(e){s(o,r,i,c,a,"next",e)}function a(e){s(o,r,i,c,a,"throw",e)}c(undefined)})}}function o(e,t,n){t=d(t);return C(e,G()?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 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,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 m(){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 h(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function 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 S(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 _(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&&(N(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)||R(e,n)||m()}function T(e){return n(e)||E(e)||R(e)||h()}function N(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function R(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function G(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(G=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 b=Object.create;var L=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var j=function(e,t,n){return t in e?L(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var k=function(e,t){return L(e,"name",{value:t,configurable:!0})};var q=function(e,t){for(var n in t)L(e,n,{get:t[n],enumerable:!0})},U=function(e,t,n,r){var s=true,i=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":N(t))=="object"||typeof t=="function")try{var c=function(){var s=u.value;!w.call(e,s)&&s!==n&&L(e,s,{get:function(){return t[s]},enumerable:!(r=D(t,s))||r.enumerable})};for(var a=P(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 F=function(e,t,n){return n=e!=null?b(x(e)):{},U(t||!e||!e.__esModule?L(n,"default",{value:e,enumerable:!0}):n,e)},K=function(e){return U(L({},"__esModule",{value:!0}),e)};var H=function(e,t,n){return j(e,(typeof t==="undefined"?"undefined":N(t))!="symbol"?t+"":t,n)};var Y={};q(Y,{BUILD_DIRECTORY:function(){return ex},CHECK_PACKAGE_EMPTY_RESULT:function(){return eO},COMMIT_LINT_CLI:function(){return e0},COMMIT_LINT_PACKAGE_NAME:function(){return eZ},CYBERSKILL_CLI:function(){return eW},CYBERSKILL_CLI_PATH:function(){return eV},CYBERSKILL_DIRECTORY:function(){return eB},CYBERSKILL_PACKAGE_NAME:function(){return eD},C_Collection:function(){return nR},C_Db:function(){return nO},C_Document:function(){return nI},C_Model:function(){return nT},ESLINT_CLI:function(){return eQ},ESLINT_INSPECT_CLI:function(){return tn},ESLINT_INSPECT_PACKAGE_NAME:function(){return tt},ESLINT_PACKAGE_NAME:function(){return eJ},E_CommandType:function(){return ev},E_IssueType:function(){return Q},GIT_CLI:function(){return e8},GIT_COMMIT_EDITMSG:function(){return eH},GIT_HOOK:function(){return eK},GIT_IGNORE:function(){return eq},LINT_STAGED_CLI:function(){return e2},LINT_STAGED_PACKAGE_NAME:function(){return e1},MIGRATE_MONGO_CLI:function(){return to},MIGRATE_MONGO_CONFIG:function(){return eY},MIGRATE_MONGO_PACKAGE_NAME:function(){return ti},MONGO_MIGRATE_OPTIONS:function(){return nv},MongoController:function(){return nV},MongooseController:function(){return nQ},NODE_MODULES:function(){return eP},NODE_MODULES_INSPECT_CLI:function(){return ts},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return tr},PACKAGE_JSON:function(){return ew},PACKAGE_LOCK_JSON:function(){return ej},PATH:function(){return tc},PLAYWRIGHT_PACKAGE_NAME:function(){return eX},PNPM_CLI:function(){return e6},PNPM_EXEC_CLI:function(){return e7},PNPM_LOCK_YAML:function(){return eF},Router:function(){return ns.Router},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return e9},SIMPLE_GIT_HOOK_CLI:function(){return te},SIMPLE_GIT_HOOK_JSON:function(){return eU},TSCONFIG_JSON:function(){return ek},TSC_CLI:function(){return e3},TSC_PACKAGE_NAME:function(){return e4},TSX_CLI:function(){return e5},VITEST_CLI:function(){return ez},VITEST_PACKAGE_NAME:function(){return e$},WORKING_DIRECTORY:function(){return eL},aggregatePaginate:function(){return nL.default},appendFileSync:function(){return tO},bodyParser:function(){return no.default},checkPackage:function(){return tG},clearAllErrorLists:function(){return tF},command:function(){return td},copySync:function(){return tA},createApolloServer:function(){return ep},createCors:function(){return nE},createCorsOptions:function(){return np},createExpress:function(){return nm},createGitHooksConfig:function(){return ta},createNest:function(){return nh},createSession:function(){return ng},createWSServer:function(){return nz},express:function(){return nl.default},expressMiddleware:function(){return W.expressMiddleware},formatCommand:function(){return tV},fs:function(){return tf},getLatestPackageVersion:function(){return tR},getPackage:function(){return tN},getStoredErrorLists:function(){return tU},initGraphQLWS:function(){return nZ},installDependencies:function(){return tM},join:function(){return eM},logNodeJS:function(){return ef},lstatSync:function(){return tE},mkdirSync:function(){return tm},mongo:function(){return nB},mongoosePaginate:function(){return nD.default},path:function(){return eN},pathExistsSync:function(){return tC},rawCommand:function(){return tB},readFileSync:function(){return th},readJsonSync:function(){return tS},readdirSync:function(){return tg},removeSync:function(){return tI},resolve:function(){return eG},resolveCommands:function(){return tJ},resolveWorkingPath:function(){return eR},runCommand:function(){return tQ},setupPackages:function(){return tb},statSync:function(){return ty},storageNodeJS:function(){return tx},throwError:function(){return el},unlinkSync:function(){return tv},writeFileSync:function(){return t_}});module.exports=K(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 $=F(require("chalk"),1),X=F(require("consola"),1),z=require("graphql");var Z=".cyberskill-storage";var ee=F(require("@dotenvx/dotenvx"),1),et=require("envalid"),en=F(require("os"),1),er=F(require("path"),1),es=F(require("process"),1);var ei=!1;function eo(){ei||(ee.default.config(),ei=!0)}k(eo,"loadEnvFile");function ec(){eo();var e=(0,et.cleanEnv)(es.default.env,{CWD:(0,et.str)({default:es.default.cwd()}),DEBUG:(0,et.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,et.str)({default:er.default.join(en.default.homedir(),Z)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}k(ec,"getEnv");var ea={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 eu=ec();function el(e){var t=e.message,n=e.status,r=n===void 0?ea.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)}k(el,"throwError");eu.DEBUG||(X.default.level=4);function ed(e){var t=$.default[e];return typeof t=="function"?t:$.default.green}k(ed,"chalkKeyword");var ef={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(ed(n)("Rule:")," ").concat(s)),X.default.log(" ".concat(ed(n)("Message:")," ").concat(i))}),X.default.box(ed(n)("".concat(e," : ").concat(t.length))),X.default.log($.default.gray("─".repeat(40)))}};function ep(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 M(this,function(t){return[2,{drainServer:function t(){return i(function(){var t;return M(this,function(n){(t=e.drainServer)===null||t===void 0?void 0:t.call(e),ef.info("Apollo Server drainServer hook called");return[2]})})()}}]})})()}}]:[]))},e.isDev&&{introspection:!0,includeStacktraceInErrorResponses:!0}))}k(ep,"createApolloServer");var eE=F(require("process"),1),eg=require("yargs/helpers"),em=F(require("yargs/yargs"),1);var eh={name:"@cyberskill/shared",type:"module",version:"1.125.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/env":{types:"./dist/configs/env/index.d.ts",import:"./dist/configs/env/index.js",require:"./dist/configs/env/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:"tsup --watch",lint:"tsx src/nodejs/cli/index.ts lint","lint:fix":"tsx src/nodejs/cli/index.ts lint:fix","lint:inspect":"tsx src/nodejs/cli/index.ts lint:inspect",reset:"tsx src/nodejs/cli/index.ts reset",setup:"tsx src/nodejs/cli/index.ts setup",inspect:"tsx src/nodejs/cli/index.ts inspect","test:unit":"tsx src/nodejs/cli/index.ts test:unit","test:e2e":"tsx src/nodejs/cli/index.ts test:e2e",commitlint:"tsx src/nodejs/cli/index.ts commitlint","lint-staged":"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","@dotenvx/dotenvx":"1.41.0","@eddeee888/gcg-typescript-resolver-files":"0.12.0","@eslint-react/eslint-plugin":"1.48.5","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@microsoft/api-extractor":"7.52.5","@nestjs/common":"11.1.0","@nestjs/core":"11.1.0","@next/eslint-plugin-next":"15.3.1","@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","body-parser":"2.2.0",chalk:"5.4.1",classnames:"2.5.1",compression:"1.8.0",consola:"3.4.2","cookie-parser":"1.4.7",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.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-session":"1.18.1","express-useragent":"1.0.15","fs-extra":"11.3.0",globals:"16.0.0",graphql:"16.11.0","graphql-ws":"6.0.4",i18next:"25.0.2",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.16.0",mongoose:"8.14.1","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.0","next-intl":"4.1.0","node-fetch":"3.3.2","node-persist":"4.0.4",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.4",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/body-parser":"1.19.5","@types/compression":"1.7.5","@types/cookie-parser":"1.4.8","@types/cors":"2.8.17","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.1","@types/express-useragent":"1.0.5","@types/fs-extra":"11.0.4","@types/migrate-mongo":"10.0.5","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node":"22.15.3","@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.7","simple-git-hooks":"2.13.0"}};var ev=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var ey=require("child_process"),eS=F(require("process"),1),e_=F(require("util"),1);var eO={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eC=F(require("node-fetch"),1);var eI=F(require("fs-extra"),1);var eA=F(require("path"),1);var eT=ec(),eN=eA.default;function eR(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eN).resolve.apply(r,[eT.CWD].concat(T(t)))}k(eR,"resolveWorkingPath");function eG(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eN).resolve.apply(r,T(t))}k(eG,"resolve");function eM(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eN).join.apply(r,T(t))}k(eM,"join");var eb=ec(),eL=eb.CWD,eD="@cyberskill/shared",eP="node_modules",ex="dist",ew="package.json",ej="package-lock.json",ek="tsconfig.json",eq=".gitignore",eU=".simple-git-hooks.json",eF="pnpm-lock.yaml",eK=".git/hooks/",eH=".git/COMMIT_EDITMSG",eY=".migrate-mongo.config.js",eB=eM(eL,eP,eD,ex),eW="cyberskill",eV="src/nodejs/cli/index.ts",eJ="eslint",eQ="eslint",e$="vitest",eX="playwright",ez="vitest",eZ="@commitlint/cli",e0="commitlint",e1="lint-staged",e2="lint-staged",e4="typescript",e3="tsc",e5="tsx",e8="git",e6="pnpm",e7="pnpm exec",e9="simple-git-hooks",te="simple-git-hooks",tt="@eslint/config-inspector",tn="eslint-config-inspector",tr="node-modules-inspector",ts="node-modules-inspector",ti="migrate-mongo",to="./node_modules/migrate-mongo/bin/migrate-mongo",tc={CYBERSKILL_DIRECTORY:eB,WORKING_DIRECTORY:eL,TS_CONFIG:eR(ek),GIT_IGNORE:eR(eq),GIT_HOOK:eR(eK),GIT_COMMIT_MSG:eR(eH),SIMPLE_GIT_HOOKS_JSON:eR(eU),PACKAGE_JSON:eR(ew),PACKAGE_LOCK_JSON:eR(ej),PNPM_LOCK_YAML:eR(eF),NODE_MODULES:eR(eP),MIGRATE_MONGO_CONFIG:eR(eY),LINT_STAGED_CONFIG:eR("".concat(eB,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:eR("".concat(eB,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:eR("".concat(eB,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eR("".concat(eB,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eR("".concat(eB,"/react/vitest/vitest.e2e.js"))};function ta(e){var t=e.isCurrentProject;return v({"pre-commit":e2,"commit-msg":e0},t&&{"pre-push":tB("".concat(e8," pull"))})}k(ta,"createGitHooksConfig");function tu(e,t,n){return i(function(){return M(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ev.CLI:return[3,1];case ev.STRING:return[3,3]}return[3,4];case 1:return[4,tb(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),tV(tB("".concat(e7," ").concat(n))))];case 3:return[2,tV(tB(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}k(tu,"buildCommand");function tl(e,t,n){return function(){return i(function(){return M(this,function(r){return[2,tu(e,t,n)]})})()}}k(tl,"commandFactory");var td={simpleGitHooks:tl(ev.CLI,e9,te),eslintInspect:tl(ev.CLI,tt,tn),nodeModulesInspect:tl(ev.CLI,tr,ts),eslintCheck:tl(ev.CLI,eJ,"".concat(eQ," ").concat(tc.WORKING_DIRECTORY," --no-cache")),eslintFix:tl(ev.CLI,eJ,"".concat(eQ," ").concat(tc.WORKING_DIRECTORY," --fix --no-cache")),typescriptCheck:tl(ev.CLI,e4,"".concat(e3," -p ").concat(tc.TS_CONFIG," --noEmit")),configureGitHook:tl(ev.STRING,"".concat(e8," config core.hooksPath ").concat(tc.GIT_HOOK)),testUnit:tl(ev.CLI,e$,"".concat(ez," --config ").concat(tc.UNIT_TEST_CONFIG)),testE2e:tl(ev.CLI,"".concat(e$," ").concat(eX),"".concat(ez," --config ").concat(tc.E2E_TEST_CONFIG)),mongoMigrateCreate:k(function(e){return tl(ev.CLI,ti,"".concat(e5," ").concat(to," create ").concat(e," -f ").concat(tc.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tl(ev.CLI,ti,"".concat(e5," ").concat(to," up -f ").concat(tc.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tl(ev.CLI,ti,"".concat(e5," ").concat(to," down -f ").concat(tc.MIGRATE_MONGO_CONFIG)),commitLint:tl(ev.CLI,eZ,"".concat(e0," --edit ").concat(tc.GIT_COMMIT_MSG," --config ").concat(tc.COMMITLINT_CONFIG)),lintStaged:tl(ev.CLI,e1,"".concat(e2," --config ").concat(tc.LINT_STAGED_CONFIG)),stageBuildDirectory:tl(ev.STRING,"".concat(e8," add ").concat(ex)),build:tl(ev.STRING,"".concat(e6," run build")),pnpmInstallStandard:tl(ev.STRING,"".concat(e6," install")),pnpmInstallLegacy:tl(ev.STRING,"".concat(e6," install --legacy-peer-deps")),pnpmInstallForce:tl(ev.STRING,"".concat(e6," install --force"))};var tf=eI.default,tp=eI.default,tE=tp.lstatSync,tg=tp.readdirSync,tm=tp.mkdirSync,th=tp.readFileSync,tv=tp.unlinkSync,ty=tp.statSync,tS=eI.default.readJsonSync;function t_(e,t,n){eI.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}k(t_,"writeFileSync");function tO(e,t,n){eI.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}k(tO,"appendFileSync");function tC(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eI.default.pathExistsSync(e)})}k(tC,"pathExistsSync");function tI(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){tC(e)&&eI.default.removeSync(e)})}k(tI,"removeSync");function tA(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.extensions,s=_(n,["extensions"]);eI.default.copySync(e,t,v({filter:k(function(e){return ty(e).isDirectory()||!r||r.length===0?!0:r.includes(eN.extname(e))},"filter")},s))}k(tA,"copySync");var tT=ec();function tN(e){var t=eM(tT.CWD,ew);if(!tC(t))return!1;try{var n=tS(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 ef.warn("Failed to read package.json: ".concat(e.message)),!1}}k(tN,"getPackage");function tR(e){return 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,eC.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 ef.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}k(tR,"getLatestPackageVersion");function tG(e,t){return i(function(){var n,r,s,i,o,c,a,u,l,d,f,p,E,g,m,h,y,S,_,O,C;return M(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=tN(e);if(!n)return[2,v({},eO)];a=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?(c=E[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];y=g;return[3,3];case 1:return[4,tR(e)];case 2:y=I.sent();I.label=3;case 3:m=y,h=l||g===m;if(!h&&(t===null||t===void 0?void 0:t.update)){;_=d?"dependencies":f?"devDependencies":null;_&&((S=u[_])===null||S===void 0?void 0:S[e])!==m&&(u[_]=(O=u[_])!==null&&O!==void 0?O:{},u[_][e]=m,t_(a,JSON.stringify(u,null,4)),ef.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:l,installedPath:a,file:u,isUpToDate:h}];case 4:C=I.sent();return[2,(ef.error('Error checking package "'.concat(e,'": ').concat(C.message)),v({},eO))];case 5:return[2]}})})()}k(tG,"checkPackage");function tM(){return 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:k(function(){return td.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:k(function(){return td.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:k(function(){return td.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);s=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(i=s.next()).done))return[3,8];o=i.value,c=o.command,a=o.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,tQ("".concat(a," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();ef.warn("Installation attempt failed: ".concat(a)),ef.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.")}})})()}k(tM,"installDependencies");function tb(e,t){return i(function(){var n,r,s,i,o,c,a,u,l,d,f;return M(this,function(p){switch(p.label){case 0:if(!tC(tc.PACKAGE_JSON)){ef.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 tG(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,tM()];case 3:r=p.sent();p.label=4;case 4:r;i=true,o=false,c=undefined;p.label=5;case 5:p.trys.push([5,10,11,12]);a=((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=a.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;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=p.sent();throw ef.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}k(tb,"setupPackages");var tL=F(require("node-persist"),1);var tD=ec();function tP(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=tL.default.defaultInstance;if(e)return[3,2];return[4,tL.default.init({dir:tD.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]}})})()}k(tP,"initNodePersist");var tx={get:function e(e){return i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tP()];case 1:r.sent();return[4,tL.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ef.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 M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tP()];case 1:r.sent();return[4,tL.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ef.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 M(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tP()];case 1:n.sent();return[4,tL.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ef.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 M(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tP()];case 1:n.sent();return[4,tL.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ef.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ef.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return M(this,function(t){try{return[2,"".concat(tD.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ef.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tw=ec(),tj=e_.promisify(ey.exec);function tk(e){return"error_list:".concat(e)}k(tk,"getErrorListKey");function tq(e){return 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=tk(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,tx.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:return[4,tx.getLogLink(n)];case 1:e=t.sent();e&&ef.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();ef.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}k(tq,"saveErrorListToStorage");function tU(){return i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tx.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return i(function(){var t;return M(this,function(n){switch(n.label){case 0:return[4,tx.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(ef.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})})()}k(tU,"getStoredErrorLists");function tF(){return i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tx.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return tx.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();ef.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})})()}k(tF,"clearAllErrorLists");function tK(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)||[],p=i.exec(e)||[],E=o.exec(e)||[];var g,m,h,v,y,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:(g=f===null||f===void 0?void 0:(c=f[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(m=f===null||f===void 0?void 0:(a=f[5])===null||a===void 0?void 0:a.trim())!==null&&m!==void 0?m:""}):p.length?t.push({file:(h=p===null||p===void 0?void 0:p[1])!==null&&h!==void 0?h:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===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:(S=E===null||E===void 0?void 0:(d=E[2])===null||d===void 0?void 0:d.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&tq(t),tw.DEBUG&&n.length&&(ef.warn("Unmatched lines:"),n.forEach(function(e){return ef.info(" ".concat(e))}))}k(tK,"parseTextErrors");function tH(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,i=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?Q.Error:Q.Warning,file:t,position:"".concat(s,":").concat(i),rule:o,message:c})})}),n.length&&tq(n)}catch(t){tK(e)}}k(tH,"parseCommandOutput");function tY(e){return i(function(e){var t,n,r,s,i,o,c,a,u;var l=arguments;return M(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tH;n=new AbortController;eS.default.on("SIGINT",function(){ef.warn("Process interrupted. Terminating..."),n.abort(),eS.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tj(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),s=r.stdout,i=r.stderr;[s,i].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();c=o.stdout,a=o.stderr,u=o.message;[c,a].forEach(function(e){return e&&t(e)}),!a&&!c&&ef.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}k(tY,"executeCommand");function tB(e){return{raw:!0,cmd:e}}k(tB,"rawCommand");function tW(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e7," ").concat(eD," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e7," ").concat(e5," ").concat(eV," ").concat(e):"".concat(e7," ").concat(eW," ").concat(e)}k(tW,"formatCLI");function tV(e,t){return typeof e=="function"?tW(e(t),t):(typeof e==="undefined"?"undefined":N(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tW(e,t):e}k(tV,"formatCommand");function tJ(e){return 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,tG(eD)];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=A(e,2),n=t[0],r=t[1];return[n,tV(r,i)]}))]}})}).apply(this,arguments)}k(tJ,"resolveCommands");function tQ(e,t){return i(function(){var n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ef.start("".concat(e)),tw.DEBUG&&ef.info("→ ".concat(t));return[4,tY(t)];case 1:r.sent(),ef.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ef.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}k(tQ,"runCommand");function t$(){return i(function(){var e,t;return M(this,function(n){switch(n.label){case 0:if(!tC(tc.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,td.typescriptCheck()];case 1:return[4,tQ.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=ef.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}k(t$,"checkTypescript");function tX(){return 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,td.eslintFix()];case 1:return[4,tQ.apply(void 0,n.concat([i.sent()]))];case 2:t=i.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,td.eslintCheck()];case 4:return[4,tQ.apply(void 0,r.concat([i.sent()]))];case 5:t=i.sent();i.label=6;case 6:t;return[2]}})}).apply(this,arguments)}k(tX,"checkEslint");function tz(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";ef.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}k(tz,"printIssues");function tZ(){return 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?ef.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tz("Warnings",n),tz("Errors",t),(t.length>0||n.length>0)&&eE.default.exit(1));return[2]}})})()}k(tZ,"showCheckResult");function t0(){return i(function(){var e,t,n,r,s,i;return M(this,function(o){switch(o.label){case 0:return[4,tF()];case 1:o.sent();return[4,tG(eD)];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(eD)];return[4,td.build()];case 4:return[4,tQ.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,td.stageBuildDirectory()];case 6:return[4,tQ.apply(void 0,r.concat([o.sent()]))];case 7:o.sent();return[3,9];case 8:s=o.sent();throw ef.error("Error building and staging ".concat(eD,": ").concat(s.message)),s;case 9:i=["Executing lint-staged"];return[4,td.lintStaged()];case 10:return[4,tQ.apply(void 0,i.concat([o.sent()]))];case 11:o.sent(),tZ();return[2]}})})()}k(t0,"lintStaged");function t1(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,td.eslintInspect()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(t1,"inspectLint");function t2(){return i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tF()];case 1:e.sent();return[4,Promise.all([t$(),tX()])];case 2:e.sent(),tZ();return[2]}})})()}k(t2,"lintCheck");function t4(){return i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tF()];case 1:e.sent();return[4,Promise.all([t$(),tX(!0)])];case 2:e.sent(),tZ();return[2]}})})()}k(t4,"lintFix");function t3(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:return[4,tF()];case 1:t.sent();e=["Validating commit message"];return[4,td.commitLint()];case 2:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tZ();return[2]}})})()}k(t3,"commitLint");function t5(){return i(function(){var e,t,n,r;return M(this,function(s){switch(s.label){case 0:e=["Configuring Git hooks"];return[4,td.configureGitHook()];case 1:return[4,tQ.apply(void 0,e.concat([s.sent()]))];case 2:s.sent(),tI(tc.GIT_HOOK);return[4,tJ(ta)];case 3:t=s.sent();t_(tc.SIMPLE_GIT_HOOKS_JSON,JSON.stringify(t,null,4));n="\n".concat(eU,"\n");tC(tc.GIT_IGNORE)?th(tc.GIT_IGNORE,"utf-8").split("\n").includes(eU)||tO(tc.GIT_IGNORE,n):t_(tc.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,td.simpleGitHooks()];case 4:return[4,tQ.apply(void 0,r.concat([s.sent()]))];case 5:s.sent();return[2]}})})()}k(t5,"setupGitHook");function t8(){return i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tb([eD],{update:!0,postInstallActions:[t5]})];case 1:e.sent();return[2]}})})()}k(t8,"setup");function t6(){return i(function(){return M(this,function(e){switch(e.label){case 0:tI(tc.NODE_MODULES,tc.PNPM_LOCK_YAML);return[4,tM()];case 1:e.sent();return[4,t5()];case 2:e.sent();return[2]}})})()}k(t6,"reset");function t7(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,td.nodeModulesInspect()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(t7,"inspect");function t9(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,td.testUnit()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(t9,"testUnit");function ne(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,td.testE2e()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(ne,"testE2E");function nt(e){return i(function(){var t;return M(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,td.mongoMigrateCreate(e)];case 1:return[4,tQ.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}k(nt,"mongoMigrateCreate");function nn(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,td.mongoMigrateUp()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(nn,"mongoMigrateUp");function nr(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,td.mongoMigrateDown()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(nr,"mongoMigrateDown");(function(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,em.default)((0,eg.hideBin)(eE.default.argv)).scriptName(eW).usage("$0 <command> [options]").command("lint","Check code for linting issues",t2).command("lint:fix","Fix linting issues automatically",t4).command("lint:inspect","View active ESLint configuration",t1).command("lint-staged","Run lint checks on staged files",t0).command("commitlint","Validate commit message format",t3).command("setup","Initialize project setup and dependencies",t8).command("reset","Reset the project and reinstall dependencies",t6).command("inspect","Analyze installed project dependencies",t7).command("test:unit","Run unit test suite",t9).command("test:e2e","Run end-to-end test suite",ne).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},function(e){return i(function(){return M(this,function(t){switch(t.label){case 0:if(!e.name){ef.error("Migration name is required.");return[2]}return[4,nt(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",nn).command("mongo:migrate:down","Rollback last MongoDB migration",nr).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(eh.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();ef.error("Fatal: ".concat(e.message)),eE.default.exit(1);return[3,3];case 3:return[2]}})})()})();var ns=require("express");var ni=require("@nestjs/core"),no=F(require("body-parser"),1),nc=F(require("compression"),1),na=F(require("cookie-parser"),1),nu=F(require("cors"),1),nl=F(require("express"),1),nd=F(require("express-session"),1),nf=F(require("express-useragent"),1);function np(e){var t=e.isDev,n=e.whiteList,r=_(e,["isDev","whiteList"]);return v({origin:k(function(e,r){t||(n===null||n===void 0?void 0:n.includes(e!==null&&e!==void 0?e:""))?r(null,!0):r(new Error("Not allowed by CORS"),!1)},"origin"),credentials:!0},r)}k(np,"createCorsOptions");function nE(e){return(0,nu.default)(np(e))}k(nE,"createCors");function ng(e){return(0,nd.default)(e)}k(ng,"createSession");function nm(e){var t=(0,nl.default)();return t.set("trust proxy",1),t.use((0,na.default)()),t.use(nl.default.urlencoded({extended:!0})),t.use((0,nc.default)()),t.use(nf.default.express()),(e===null||e===void 0?void 0:e.staticFolder)&&t.use(nl.default.static(e.staticFolder)),t}k(nm,"createExpress");function nh(e){return i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:return[4,ni.NestFactory.create(e.module)];case 1:r=s.sent();return[2,(r.getHttpAdapter().getInstance().set("trust proxy",1),r.use(nl.default.urlencoded({extended:!0})),r.use((0,na.default)()),r.use((0,nc.default)()),r.use(nf.default.express()),e.staticFolder&&r.use(nl.default.static(e.staticFolder)),e.filters&&(t=r).useGlobalFilters.apply(t,T(e.filters)),e.pipes&&(n=r).useGlobalPipes.apply(n,T(e.pipes)),r)]}})})()}k(nh,"createNest");var nv="MONGO_MIGRATE_OPTIONS";var ny=require("mongodb"),nS=require("mongoose");var n_=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(ny.Db);k(n_,"C_Db");var nO=n_,nC=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nS.Document);k(nC,"C_Document");var nI=nC,nA=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nS.Model);k(nA,"C_Model");var nT=nA,nN=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(ny.Collection);k(nN,"C_Collection");var nR=nN;var nG=require("date-fns"),nM=F(require("migrate-mongo"),1),nb=require("mongoose"),nL=F(require("mongoose-aggregate-paginate-v2"),1),nD=F(require("mongoose-paginate-v2"),1),nP=require("uuid");var nx=F(require("unorm"),1);var nw={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},nj=Object.entries(nw).reduce(function(e,t){var n=A(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function nk(e){return(typeof e==="undefined"?"undefined":N(e))=="object"&&e!==null&&!Array.isArray(e)}k(nk,"isObject");var nq=F(require("crypto-js"),1),nU=F(require("slugify"),1);var nF=nU.default.default||nU.default;function nK(e,t){var n=k(function(e){var n,r;return nF(e!==null&&e!==void 0?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))},"slugifyWithOptions");if(nk(e)){var r={};var s=true,i=false,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),a;!(s=(a=c.next()).done);s=true){var u=A(a.value,2),l=u[0],d=u[1];r[l]=n(d)}}catch(e){i=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(i){throw o}}}return r}return n(e)}k(nK,"generateSlug");function nH(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return nq.default.SHA256(e).toString(nq.default.enc.Hex).slice(0,t)}k(nH,"generateShortId");var nY={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":N(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 nB={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,nG.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"?nB.getDateTime():new Date;return{id:(0,nP.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:nP.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(nB.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=nB.createSchema({mongoose:t,schema:r,virtuals:u});return nB.applyPlugins(f,[i&&nD.default,c&&nL.default]),nB.applyMiddlewares(f,d),t.model(n,f)},validator:{isEmpty:function e(){return function(e){return i(function(){return M(this,function(t){return[2,!nY.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return 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.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return i(function(){return M(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)})]})})()}}},migrate:S(v({},nM.default),{setConfig:k(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));t_(tc.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(eY,"\n");tC(tc.GIT_IGNORE)?th(tc.GIT_IGNORE,"utf-8").split("\n").includes(eY)||tO(tc.GIT_IGNORE,n):t_(tc.GIT_IGNORE,n)},"setConfig")})},nW=/*#__PURE__*/function(){function e(t,n){c(this,e);H(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=v({},nB.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 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 v({},nB.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 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 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 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 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 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 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 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}();k(nW,"MongoController");var nV=nW,nJ=/*#__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 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:ea.NOT_FOUND.CODE}];case 3:o=a.sent();return[2,{success:!1,message:o.message,code:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return 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 p(e,nb.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return 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,v({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:ea.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return 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:ea.NOT_FOUND.CODE}];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return 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:ea.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:ea.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 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=nH(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:ea.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return i(function(){var r,s,o,c,a,u,d,f,p,E;return M(this,function(g){switch(g.label){case 0:r=this;g.label=1;case 1:g.trys.push([1,5,,6]);s=t[e],o=nk(s),c=k(function(t){var r=v({},n!==null&&n!==void 0?n:{});return o?S(v({},r),{$or:[l({},"slug.".concat(e),t),{slugHistory:{$elemMatch:l({},"slug.".concat(e),t)}}]}):S(v({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),a=k(function(e){return i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(c(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!o)return[3,3];u={success:!0};d=Object.fromEntries;return[4,Promise.all(Object.entries(s).map(function(e){var t=A(e,2),n=t[0],r=t[1];return i(function(){var e,t;return M(this,function(s){switch(s.label){case 0:e=nK(r);t=[n];return[4,a(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(u.result=d.apply(Object,[g.sent()]),u)];case 3:f=nK(s);p={success:!0};return[4,a(f)];case 4:return[2,(p.result=g.sent(),p)];case 5:E=g.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(E.message),code:ea.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();k(nJ,"MongooseController");var nQ=nJ;var n$=require("graphql-ws/use/ws"),nX=require("ws");function nz(e){return new nX.WebSocketServer({server:e.server,path:e.path})}k(nz,"createWSServer");function nZ(e){return(0,n$.useServer)({schema:e.schema},e.server)}k(nZ,"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,bodyParser:bodyParser,checkPackage:checkPackage,clearAllErrorLists:clearAllErrorLists,command:command,copySync:copySync,createApolloServer:createApolloServer,createCors:createCors,createCorsOptions:createCorsOptions,createExpress:createExpress,createGitHooksConfig:createGitHooksConfig,createNest:createNest,createSession:createSession,createWSServer:createWSServer,express:express,expressMiddleware:expressMiddleware,formatCommand:formatCommand,fs:fs,getLatestPackageVersion:getLatestPackageVersion,getPackage:getPackage,getStoredErrorLists:getStoredErrorLists,initGraphQLWS:initGraphQLWS,installDependencies:installDependencies,join:join,logNodeJS:logNodeJS,lstatSync:lstatSync,mkdirSync:mkdirSync,mongo:mongo,mongoosePaginate:mongoosePaginate,path:path,pathExistsSync:pathExistsSync,rawCommand:rawCommand,readFileSync:readFileSync,readJsonSync:readJsonSync,readdirSync:readdirSync,removeSync:removeSync,resolve:resolve,resolveCommands:resolveCommands,resolveWorkingPath:resolveWorkingPath,runCommand:runCommand,setupPackages:setupPackages,statSync:statSync,storageNodeJS:storageNodeJS,throwError:throwError,unlinkSync:unlinkSync,writeFileSync:writeFileSync});
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,G()?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 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,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 m(){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 h(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function 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 S(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 _(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&&(N(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)||R(e,n)||m()}function T(e){return n(e)||E(e)||R(e)||h()}function N(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function R(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function G(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(G=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 b=Object.create;var L=Object.defineProperty;var D=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var j=function(e,t,n){return t in e?L(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var k=function(e,t){return L(e,"name",{value:t,configurable:!0})};var q=function(e,t){for(var n in t)L(e,n,{get:t[n],enumerable:!0})},U=function(e,t,n,r){var s=true,i=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":N(t))=="object"||typeof t=="function")try{var c=function(){var s=u.value;!w.call(e,s)&&s!==n&&L(e,s,{get:function(){return t[s]},enumerable:!(r=D(t,s))||r.enumerable})};for(var a=P(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 F=function(e,t,n){return n=e!=null?b(x(e)):{},U(t||!e||!e.__esModule?L(n,"default",{value:e,enumerable:!0}):n,e)},K=function(e){return U(L({},"__esModule",{value:!0}),e)};var H=function(e,t,n){return j(e,(typeof t==="undefined"?"undefined":N(t))!="symbol"?t+"":t,n)};var Y={};q(Y,{BUILD_DIRECTORY:function(){return ex},CHECK_PACKAGE_EMPTY_RESULT:function(){return eO},COMMIT_LINT_CLI:function(){return e0},COMMIT_LINT_PACKAGE_NAME:function(){return eZ},CYBERSKILL_CLI:function(){return eW},CYBERSKILL_CLI_PATH:function(){return eV},CYBERSKILL_DIRECTORY:function(){return eB},CYBERSKILL_PACKAGE_NAME:function(){return eD},C_Collection:function(){return nR},C_Db:function(){return nO},C_Document:function(){return nI},C_Model:function(){return nT},ESLINT_CLI:function(){return eQ},ESLINT_INSPECT_CLI:function(){return tn},ESLINT_INSPECT_PACKAGE_NAME:function(){return tt},ESLINT_PACKAGE_NAME:function(){return eJ},E_CommandType:function(){return ev},E_IssueType:function(){return Q},GIT_CLI:function(){return e8},GIT_COMMIT_EDITMSG:function(){return eH},GIT_HOOK:function(){return eK},GIT_IGNORE:function(){return eq},LINT_STAGED_CLI:function(){return e2},LINT_STAGED_PACKAGE_NAME:function(){return e1},MIGRATE_MONGO_CLI:function(){return to},MIGRATE_MONGO_CONFIG:function(){return eY},MIGRATE_MONGO_PACKAGE_NAME:function(){return ti},MONGO_MIGRATE_OPTIONS:function(){return nv},MongoController:function(){return nV},MongooseController:function(){return nQ},NODE_MODULES:function(){return eP},NODE_MODULES_INSPECT_CLI:function(){return ts},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return tr},PACKAGE_JSON:function(){return ew},PACKAGE_LOCK_JSON:function(){return ej},PATH:function(){return tc},PLAYWRIGHT_PACKAGE_NAME:function(){return eX},PNPM_CLI:function(){return e6},PNPM_EXEC_CLI:function(){return e7},PNPM_LOCK_YAML:function(){return eF},Router:function(){return ns.Router},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return e9},SIMPLE_GIT_HOOK_CLI:function(){return te},SIMPLE_GIT_HOOK_JSON:function(){return eU},TSCONFIG_JSON:function(){return ek},TSC_CLI:function(){return e3},TSC_PACKAGE_NAME:function(){return e4},TSX_CLI:function(){return e5},VITEST_CLI:function(){return ez},VITEST_PACKAGE_NAME:function(){return e$},WORKING_DIRECTORY:function(){return eL},aggregatePaginate:function(){return nL.default},appendFileSync:function(){return tO},bodyParser:function(){return no.default},checkPackage:function(){return tG},clearAllErrorLists:function(){return tF},command:function(){return td},copySync:function(){return tA},createApolloServer:function(){return ep},createCors:function(){return nE},createCorsOptions:function(){return np},createExpress:function(){return nm},createGitHooksConfig:function(){return ta},createNest:function(){return nh},createSession:function(){return ng},createWSServer:function(){return nz},express:function(){return nl.default},expressMiddleware:function(){return W.expressMiddleware},formatCommand:function(){return tV},fs:function(){return tf},getLatestPackageVersion:function(){return tR},getPackage:function(){return tN},getStoredErrorLists:function(){return tU},initGraphQLWS:function(){return nZ},installDependencies:function(){return tM},join:function(){return eM},logNodeJS:function(){return ef},lstatSync:function(){return tE},mkdirSync:function(){return tm},mongo:function(){return nB},mongoosePaginate:function(){return nD.default},path:function(){return eN},pathExistsSync:function(){return tC},rawCommand:function(){return tB},readFileSync:function(){return th},readJsonSync:function(){return tS},readdirSync:function(){return tg},removeSync:function(){return tI},resolve:function(){return eG},resolveCommands:function(){return tJ},resolveWorkingPath:function(){return eR},runCommand:function(){return tQ},setupPackages:function(){return tb},statSync:function(){return ty},storageNodeJS:function(){return tx},throwError:function(){return el},unlinkSync:function(){return tv},writeFileSync:function(){return t_}});module.exports=K(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 $=F(require("chalk"),1),X=F(require("consola"),1),z=require("graphql");var Z=".cyberskill-storage";var ee=F(require("@dotenvx/dotenvx"),1),et=require("envalid"),en=F(require("os"),1),er=F(require("path"),1),es=F(require("process"),1);var ei=!1;function eo(){ei||(ee.default.config(),ei=!0)}k(eo,"loadEnvFile");function ec(){eo();var e=(0,et.cleanEnv)(es.default.env,{CWD:(0,et.str)({default:es.default.cwd()}),DEBUG:(0,et.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,et.str)({default:er.default.join(en.default.homedir(),Z)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}k(ec,"getEnv");var ea={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 eu=ec();function el(e){var t=e.message,n=e.status,r=n===void 0?ea.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)}k(el,"throwError");eu.DEBUG||(X.default.level=4);function ed(e){var t=$.default[e];return typeof t=="function"?t:$.default.green}k(ed,"chalkKeyword");var ef={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(ed(n)("Rule:")," ").concat(s)),X.default.log(" ".concat(ed(n)("Message:")," ").concat(i))}),X.default.box(ed(n)("".concat(e," : ").concat(t.length))),X.default.log($.default.gray("─".repeat(40)))}};function ep(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 M(this,function(t){return[2,{drainServer:function t(){return i(function(){var t;return M(this,function(n){(t=e.drainServer)===null||t===void 0?void 0:t.call(e),ef.info("Apollo Server drainServer hook called");return[2]})})()}}]})})()}}]:[]))},e.isDev&&{introspection:!0,includeStacktraceInErrorResponses:!0}))}k(ep,"createApolloServer");var eE=F(require("process"),1),eg=require("yargs/helpers"),em=F(require("yargs/yargs"),1);var eh={name:"@cyberskill/shared",type:"module",version:"1.126.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/env":{types:"./dist/configs/env/index.d.ts",import:"./dist/configs/env/index.js",require:"./dist/configs/env/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:"tsup --watch",lint:"tsx src/nodejs/cli/index.ts lint","lint:fix":"tsx src/nodejs/cli/index.ts lint:fix","lint:inspect":"tsx src/nodejs/cli/index.ts lint:inspect",reset:"tsx src/nodejs/cli/index.ts reset",setup:"tsx src/nodejs/cli/index.ts setup",inspect:"tsx src/nodejs/cli/index.ts inspect","test:unit":"tsx src/nodejs/cli/index.ts test:unit","test:e2e":"tsx src/nodejs/cli/index.ts test:e2e",commitlint:"tsx src/nodejs/cli/index.ts commitlint","lint-staged":"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","@dotenvx/dotenvx":"1.41.0","@eddeee888/gcg-typescript-resolver-files":"0.12.0","@eslint-react/eslint-plugin":"1.48.5","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@microsoft/api-extractor":"7.52.5","@nestjs/common":"11.1.0","@nestjs/core":"11.1.0","@next/eslint-plugin-next":"15.3.1","@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","body-parser":"2.2.0",chalk:"5.4.1",classnames:"2.5.1",compression:"1.8.0",consola:"3.4.2","cookie-parser":"1.4.7",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.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-session":"1.18.1","express-useragent":"1.0.15","fs-extra":"11.3.0",globals:"16.0.0",graphql:"16.11.0","graphql-ws":"6.0.4",i18next:"25.0.2",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.16.0",mongoose:"8.14.1","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.0","next-intl":"4.1.0","node-fetch":"3.3.2","node-persist":"4.0.4",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.4",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/body-parser":"1.19.5","@types/compression":"1.7.5","@types/cookie-parser":"1.4.8","@types/cors":"2.8.17","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.1","@types/express-useragent":"1.0.5","@types/fs-extra":"11.0.4","@types/migrate-mongo":"10.0.5","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node":"22.15.3","@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.7","simple-git-hooks":"2.13.0"}};var ev=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var ey=require("child_process"),eS=F(require("process"),1),e_=F(require("util"),1);var eO={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eC=F(require("node-fetch"),1);var eI=F(require("fs-extra"),1);var eA=F(require("path"),1);var eT=ec(),eN=eA.default;function eR(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eN).resolve.apply(r,[eT.CWD].concat(T(t)))}k(eR,"resolveWorkingPath");function eG(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eN).resolve.apply(r,T(t))}k(eG,"resolve");function eM(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eN).join.apply(r,T(t))}k(eM,"join");var eb=ec(),eL=eb.CWD,eD="@cyberskill/shared",eP="node_modules",ex="dist",ew="package.json",ej="package-lock.json",ek="tsconfig.json",eq=".gitignore",eU=".simple-git-hooks.json",eF="pnpm-lock.yaml",eK=".git/hooks/",eH=".git/COMMIT_EDITMSG",eY=".migrate-mongo.config.js",eB=eM(eL,eP,eD,ex),eW="cyberskill",eV="src/nodejs/cli/index.ts",eJ="eslint",eQ="eslint",e$="vitest",eX="playwright",ez="vitest",eZ="@commitlint/cli",e0="commitlint",e1="lint-staged",e2="lint-staged",e4="typescript",e3="tsc",e5="tsx",e8="git",e6="pnpm",e7="pnpm exec",e9="simple-git-hooks",te="simple-git-hooks",tt="@eslint/config-inspector",tn="eslint-config-inspector",tr="node-modules-inspector",ts="node-modules-inspector",ti="migrate-mongo",to="./node_modules/migrate-mongo/bin/migrate-mongo",tc={CYBERSKILL_DIRECTORY:eB,WORKING_DIRECTORY:eL,TS_CONFIG:eR(ek),GIT_IGNORE:eR(eq),GIT_HOOK:eR(eK),GIT_COMMIT_MSG:eR(eH),SIMPLE_GIT_HOOKS_JSON:eR(eU),PACKAGE_JSON:eR(ew),PACKAGE_LOCK_JSON:eR(ej),PNPM_LOCK_YAML:eR(eF),NODE_MODULES:eR(eP),MIGRATE_MONGO_CONFIG:eR(eY),LINT_STAGED_CONFIG:eR("".concat(eB,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:eR("".concat(eB,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:eR("".concat(eB,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eR("".concat(eB,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eR("".concat(eB,"/react/vitest/vitest.e2e.js"))};function ta(e){var t=e.isCurrentProject;return v({"pre-commit":e2,"commit-msg":e0},t&&{"pre-push":tB("".concat(e8," pull"))})}k(ta,"createGitHooksConfig");function tu(e,t,n){return i(function(){return M(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ev.CLI:return[3,1];case ev.STRING:return[3,3]}return[3,4];case 1:return[4,tb(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),tV(tB("".concat(e7," ").concat(n))))];case 3:return[2,tV(tB(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}k(tu,"buildCommand");function tl(e,t,n){return function(){return i(function(){return M(this,function(r){return[2,tu(e,t,n)]})})()}}k(tl,"commandFactory");var td={simpleGitHooks:tl(ev.CLI,e9,te),eslintInspect:tl(ev.CLI,tt,tn),nodeModulesInspect:tl(ev.CLI,tr,ts),eslintCheck:tl(ev.CLI,eJ,"".concat(eQ," ").concat(tc.WORKING_DIRECTORY," --no-cache")),eslintFix:tl(ev.CLI,eJ,"".concat(eQ," ").concat(tc.WORKING_DIRECTORY," --fix --no-cache")),typescriptCheck:tl(ev.CLI,e4,"".concat(e3," -p ").concat(tc.TS_CONFIG," --noEmit")),configureGitHook:tl(ev.STRING,"".concat(e8," config core.hooksPath ").concat(tc.GIT_HOOK)),testUnit:tl(ev.CLI,e$,"".concat(ez," --config ").concat(tc.UNIT_TEST_CONFIG)),testE2e:tl(ev.CLI,"".concat(e$," ").concat(eX),"".concat(ez," --config ").concat(tc.E2E_TEST_CONFIG)),mongoMigrateCreate:k(function(e){return tl(ev.CLI,ti,"".concat(e5," ").concat(to," create ").concat(e," -f ").concat(tc.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tl(ev.CLI,ti,"".concat(e5," ").concat(to," up -f ").concat(tc.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tl(ev.CLI,ti,"".concat(e5," ").concat(to," down -f ").concat(tc.MIGRATE_MONGO_CONFIG)),commitLint:tl(ev.CLI,eZ,"".concat(e0," --edit ").concat(tc.GIT_COMMIT_MSG," --config ").concat(tc.COMMITLINT_CONFIG)),lintStaged:tl(ev.CLI,e1,"".concat(e2," --config ").concat(tc.LINT_STAGED_CONFIG)),stageBuildDirectory:tl(ev.STRING,"".concat(e8," add ").concat(ex)),build:tl(ev.STRING,"".concat(e6," run build")),pnpmInstallStandard:tl(ev.STRING,"".concat(e6," install")),pnpmInstallLegacy:tl(ev.STRING,"".concat(e6," install --legacy-peer-deps")),pnpmInstallForce:tl(ev.STRING,"".concat(e6," install --force"))};var tf=eI.default,tp=eI.default,tE=tp.lstatSync,tg=tp.readdirSync,tm=tp.mkdirSync,th=tp.readFileSync,tv=tp.unlinkSync,ty=tp.statSync,tS=eI.default.readJsonSync;function t_(e,t,n){eI.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}k(t_,"writeFileSync");function tO(e,t,n){eI.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}k(tO,"appendFileSync");function tC(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eI.default.pathExistsSync(e)})}k(tC,"pathExistsSync");function tI(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){tC(e)&&eI.default.removeSync(e)})}k(tI,"removeSync");function tA(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.extensions,s=_(n,["extensions"]);eI.default.copySync(e,t,v({filter:k(function(e){return ty(e).isDirectory()||!r||r.length===0?!0:r.includes(eN.extname(e))},"filter")},s))}k(tA,"copySync");var tT=ec();function tN(e){var t=eM(tT.CWD,ew);if(!tC(t))return!1;try{var n=tS(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 ef.warn("Failed to read package.json: ".concat(e.message)),!1}}k(tN,"getPackage");function tR(e){return 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,eC.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 ef.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}k(tR,"getLatestPackageVersion");function tG(e,t){return i(function(){var n,r,s,i,o,c,a,u,l,d,f,p,E,g,m,h,y,S,_,O,C;return M(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=tN(e);if(!n)return[2,v({},eO)];a=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?(c=E[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];y=g;return[3,3];case 1:return[4,tR(e)];case 2:y=I.sent();I.label=3;case 3:m=y,h=l||g===m;if(!h&&(t===null||t===void 0?void 0:t.update)){;_=d?"dependencies":f?"devDependencies":null;_&&((S=u[_])===null||S===void 0?void 0:S[e])!==m&&(u[_]=(O=u[_])!==null&&O!==void 0?O:{},u[_][e]=m,t_(a,JSON.stringify(u,null,4)),ef.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:l,installedPath:a,file:u,isUpToDate:h}];case 4:C=I.sent();return[2,(ef.error('Error checking package "'.concat(e,'": ').concat(C.message)),v({},eO))];case 5:return[2]}})})()}k(tG,"checkPackage");function tM(){return 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:k(function(){return td.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:k(function(){return td.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:k(function(){return td.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);s=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(i=s.next()).done))return[3,8];o=i.value,c=o.command,a=o.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,tQ("".concat(a," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();ef.warn("Installation attempt failed: ".concat(a)),ef.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.")}})})()}k(tM,"installDependencies");function tb(e,t){return i(function(){var n,r,s,i,o,c,a,u,l,d,f;return M(this,function(p){switch(p.label){case 0:if(!tC(tc.PACKAGE_JSON)){ef.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 tG(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,tM()];case 3:r=p.sent();p.label=4;case 4:r;i=true,o=false,c=undefined;p.label=5;case 5:p.trys.push([5,10,11,12]);a=((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=a.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;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=p.sent();throw ef.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}k(tb,"setupPackages");var tL=F(require("node-persist"),1);var tD=ec();function tP(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=tL.default.defaultInstance;if(e)return[3,2];return[4,tL.default.init({dir:tD.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]}})})()}k(tP,"initNodePersist");var tx={get:function e(e){return i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tP()];case 1:r.sent();return[4,tL.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ef.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 M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tP()];case 1:r.sent();return[4,tL.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ef.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 M(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tP()];case 1:n.sent();return[4,tL.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ef.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 M(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tP()];case 1:n.sent();return[4,tL.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ef.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ef.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return M(this,function(t){try{return[2,"".concat(tD.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ef.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tw=ec(),tj=e_.promisify(ey.exec);function tk(e){return"error_list:".concat(e)}k(tk,"getErrorListKey");function tq(e){return 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=tk(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,tx.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:return[4,tx.getLogLink(n)];case 1:e=t.sent();e&&ef.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();ef.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}k(tq,"saveErrorListToStorage");function tU(){return i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tx.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return i(function(){var t;return M(this,function(n){switch(n.label){case 0:return[4,tx.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(ef.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})})()}k(tU,"getStoredErrorLists");function tF(){return i(function(){var e,t,n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tx.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return tx.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();ef.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})})()}k(tF,"clearAllErrorLists");function tK(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)||[],p=i.exec(e)||[],E=o.exec(e)||[];var g,m,h,v,y,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:(g=f===null||f===void 0?void 0:(c=f[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(m=f===null||f===void 0?void 0:(a=f[5])===null||a===void 0?void 0:a.trim())!==null&&m!==void 0?m:""}):p.length?t.push({file:(h=p===null||p===void 0?void 0:p[1])!==null&&h!==void 0?h:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===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:(S=E===null||E===void 0?void 0:(d=E[2])===null||d===void 0?void 0:d.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&tq(t),tw.DEBUG&&n.length&&(ef.warn("Unmatched lines:"),n.forEach(function(e){return ef.info(" ".concat(e))}))}k(tK,"parseTextErrors");function tH(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,i=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?Q.Error:Q.Warning,file:t,position:"".concat(s,":").concat(i),rule:o,message:c})})}),n.length&&tq(n)}catch(t){tK(e)}}k(tH,"parseCommandOutput");function tY(e){return i(function(e){var t,n,r,s,i,o,c,a,u;var l=arguments;return M(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tH;n=new AbortController;eS.default.on("SIGINT",function(){ef.warn("Process interrupted. Terminating..."),n.abort(),eS.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tj(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),s=r.stdout,i=r.stderr;[s,i].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();c=o.stdout,a=o.stderr,u=o.message;[c,a].forEach(function(e){return e&&t(e)}),!a&&!c&&ef.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}k(tY,"executeCommand");function tB(e){return{raw:!0,cmd:e}}k(tB,"rawCommand");function tW(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e7," ").concat(eD," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e7," ").concat(e5," ").concat(eV," ").concat(e):"".concat(e7," ").concat(eW," ").concat(e)}k(tW,"formatCLI");function tV(e,t){return typeof e=="function"?tW(e(t),t):(typeof e==="undefined"?"undefined":N(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tW(e,t):e}k(tV,"formatCommand");function tJ(e){return 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,tG(eD)];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=A(e,2),n=t[0],r=t[1];return[n,tV(r,i)]}))]}})}).apply(this,arguments)}k(tJ,"resolveCommands");function tQ(e,t){return i(function(){var n;return M(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ef.start("".concat(e)),tw.DEBUG&&ef.info("→ ".concat(t));return[4,tY(t)];case 1:r.sent(),ef.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ef.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}k(tQ,"runCommand");function t$(){return i(function(){var e,t;return M(this,function(n){switch(n.label){case 0:if(!tC(tc.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,td.typescriptCheck()];case 1:return[4,tQ.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=ef.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}k(t$,"checkTypescript");function tX(){return 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,td.eslintFix()];case 1:return[4,tQ.apply(void 0,n.concat([i.sent()]))];case 2:t=i.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,td.eslintCheck()];case 4:return[4,tQ.apply(void 0,r.concat([i.sent()]))];case 5:t=i.sent();i.label=6;case 6:t;return[2]}})}).apply(this,arguments)}k(tX,"checkEslint");function tz(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";ef.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}k(tz,"printIssues");function tZ(){return 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?ef.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tz("Warnings",n),tz("Errors",t),(t.length>0||n.length>0)&&eE.default.exit(1));return[2]}})})()}k(tZ,"showCheckResult");function t0(){return i(function(){var e,t,n,r,s,i;return M(this,function(o){switch(o.label){case 0:return[4,tF()];case 1:o.sent();return[4,tG(eD)];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(eD)];return[4,td.build()];case 4:return[4,tQ.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,td.stageBuildDirectory()];case 6:return[4,tQ.apply(void 0,r.concat([o.sent()]))];case 7:o.sent();return[3,9];case 8:s=o.sent();throw ef.error("Error building and staging ".concat(eD,": ").concat(s.message)),s;case 9:i=["Executing lint-staged"];return[4,td.lintStaged()];case 10:return[4,tQ.apply(void 0,i.concat([o.sent()]))];case 11:o.sent(),tZ();return[2]}})})()}k(t0,"lintStaged");function t1(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,td.eslintInspect()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(t1,"inspectLint");function t2(){return i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tF()];case 1:e.sent();return[4,Promise.all([t$(),tX()])];case 2:e.sent(),tZ();return[2]}})})()}k(t2,"lintCheck");function t4(){return i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tF()];case 1:e.sent();return[4,Promise.all([t$(),tX(!0)])];case 2:e.sent(),tZ();return[2]}})})()}k(t4,"lintFix");function t3(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:return[4,tF()];case 1:t.sent();e=["Validating commit message"];return[4,td.commitLint()];case 2:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tZ();return[2]}})})()}k(t3,"commitLint");function t5(){return i(function(){var e,t,n,r;return M(this,function(s){switch(s.label){case 0:e=["Configuring Git hooks"];return[4,td.configureGitHook()];case 1:return[4,tQ.apply(void 0,e.concat([s.sent()]))];case 2:s.sent(),tI(tc.GIT_HOOK);return[4,tJ(ta)];case 3:t=s.sent();t_(tc.SIMPLE_GIT_HOOKS_JSON,JSON.stringify(t,null,4));n="\n".concat(eU,"\n");tC(tc.GIT_IGNORE)?th(tc.GIT_IGNORE,"utf-8").split("\n").includes(eU)||tO(tc.GIT_IGNORE,n):t_(tc.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,td.simpleGitHooks()];case 4:return[4,tQ.apply(void 0,r.concat([s.sent()]))];case 5:s.sent();return[2]}})})()}k(t5,"setupGitHook");function t8(){return i(function(){return M(this,function(e){switch(e.label){case 0:return[4,tb([eD],{update:!0,postInstallActions:[t5]})];case 1:e.sent();return[2]}})})()}k(t8,"setup");function t6(){return i(function(){return M(this,function(e){switch(e.label){case 0:tI(tc.NODE_MODULES,tc.PNPM_LOCK_YAML);return[4,tM()];case 1:e.sent();return[4,t5()];case 2:e.sent();return[2]}})})()}k(t6,"reset");function t7(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,td.nodeModulesInspect()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(t7,"inspect");function t9(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,td.testUnit()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(t9,"testUnit");function ne(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,td.testE2e()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(ne,"testE2E");function nt(e){return i(function(){var t;return M(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,td.mongoMigrateCreate(e)];case 1:return[4,tQ.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}k(nt,"mongoMigrateCreate");function nn(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,td.mongoMigrateUp()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(nn,"mongoMigrateUp");function nr(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,td.mongoMigrateDown()];case 1:return[4,tQ.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}k(nr,"mongoMigrateDown");(function(){return i(function(){var e;return M(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,em.default)((0,eg.hideBin)(eE.default.argv)).scriptName(eW).usage("$0 <command> [options]").command("lint","Check code for linting issues",t2).command("lint:fix","Fix linting issues automatically",t4).command("lint:inspect","View active ESLint configuration",t1).command("lint-staged","Run lint checks on staged files",t0).command("commitlint","Validate commit message format",t3).command("setup","Initialize project setup and dependencies",t8).command("reset","Reset the project and reinstall dependencies",t6).command("inspect","Analyze installed project dependencies",t7).command("test:unit","Run unit test suite",t9).command("test:e2e","Run end-to-end test suite",ne).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},function(e){return i(function(){return M(this,function(t){switch(t.label){case 0:if(!e.name){ef.error("Migration name is required.");return[2]}return[4,nt(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",nn).command("mongo:migrate:down","Rollback last MongoDB migration",nr).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(eh.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();ef.error("Fatal: ".concat(e.message)),eE.default.exit(1);return[3,3];case 3:return[2]}})})()})();var ns=require("express");var ni=require("@nestjs/core"),no=F(require("body-parser"),1),nc=F(require("compression"),1),na=F(require("cookie-parser"),1),nu=F(require("cors"),1),nl=F(require("express"),1),nd=F(require("express-session"),1),nf=F(require("express-useragent"),1);function np(e){var t=e.isDev,n=e.whiteList,r=_(e,["isDev","whiteList"]);return v({origin:k(function(e,r){t||(n===null||n===void 0?void 0:n.includes(e!==null&&e!==void 0?e:""))?r(null,!0):r(new Error("Not allowed by CORS"),!1)},"origin"),credentials:!0},r)}k(np,"createCorsOptions");function nE(e){return(0,nu.default)(np(e))}k(nE,"createCors");function ng(e){return(0,nd.default)(e)}k(ng,"createSession");function nm(e){var t=(0,nl.default)();return t.set("trust proxy",1),t.use((0,na.default)()),t.use(nl.default.urlencoded({extended:!0})),t.use((0,nc.default)()),t.use(nf.default.express()),(e===null||e===void 0?void 0:e.staticFolder)&&t.use(nl.default.static(e.staticFolder)),t}k(nm,"createExpress");function nh(e){return i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:return[4,ni.NestFactory.create(e.module)];case 1:r=s.sent();return[2,(r.getHttpAdapter().getInstance().set("trust proxy",1),r.use(nl.default.urlencoded({extended:!0})),r.use((0,na.default)()),r.use((0,nc.default)()),r.use(nf.default.express()),e.staticFolder&&r.use(nl.default.static(e.staticFolder)),e.filters&&(t=r).useGlobalFilters.apply(t,T(e.filters)),e.pipes&&(n=r).useGlobalPipes.apply(n,T(e.pipes)),r)]}})})()}k(nh,"createNest");var nv="MONGO_MIGRATE_OPTIONS";var ny=require("mongodb"),nS=require("mongoose");var n_=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(ny.Db);k(n_,"C_Db");var nO=n_,nC=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nS.Document);k(nC,"C_Document");var nI=nC,nA=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(nS.Model);k(nA,"C_Model");var nT=nA,nN=/*#__PURE__*/function(e){f(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(ny.Collection);k(nN,"C_Collection");var nR=nN;var nG=require("date-fns"),nM=F(require("migrate-mongo"),1),nb=require("mongoose"),nL=F(require("mongoose-aggregate-paginate-v2"),1),nD=F(require("mongoose-paginate-v2"),1),nP=require("uuid");var nx=F(require("unorm"),1);var nw={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},nj=Object.entries(nw).reduce(function(e,t){var n=A(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function nk(e){return(typeof e==="undefined"?"undefined":N(e))=="object"&&e!==null&&!Array.isArray(e)}k(nk,"isObject");var nq=F(require("crypto-js"),1),nU=F(require("slugify"),1);var nF=nU.default.default||nU.default;function nK(e,t){var n=k(function(e){var n,r;return nF(e!==null&&e!==void 0?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))},"slugifyWithOptions");if(nk(e)){var r={};var s=true,i=false,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),a;!(s=(a=c.next()).done);s=true){var u=A(a.value,2),l=u[0],d=u[1];r[l]=n(d)}}catch(e){i=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(i){throw o}}}return r}return n(e)}k(nK,"generateSlug");function nH(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return nq.default.SHA256(e).toString(nq.default.enc.Hex).slice(0,t)}k(nH,"generateShortId");var nY={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":N(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 nB={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,nG.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"?nB.getDateTime():new Date;return{id:(0,nP.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:nP.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(nB.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=nB.createSchema({mongoose:t,schema:r,virtuals:u});return nB.applyPlugins(f,[i&&nD.default,c&&nL.default]),nB.applyMiddlewares(f,d),t.model(n,f)},validator:{isEmpty:function e(){return function(e){return i(function(){return M(this,function(t){return[2,!nY.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return 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.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return i(function(){return M(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)})]})})()}}},migrate:S(v({},nM.default),{setConfig:k(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));t_(tc.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(eY,"\n");tC(tc.GIT_IGNORE)?th(tc.GIT_IGNORE,"utf-8").split("\n").includes(eY)||tO(tc.GIT_IGNORE,n):t_(tc.GIT_IGNORE,n)},"setConfig")})},nW=/*#__PURE__*/function(){function e(t,n){c(this,e);H(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return i(function(){var t,n,r;return M(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=v({},nB.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 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 v({},nB.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 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 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 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 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 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 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 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}();k(nW,"MongoController");var nV=nW,nJ=/*#__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 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:ea.NOT_FOUND.CODE}];case 3:o=a.sent();return[2,{success:!1,message:o.message,code:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return 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 p(e,nb.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return 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,v({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:ea.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return 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:ea.NOT_FOUND.CODE}];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:ea.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return 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:ea.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=i.sent();return[2,{success:!1,message:r.message,code:ea.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 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=nH(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:ea.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return i(function(){var r,s,o,c,a,u,d,f,p,E;return M(this,function(g){switch(g.label){case 0:r=this;g.label=1;case 1:g.trys.push([1,5,,6]);s=t[e],o=nk(s),c=k(function(t){var r=v({},n!==null&&n!==void 0?n:{});return o?S(v({},r),{$or:[l({},"slug.".concat(e),t),{slugHistory:{$elemMatch:l({},"slug.".concat(e),t)}}]}):S(v({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),a=k(function(e){return i(function(){var t,n;return M(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(c(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!o)return[3,3];u={success:!0};d=Object.fromEntries;return[4,Promise.all(Object.entries(s).map(function(e){var t=A(e,2),n=t[0],r=t[1];return i(function(){var e,t;return M(this,function(s){switch(s.label){case 0:e=nK(r);t=[n];return[4,a(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(u.result=d.apply(Object,[g.sent()]),u)];case 3:f=nK(s);p={success:!0};return[4,a(f)];case 4:return[2,(p.result=g.sent(),p)];case 5:E=g.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(E.message),code:ea.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return 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:ea.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();k(nJ,"MongooseController");var nQ=nJ;var n$=require("graphql-ws/use/ws"),nX=require("ws");function nz(e){return new nX.WebSocketServer({server:e.server,path:e.path})}k(nz,"createWSServer");function nZ(e){return(0,n$.useServer)({schema:e.schema},e.server)}k(nZ,"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,bodyParser:bodyParser,checkPackage:checkPackage,clearAllErrorLists:clearAllErrorLists,command:command,copySync:copySync,createApolloServer:createApolloServer,createCors:createCors,createCorsOptions:createCorsOptions,createExpress:createExpress,createGitHooksConfig:createGitHooksConfig,createNest:createNest,createSession:createSession,createWSServer:createWSServer,express:express,expressMiddleware:expressMiddleware,formatCommand:formatCommand,fs:fs,getLatestPackageVersion:getLatestPackageVersion,getPackage:getPackage,getStoredErrorLists:getStoredErrorLists,initGraphQLWS:initGraphQLWS,installDependencies:installDependencies,join:join,logNodeJS:logNodeJS,lstatSync:lstatSync,mkdirSync:mkdirSync,mongo:mongo,mongoosePaginate:mongoosePaginate,path:path,pathExistsSync:pathExistsSync,rawCommand:rawCommand,readFileSync:readFileSync,readJsonSync:readJsonSync,readdirSync:readdirSync,removeSync:removeSync,resolve:resolve,resolveCommands:resolveCommands,resolveWorkingPath:resolveWorkingPath,runCommand:runCommand,setupPackages:setupPackages,statSync:statSync,storageNodeJS:storageNodeJS,throwError:throwError,unlinkSync:unlinkSync,writeFileSync:writeFileSync});