@cyberskill/shared 1.170.0 → 1.172.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_tsup-dts-rollup.d.cts +44 -2
- package/dist/_tsup-dts-rollup.d.ts +44 -2
- package/dist/config/config.util.cjs +1 -1
- package/dist/config/config.util.js +1 -1
- package/dist/config/index.cjs +1 -1
- package/dist/config/index.d.cts +2 -0
- package/dist/config/index.d.ts +2 -0
- package/dist/config/index.js +1 -1
- package/dist/{react → config}/vitest/index.cjs +1 -1
- package/dist/{react → config}/vitest/index.js +1 -1
- package/dist/{react → config}/vitest/vitest.unit.cjs +1 -1
- package/dist/{react → config}/vitest/vitest.unit.js +1 -1
- package/dist/node/cli/cli.util.cjs +1 -1
- package/dist/node/cli/cli.util.js +1 -1
- package/dist/node/cli/index.cjs +1 -1
- package/dist/node/cli/index.js +1 -1
- package/dist/node/command/command.util.cjs +1 -1
- package/dist/node/command/command.util.js +1 -1
- package/dist/node/command/index.cjs +1 -1
- package/dist/node/command/index.js +1 -1
- package/dist/node/index.cjs +1 -1
- package/dist/node/index.js +1 -1
- package/dist/node/mongo/index.cjs +1 -1
- package/dist/node/mongo/index.js +1 -1
- package/dist/node/mongo/mongo.util.cjs +1 -1
- package/dist/node/mongo/mongo.util.js +1 -1
- package/dist/node/package/index.cjs +1 -1
- package/dist/node/package/index.js +1 -1
- package/dist/node/package/package.util.cjs +1 -1
- package/dist/node/package/package.util.js +1 -1
- package/dist/node/path/index.cjs +1 -1
- package/dist/node/path/index.js +1 -1
- package/dist/node/path/path.constant.cjs +1 -1
- package/dist/node/path/path.constant.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.d.cts +0 -2
- package/dist/react/index.d.ts +0 -2
- package/dist/react/index.js +1 -1
- package/dist/react/loading/index.cjs +1 -1
- package/dist/react/loading/index.js +1 -1
- package/dist/react/loading/loading.component.cjs +1 -1
- package/dist/react/loading/loading.component.js +1 -1
- package/dist/react/loading/loading.provider.cjs +1 -1
- package/dist/react/loading/loading.provider.js +1 -1
- package/dist/util/common/common.type.d.cts +2 -2
- package/dist/util/common/common.type.d.ts +2 -2
- package/dist/util/common/index.d.cts +2 -0
- package/dist/util/common/index.d.ts +2 -0
- package/dist/util/index.cjs +1 -1
- package/dist/util/index.d.cts +5 -0
- package/dist/util/index.d.ts +5 -0
- package/dist/util/index.js +1 -1
- package/dist/util/object/index.cjs +1 -1
- package/dist/util/object/index.d.cts +3 -0
- package/dist/util/object/index.d.ts +3 -0
- package/dist/util/object/index.js +1 -1
- package/dist/util/object/object.util.cjs +1 -1
- package/dist/util/object/object.util.d.cts +3 -0
- package/dist/util/object/object.util.d.ts +3 -0
- package/dist/util/object/object.util.js +1 -1
- package/package.json +11 -11
- package/public/renovate.base.json +1 -2
- /package/dist/{react → config}/vitest/index.d.cts +0 -0
- /package/dist/{react → config}/vitest/index.d.ts +0 -0
- /package/dist/{react → config}/vitest/vitest.e2e.cjs +0 -0
- /package/dist/{react → config}/vitest/vitest.e2e.d.cts +0 -0
- /package/dist/{react → config}/vitest/vitest.e2e.d.ts +0 -0
- /package/dist/{react → config}/vitest/vitest.e2e.js +0 -0
- /package/dist/{react → config}/vitest/vitest.unit.d.cts +0 -0
- /package/dist/{react → config}/vitest/vitest.unit.d.ts +0 -0
- /package/dist/{react → config}/vitest/vitest.unit.setup.cjs +0 -0
- /package/dist/{react → config}/vitest/vitest.unit.setup.d.cts +0 -0
- /package/dist/{react → config}/vitest/vitest.unit.setup.d.ts +0 -0
- /package/dist/{react → config}/vitest/vitest.unit.setup.js +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,i,s,o){try{var a=e[s](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).then(r,i)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(i,s){var o=e.apply(t,n);function a(e){r(o,i,s,a,c,"next",e)}function c(e){r(o,i,s,a,c,"throw",e)}a(undefined)})}}function s(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var i=true;var s=false;var o,a;try{for(n=n.call(e);!(i=(o=n.next()).done);i=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){s=true;a=e}finally{try{if(!i&&n["return"]!=null)n["return"]()}finally{if(s)throw a}}return r}function u(){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 l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){s(e,t,n[t])})}return e}function p(e,n){return t(e)||c(e,n)||m(e,n)||u()}function E(e){return n(e)||a(e)||m(e)||l()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function g(e,t){var n,r,i,s={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(s=0)),s)try{if(n=1,r&&(i=a[0]&2?r["return"]:a[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;if(r=0,i)a=[a[0]&2,i.value];switch(a[0]){case 0:case 1:i=a;break;case 4:s.label++;return{value:a[1],done:false};case 5:s.label++;r=a[1];a=[0];continue;case 7:a=s.ops.pop();s.trys.pop();continue;default:if(!(i=s.trys,i=i.length>0&&i[i.length-1])&&(a[0]===6||a[0]===2)){s=0;continue}if(a[0]===3&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(a[0]===6&&s.label<i[1]){s.label=i[1];i=a;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(a);break}if(i[2])s.ops.pop();s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e];r=0}finally{n=i=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var y=Object.create;var h=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var D=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty;var C=function(e,t){return h(e,"name",{value:t,configurable:!0})};var I=function(e,t,n,r){var i=true,s=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var a=function(){var i=u.value;!O.call(e,i)&&i!==n&&h(e,i,{get:function(){return t[i]},enumerable:!(r=v(t,i))||r.enumerable})};for(var c=S(t)[Symbol.iterator](),u;!(i=(u=c.next()).done);i=true)a()}catch(e){s=true;o=e}finally{try{if(!i&&c.return!=null){c.return()}}finally{if(s){throw o}}}return e};var N=function(e,t,n){return n=e!=null?y(D(e)):{},I(t||!e||!e.__esModule?h(n,"default",{value:e,enumerable:!0}):n,e)};var T=N(require("process"),1),x=require("yargs/helpers"),A=N(require("yargs/yargs"),1);var _={name:"@cyberskill/shared",type:"module",version:"1.169.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"},"./config":{types:"./dist/config/index.d.ts",import:"./dist/config/index.js",require:"./dist/config/index.cjs"},"./config/commitlint":{types:"./dist/config/commitlint/index.d.ts",import:"./dist/config/commitlint/index.js",require:"./dist/config/commitlint/index.cjs"},"./config/env":{types:"./dist/config/env/index.d.ts",import:"./dist/config/env/index.js",require:"./dist/config/env/index.cjs"},"./config/eslint":{types:"./dist/config/eslint/index.d.ts",import:"./dist/config/eslint/index.js",require:"./dist/config/eslint/index.cjs"},"./config/graphql-codegen":{types:"./dist/config/graphql-codegen/index.d.ts",import:"./dist/config/graphql-codegen/index.js",require:"./dist/config/graphql-codegen/index.cjs"},"./config/lint-staged":{types:"./dist/config/lint-staged/index.d.ts",import:"./dist/config/lint-staged/index.js",require:"./dist/config/lint-staged/index.cjs"},"./constant":{types:"./dist/constant/index.d.ts",import:"./dist/constant/index.js",require:"./dist/constant/index.cjs"},"./node":{types:"./dist/node/index.d.ts",import:"./dist/node/index.js",require:"./dist/node/index.cjs"},"./node/apollo-server":{types:"./dist/node/apollo-server/index.d.ts",import:"./dist/node/apollo-server/index.js",require:"./dist/node/apollo-server/index.cjs"},"./node/cli":{types:"./dist/node/cli/index.d.ts",import:"./dist/node/cli/index.js",require:"./dist/node/cli/index.cjs"},"./node/command":{types:"./dist/node/command/index.d.ts",import:"./dist/node/command/index.js",require:"./dist/node/command/index.cjs"},"./node/express":{types:"./dist/node/express/index.d.ts",import:"./dist/node/express/index.js",require:"./dist/node/express/index.cjs"},"./node/fs":{types:"./dist/node/fs/index.d.ts",import:"./dist/node/fs/index.js",require:"./dist/node/fs/index.cjs"},"./node/log":{types:"./dist/node/log/index.d.ts",import:"./dist/node/log/index.js",require:"./dist/node/log/index.cjs"},"./node/mongo":{types:"./dist/node/mongo/index.d.ts",import:"./dist/node/mongo/index.js",require:"./dist/node/mongo/index.cjs"},"./node/package":{types:"./dist/node/package/index.d.ts",import:"./dist/node/package/index.js",require:"./dist/node/package/index.cjs"},"./node/path":{types:"./dist/node/path/index.d.ts",import:"./dist/node/path/index.js",require:"./dist/node/path/index.cjs"},"./node/storage":{types:"./dist/node/storage/index.d.ts",import:"./dist/node/storage/index.js",require:"./dist/node/storage/index.cjs"},"./node/ws":{types:"./dist/node/ws/index.d.ts",import:"./dist/node/ws/index.js",require:"./dist/node/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"},"./style/reset.css":{import:"./dist/style/reset.css",require:"./dist/style/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./util":{types:"./dist/util/index.d.ts",import:"./dist/util/index.js",require:"./dist/util/index.cjs"}},typesVersions:{"*":{config:["dist/config/index.d.ts"],constant:["dist/constant/index.d.ts"],node:["dist/node/index.d.ts"],react:["dist/react/index.d.ts"],typescript:["dist/typescript/index.d.ts"],util:["dist/util/index.d.ts"]}},bin:{cyberskill:"dist/node/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"tsup --watch",lint:"tsx src/node/cli/index.ts lint","lint:fix":"tsx src/node/cli/index.ts lint:fix","lint:inspect":"tsx src/node/cli/index.ts lint:inspect",reset:"tsx src/node/cli/index.ts reset",prepare:"tsx src/node/cli/index.ts prepare",inspect:"tsx src/node/cli/index.ts inspect","test:unit":"tsx src/node/cli/index.ts test:unit","test:e2e":"tsx src/node/cli/index.ts test:e2e",commitlint:"tsx src/node/cli/index.ts commitlint"},dependencies:{"@antfu/eslint-config":"4.13.1","@apollo/client":"3.13.8","@apollo/server":"4.12.1","@dotenvx/dotenvx":"1.44.1","@eddeee888/gcg-typescript-resolver-files":"0.12.1","@eslint-react/eslint-plugin":"1.49.0","@graphql-codegen/cli":"5.0.6","@graphql-codegen/client-preset":"4.8.1","@microsoft/api-extractor":"7.52.8","@nestjs/common":"11.1.1","@nestjs/core":"11.1.1","@next/eslint-plugin-next":"15.3.2","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.4","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.2","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.1.0",graphql:"16.11.0","graphql-ws":"6.0.5",i18next:"25.2.0",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.16.0",mongoose:"8.15.0","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.89.0",slugify:"1.6.6",tsup:"8.5.0",tsx:"4.19.4",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.5",vitest:"3.1.4","vitest-browser-react":"0.2.0",ws:"8.18.2",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.1","@commitlint/config-conventional":"19.8.1","@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.18","@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/node":"22.15.19","@types/node-persist":"3.1.8","@types/react":"19.1.4","@types/react-dom":"19.1.5","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.27.0","lint-staged":"16.0.0","node-modules-inspector":"0.6.8","simple-git-hooks":"2.13.0"}};var R=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var b=require("child_process"),G=N(require("process"),1),P=N(require("util"),1);var M=".cyberskill-storage";var w=N(require("@dotenvx/dotenvx"),1),j=require("envalid"),L=N(require("os"),1),U=N(require("path"),1),k=N(require("process"),1);var q=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var F=!1;function V(){k.default.env.NODE_ENV!==q.PRODUCTION&&!F&&(w.default.config(),F=!0)}C(V,"loadEnvFile");function Y(){V();var e=(0,j.cleanEnv)(k.default.env,{CWD:(0,j.str)({default:k.default.cwd()}),DEBUG:(0,j.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,j.str)({default:U.default.join(L.default.homedir(),M)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}C(Y,"getEnv");var B=function(e){return e.Error="error",e.Warning="warning",e}({});var K=N(require("chalk"),1),H=N(require("consola"),1),Q=require("graphql");var W={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var J=Y();J.DEBUG||(H.default.level=4);function $(e){var t=K.default[e];return typeof t=="function"?t:K.default.green}C($,"chalkKeyword");var z={silent:H.default.silent,level:H.default.level,fatal:H.default.fatal,error:H.default.error,warn:H.default.warn,log:H.default.log,info:H.default.info,success:H.default.success,ready:H.default.ready,start:H.default.start,box:H.default.box,debug:H.default.debug,trace:H.default.trace,verbose:H.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)){H.default.box(K.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;H.default.log("".concat(K.default.gray("File:")," ").concat(K.default.blue("".concat(t).concat(r?":".concat(r):"")))),i&&H.default.log(" ".concat($(n)("Rule:")," ").concat(i)),H.default.log(" ".concat($(n)("Message:")," ").concat(s))}),H.default.box($(n)("".concat(e," : ").concat(t.length))),H.default.log(K.default.gray("─".repeat(40)))}};function X(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,i=r===void 0?!0:r,s=n.returnValue,a=n.callback,c=o(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return i&&z.error(c.message),a&&typeof a=="function"&&a(c),s||{success:!1,message:c.message,code:W.INTERNAL_SERVER_ERROR.CODE}}C(X,"catchError");var Z=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var ee=N(require("node-fetch"),1);var et=N(require("fs-extra"),1),en=N(require("path"),1);var er=et.default,ei=er.lstatSync,es=er.readdirSync,eo=er.mkdirSync,ea=er.readFileSync,ec=er.unlinkSync,eu=er.statSync,el=et.default.readJsonSync;function ed(e,t,n){et.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}C(ed,"writeFileSync");function ep(e,t,n){et.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}C(ep,"appendFileSync");function eE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return et.default.pathExistsSync(e)})}C(eE,"pathExistsSync");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){eE(e)&&et.default.removeSync(e)})}C(ef,"removeSync");var em=N(require("fs-extra"),1);var eg=N(require("path"),1);var ey=Y(),eh=eg.default;function ev(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eh).resolve.apply(r,[ey.CWD].concat(E(t)))}C(ev,"resolveWorkingPath");function eS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eh).join.apply(r,E(t))}C(eS,"join");var eD=Y(),eO=eD.CWD,eC="@cyberskill/shared",eI="node_modules",eN="dist",eT="package.json",ex="package-lock.json",eA="tsconfig.json",e_=".gitignore",eR=".simple-git-hooks.json",eb="pnpm-lock.yaml",eG=".git/hooks/",eP=".git/COMMIT_EDITMSG",eM=".migrate-mongo.config.js",ew=function(){var e=em.default.readJsonSync(ev(eT)).name===eC?eO:eS(eO,eI,eC);return eS(e,eN)}(),ej="cyberskill",eL="src/node/cli/index.ts",eU="eslint",ek="eslint",eq="vitest";var eF="vitest",eV="@commitlint/cli",eY="@commitlint/config-conventional",eB="commitlint",eK="lint-staged",eH="lint-staged",eQ="typescript",eW="tsc",eJ="tsx",e$="git",ez="pnpm",eX="pnpm exec",eZ="simple-git-hooks",e0="simple-git-hooks",e1="@eslint/config-inspector",e2="eslint-config-inspector",e4="node-modules-inspector",e3="node-modules-inspector",e5="migrate-mongo",e8="./node_modules/migrate-mongo/bin/migrate-mongo",e6={CYBERSKILL_DIRECTORY:ew,WORKING_DIRECTORY:eO,TS_CONFIG:ev(eA),GIT_IGNORE:ev(e_),GIT_HOOK:ev(eG),GIT_COMMIT_MSG:ev(eP),SIMPLE_GIT_HOOKS_JSON:ev(eR),PACKAGE_JSON:ev(eT),PACKAGE_LOCK_JSON:ev(ex),PNPM_LOCK_YAML:ev(eb),NODE_MODULES:ev(eI),MIGRATE_MONGO_CONFIG:ev(eM),LINT_STAGED_CONFIG:ev("".concat(ew,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:ev("".concat(ew,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:ev("".concat(ew,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ev("".concat(ew,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ev("".concat(ew,"/react/vitest/vitest.e2e.js"))};function e7(e){var t=e.isCurrentProject;return d({"pre-commit":eH,"commit-msg":eB},t&&{"pre-push":tS("".concat(e$," pull"))})}C(e7,"createGitHooksConfig");function e9(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:switch(t){case R.CLI:return[3,1];case R.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,to(s,{install:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tO(tS("".concat(eX," ").concat(r))))];case 4:return[2,tO(tS(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}C(e9,"buildCommand");var te={simpleGitHooks:e9({type:R.CLI,packages:[{name:eZ,type:Z.DEV_DEPENDENCY}],command:e0}),eslintInspect:e9({type:R.CLI,packages:[{name:e1,type:Z.DEV_DEPENDENCY}],command:e2}),nodeModulesInspect:e9({type:R.CLI,packages:[{name:e4,type:Z.DEV_DEPENDENCY}],command:e3}),eslintCheck:e9({type:R.CLI,packages:[{name:eU,type:Z.DEV_DEPENDENCY}],command:"".concat(ek," ").concat(e6.WORKING_DIRECTORY," --no-cache")}),eslintFix:e9({type:R.CLI,packages:[{name:eU,type:Z.DEV_DEPENDENCY}],command:"".concat(ek," ").concat(e6.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:e9({type:R.CLI,packages:[{name:eQ,type:Z.DEPENDENCY}],command:"".concat(eW," -p ").concat(e6.TS_CONFIG," --noEmit")}),testUnit:e9({type:R.CLI,packages:[{name:eq,type:Z.DEV_DEPENDENCY}],command:"".concat(eF," --config ").concat(e6.UNIT_TEST_CONFIG)}),testE2e:e9({type:R.CLI,packages:[{name:eq,type:Z.DEV_DEPENDENCY}],command:"".concat(eF," --config ").concat(e6.E2E_TEST_CONFIG)}),mongoMigrateCreate:C(function(e){return e9({type:R.CLI,packages:[{name:e5,type:Z.DEPENDENCY}],command:"".concat(eJ," ").concat(e8," create ").concat(e," -f ").concat(e6.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:e9({type:R.CLI,packages:[{name:e5,type:Z.DEPENDENCY}],command:"".concat(eJ," ").concat(e8," up -f ").concat(e6.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:e9({type:R.CLI,packages:[{name:e5,type:Z.DEPENDENCY}],command:"".concat(eJ," ").concat(e8," down -f ").concat(e6.MIGRATE_MONGO_CONFIG)}),commitLint:e9({type:R.CLI,packages:[{name:eV,type:Z.DEV_DEPENDENCY},{name:eY,type:Z.DEV_DEPENDENCY}],command:"".concat(eB," --edit ").concat(e6.GIT_COMMIT_MSG," --config ").concat(e6.COMMITLINT_CONFIG)}),lintStaged:e9({type:R.CLI,packages:[{name:eK,type:Z.DEV_DEPENDENCY}],command:"".concat(eH," --config ").concat(e6.LINT_STAGED_CONFIG)}),configureGitHook:e9({type:R.STRING,command:"".concat(e$," config core.hooksPath ").concat(e6.GIT_HOOK)}),build:e9({type:R.STRING,command:"".concat(ez," run --if-present build")}),pnpmInstallStandard:e9({type:R.STRING,command:"".concat(ez," install --ignore-scripts")}),pnpmInstallLegacy:e9({type:R.STRING,command:"".concat(ez," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:e9({type:R.STRING,command:"".concat(ez," install --ignore-scripts --force")}),pnpmPruneStore:e9({type:R.STRING,command:"".concat(ez," store prune")}),pnpmCleanCache:e9({type:R.STRING,command:"".concat(ez," cache delete")})};var tt=Y();function tn(e){return i(function(){var t,n,r,i;return g(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,(0,ee.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.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=s.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:i=s.sent();return[2,X(i)];case 4:return[2]}})})()}C(tn,"getLatestPackageVersion");function tr(e){return i(function(){var t,n,r,i,s,o,a,c,u,l,d,p,E,f,m,y,h,v,S,D,O,C,I,N;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,2,,3]);if(!e){if(eE(e6.PACKAGE_JSON)){t=el(e6.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,i=t.version,s=i===void 0?"":i;return[2,{success:!0,result:{name:r,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:e6.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!eE(e6.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:"",file:{}}}];o=el(e6.PACKAGE_JSON),a=o.name,c=o.version,u=c===void 0?"":c,l=o.dependencies,d=l===void 0?{}:l,p=o.devDependencies,E=p===void 0?{}:p;if(e.name===a)return[2,{success:!0,result:{name:a,currentVersion:u,latestVersion:u,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:e6.PACKAGE_JSON,file:o}}];f=e.name in d,m=e.name in E;return[4,tn(e.name)];case 1:y=g.sent();if(!y.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:"",file:{}}}];if(!f&&!m)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:"",file:{}}}];S=(v=(h=d[e.name])!==null&&h!==void 0?h:E[e.name])!==null&&v!==void 0?v:"",D=eS(tt.CWD,eI,e.name,eT);if(!eE(D))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:"",file:{}}}];O=el(D),C=O.version,I=C===void 0?"":C;return[2,S!==I?{success:!0,result:{name:e.name,currentVersion:I||S,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:D,file:O}}:{success:!0,result:{name:e.name,currentVersion:S,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:S===y.result,isDependency:f,isDevDependency:m,installedPath:D,file:O}}];case 2:N=g.sent();return[2,X(N)];case 3:return[2]}})})()}C(tr,"getPackage");function ti(e){return i(function(){var t,n,r,i,s;return g(this,function(o){try{;r=el(e6.PACKAGE_JSON),i=(t=r.dependencies)!==null&&t!==void 0?t:{},s=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?i[e.name]=e.latestVersion:e.isDevDependency&&(s[e.name]=e.latestVersion),ed(e6.PACKAGE_JSON,JSON.stringify(r,null,4)),z.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){X(e)}return[2]})})()}C(ti,"updatePackage");function ts(){return i(function(){var e,t,n,r,i,s,o,a,c,u,l,d,p;return g(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);e=[{command:C(function(){return te.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:C(function(){return te.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:C(function(){return te.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);i=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,8];o=s.value,a=o.command,c=o.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,a()];case 4:u=E.sent();return[4,tI("".concat(c," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();X(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=E.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:p=E.sent();X(p);return[3,13];case 13:return[2]}})})()}C(ts,"installDependencies");function to(e,t){return i(function(){var n,r,i,s,o,a,c,u,l,d,p,f,m,y,h,v,S;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,15,,16]);if(!eE(e6.PACKAGE_JSON)){z.error("package.json not found. Aborting setup.");return[2]}return[4,Promise.all(e.map(tr))];case 1:i=g.sent().filter(function(e){return e.success&&!!e.result&&!e.result.isCurrentProject}).map(function(e){return e.result}),s=i.filter(function(e){return!e.isInstalled}),o=i.filter(function(e){return!e.isUpToDate}),a=[];(t===null||t===void 0?void 0:t.install)&&s.length>0&&(n=a).push.apply(n,E(s.map(ti))),(t===null||t===void 0?void 0:t.update)&&o.length>0&&(r=a).push.apply(r,E(o.map(ti)));c=a.length>0;if(!c)return[3,6];return[4,Promise.all(a)];case 2:g.sent();return[4,ts()];case 3:g.sent();u=["Running ESLint with auto-fix"];return[4,te.eslintFix()];case 4:return[4,tI.apply(void 0,u.concat([g.sent()]))];case 5:c=g.sent();g.label=6;case 6:c;d=true,p=false,f=undefined;g.label=7;case 7:g.trys.push([7,12,13,14]);m=((l=t===null||t===void 0?void 0:t.callbacks)!==null&&l!==void 0?l:[])[Symbol.iterator]();g.label=8;case 8:if(!!(d=(y=m.next()).done))return[3,11];h=y.value;return[4,h()];case 9:g.sent();g.label=10;case 10:d=true;return[3,8];case 11:return[3,14];case 12:v=g.sent();p=true;f=v;return[3,14];case 13:try{if(!d&&m.return!=null){m.return()}}finally{if(p){throw f}}return[7];case 14:return[3,16];case 15:S=g.sent();X(S);return[3,16];case 16:return[2]}})})()}C(to,"setupPackages");var ta=N(require("node-persist"),1);var tc=Y();function tu(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=ta.default.defaultInstance;if(e)return[3,2];return[4,ta.default.init({dir:tc.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}C(tu,"initNodePersist");var tl={get:function e(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tu()];case 1:r.sent();return[4,ta.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,X(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tu()];case 1:r.sent();return[4,ta.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();X(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tu()];case 1:n.sent();return[4,ta.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();X(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tu()];case 1:n.sent();return[4,ta.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(z.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,X(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return g(this,function(t){try{return[2,"".concat(tc.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,X(e,{returnValue:null})]}return[2]})})()}};var td=Y(),tp=P.promisify(b.exec);function tE(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,tr()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}C(tE,"getPackageName");function tf(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,tE()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,tl.set(t,e)];case 3:r.sent(),setTimeout(function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:return[4,tl.getLogLink(t)];case 1:e=n.sent();e&&z.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();X(n);return[3,5];case 5:return[2]}})})()}C(tf,"saveErrorListToStorage");function tm(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tE()];case 1:e=r.sent();return[4,tl.get(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:[]];case 3:n=r.sent();return[2,X(n,{returnValue:[]})];case 4:return[2]}})})()}C(tm,"getStoredErrorLists");function tg(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tE()];case 1:e=n.sent();return[4,tl.remove(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();X(t);return[3,4];case 4:return[2]}})})()}C(tg,"clearAllErrorLists");function ty(e){var t=[],n=[],r="",i=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var a,c,u,l,d;var p=i.exec(e)||[],E=s.exec(e)||[],f=o.exec(e)||[];var m,g,y,h,v,S;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===B.Error?B.Error:B.Warning,message:(m=p===null||p===void 0?void 0:(a=p[4])===null||a===void 0?void 0:a.trim())!==null&&m!==void 0?m:"",rule:(g=p===null||p===void 0?void 0:(c=p[5])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:""}):E.length?t.push({file:(y=E===null||E===void 0?void 0:E[1])!==null&&y!==void 0?y:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===B.Error?B.Error:B.Warning,message:(h=E===null||E===void 0?void 0:(u=E[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):f.length?t.push({file:"commitlint",type:B.Error,message:(v=f===null||f===void 0?void 0:(l=f[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(S=f===null||f===void 0?void 0:(d=f[2])===null||d===void 0?void 0:d.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&tf(t),td.DEBUG&&n.length&&(z.warn("Unmatched lines:"),n.forEach(function(e){return z.info(" ".concat(e))}))}C(ty,"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,i=e.line,s=e.column,o=e.ruleId,a=e.message;n.push({type:r===2?B.Error:B.Warning,file:t,position:"".concat(i,":").concat(s),rule:o,message:a})})}),n.length&&tf(n)}catch(t){ty(e)}}C(th,"parseCommandOutput");function tv(e){return i(function(e){var t,n,r,i,s,o,a,c,u;var l=arguments;return g(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:th;n=new AbortController;G.default.on("SIGINT",function(){z.warn("Process interrupted. Terminating..."),n.abort(),G.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tp(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),i=r.stdout,s=r.stderr;[i,s].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();a=o.stdout,c=o.stderr,u=o.message;[a,c].forEach(function(e){return e&&t(e)}),!c&&!a&&z.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}C(tv,"executeCommand");function tS(e){return{raw:!0,cmd:e}}C(tS,"rawCommand");function tD(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eX," ").concat(eJ," ").concat(eL," ").concat(e):"".concat(eX," ").concat(ej," ").concat(e)}C(tD,"formatCLI");function tO(e,t){return typeof e=="function"?tD(e(t),t):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tD(e,t):e}C(tO,"formatCommand");function tC(e){return i(function(){var t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,tr({name:eC})];case 1:t=i.sent();if(t.success){n={isCurrentProject:t.result.isCurrentProject},r=typeof e=="function"?e(n):e;return[2,Object.fromEntries(Object.entries(r).map(function(e){var t=p(e,2),r=t[0],i=t[1];return[r,tO(i,n)]}))]}return[2]}})})()}C(tC,"resolveCommands");function tI(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);z.start("".concat(e)),td.DEBUG&&z.info("→ ".concat(t));return[4,tv(t)];case 1:r.sent(),z.success("".concat(e," done."));return[3,3];case 2:n=r.sent();X(n);return[3,3];case 3:return[2]}})})()}C(tI,"runCommand");function tN(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:if(!eE(e6.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,te.typescriptCheck()];case 1:return[4,tI.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=z.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}C(tN,"checkTypescript");function tT(){return i(function(){var e,t,n,r;var i=arguments;return g(this,function(s){switch(s.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,te.eslintFix()];case 1:return[4,tI.apply(void 0,n.concat([s.sent()]))];case 2:t=s.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,te.eslintCheck()];case 4:return[4,tI.apply(void 0,r.concat([s.sent()]))];case 5:t=s.sent();s.label=6;case 6:t;return[2]}})}).apply(this,arguments)}C(tT,"checkEslint");function tx(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";z.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}C(tx,"printIssues");function tA(){return i(function(){return g(this,function(e){setTimeout(function(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:return[4,tm()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===B.Error}),n=e.filter(function(e){return e.type===B.Warning});!t.length&&!n.length?z.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tx("Warnings",n),tx("Errors",t),(t.length>0||n.length>0)&&T.default.exit(1));return[2]}})})()},0);return[2]})})()}C(tA,"showCheckResult");function t_(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,tg()];case 1:i.sent();return[4,tr({name:eC})];case 2:e=i.sent();if(!e.success){z.error("Failed to retrieve package information. Aborting lint-staged.");return[2]}t=e.result.isCurrentProject;if(!t)return[3,5];n=["Building package: ".concat(eC)];return[4,te.build()];case 3:return[4,tI.apply(void 0,n.concat([i.sent()]))];case 4:t=i.sent();i.label=5;case 5:t;r=["Executing lint-staged"];return[4,te.lintStaged()];case 6:return[4,tI.apply(void 0,r.concat([i.sent()]))];case 7:i.sent(),tA();return[2]}})})()}C(t_,"lintStaged");function tR(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,te.eslintInspect()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tR,"inspectLint");function tb(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tg()];case 1:e.sent();return[4,Promise.all([tN(),tT()])];case 2:e.sent(),tA();return[2]}})})()}C(tb,"lintCheck");function tG(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tg()];case 1:e.sent();return[4,Promise.all([tN(),tT(!0)])];case 2:e.sent(),tA();return[2]}})})()}C(tG,"lintFix");function tP(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,tg()];case 1:t.sent();e=["Validating commit message"];return[4,te.commitLint()];case 2:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tA();return[2]}})})()}C(tP,"commitLint");function tM(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:e=["Configuring Git hooks"];return[4,te.configureGitHook()];case 1:return[4,tI.apply(void 0,e.concat([i.sent()]))];case 2:i.sent(),ef(e6.GIT_HOOK);return[4,tC(e7)];case 3:t=i.sent();ed(e6.SIMPLE_GIT_HOOKS_JSON,JSON.stringify(t,null,4));n="\n".concat(eR,"\n");eE(e6.GIT_IGNORE)?ea(e6.GIT_IGNORE,"utf-8").split("\n").includes(eR)||ep(e6.GIT_IGNORE,n):ed(e6.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,te.simpleGitHooks()];case 4:return[4,tI.apply(void 0,r.concat([i.sent()]))];case 5:i.sent();return[2]}})})()}C(tM,"setupGitHook");function tw(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,ts()];case 1:e.sent();return[4,tM()];case 2:e.sent();return[2]}})})()}C(tw,"prepare");function tj(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:ef(e6.NODE_MODULES,e6.PNPM_LOCK_YAML);e=["Pruning pnpm store"];return[4,te.pnpmPruneStore()];case 1:return[4,tI.apply(void 0,e.concat([n.sent()]))];case 2:n.sent();t=["Clearing pnpm cache"];return[4,te.pnpmCleanCache()];case 3:return[4,tI.apply(void 0,t.concat([n.sent()]))];case 4:n.sent();return[4,ts()];case 5:n.sent();return[4,tM()];case 6:n.sent();return[2]}})})()}C(tj,"reset");function tL(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,te.nodeModulesInspect()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tL,"inspect");function tU(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,te.testUnit()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tU,"testUnit");function tk(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,te.testE2e()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tk,"testE2E");function tq(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,te.mongoMigrateCreate(e)];case 1:return[4,tI.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}C(tq,"mongoMigrateCreate");function tF(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,te.mongoMigrateUp()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tF,"mongoMigrateUp");function tV(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,te.mongoMigrateDown()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tV,"mongoMigrateDown");(function(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,A.default)((0,x.hideBin)(T.default.argv)).scriptName(ej).usage("$0 <command> [options]").command("lint","Check code for linting issues",tb).command("lint:fix","Fix linting issues automatically",tG).command("lint:inspect","View active ESLint configuration",tR).command("lint-staged","Run lint checks on staged files",t_).command("commitlint","Validate commit message format",tP).command("prepare","Initialize project and dependencies",tw).command("reset","Reset the project and reinstall dependencies",tj).command("inspect","Analyze installed project dependencies",tL).command("test:unit","Run unit test suite",tU).command("test:e2e","Run end-to-end test suite",tk).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 g(this,function(t){switch(t.label){case 0:if(!e.name){z.error("Migration name is required.");return[2]}return[4,tq(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",tF).command("mongo:migrate:down","Rollback last MongoDB migration",tV).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(_.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();X(e),T.default.exit(1);return[3,3];case 3:return[2]}})})()})();
|
|
2
|
+
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,i,s,o){try{var a=e[s](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).then(r,i)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(i,s){var o=e.apply(t,n);function a(e){r(o,i,s,a,c,"next",e)}function c(e){r(o,i,s,a,c,"throw",e)}a(undefined)})}}function s(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var i=true;var s=false;var o,a;try{for(n=n.call(e);!(i=(o=n.next()).done);i=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){s=true;a=e}finally{try{if(!i&&n["return"]!=null)n["return"]()}finally{if(s)throw a}}return r}function u(){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 l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){s(e,t,n[t])})}return e}function p(e,n){return t(e)||c(e,n)||m(e,n)||u()}function E(e){return n(e)||a(e)||m(e)||l()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function g(e,t){var n,r,i,s={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(s=0)),s)try{if(n=1,r&&(i=a[0]&2?r["return"]:a[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;if(r=0,i)a=[a[0]&2,i.value];switch(a[0]){case 0:case 1:i=a;break;case 4:s.label++;return{value:a[1],done:false};case 5:s.label++;r=a[1];a=[0];continue;case 7:a=s.ops.pop();s.trys.pop();continue;default:if(!(i=s.trys,i=i.length>0&&i[i.length-1])&&(a[0]===6||a[0]===2)){s=0;continue}if(a[0]===3&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(a[0]===6&&s.label<i[1]){s.label=i[1];i=a;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(a);break}if(i[2])s.ops.pop();s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e];r=0}finally{n=i=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var y=Object.create;var h=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var D=Object.getPrototypeOf,O=Object.prototype.hasOwnProperty;var C=function(e,t){return h(e,"name",{value:t,configurable:!0})};var I=function(e,t,n,r){var i=true,s=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var a=function(){var i=u.value;!O.call(e,i)&&i!==n&&h(e,i,{get:function(){return t[i]},enumerable:!(r=v(t,i))||r.enumerable})};for(var c=S(t)[Symbol.iterator](),u;!(i=(u=c.next()).done);i=true)a()}catch(e){s=true;o=e}finally{try{if(!i&&c.return!=null){c.return()}}finally{if(s){throw o}}}return e};var N=function(e,t,n){return n=e!=null?y(D(e)):{},I(t||!e||!e.__esModule?h(n,"default",{value:e,enumerable:!0}):n,e)};var T=N(require("process"),1),x=require("yargs/helpers"),A=N(require("yargs/yargs"),1);var _={name:"@cyberskill/shared",type:"module",version:"1.171.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"},"./config":{types:"./dist/config/index.d.ts",import:"./dist/config/index.js",require:"./dist/config/index.cjs"},"./config/commitlint":{types:"./dist/config/commitlint/index.d.ts",import:"./dist/config/commitlint/index.js",require:"./dist/config/commitlint/index.cjs"},"./config/env":{types:"./dist/config/env/index.d.ts",import:"./dist/config/env/index.js",require:"./dist/config/env/index.cjs"},"./config/eslint":{types:"./dist/config/eslint/index.d.ts",import:"./dist/config/eslint/index.js",require:"./dist/config/eslint/index.cjs"},"./config/graphql-codegen":{types:"./dist/config/graphql-codegen/index.d.ts",import:"./dist/config/graphql-codegen/index.js",require:"./dist/config/graphql-codegen/index.cjs"},"./config/lint-staged":{types:"./dist/config/lint-staged/index.d.ts",import:"./dist/config/lint-staged/index.js",require:"./dist/config/lint-staged/index.cjs"},"./config/vitest":{types:"./dist/config/vitest/index.d.ts",import:"./dist/config/vitest/index.js",require:"./dist/config/vitest/index.cjs"},"./constant":{types:"./dist/constant/index.d.ts",import:"./dist/constant/index.js",require:"./dist/constant/index.cjs"},"./node":{types:"./dist/node/index.d.ts",import:"./dist/node/index.js",require:"./dist/node/index.cjs"},"./node/apollo-server":{types:"./dist/node/apollo-server/index.d.ts",import:"./dist/node/apollo-server/index.js",require:"./dist/node/apollo-server/index.cjs"},"./node/cli":{types:"./dist/node/cli/index.d.ts",import:"./dist/node/cli/index.js",require:"./dist/node/cli/index.cjs"},"./node/command":{types:"./dist/node/command/index.d.ts",import:"./dist/node/command/index.js",require:"./dist/node/command/index.cjs"},"./node/express":{types:"./dist/node/express/index.d.ts",import:"./dist/node/express/index.js",require:"./dist/node/express/index.cjs"},"./node/fs":{types:"./dist/node/fs/index.d.ts",import:"./dist/node/fs/index.js",require:"./dist/node/fs/index.cjs"},"./node/log":{types:"./dist/node/log/index.d.ts",import:"./dist/node/log/index.js",require:"./dist/node/log/index.cjs"},"./node/mongo":{types:"./dist/node/mongo/index.d.ts",import:"./dist/node/mongo/index.js",require:"./dist/node/mongo/index.cjs"},"./node/package":{types:"./dist/node/package/index.d.ts",import:"./dist/node/package/index.js",require:"./dist/node/package/index.cjs"},"./node/path":{types:"./dist/node/path/index.d.ts",import:"./dist/node/path/index.js",require:"./dist/node/path/index.cjs"},"./node/storage":{types:"./dist/node/storage/index.d.ts",import:"./dist/node/storage/index.js",require:"./dist/node/storage/index.cjs"},"./node/ws":{types:"./dist/node/ws/index.d.ts",import:"./dist/node/ws/index.js",require:"./dist/node/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"},"./style/reset.css":{import:"./dist/style/reset.css",require:"./dist/style/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./util":{types:"./dist/util/index.d.ts",import:"./dist/util/index.js",require:"./dist/util/index.cjs"}},typesVersions:{"*":{config:["dist/config/index.d.ts"],constant:["dist/constant/index.d.ts"],node:["dist/node/index.d.ts"],react:["dist/react/index.d.ts"],typescript:["dist/typescript/index.d.ts"],util:["dist/util/index.d.ts"]}},bin:{cyberskill:"dist/node/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"tsup --watch",lint:"tsx src/node/cli/index.ts lint","lint:fix":"tsx src/node/cli/index.ts lint:fix","lint:inspect":"tsx src/node/cli/index.ts lint:inspect",reset:"tsx src/node/cli/index.ts reset",prepare:"tsx src/node/cli/index.ts prepare",inspect:"tsx src/node/cli/index.ts inspect","test:unit":"tsx src/node/cli/index.ts test:unit","test:e2e":"tsx src/node/cli/index.ts test:e2e",commitlint:"tsx src/node/cli/index.ts commitlint"},dependencies:{"@antfu/eslint-config":"4.13.2","@apollo/client":"3.13.8","@apollo/server":"4.12.1","@dotenvx/dotenvx":"1.44.1","@eddeee888/gcg-typescript-resolver-files":"0.12.1","@eslint-react/eslint-plugin":"1.49.0","@graphql-codegen/cli":"5.0.6","@graphql-codegen/client-preset":"4.8.1","@microsoft/api-extractor":"7.52.8","@nestjs/common":"11.1.1","@nestjs/core":"11.1.1","@next/eslint-plugin-next":"15.3.2","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.4","body-parser":"2.2.0",chalk:"5.4.1",clsx:"2.1.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.2","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.1.0",graphql:"16.11.0","graphql-ws":"6.0.5",i18next:"25.2.0",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.16.0",mongoose:"8.15.0","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.89.0",slugify:"1.6.6",tsup:"8.5.0",tsx:"4.19.4",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.5",vitest:"3.1.4","vitest-browser-react":"0.2.0",ws:"8.18.2",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.1","@commitlint/config-conventional":"19.8.1","@eslint/config-inspector":"1.0.2","@types/body-parser":"1.19.5","@types/compression":"1.8.0","@types/cookie-parser":"1.4.8","@types/cors":"2.8.18","@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/node":"22.15.21","@types/node-persist":"3.1.8","@types/react":"19.1.5","@types/react-dom":"19.1.5","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.27.0","lint-staged":"16.0.0","node-modules-inspector":"0.6.8","simple-git-hooks":"2.13.0"}};var R=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var b=require("child_process"),G=N(require("process"),1),P=N(require("util"),1);var M=".cyberskill-storage";var w=N(require("@dotenvx/dotenvx"),1),j=require("envalid"),L=N(require("os"),1),U=N(require("path"),1),k=N(require("process"),1);var q=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var F=!1;function V(){k.default.env.NODE_ENV!==q.PRODUCTION&&!F&&(w.default.config(),F=!0)}C(V,"loadEnvFile");function Y(){V();var e=(0,j.cleanEnv)(k.default.env,{CWD:(0,j.str)({default:k.default.cwd()}),DEBUG:(0,j.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,j.str)({default:U.default.join(L.default.homedir(),M)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}C(Y,"getEnv");var B=function(e){return e.Error="error",e.Warning="warning",e}({});var K=N(require("chalk"),1),H=N(require("consola"),1),Q=require("graphql");var W={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var J=Y();J.DEBUG||(H.default.level=4);function $(e){var t=K.default[e];return typeof t=="function"?t:K.default.green}C($,"chalkKeyword");var z={silent:H.default.silent,level:H.default.level,fatal:H.default.fatal,error:H.default.error,warn:H.default.warn,log:H.default.log,info:H.default.info,success:H.default.success,ready:H.default.ready,start:H.default.start,box:H.default.box,debug:H.default.debug,trace:H.default.trace,verbose:H.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)){H.default.box(K.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;H.default.log("".concat(K.default.gray("File:")," ").concat(K.default.blue("".concat(t).concat(r?":".concat(r):"")))),i&&H.default.log(" ".concat($(n)("Rule:")," ").concat(i)),H.default.log(" ".concat($(n)("Message:")," ").concat(s))}),H.default.box($(n)("".concat(e," : ").concat(t.length))),H.default.log(K.default.gray("─".repeat(40)))}};function X(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,i=r===void 0?!0:r,s=n.returnValue,a=n.callback,c=o(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return i&&z.error(c.message),a&&typeof a=="function"&&a(c),s||{success:!1,message:c.message,code:W.INTERNAL_SERVER_ERROR.CODE}}C(X,"catchError");var Z=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var ee=N(require("node-fetch"),1);var et=N(require("fs-extra"),1),en=N(require("path"),1);var er=et.default,ei=er.lstatSync,es=er.readdirSync,eo=er.mkdirSync,ea=er.readFileSync,ec=er.unlinkSync,eu=er.statSync,el=et.default.readJsonSync;function ed(e,t,n){et.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}C(ed,"writeFileSync");function ep(e,t,n){et.default.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}C(ep,"appendFileSync");function eE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return et.default.pathExistsSync(e)})}C(eE,"pathExistsSync");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){eE(e)&&et.default.removeSync(e)})}C(ef,"removeSync");var em=N(require("fs-extra"),1);var eg=N(require("path"),1);var ey=Y(),eh=eg.default;function ev(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eh).resolve.apply(r,[ey.CWD].concat(E(t)))}C(ev,"resolveWorkingPath");function eS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eh).join.apply(r,E(t))}C(eS,"join");var eD=Y(),eO=eD.CWD,eC="@cyberskill/shared",eI="node_modules",eN="dist",eT="package.json",ex="package-lock.json",eA="tsconfig.json",e_=".gitignore",eR=".simple-git-hooks.json",eb="pnpm-lock.yaml",eG=".git/hooks/",eP=".git/COMMIT_EDITMSG",eM=".migrate-mongo.config.js",ew=function(){var e=em.default.readJsonSync(ev(eT)).name===eC?eO:eS(eO,eI,eC);return eS(e,eN)}(),ej="cyberskill",eL="src/node/cli/index.ts",eU="eslint",ek="eslint",eq="vitest";var eF="vitest",eV="@commitlint/cli",eY="@commitlint/config-conventional",eB="commitlint",eK="lint-staged",eH="lint-staged",eQ="typescript",eW="tsc",eJ="tsx",e$="git",ez="pnpm",eX="pnpm exec",eZ="simple-git-hooks",e0="simple-git-hooks",e1="@eslint/config-inspector",e2="eslint-config-inspector",e4="node-modules-inspector",e3="node-modules-inspector",e5="migrate-mongo",e8="./node_modules/migrate-mongo/bin/migrate-mongo",e6={CYBERSKILL_DIRECTORY:ew,WORKING_DIRECTORY:eO,TS_CONFIG:ev(eA),GIT_IGNORE:ev(e_),GIT_HOOK:ev(eG),GIT_COMMIT_MSG:ev(eP),SIMPLE_GIT_HOOKS_JSON:ev(eR),PACKAGE_JSON:ev(eT),PACKAGE_LOCK_JSON:ev(ex),PNPM_LOCK_YAML:ev(eb),NODE_MODULES:ev(eI),MIGRATE_MONGO_CONFIG:ev(eM),LINT_STAGED_CONFIG:ev("".concat(ew,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:ev("".concat(ew,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:ev("".concat(ew,"/config/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ev("".concat(ew,"/config/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ev("".concat(ew,"/config/vitest/vitest.e2e.js"))};function e7(e){var t=e.isCurrentProject;return d({"pre-commit":eH,"commit-msg":eB},t&&{"pre-push":tS("".concat(e$," pull"))})}C(e7,"createGitHooksConfig");function e9(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:switch(t){case R.CLI:return[3,1];case R.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,to(s,{install:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tO(tS("".concat(eX," ").concat(r))))];case 4:return[2,tO(tS(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}C(e9,"buildCommand");var te={simpleGitHooks:e9({type:R.CLI,packages:[{name:eZ,type:Z.DEV_DEPENDENCY}],command:e0}),eslintInspect:e9({type:R.CLI,packages:[{name:e1,type:Z.DEV_DEPENDENCY}],command:e2}),nodeModulesInspect:e9({type:R.CLI,packages:[{name:e4,type:Z.DEV_DEPENDENCY}],command:e3}),eslintCheck:e9({type:R.CLI,packages:[{name:eU,type:Z.DEV_DEPENDENCY}],command:"".concat(ek," ").concat(e6.WORKING_DIRECTORY," --no-cache")}),eslintFix:e9({type:R.CLI,packages:[{name:eU,type:Z.DEV_DEPENDENCY}],command:"".concat(ek," ").concat(e6.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:e9({type:R.CLI,packages:[{name:eQ,type:Z.DEPENDENCY}],command:"".concat(eW," -p ").concat(e6.TS_CONFIG," --noEmit")}),testUnit:e9({type:R.CLI,packages:[{name:eq,type:Z.DEV_DEPENDENCY}],command:"".concat(eF," --config ").concat(e6.UNIT_TEST_CONFIG)}),testE2e:e9({type:R.CLI,packages:[{name:eq,type:Z.DEV_DEPENDENCY}],command:"".concat(eF," --config ").concat(e6.E2E_TEST_CONFIG)}),mongoMigrateCreate:C(function(e){return e9({type:R.CLI,packages:[{name:e5,type:Z.DEPENDENCY}],command:"".concat(eJ," ").concat(e8," create ").concat(e," -f ").concat(e6.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:e9({type:R.CLI,packages:[{name:e5,type:Z.DEPENDENCY}],command:"".concat(eJ," ").concat(e8," up -f ").concat(e6.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:e9({type:R.CLI,packages:[{name:e5,type:Z.DEPENDENCY}],command:"".concat(eJ," ").concat(e8," down -f ").concat(e6.MIGRATE_MONGO_CONFIG)}),commitLint:e9({type:R.CLI,packages:[{name:eV,type:Z.DEV_DEPENDENCY},{name:eY,type:Z.DEV_DEPENDENCY}],command:"".concat(eB," --edit ").concat(e6.GIT_COMMIT_MSG," --config ").concat(e6.COMMITLINT_CONFIG)}),lintStaged:e9({type:R.CLI,packages:[{name:eK,type:Z.DEV_DEPENDENCY}],command:"".concat(eH," --config ").concat(e6.LINT_STAGED_CONFIG)}),configureGitHook:e9({type:R.STRING,command:"".concat(e$," config core.hooksPath ").concat(e6.GIT_HOOK)}),build:e9({type:R.STRING,command:"".concat(ez," run --if-present build")}),pnpmInstallStandard:e9({type:R.STRING,command:"".concat(ez," install --ignore-scripts")}),pnpmInstallLegacy:e9({type:R.STRING,command:"".concat(ez," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:e9({type:R.STRING,command:"".concat(ez," install --ignore-scripts --force")}),pnpmPruneStore:e9({type:R.STRING,command:"".concat(ez," store prune")}),pnpmCleanCache:e9({type:R.STRING,command:"".concat(ez," cache delete")})};var tt=Y();function tn(e){return i(function(){var t,n,r,i;return g(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,(0,ee.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.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=s.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:i=s.sent();return[2,X(i)];case 4:return[2]}})})()}C(tn,"getLatestPackageVersion");function tr(e){return i(function(){var t,n,r,i,s,o,a,c,u,l,d,p,E,f,m,y,h,v,S,D,O,C,I,N;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,2,,3]);if(!e){if(eE(e6.PACKAGE_JSON)){t=el(e6.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,i=t.version,s=i===void 0?"":i;return[2,{success:!0,result:{name:r,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:e6.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!eE(e6.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:"",file:{}}}];o=el(e6.PACKAGE_JSON),a=o.name,c=o.version,u=c===void 0?"":c,l=o.dependencies,d=l===void 0?{}:l,p=o.devDependencies,E=p===void 0?{}:p;if(e.name===a)return[2,{success:!0,result:{name:a,currentVersion:u,latestVersion:u,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:e6.PACKAGE_JSON,file:o}}];f=e.name in d,m=e.name in E;return[4,tn(e.name)];case 1:y=g.sent();if(!y.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:"",file:{}}}];if(!f&&!m)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Z.DEPENDENCY,isDevDependency:e.type===Z.DEV_DEPENDENCY,installedPath:"",file:{}}}];S=(v=(h=d[e.name])!==null&&h!==void 0?h:E[e.name])!==null&&v!==void 0?v:"",D=eS(tt.CWD,eI,e.name,eT);if(!eE(D))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:"",file:{}}}];O=el(D),C=O.version,I=C===void 0?"":C;return[2,S!==I?{success:!0,result:{name:e.name,currentVersion:I||S,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:f,isDevDependency:m,installedPath:D,file:O}}:{success:!0,result:{name:e.name,currentVersion:S,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:S===y.result,isDependency:f,isDevDependency:m,installedPath:D,file:O}}];case 2:N=g.sent();return[2,X(N)];case 3:return[2]}})})()}C(tr,"getPackage");function ti(e){return i(function(){var t,n,r,i,s;return g(this,function(o){try{;r=el(e6.PACKAGE_JSON),i=(t=r.dependencies)!==null&&t!==void 0?t:{},s=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?i[e.name]=e.latestVersion:e.isDevDependency&&(s[e.name]=e.latestVersion),ed(e6.PACKAGE_JSON,JSON.stringify(r,null,4)),z.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){X(e)}return[2]})})()}C(ti,"updatePackage");function ts(){return i(function(){var e,t,n,r,i,s,o,a,c,u,l,d,p;return g(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);e=[{command:C(function(){return te.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:C(function(){return te.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:C(function(){return te.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);i=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,8];o=s.value,a=o.command,c=o.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,a()];case 4:u=E.sent();return[4,tI("".concat(c," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();X(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=E.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:p=E.sent();X(p);return[3,13];case 13:return[2]}})})()}C(ts,"installDependencies");function to(e,t){return i(function(){var n,r,i,s,o,a,c,u,l,d,p,f,m,y,h,v,S;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,15,,16]);if(!eE(e6.PACKAGE_JSON)){z.error("package.json not found. Aborting setup.");return[2]}return[4,Promise.all(e.map(tr))];case 1:i=g.sent().filter(function(e){return e.success&&!!e.result&&!e.result.isCurrentProject}).map(function(e){return e.result}),s=i.filter(function(e){return!e.isInstalled}),o=i.filter(function(e){return!e.isUpToDate}),a=[];(t===null||t===void 0?void 0:t.install)&&s.length>0&&(n=a).push.apply(n,E(s.map(ti))),(t===null||t===void 0?void 0:t.update)&&o.length>0&&(r=a).push.apply(r,E(o.map(ti)));c=a.length>0;if(!c)return[3,6];return[4,Promise.all(a)];case 2:g.sent();return[4,ts()];case 3:g.sent();u=["Running ESLint with auto-fix"];return[4,te.eslintFix()];case 4:return[4,tI.apply(void 0,u.concat([g.sent()]))];case 5:c=g.sent();g.label=6;case 6:c;d=true,p=false,f=undefined;g.label=7;case 7:g.trys.push([7,12,13,14]);m=((l=t===null||t===void 0?void 0:t.callbacks)!==null&&l!==void 0?l:[])[Symbol.iterator]();g.label=8;case 8:if(!!(d=(y=m.next()).done))return[3,11];h=y.value;return[4,h()];case 9:g.sent();g.label=10;case 10:d=true;return[3,8];case 11:return[3,14];case 12:v=g.sent();p=true;f=v;return[3,14];case 13:try{if(!d&&m.return!=null){m.return()}}finally{if(p){throw f}}return[7];case 14:return[3,16];case 15:S=g.sent();X(S);return[3,16];case 16:return[2]}})})()}C(to,"setupPackages");var ta=N(require("node-persist"),1);var tc=Y();function tu(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=ta.default.defaultInstance;if(e)return[3,2];return[4,ta.default.init({dir:tc.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}C(tu,"initNodePersist");var tl={get:function e(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tu()];case 1:r.sent();return[4,ta.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,X(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tu()];case 1:r.sent();return[4,ta.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();X(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tu()];case 1:n.sent();return[4,ta.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();X(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tu()];case 1:n.sent();return[4,ta.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(z.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,X(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return g(this,function(t){try{return[2,"".concat(tc.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,X(e,{returnValue:null})]}return[2]})})()}};var td=Y(),tp=P.promisify(b.exec);function tE(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,tr()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}C(tE,"getPackageName");function tf(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,tE()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,tl.set(t,e)];case 3:r.sent(),setTimeout(function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:return[4,tl.getLogLink(t)];case 1:e=n.sent();e&&z.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();X(n);return[3,5];case 5:return[2]}})})()}C(tf,"saveErrorListToStorage");function tm(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tE()];case 1:e=r.sent();return[4,tl.get(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:[]];case 3:n=r.sent();return[2,X(n,{returnValue:[]})];case 4:return[2]}})})()}C(tm,"getStoredErrorLists");function tg(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tE()];case 1:e=n.sent();return[4,tl.remove(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();X(t);return[3,4];case 4:return[2]}})})()}C(tg,"clearAllErrorLists");function ty(e){var t=[],n=[],r="",i=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var a,c,u,l,d;var p=i.exec(e)||[],E=s.exec(e)||[],f=o.exec(e)||[];var m,g,y,h,v,S;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===B.Error?B.Error:B.Warning,message:(m=p===null||p===void 0?void 0:(a=p[4])===null||a===void 0?void 0:a.trim())!==null&&m!==void 0?m:"",rule:(g=p===null||p===void 0?void 0:(c=p[5])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:""}):E.length?t.push({file:(y=E===null||E===void 0?void 0:E[1])!==null&&y!==void 0?y:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===B.Error?B.Error:B.Warning,message:(h=E===null||E===void 0?void 0:(u=E[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):f.length?t.push({file:"commitlint",type:B.Error,message:(v=f===null||f===void 0?void 0:(l=f[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(S=f===null||f===void 0?void 0:(d=f[2])===null||d===void 0?void 0:d.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&tf(t),td.DEBUG&&n.length&&(z.warn("Unmatched lines:"),n.forEach(function(e){return z.info(" ".concat(e))}))}C(ty,"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,i=e.line,s=e.column,o=e.ruleId,a=e.message;n.push({type:r===2?B.Error:B.Warning,file:t,position:"".concat(i,":").concat(s),rule:o,message:a})})}),n.length&&tf(n)}catch(t){ty(e)}}C(th,"parseCommandOutput");function tv(e){return i(function(e){var t,n,r,i,s,o,a,c,u;var l=arguments;return g(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:th;n=new AbortController;G.default.on("SIGINT",function(){z.warn("Process interrupted. Terminating..."),n.abort(),G.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tp(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),i=r.stdout,s=r.stderr;[i,s].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();a=o.stdout,c=o.stderr,u=o.message;[a,c].forEach(function(e){return e&&t(e)}),!c&&!a&&z.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}C(tv,"executeCommand");function tS(e){return{raw:!0,cmd:e}}C(tS,"rawCommand");function tD(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eX," ").concat(eJ," ").concat(eL," ").concat(e):"".concat(eX," ").concat(ej," ").concat(e)}C(tD,"formatCLI");function tO(e,t){return typeof e=="function"?tD(e(t),t):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tD(e,t):e}C(tO,"formatCommand");function tC(e){return i(function(){var t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,tr({name:eC})];case 1:t=i.sent();if(t.success){n={isCurrentProject:t.result.isCurrentProject},r=typeof e=="function"?e(n):e;return[2,Object.fromEntries(Object.entries(r).map(function(e){var t=p(e,2),r=t[0],i=t[1];return[r,tO(i,n)]}))]}return[2]}})})()}C(tC,"resolveCommands");function tI(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);z.start("".concat(e)),td.DEBUG&&z.info("→ ".concat(t));return[4,tv(t)];case 1:r.sent(),z.success("".concat(e," done."));return[3,3];case 2:n=r.sent();X(n);return[3,3];case 3:return[2]}})})()}C(tI,"runCommand");function tN(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:if(!eE(e6.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,te.typescriptCheck()];case 1:return[4,tI.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=z.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}C(tN,"checkTypescript");function tT(){return i(function(){var e,t,n,r;var i=arguments;return g(this,function(s){switch(s.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,te.eslintFix()];case 1:return[4,tI.apply(void 0,n.concat([s.sent()]))];case 2:t=s.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,te.eslintCheck()];case 4:return[4,tI.apply(void 0,r.concat([s.sent()]))];case 5:t=s.sent();s.label=6;case 6:t;return[2]}})}).apply(this,arguments)}C(tT,"checkEslint");function tx(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";z.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}C(tx,"printIssues");function tA(){return i(function(){return g(this,function(e){setTimeout(function(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:return[4,tm()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===B.Error}),n=e.filter(function(e){return e.type===B.Warning});!t.length&&!n.length?z.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tx("Warnings",n),tx("Errors",t),(t.length>0||n.length>0)&&T.default.exit(1));return[2]}})})()},0);return[2]})})()}C(tA,"showCheckResult");function t_(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,tg()];case 1:i.sent();return[4,tr({name:eC})];case 2:e=i.sent();if(!e.success){z.error("Failed to retrieve package information. Aborting lint-staged.");return[2]}t=e.result.isCurrentProject;if(!t)return[3,5];n=["Building package: ".concat(eC)];return[4,te.build()];case 3:return[4,tI.apply(void 0,n.concat([i.sent()]))];case 4:t=i.sent();i.label=5;case 5:t;r=["Executing lint-staged"];return[4,te.lintStaged()];case 6:return[4,tI.apply(void 0,r.concat([i.sent()]))];case 7:i.sent(),tA();return[2]}})})()}C(t_,"lintStaged");function tR(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,te.eslintInspect()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tR,"inspectLint");function tb(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tg()];case 1:e.sent();return[4,Promise.all([tN(),tT()])];case 2:e.sent(),tA();return[2]}})})()}C(tb,"lintCheck");function tG(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tg()];case 1:e.sent();return[4,Promise.all([tN(),tT(!0)])];case 2:e.sent(),tA();return[2]}})})()}C(tG,"lintFix");function tP(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,tg()];case 1:t.sent();e=["Validating commit message"];return[4,te.commitLint()];case 2:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tA();return[2]}})})()}C(tP,"commitLint");function tM(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:e=["Configuring Git hooks"];return[4,te.configureGitHook()];case 1:return[4,tI.apply(void 0,e.concat([i.sent()]))];case 2:i.sent(),ef(e6.GIT_HOOK);return[4,tC(e7)];case 3:t=i.sent();ed(e6.SIMPLE_GIT_HOOKS_JSON,JSON.stringify(t,null,4));n="\n".concat(eR,"\n");eE(e6.GIT_IGNORE)?ea(e6.GIT_IGNORE,"utf-8").split("\n").includes(eR)||ep(e6.GIT_IGNORE,n):ed(e6.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,te.simpleGitHooks()];case 4:return[4,tI.apply(void 0,r.concat([i.sent()]))];case 5:i.sent();return[2]}})})()}C(tM,"setupGitHook");function tw(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,ts()];case 1:e.sent();return[4,tM()];case 2:e.sent();return[2]}})})()}C(tw,"prepare");function tj(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:ef(e6.NODE_MODULES,e6.PNPM_LOCK_YAML);e=["Pruning pnpm store"];return[4,te.pnpmPruneStore()];case 1:return[4,tI.apply(void 0,e.concat([n.sent()]))];case 2:n.sent();t=["Clearing pnpm cache"];return[4,te.pnpmCleanCache()];case 3:return[4,tI.apply(void 0,t.concat([n.sent()]))];case 4:n.sent();return[4,ts()];case 5:n.sent();return[4,tM()];case 6:n.sent();return[2]}})})()}C(tj,"reset");function tL(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,te.nodeModulesInspect()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tL,"inspect");function tU(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,te.testUnit()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tU,"testUnit");function tk(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,te.testE2e()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tk,"testE2E");function tq(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,te.mongoMigrateCreate(e)];case 1:return[4,tI.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}C(tq,"mongoMigrateCreate");function tF(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,te.mongoMigrateUp()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tF,"mongoMigrateUp");function tV(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,te.mongoMigrateDown()];case 1:return[4,tI.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}C(tV,"mongoMigrateDown");(function(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,A.default)((0,x.hideBin)(T.default.argv)).scriptName(ej).usage("$0 <command> [options]").command("lint","Check code for linting issues",tb).command("lint:fix","Fix linting issues automatically",tG).command("lint:inspect","View active ESLint configuration",tR).command("lint-staged","Run lint checks on staged files",t_).command("commitlint","Validate commit message format",tP).command("prepare","Initialize project and dependencies",tw).command("reset","Reset the project and reinstall dependencies",tj).command("inspect","Analyze installed project dependencies",tL).command("test:unit","Run unit test suite",tU).command("test:e2e","Run end-to-end test suite",tk).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 g(this,function(t){switch(t.label){case 0:if(!e.name){z.error("Migration name is required.");return[2]}return[4,tq(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",tF).command("mongo:migrate:down","Rollback last MongoDB migration",tV).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(_.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();X(e),T.default.exit(1);return[3,3];case 3:return[2]}})})()})();
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,i,s,o){try{var a=e[s](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).then(r,i)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(i,s){var o=e.apply(t,n);function a(e){r(o,i,s,a,c,"next",e)}function c(e){r(o,i,s,a,c,"throw",e)}a(undefined)})}}function s(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var i=true;var s=false;var o,a;try{for(n=n.call(e);!(i=(o=n.next()).done);i=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){s=true;a=e}finally{try{if(!i&&n["return"]!=null)n["return"]()}finally{if(s)throw a}}return r}function u(){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 l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){s(e,t,n[t])})}return e}function p(e,n){return t(e)||c(e,n)||f(e,n)||u()}function E(e){return n(e)||a(e)||f(e)||l()}function m(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function f(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(e,t){var n,r,i,s={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(s=0)),s)try{if(n=1,r&&(i=a[0]&2?r["return"]:a[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;if(r=0,i)a=[a[0]&2,i.value];switch(a[0]){case 0:case 1:i=a;break;case 4:s.label++;return{value:a[1],done:false};case 5:s.label++;r=a[1];a=[0];continue;case 7:a=s.ops.pop();s.trys.pop();continue;default:if(!(i=s.trys,i=i.length>0&&i[i.length-1])&&(a[0]===6||a[0]===2)){s=0;continue}if(a[0]===3&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(a[0]===6&&s.label<i[1]){s.label=i[1];i=a;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(a);break}if(i[2])s.ops.pop();s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e];r=0}finally{n=i=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var y=Object.defineProperty;var h=function(e,t){return y(e,"name",{value:t,configurable:!0})};import S from"process";import{hideBin as v}from"yargs/helpers";import D from"yargs/yargs";var O={name:"@cyberskill/shared",type:"module",version:"1.169.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"},"./config":{types:"./dist/config/index.d.ts",import:"./dist/config/index.js",require:"./dist/config/index.cjs"},"./config/commitlint":{types:"./dist/config/commitlint/index.d.ts",import:"./dist/config/commitlint/index.js",require:"./dist/config/commitlint/index.cjs"},"./config/env":{types:"./dist/config/env/index.d.ts",import:"./dist/config/env/index.js",require:"./dist/config/env/index.cjs"},"./config/eslint":{types:"./dist/config/eslint/index.d.ts",import:"./dist/config/eslint/index.js",require:"./dist/config/eslint/index.cjs"},"./config/graphql-codegen":{types:"./dist/config/graphql-codegen/index.d.ts",import:"./dist/config/graphql-codegen/index.js",require:"./dist/config/graphql-codegen/index.cjs"},"./config/lint-staged":{types:"./dist/config/lint-staged/index.d.ts",import:"./dist/config/lint-staged/index.js",require:"./dist/config/lint-staged/index.cjs"},"./constant":{types:"./dist/constant/index.d.ts",import:"./dist/constant/index.js",require:"./dist/constant/index.cjs"},"./node":{types:"./dist/node/index.d.ts",import:"./dist/node/index.js",require:"./dist/node/index.cjs"},"./node/apollo-server":{types:"./dist/node/apollo-server/index.d.ts",import:"./dist/node/apollo-server/index.js",require:"./dist/node/apollo-server/index.cjs"},"./node/cli":{types:"./dist/node/cli/index.d.ts",import:"./dist/node/cli/index.js",require:"./dist/node/cli/index.cjs"},"./node/command":{types:"./dist/node/command/index.d.ts",import:"./dist/node/command/index.js",require:"./dist/node/command/index.cjs"},"./node/express":{types:"./dist/node/express/index.d.ts",import:"./dist/node/express/index.js",require:"./dist/node/express/index.cjs"},"./node/fs":{types:"./dist/node/fs/index.d.ts",import:"./dist/node/fs/index.js",require:"./dist/node/fs/index.cjs"},"./node/log":{types:"./dist/node/log/index.d.ts",import:"./dist/node/log/index.js",require:"./dist/node/log/index.cjs"},"./node/mongo":{types:"./dist/node/mongo/index.d.ts",import:"./dist/node/mongo/index.js",require:"./dist/node/mongo/index.cjs"},"./node/package":{types:"./dist/node/package/index.d.ts",import:"./dist/node/package/index.js",require:"./dist/node/package/index.cjs"},"./node/path":{types:"./dist/node/path/index.d.ts",import:"./dist/node/path/index.js",require:"./dist/node/path/index.cjs"},"./node/storage":{types:"./dist/node/storage/index.d.ts",import:"./dist/node/storage/index.js",require:"./dist/node/storage/index.cjs"},"./node/ws":{types:"./dist/node/ws/index.d.ts",import:"./dist/node/ws/index.js",require:"./dist/node/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"},"./style/reset.css":{import:"./dist/style/reset.css",require:"./dist/style/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./util":{types:"./dist/util/index.d.ts",import:"./dist/util/index.js",require:"./dist/util/index.cjs"}},typesVersions:{"*":{config:["dist/config/index.d.ts"],constant:["dist/constant/index.d.ts"],node:["dist/node/index.d.ts"],react:["dist/react/index.d.ts"],typescript:["dist/typescript/index.d.ts"],util:["dist/util/index.d.ts"]}},bin:{cyberskill:"dist/node/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"tsup --watch",lint:"tsx src/node/cli/index.ts lint","lint:fix":"tsx src/node/cli/index.ts lint:fix","lint:inspect":"tsx src/node/cli/index.ts lint:inspect",reset:"tsx src/node/cli/index.ts reset",prepare:"tsx src/node/cli/index.ts prepare",inspect:"tsx src/node/cli/index.ts inspect","test:unit":"tsx src/node/cli/index.ts test:unit","test:e2e":"tsx src/node/cli/index.ts test:e2e",commitlint:"tsx src/node/cli/index.ts commitlint"},dependencies:{"@antfu/eslint-config":"4.13.1","@apollo/client":"3.13.8","@apollo/server":"4.12.1","@dotenvx/dotenvx":"1.44.1","@eddeee888/gcg-typescript-resolver-files":"0.12.1","@eslint-react/eslint-plugin":"1.49.0","@graphql-codegen/cli":"5.0.6","@graphql-codegen/client-preset":"4.8.1","@microsoft/api-extractor":"7.52.8","@nestjs/common":"11.1.1","@nestjs/core":"11.1.1","@next/eslint-plugin-next":"15.3.2","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.4","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.2","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.1.0",graphql:"16.11.0","graphql-ws":"6.0.5",i18next:"25.2.0",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.16.0",mongoose:"8.15.0","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.89.0",slugify:"1.6.6",tsup:"8.5.0",tsx:"4.19.4",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.5",vitest:"3.1.4","vitest-browser-react":"0.2.0",ws:"8.18.2",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.1","@commitlint/config-conventional":"19.8.1","@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.18","@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/node":"22.15.19","@types/node-persist":"3.1.8","@types/react":"19.1.4","@types/react-dom":"19.1.5","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.27.0","lint-staged":"16.0.0","node-modules-inspector":"0.6.8","simple-git-hooks":"2.13.0"}};var C=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as I}from"child_process";import N from"process";import*as T from"util";var x=".cyberskill-storage";import A from"@dotenvx/dotenvx";import{bool as _,cleanEnv as R,str as G}from"envalid";import b from"os";import P from"path";import M from"process";var w=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var L=!1;function j(){M.env.NODE_ENV!==w.PRODUCTION&&!L&&(A.config(),L=!0)}h(j,"loadEnvFile");function U(){j();var e=R(M.env,{CWD:G({default:M.cwd()}),DEBUG:_({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:G({default:P.join(b.homedir(),x)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}h(U,"getEnv");var k=function(e){return e.Error="error",e.Warning="warning",e}({});import F from"chalk";import q from"consola";import{GraphQLError as V}from"graphql";var Y={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var B=U();B.DEBUG||(q.level=4);function K(e){var t=F[e];return typeof t=="function"?t:F.green}h(K,"chalkKeyword");var H={silent:q.silent,level:q.level,fatal:q.fatal,error:q.error,warn:q.warn,log:q.log,info:q.info,success:q.success,ready:q.ready,start:q.start,box:q.box,debug:q.debug,trace:q.trace,verbose:q.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)){q.box(F.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;q.log("".concat(F.gray("File:")," ").concat(F.blue("".concat(t).concat(r?":".concat(r):"")))),i&&q.log(" ".concat(K(n)("Rule:")," ").concat(i)),q.log(" ".concat(K(n)("Message:")," ").concat(s))}),q.box(K(n)("".concat(e," : ").concat(t.length))),q.log(F.gray("─".repeat(40)))}};function Q(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,i=r===void 0?!0:r,s=n.returnValue,a=n.callback,c=o(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return i&&H.error(c.message),a&&typeof a=="function"&&a(c),s||{success:!1,message:c.message,code:Y.INTERNAL_SERVER_ERROR.CODE}}h(Q,"catchError");var W=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});import J from"node-fetch";import $ from"fs-extra";import z from"path";var X=$.lstatSync,Z=$.readdirSync,ee=$.mkdirSync,et=$.readFileSync,en=$.unlinkSync,er=$.statSync,ei=$.readJsonSync;function es(e,t,n){$.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}h(es,"writeFileSync");function eo(e,t,n){$.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}h(eo,"appendFileSync");function ea(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return $.pathExistsSync(e)})}h(ea,"pathExistsSync");function ec(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){ea(e)&&$.removeSync(e)})}h(ec,"removeSync");import eu from"fs-extra";import el from"path";var ed=U(),ep=el;function eE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ep).resolve.apply(r,[ed.CWD].concat(E(t)))}h(eE,"resolveWorkingPath");function em(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ep).join.apply(r,E(t))}h(em,"join");var ef=U(),eg=ef.CWD,ey="@cyberskill/shared",eh="node_modules",eS="dist",ev="package.json",eD="package-lock.json",eO="tsconfig.json",eC=".gitignore",eI=".simple-git-hooks.json",eN="pnpm-lock.yaml",eT=".git/hooks/",ex=".git/COMMIT_EDITMSG",eA=".migrate-mongo.config.js",e_=function(){var e=eu.readJsonSync(eE(ev)).name===ey?eg:em(eg,eh,ey);return em(e,eS)}(),eR="cyberskill",eG="src/node/cli/index.ts",eb="eslint",eP="eslint",eM="vitest";var ew="vitest",eL="@commitlint/cli",ej="@commitlint/config-conventional",eU="commitlint",ek="lint-staged",eF="lint-staged",eq="typescript",eV="tsc",eY="tsx",eB="git",eK="pnpm",eH="pnpm exec",eQ="simple-git-hooks",eW="simple-git-hooks",eJ="@eslint/config-inspector",e$="eslint-config-inspector",ez="node-modules-inspector",eX="node-modules-inspector",eZ="migrate-mongo",e0="./node_modules/migrate-mongo/bin/migrate-mongo",e1={CYBERSKILL_DIRECTORY:e_,WORKING_DIRECTORY:eg,TS_CONFIG:eE(eO),GIT_IGNORE:eE(eC),GIT_HOOK:eE(eT),GIT_COMMIT_MSG:eE(ex),SIMPLE_GIT_HOOKS_JSON:eE(eI),PACKAGE_JSON:eE(ev),PACKAGE_LOCK_JSON:eE(eD),PNPM_LOCK_YAML:eE(eN),NODE_MODULES:eE(eh),MIGRATE_MONGO_CONFIG:eE(eA),LINT_STAGED_CONFIG:eE("".concat(e_,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:eE("".concat(e_,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:eE("".concat(e_,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eE("".concat(e_,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eE("".concat(e_,"/react/vitest/vitest.e2e.js"))};function e2(e){var t=e.isCurrentProject;return d({"pre-commit":eF,"commit-msg":eU},t&&{"pre-push":tm("".concat(eB," pull"))})}h(e2,"createGitHooksConfig");function e4(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:switch(t){case C.CLI:return[3,1];case C.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,te(s,{install:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tg(tm("".concat(eH," ").concat(r))))];case 4:return[2,tg(tm(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}h(e4,"buildCommand");var e3={simpleGitHooks:e4({type:C.CLI,packages:[{name:eQ,type:W.DEV_DEPENDENCY}],command:eW}),eslintInspect:e4({type:C.CLI,packages:[{name:eJ,type:W.DEV_DEPENDENCY}],command:e$}),nodeModulesInspect:e4({type:C.CLI,packages:[{name:ez,type:W.DEV_DEPENDENCY}],command:eX}),eslintCheck:e4({type:C.CLI,packages:[{name:eb,type:W.DEV_DEPENDENCY}],command:"".concat(eP," ").concat(e1.WORKING_DIRECTORY," --no-cache")}),eslintFix:e4({type:C.CLI,packages:[{name:eb,type:W.DEV_DEPENDENCY}],command:"".concat(eP," ").concat(e1.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:e4({type:C.CLI,packages:[{name:eq,type:W.DEPENDENCY}],command:"".concat(eV," -p ").concat(e1.TS_CONFIG," --noEmit")}),testUnit:e4({type:C.CLI,packages:[{name:eM,type:W.DEV_DEPENDENCY}],command:"".concat(ew," --config ").concat(e1.UNIT_TEST_CONFIG)}),testE2e:e4({type:C.CLI,packages:[{name:eM,type:W.DEV_DEPENDENCY}],command:"".concat(ew," --config ").concat(e1.E2E_TEST_CONFIG)}),mongoMigrateCreate:h(function(e){return e4({type:C.CLI,packages:[{name:eZ,type:W.DEPENDENCY}],command:"".concat(eY," ").concat(e0," create ").concat(e," -f ").concat(e1.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:e4({type:C.CLI,packages:[{name:eZ,type:W.DEPENDENCY}],command:"".concat(eY," ").concat(e0," up -f ").concat(e1.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:e4({type:C.CLI,packages:[{name:eZ,type:W.DEPENDENCY}],command:"".concat(eY," ").concat(e0," down -f ").concat(e1.MIGRATE_MONGO_CONFIG)}),commitLint:e4({type:C.CLI,packages:[{name:eL,type:W.DEV_DEPENDENCY},{name:ej,type:W.DEV_DEPENDENCY}],command:"".concat(eU," --edit ").concat(e1.GIT_COMMIT_MSG," --config ").concat(e1.COMMITLINT_CONFIG)}),lintStaged:e4({type:C.CLI,packages:[{name:ek,type:W.DEV_DEPENDENCY}],command:"".concat(eF," --config ").concat(e1.LINT_STAGED_CONFIG)}),configureGitHook:e4({type:C.STRING,command:"".concat(eB," config core.hooksPath ").concat(e1.GIT_HOOK)}),build:e4({type:C.STRING,command:"".concat(eK," run --if-present build")}),pnpmInstallStandard:e4({type:C.STRING,command:"".concat(eK," install --ignore-scripts")}),pnpmInstallLegacy:e4({type:C.STRING,command:"".concat(eK," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:e4({type:C.STRING,command:"".concat(eK," install --ignore-scripts --force")}),pnpmPruneStore:e4({type:C.STRING,command:"".concat(eK," store prune")}),pnpmCleanCache:e4({type:C.STRING,command:"".concat(eK," cache delete")})};var e5=U();function e8(e){return i(function(){var t,n,r,i;return g(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,J("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.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=s.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:i=s.sent();return[2,Q(i)];case 4:return[2]}})})()}h(e8,"getLatestPackageVersion");function e6(e){return i(function(){var t,n,r,i,s,o,a,c,u,l,d,p,E,m,f,y,h,S,v,D,O,C,I,N;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,2,,3]);if(!e){if(ea(e1.PACKAGE_JSON)){t=ei(e1.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,i=t.version,s=i===void 0?"":i;return[2,{success:!0,result:{name:r,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:e1.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!ea(e1.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:"",file:{}}}];o=ei(e1.PACKAGE_JSON),a=o.name,c=o.version,u=c===void 0?"":c,l=o.dependencies,d=l===void 0?{}:l,p=o.devDependencies,E=p===void 0?{}:p;if(e.name===a)return[2,{success:!0,result:{name:a,currentVersion:u,latestVersion:u,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:e1.PACKAGE_JSON,file:o}}];m=e.name in d,f=e.name in E;return[4,e8(e.name)];case 1:y=g.sent();if(!y.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:m,isDevDependency:f,installedPath:"",file:{}}}];if(!m&&!f)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:"",file:{}}}];v=(S=(h=d[e.name])!==null&&h!==void 0?h:E[e.name])!==null&&S!==void 0?S:"",D=em(e5.CWD,eh,e.name,ev);if(!ea(D))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:m,isDevDependency:f,installedPath:"",file:{}}}];O=ei(D),C=O.version,I=C===void 0?"":C;return[2,v!==I?{success:!0,result:{name:e.name,currentVersion:I||v,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:m,isDevDependency:f,installedPath:D,file:O}}:{success:!0,result:{name:e.name,currentVersion:v,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:v===y.result,isDependency:m,isDevDependency:f,installedPath:D,file:O}}];case 2:N=g.sent();return[2,Q(N)];case 3:return[2]}})})()}h(e6,"getPackage");function e7(e){return i(function(){var t,n,r,i,s;return g(this,function(o){try{;r=ei(e1.PACKAGE_JSON),i=(t=r.dependencies)!==null&&t!==void 0?t:{},s=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?i[e.name]=e.latestVersion:e.isDevDependency&&(s[e.name]=e.latestVersion),es(e1.PACKAGE_JSON,JSON.stringify(r,null,4)),H.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){Q(e)}return[2]})})()}h(e7,"updatePackage");function e9(){return i(function(){var e,t,n,r,i,s,o,a,c,u,l,d,p;return g(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);e=[{command:h(function(){return e3.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return e3.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return e3.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);i=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,8];o=s.value,a=o.command,c=o.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,a()];case 4:u=E.sent();return[4,th("".concat(c," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();Q(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=E.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:p=E.sent();Q(p);return[3,13];case 13:return[2]}})})()}h(e9,"installDependencies");function te(e,t){return i(function(){var n,r,i,s,o,a,c,u,l,d,p,m,f,y,h,S,v;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,15,,16]);if(!ea(e1.PACKAGE_JSON)){H.error("package.json not found. Aborting setup.");return[2]}return[4,Promise.all(e.map(e6))];case 1:i=g.sent().filter(function(e){return e.success&&!!e.result&&!e.result.isCurrentProject}).map(function(e){return e.result}),s=i.filter(function(e){return!e.isInstalled}),o=i.filter(function(e){return!e.isUpToDate}),a=[];(t===null||t===void 0?void 0:t.install)&&s.length>0&&(n=a).push.apply(n,E(s.map(e7))),(t===null||t===void 0?void 0:t.update)&&o.length>0&&(r=a).push.apply(r,E(o.map(e7)));c=a.length>0;if(!c)return[3,6];return[4,Promise.all(a)];case 2:g.sent();return[4,e9()];case 3:g.sent();u=["Running ESLint with auto-fix"];return[4,e3.eslintFix()];case 4:return[4,th.apply(void 0,u.concat([g.sent()]))];case 5:c=g.sent();g.label=6;case 6:c;d=true,p=false,m=undefined;g.label=7;case 7:g.trys.push([7,12,13,14]);f=((l=t===null||t===void 0?void 0:t.callbacks)!==null&&l!==void 0?l:[])[Symbol.iterator]();g.label=8;case 8:if(!!(d=(y=f.next()).done))return[3,11];h=y.value;return[4,h()];case 9:g.sent();g.label=10;case 10:d=true;return[3,8];case 11:return[3,14];case 12:S=g.sent();p=true;m=S;return[3,14];case 13:try{if(!d&&f.return!=null){f.return()}}finally{if(p){throw m}}return[7];case 14:return[3,16];case 15:v=g.sent();Q(v);return[3,16];case 16:return[2]}})})()}h(te,"setupPackages");import tt from"node-persist";var tn=U();function tr(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=tt.defaultInstance;if(e)return[3,2];return[4,tt.init({dir:tn.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}h(tr,"initNodePersist");var ti={get:function e(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tr()];case 1:r.sent();return[4,tt.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,Q(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tr()];case 1:r.sent();return[4,tt.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();Q(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tr()];case 1:n.sent();return[4,tt.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();Q(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tr()];case 1:n.sent();return[4,tt.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(H.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,Q(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return g(this,function(t){try{return[2,"".concat(tn.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,Q(e,{returnValue:null})]}return[2]})})()}};var ts=U(),to=T.promisify(I);function ta(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,e6()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}h(ta,"getPackageName");function tc(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,ta()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,ti.set(t,e)];case 3:r.sent(),setTimeout(function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:return[4,ti.getLogLink(t)];case 1:e=n.sent();e&&H.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();Q(n);return[3,5];case 5:return[2]}})})()}h(tc,"saveErrorListToStorage");function tu(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ta()];case 1:e=r.sent();return[4,ti.get(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:[]];case 3:n=r.sent();return[2,Q(n,{returnValue:[]})];case 4:return[2]}})})()}h(tu,"getStoredErrorLists");function tl(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ta()];case 1:e=n.sent();return[4,ti.remove(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();Q(t);return[3,4];case 4:return[2]}})})()}h(tl,"clearAllErrorLists");function td(e){var t=[],n=[],r="",i=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var a,c,u,l,d;var p=i.exec(e)||[],E=s.exec(e)||[],m=o.exec(e)||[];var f,g,y,h,S,v;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===k.Error?k.Error:k.Warning,message:(f=p===null||p===void 0?void 0:(a=p[4])===null||a===void 0?void 0:a.trim())!==null&&f!==void 0?f:"",rule:(g=p===null||p===void 0?void 0:(c=p[5])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:""}):E.length?t.push({file:(y=E===null||E===void 0?void 0:E[1])!==null&&y!==void 0?y:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===k.Error?k.Error:k.Warning,message:(h=E===null||E===void 0?void 0:(u=E[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):m.length?t.push({file:"commitlint",type:k.Error,message:(S=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&S!==void 0?S:"",rule:(v=m===null||m===void 0?void 0:(d=m[2])===null||d===void 0?void 0:d.trim())!==null&&v!==void 0?v:""}):n.push(e.trim())}}),t.length&&tc(t),ts.DEBUG&&n.length&&(H.warn("Unmatched lines:"),n.forEach(function(e){return H.info(" ".concat(e))}))}h(td,"parseTextErrors");function tp(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,i=e.line,s=e.column,o=e.ruleId,a=e.message;n.push({type:r===2?k.Error:k.Warning,file:t,position:"".concat(i,":").concat(s),rule:o,message:a})})}),n.length&&tc(n)}catch(t){td(e)}}h(tp,"parseCommandOutput");function tE(e){return i(function(e){var t,n,r,i,s,o,a,c,u;var l=arguments;return g(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tp;n=new AbortController;N.on("SIGINT",function(){H.warn("Process interrupted. Terminating..."),n.abort(),N.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,to(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),i=r.stdout,s=r.stderr;[i,s].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:o=d.sent();a=o.stdout,c=o.stderr,u=o.message;[a,c].forEach(function(e){return e&&t(e)}),!c&&!a&&H.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}h(tE,"executeCommand");function tm(e){return{raw:!0,cmd:e}}h(tm,"rawCommand");function tf(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eH," ").concat(eY," ").concat(eG," ").concat(e):"".concat(eH," ").concat(eR," ").concat(e)}h(tf,"formatCLI");function tg(e,t){return typeof e=="function"?tf(e(t),t):(typeof e==="undefined"?"undefined":m(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tf(e,t):e}h(tg,"formatCommand");function ty(e){return i(function(){var t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,e6({name:ey})];case 1:t=i.sent();if(t.success){n={isCurrentProject:t.result.isCurrentProject},r=typeof e=="function"?e(n):e;return[2,Object.fromEntries(Object.entries(r).map(function(e){var t=p(e,2),r=t[0],i=t[1];return[r,tg(i,n)]}))]}return[2]}})})()}h(ty,"resolveCommands");function th(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);H.start("".concat(e)),ts.DEBUG&&H.info("→ ".concat(t));return[4,tE(t)];case 1:r.sent(),H.success("".concat(e," done."));return[3,3];case 2:n=r.sent();Q(n);return[3,3];case 3:return[2]}})})()}h(th,"runCommand");function tS(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:if(!ea(e1.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,e3.typescriptCheck()];case 1:return[4,th.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=H.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}h(tS,"checkTypescript");function tv(){return i(function(){var e,t,n,r;var i=arguments;return g(this,function(s){switch(s.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,e3.eslintFix()];case 1:return[4,th.apply(void 0,n.concat([s.sent()]))];case 2:t=s.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,e3.eslintCheck()];case 4:return[4,th.apply(void 0,r.concat([s.sent()]))];case 5:t=s.sent();s.label=6;case 6:t;return[2]}})}).apply(this,arguments)}h(tv,"checkEslint");function tD(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";H.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}h(tD,"printIssues");function tO(){return i(function(){return g(this,function(e){setTimeout(function(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:return[4,tu()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===k.Error}),n=e.filter(function(e){return e.type===k.Warning});!t.length&&!n.length?H.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tD("Warnings",n),tD("Errors",t),(t.length>0||n.length>0)&&S.exit(1));return[2]}})})()},0);return[2]})})()}h(tO,"showCheckResult");function tC(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,tl()];case 1:i.sent();return[4,e6({name:ey})];case 2:e=i.sent();if(!e.success){H.error("Failed to retrieve package information. Aborting lint-staged.");return[2]}t=e.result.isCurrentProject;if(!t)return[3,5];n=["Building package: ".concat(ey)];return[4,e3.build()];case 3:return[4,th.apply(void 0,n.concat([i.sent()]))];case 4:t=i.sent();i.label=5;case 5:t;r=["Executing lint-staged"];return[4,e3.lintStaged()];case 6:return[4,th.apply(void 0,r.concat([i.sent()]))];case 7:i.sent(),tO();return[2]}})})()}h(tC,"lintStaged");function tI(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,e3.eslintInspect()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tI,"inspectLint");function tN(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tl()];case 1:e.sent();return[4,Promise.all([tS(),tv()])];case 2:e.sent(),tO();return[2]}})})()}h(tN,"lintCheck");function tT(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tl()];case 1:e.sent();return[4,Promise.all([tS(),tv(!0)])];case 2:e.sent(),tO();return[2]}})})()}h(tT,"lintFix");function tx(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,tl()];case 1:t.sent();e=["Validating commit message"];return[4,e3.commitLint()];case 2:return[4,th.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tO();return[2]}})})()}h(tx,"commitLint");function tA(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:e=["Configuring Git hooks"];return[4,e3.configureGitHook()];case 1:return[4,th.apply(void 0,e.concat([i.sent()]))];case 2:i.sent(),ec(e1.GIT_HOOK);return[4,ty(e2)];case 3:t=i.sent();es(e1.SIMPLE_GIT_HOOKS_JSON,JSON.stringify(t,null,4));n="\n".concat(eI,"\n");ea(e1.GIT_IGNORE)?et(e1.GIT_IGNORE,"utf-8").split("\n").includes(eI)||eo(e1.GIT_IGNORE,n):es(e1.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,e3.simpleGitHooks()];case 4:return[4,th.apply(void 0,r.concat([i.sent()]))];case 5:i.sent();return[2]}})})()}h(tA,"setupGitHook");function t_(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,e9()];case 1:e.sent();return[4,tA()];case 2:e.sent();return[2]}})})()}h(t_,"prepare");function tR(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:ec(e1.NODE_MODULES,e1.PNPM_LOCK_YAML);e=["Pruning pnpm store"];return[4,e3.pnpmPruneStore()];case 1:return[4,th.apply(void 0,e.concat([n.sent()]))];case 2:n.sent();t=["Clearing pnpm cache"];return[4,e3.pnpmCleanCache()];case 3:return[4,th.apply(void 0,t.concat([n.sent()]))];case 4:n.sent();return[4,e9()];case 5:n.sent();return[4,tA()];case 6:n.sent();return[2]}})})()}h(tR,"reset");function tG(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,e3.nodeModulesInspect()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tG,"inspect");function tb(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,e3.testUnit()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tb,"testUnit");function tP(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,e3.testE2e()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tP,"testE2E");function tM(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,e3.mongoMigrateCreate(e)];case 1:return[4,th.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}h(tM,"mongoMigrateCreate");function tw(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,e3.mongoMigrateUp()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tw,"mongoMigrateUp");function tL(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,e3.mongoMigrateDown()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tL,"mongoMigrateDown");(function(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,D(v(S.argv)).scriptName(eR).usage("$0 <command> [options]").command("lint","Check code for linting issues",tN).command("lint:fix","Fix linting issues automatically",tT).command("lint:inspect","View active ESLint configuration",tI).command("lint-staged","Run lint checks on staged files",tC).command("commitlint","Validate commit message format",tx).command("prepare","Initialize project and dependencies",t_).command("reset","Reset the project and reinstall dependencies",tR).command("inspect","Analyze installed project dependencies",tG).command("test:unit","Run unit test suite",tb).command("test:e2e","Run end-to-end test suite",tP).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 g(this,function(t){switch(t.label){case 0:if(!e.name){H.error("Migration name is required.");return[2]}return[4,tM(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",tw).command("mongo:migrate:down","Rollback last MongoDB migration",tL).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(O.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();Q(e),S.exit(1);return[3,3];case 3:return[2]}})})()})();
|
|
2
|
+
function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,i,s,o){try{var c=e[s](o);var a=c.value}catch(e){n(e);return}if(c.done){t(a)}else{Promise.resolve(a).then(r,i)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(i,s){var o=e.apply(t,n);function c(e){r(o,i,s,c,a,"next",e)}function a(e){r(o,i,s,c,a,"throw",e)}c(undefined)})}}function s(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function c(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function a(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var i=true;var s=false;var o,c;try{for(n=n.call(e);!(i=(o=n.next()).done);i=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){s=true;c=e}finally{try{if(!i&&n["return"]!=null)n["return"]()}finally{if(s)throw c}}return r}function u(){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 l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){s(e,t,n[t])})}return e}function p(e,n){return t(e)||a(e,n)||f(e,n)||u()}function E(e){return n(e)||c(e)||f(e)||l()}function m(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function f(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(e,t){var n,r,i,s={label:0,sent:function(){if(i[0]&1)throw i[1];return i[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]&&(s=0)),s)try{if(n=1,r&&(i=c[0]&2?r["return"]:c[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,c[1])).done)return i;if(r=0,i)c=[c[0]&2,i.value];switch(c[0]){case 0:case 1:i=c;break;case 4:s.label++;return{value:c[1],done:false};case 5:s.label++;r=c[1];c=[0];continue;case 7:c=s.ops.pop();s.trys.pop();continue;default:if(!(i=s.trys,i=i.length>0&&i[i.length-1])&&(c[0]===6||c[0]===2)){s=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]<i[3])){s.label=c[1];break}if(c[0]===6&&s.label<i[1]){s.label=i[1];i=c;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(c);break}if(i[2])s.ops.pop();s.trys.pop();continue}c=t.call(e,s)}catch(e){c=[6,e];r=0}finally{n=i=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var y=Object.defineProperty;var h=function(e,t){return y(e,"name",{value:t,configurable:!0})};import S from"process";import{hideBin as v}from"yargs/helpers";import D from"yargs/yargs";var O={name:"@cyberskill/shared",type:"module",version:"1.171.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"},"./config":{types:"./dist/config/index.d.ts",import:"./dist/config/index.js",require:"./dist/config/index.cjs"},"./config/commitlint":{types:"./dist/config/commitlint/index.d.ts",import:"./dist/config/commitlint/index.js",require:"./dist/config/commitlint/index.cjs"},"./config/env":{types:"./dist/config/env/index.d.ts",import:"./dist/config/env/index.js",require:"./dist/config/env/index.cjs"},"./config/eslint":{types:"./dist/config/eslint/index.d.ts",import:"./dist/config/eslint/index.js",require:"./dist/config/eslint/index.cjs"},"./config/graphql-codegen":{types:"./dist/config/graphql-codegen/index.d.ts",import:"./dist/config/graphql-codegen/index.js",require:"./dist/config/graphql-codegen/index.cjs"},"./config/lint-staged":{types:"./dist/config/lint-staged/index.d.ts",import:"./dist/config/lint-staged/index.js",require:"./dist/config/lint-staged/index.cjs"},"./config/vitest":{types:"./dist/config/vitest/index.d.ts",import:"./dist/config/vitest/index.js",require:"./dist/config/vitest/index.cjs"},"./constant":{types:"./dist/constant/index.d.ts",import:"./dist/constant/index.js",require:"./dist/constant/index.cjs"},"./node":{types:"./dist/node/index.d.ts",import:"./dist/node/index.js",require:"./dist/node/index.cjs"},"./node/apollo-server":{types:"./dist/node/apollo-server/index.d.ts",import:"./dist/node/apollo-server/index.js",require:"./dist/node/apollo-server/index.cjs"},"./node/cli":{types:"./dist/node/cli/index.d.ts",import:"./dist/node/cli/index.js",require:"./dist/node/cli/index.cjs"},"./node/command":{types:"./dist/node/command/index.d.ts",import:"./dist/node/command/index.js",require:"./dist/node/command/index.cjs"},"./node/express":{types:"./dist/node/express/index.d.ts",import:"./dist/node/express/index.js",require:"./dist/node/express/index.cjs"},"./node/fs":{types:"./dist/node/fs/index.d.ts",import:"./dist/node/fs/index.js",require:"./dist/node/fs/index.cjs"},"./node/log":{types:"./dist/node/log/index.d.ts",import:"./dist/node/log/index.js",require:"./dist/node/log/index.cjs"},"./node/mongo":{types:"./dist/node/mongo/index.d.ts",import:"./dist/node/mongo/index.js",require:"./dist/node/mongo/index.cjs"},"./node/package":{types:"./dist/node/package/index.d.ts",import:"./dist/node/package/index.js",require:"./dist/node/package/index.cjs"},"./node/path":{types:"./dist/node/path/index.d.ts",import:"./dist/node/path/index.js",require:"./dist/node/path/index.cjs"},"./node/storage":{types:"./dist/node/storage/index.d.ts",import:"./dist/node/storage/index.js",require:"./dist/node/storage/index.cjs"},"./node/ws":{types:"./dist/node/ws/index.d.ts",import:"./dist/node/ws/index.js",require:"./dist/node/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"},"./style/reset.css":{import:"./dist/style/reset.css",require:"./dist/style/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./util":{types:"./dist/util/index.d.ts",import:"./dist/util/index.js",require:"./dist/util/index.cjs"}},typesVersions:{"*":{config:["dist/config/index.d.ts"],constant:["dist/constant/index.d.ts"],node:["dist/node/index.d.ts"],react:["dist/react/index.d.ts"],typescript:["dist/typescript/index.d.ts"],util:["dist/util/index.d.ts"]}},bin:{cyberskill:"dist/node/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"tsup --watch",lint:"tsx src/node/cli/index.ts lint","lint:fix":"tsx src/node/cli/index.ts lint:fix","lint:inspect":"tsx src/node/cli/index.ts lint:inspect",reset:"tsx src/node/cli/index.ts reset",prepare:"tsx src/node/cli/index.ts prepare",inspect:"tsx src/node/cli/index.ts inspect","test:unit":"tsx src/node/cli/index.ts test:unit","test:e2e":"tsx src/node/cli/index.ts test:e2e",commitlint:"tsx src/node/cli/index.ts commitlint"},dependencies:{"@antfu/eslint-config":"4.13.2","@apollo/client":"3.13.8","@apollo/server":"4.12.1","@dotenvx/dotenvx":"1.44.1","@eddeee888/gcg-typescript-resolver-files":"0.12.1","@eslint-react/eslint-plugin":"1.49.0","@graphql-codegen/cli":"5.0.6","@graphql-codegen/client-preset":"4.8.1","@microsoft/api-extractor":"7.52.8","@nestjs/common":"11.1.1","@nestjs/core":"11.1.1","@next/eslint-plugin-next":"15.3.2","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.4","body-parser":"2.2.0",chalk:"5.4.1",clsx:"2.1.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.2","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.1.0",graphql:"16.11.0","graphql-ws":"6.0.5",i18next:"25.2.0",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.16.0",mongoose:"8.15.0","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.89.0",slugify:"1.6.6",tsup:"8.5.0",tsx:"4.19.4",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.5",vitest:"3.1.4","vitest-browser-react":"0.2.0",ws:"8.18.2",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.1","@commitlint/config-conventional":"19.8.1","@eslint/config-inspector":"1.0.2","@types/body-parser":"1.19.5","@types/compression":"1.8.0","@types/cookie-parser":"1.4.8","@types/cors":"2.8.18","@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/node":"22.15.21","@types/node-persist":"3.1.8","@types/react":"19.1.5","@types/react-dom":"19.1.5","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.27.0","lint-staged":"16.0.0","node-modules-inspector":"0.6.8","simple-git-hooks":"2.13.0"}};var C=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as I}from"child_process";import N from"process";import*as T from"util";var x=".cyberskill-storage";import A from"@dotenvx/dotenvx";import{bool as _,cleanEnv as R,str as G}from"envalid";import b from"os";import P from"path";import M from"process";var w=function(e){return e.PRODUCTION="production",e.STAGING="staging",e.DEVELOPMENT="development",e}({});var L=!1;function j(){M.env.NODE_ENV!==w.PRODUCTION&&!L&&(A.config(),L=!0)}h(j,"loadEnvFile");function U(){j();var e=R(M.env,{CWD:G({default:M.cwd()}),DEBUG:_({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:G({default:P.join(b.homedir(),x)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}h(U,"getEnv");var k=function(e){return e.Error="error",e.Warning="warning",e}({});import F from"chalk";import q from"consola";import{GraphQLError as V}from"graphql";var Y={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var B=U();B.DEBUG||(q.level=4);function K(e){var t=F[e];return typeof t=="function"?t:F.green}h(K,"chalkKeyword");var H={silent:q.silent,level:q.level,fatal:q.fatal,error:q.error,warn:q.warn,log:q.log,info:q.info,success:q.success,ready:q.ready,start:q.start,box:q.box,debug:q.debug,trace:q.trace,verbose:q.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)){q.box(F.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;q.log("".concat(F.gray("File:")," ").concat(F.blue("".concat(t).concat(r?":".concat(r):"")))),i&&q.log(" ".concat(K(n)("Rule:")," ").concat(i)),q.log(" ".concat(K(n)("Message:")," ").concat(s))}),q.box(K(n)("".concat(e," : ").concat(t.length))),q.log(F.gray("─".repeat(40)))}};function Q(e,t){var n=t!==null&&t!==void 0?t:{},r=n.shouldLog,i=r===void 0?!0:r,s=n.returnValue,c=n.callback,a=o(e,Error)?e:new Error(typeof e=="string"?e:"Unknown error");return i&&H.error(a.message),c&&typeof c=="function"&&c(a),s||{success:!1,message:a.message,code:Y.INTERNAL_SERVER_ERROR.CODE}}h(Q,"catchError");var W=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});import J from"node-fetch";import $ from"fs-extra";import z from"path";var X=$.lstatSync,Z=$.readdirSync,ee=$.mkdirSync,et=$.readFileSync,en=$.unlinkSync,er=$.statSync,ei=$.readJsonSync;function es(e,t,n){$.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}h(es,"writeFileSync");function eo(e,t,n){$.appendFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}h(eo,"appendFileSync");function ec(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return $.pathExistsSync(e)})}h(ec,"pathExistsSync");function ea(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){ec(e)&&$.removeSync(e)})}h(ea,"removeSync");import eu from"fs-extra";import el from"path";var ed=U(),ep=el;function eE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ep).resolve.apply(r,[ed.CWD].concat(E(t)))}h(eE,"resolveWorkingPath");function em(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ep).join.apply(r,E(t))}h(em,"join");var ef=U(),eg=ef.CWD,ey="@cyberskill/shared",eh="node_modules",eS="dist",ev="package.json",eD="package-lock.json",eO="tsconfig.json",eC=".gitignore",eI=".simple-git-hooks.json",eN="pnpm-lock.yaml",eT=".git/hooks/",ex=".git/COMMIT_EDITMSG",eA=".migrate-mongo.config.js",e_=function(){var e=eu.readJsonSync(eE(ev)).name===ey?eg:em(eg,eh,ey);return em(e,eS)}(),eR="cyberskill",eG="src/node/cli/index.ts",eb="eslint",eP="eslint",eM="vitest";var ew="vitest",eL="@commitlint/cli",ej="@commitlint/config-conventional",eU="commitlint",ek="lint-staged",eF="lint-staged",eq="typescript",eV="tsc",eY="tsx",eB="git",eK="pnpm",eH="pnpm exec",eQ="simple-git-hooks",eW="simple-git-hooks",eJ="@eslint/config-inspector",e$="eslint-config-inspector",ez="node-modules-inspector",eX="node-modules-inspector",eZ="migrate-mongo",e0="./node_modules/migrate-mongo/bin/migrate-mongo",e1={CYBERSKILL_DIRECTORY:e_,WORKING_DIRECTORY:eg,TS_CONFIG:eE(eO),GIT_IGNORE:eE(eC),GIT_HOOK:eE(eT),GIT_COMMIT_MSG:eE(ex),SIMPLE_GIT_HOOKS_JSON:eE(eI),PACKAGE_JSON:eE(ev),PACKAGE_LOCK_JSON:eE(eD),PNPM_LOCK_YAML:eE(eN),NODE_MODULES:eE(eh),MIGRATE_MONGO_CONFIG:eE(eA),LINT_STAGED_CONFIG:eE("".concat(e_,"/config/lint-staged/index.js")),COMMITLINT_CONFIG:eE("".concat(e_,"/config/commitlint/index.js")),UNIT_TEST_CONFIG:eE("".concat(e_,"/config/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eE("".concat(e_,"/config/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eE("".concat(e_,"/config/vitest/vitest.e2e.js"))};function e2(e){var t=e.isCurrentProject;return d({"pre-commit":eF,"commit-msg":eU},t&&{"pre-push":tm("".concat(eB," pull"))})}h(e2,"createGitHooksConfig");function e4(e){var t=e.type,n=e.packages,r=e.command;var s=n===null||n===void 0?void 0:n.reduce(function(e,t){return e.some(function(e){return e.name===t.name})||e.push(t),e},[]);return function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:switch(t){case C.CLI:return[3,1];case C.STRING:return[3,4]}return[3,5];case 1:e=s===null||s===void 0?void 0:s.length;if(!e)return[3,3];return[4,te(s,{install:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,tg(tm("".concat(eH," ").concat(r))))];case 4:return[2,tg(tm(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}h(e4,"buildCommand");var e3={simpleGitHooks:e4({type:C.CLI,packages:[{name:eQ,type:W.DEV_DEPENDENCY}],command:eW}),eslintInspect:e4({type:C.CLI,packages:[{name:eJ,type:W.DEV_DEPENDENCY}],command:e$}),nodeModulesInspect:e4({type:C.CLI,packages:[{name:ez,type:W.DEV_DEPENDENCY}],command:eX}),eslintCheck:e4({type:C.CLI,packages:[{name:eb,type:W.DEV_DEPENDENCY}],command:"".concat(eP," ").concat(e1.WORKING_DIRECTORY," --no-cache")}),eslintFix:e4({type:C.CLI,packages:[{name:eb,type:W.DEV_DEPENDENCY}],command:"".concat(eP," ").concat(e1.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:e4({type:C.CLI,packages:[{name:eq,type:W.DEPENDENCY}],command:"".concat(eV," -p ").concat(e1.TS_CONFIG," --noEmit")}),testUnit:e4({type:C.CLI,packages:[{name:eM,type:W.DEV_DEPENDENCY}],command:"".concat(ew," --config ").concat(e1.UNIT_TEST_CONFIG)}),testE2e:e4({type:C.CLI,packages:[{name:eM,type:W.DEV_DEPENDENCY}],command:"".concat(ew," --config ").concat(e1.E2E_TEST_CONFIG)}),mongoMigrateCreate:h(function(e){return e4({type:C.CLI,packages:[{name:eZ,type:W.DEPENDENCY}],command:"".concat(eY," ").concat(e0," create ").concat(e," -f ").concat(e1.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:e4({type:C.CLI,packages:[{name:eZ,type:W.DEPENDENCY}],command:"".concat(eY," ").concat(e0," up -f ").concat(e1.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:e4({type:C.CLI,packages:[{name:eZ,type:W.DEPENDENCY}],command:"".concat(eY," ").concat(e0," down -f ").concat(e1.MIGRATE_MONGO_CONFIG)}),commitLint:e4({type:C.CLI,packages:[{name:eL,type:W.DEV_DEPENDENCY},{name:ej,type:W.DEV_DEPENDENCY}],command:"".concat(eU," --edit ").concat(e1.GIT_COMMIT_MSG," --config ").concat(e1.COMMITLINT_CONFIG)}),lintStaged:e4({type:C.CLI,packages:[{name:ek,type:W.DEV_DEPENDENCY}],command:"".concat(eF," --config ").concat(e1.LINT_STAGED_CONFIG)}),configureGitHook:e4({type:C.STRING,command:"".concat(eB," config core.hooksPath ").concat(e1.GIT_HOOK)}),build:e4({type:C.STRING,command:"".concat(eK," run --if-present build")}),pnpmInstallStandard:e4({type:C.STRING,command:"".concat(eK," install --ignore-scripts")}),pnpmInstallLegacy:e4({type:C.STRING,command:"".concat(eK," install --ignore-scripts --legacy-peer-deps")}),pnpmInstallForce:e4({type:C.STRING,command:"".concat(eK," install --ignore-scripts --force")}),pnpmPruneStore:e4({type:C.STRING,command:"".concat(eK," store prune")}),pnpmCleanCache:e4({type:C.STRING,command:"".concat(eK," cache delete")})};var e5=U();function e8(e){return i(function(){var t,n,r,i;return g(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,J("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.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=s.sent(),r=n.version;return[2,{success:!0,result:r}];case 3:i=s.sent();return[2,Q(i)];case 4:return[2]}})})()}h(e8,"getLatestPackageVersion");function e6(e){return i(function(){var t,n,r,i,s,o,c,a,u,l,d,p,E,m,f,y,h,S,v,D,O,C,I,N;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,2,,3]);if(!e){if(ec(e1.PACKAGE_JSON)){t=ei(e1.PACKAGE_JSON),n=t.name,r=n===void 0?"":n,i=t.version,s=i===void 0?"":i;return[2,{success:!0,result:{name:r,currentVersion:s,latestVersion:s,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:!1,isDevDependency:!1,installedPath:e1.PACKAGE_JSON,file:t}}]}return[2,{success:!0,result:{name:"",currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:!1,isDevDependency:!1,installedPath:"",file:{}}}]}if(!ec(e1.PACKAGE_JSON))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:"",file:{}}}];o=ei(e1.PACKAGE_JSON),c=o.name,a=o.version,u=a===void 0?"":a,l=o.dependencies,d=l===void 0?{}:l,p=o.devDependencies,E=p===void 0?{}:p;if(e.name===c)return[2,{success:!0,result:{name:c,currentVersion:u,latestVersion:u,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:e1.PACKAGE_JSON,file:o}}];m=e.name in d,f=e.name in E;return[4,e8(e.name)];case 1:y=g.sent();if(!y.success)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:m,isDevDependency:f,installedPath:"",file:{}}}];if(!m&&!f)return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:"",file:{}}}];v=(S=(h=d[e.name])!==null&&h!==void 0?h:E[e.name])!==null&&S!==void 0?S:"",D=em(e5.CWD,eh,e.name,ev);if(!ec(D))return[2,{success:!0,result:{name:e.name,currentVersion:"",latestVersion:y.result,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:m,isDevDependency:f,installedPath:"",file:{}}}];O=ei(D),C=O.version,I=C===void 0?"":C;return[2,v!==I?{success:!0,result:{name:e.name,currentVersion:I||v,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:m,isDevDependency:f,installedPath:D,file:O}}:{success:!0,result:{name:e.name,currentVersion:v,latestVersion:y.result,isCurrentProject:!1,isInstalled:!0,isUpToDate:v===y.result,isDependency:m,isDevDependency:f,installedPath:D,file:O}}];case 2:N=g.sent();return[2,Q(N)];case 3:return[2]}})})()}h(e6,"getPackage");function e7(e){return i(function(){var t,n,r,i,s;return g(this,function(o){try{;r=ei(e1.PACKAGE_JSON),i=(t=r.dependencies)!==null&&t!==void 0?t:{},s=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?i[e.name]=e.latestVersion:e.isDevDependency&&(s[e.name]=e.latestVersion),es(e1.PACKAGE_JSON,JSON.stringify(r,null,4)),H.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(e){Q(e)}return[2]})})()}h(e7,"updatePackage");function e9(){return i(function(){var e,t,n,r,i,s,o,c,a,u,l,d,p;return g(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);e=[{command:h(function(){return e3.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return e3.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return e3.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);i=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,8];o=s.value,c=o.command,a=o.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,c()];case 4:u=E.sent();return[4,th("".concat(a," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();Q(l);return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=E.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:p=E.sent();Q(p);return[3,13];case 13:return[2]}})})()}h(e9,"installDependencies");function te(e,t){return i(function(){var n,r,i,s,o,c,a,u,l,d,p,m,f,y,h,S,v;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,15,,16]);if(!ec(e1.PACKAGE_JSON)){H.error("package.json not found. Aborting setup.");return[2]}return[4,Promise.all(e.map(e6))];case 1:i=g.sent().filter(function(e){return e.success&&!!e.result&&!e.result.isCurrentProject}).map(function(e){return e.result}),s=i.filter(function(e){return!e.isInstalled}),o=i.filter(function(e){return!e.isUpToDate}),c=[];(t===null||t===void 0?void 0:t.install)&&s.length>0&&(n=c).push.apply(n,E(s.map(e7))),(t===null||t===void 0?void 0:t.update)&&o.length>0&&(r=c).push.apply(r,E(o.map(e7)));a=c.length>0;if(!a)return[3,6];return[4,Promise.all(c)];case 2:g.sent();return[4,e9()];case 3:g.sent();u=["Running ESLint with auto-fix"];return[4,e3.eslintFix()];case 4:return[4,th.apply(void 0,u.concat([g.sent()]))];case 5:a=g.sent();g.label=6;case 6:a;d=true,p=false,m=undefined;g.label=7;case 7:g.trys.push([7,12,13,14]);f=((l=t===null||t===void 0?void 0:t.callbacks)!==null&&l!==void 0?l:[])[Symbol.iterator]();g.label=8;case 8:if(!!(d=(y=f.next()).done))return[3,11];h=y.value;return[4,h()];case 9:g.sent();g.label=10;case 10:d=true;return[3,8];case 11:return[3,14];case 12:S=g.sent();p=true;m=S;return[3,14];case 13:try{if(!d&&f.return!=null){f.return()}}finally{if(p){throw m}}return[7];case 14:return[3,16];case 15:v=g.sent();Q(v);return[3,16];case 16:return[2]}})})()}h(te,"setupPackages");import tt from"node-persist";var tn=U();function tr(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=tt.defaultInstance;if(e)return[3,2];return[4,tt.init({dir:tn.CYBERSKILL_STORAGE_DIRECTORY})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}h(tr,"initNodePersist");var ti={get:function e(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tr()];case 1:r.sent();return[4,tt.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,Q(n,{returnValue:null})];case 4:return[2]}})})()},set:function e(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tr()];case 1:r.sent();return[4,tt.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();Q(n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tr()];case 1:n.sent();return[4,tt.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();Q(t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tr()];case 1:n.sent();return[4,tt.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(H.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,Q(t,{returnValue:[]})];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return g(this,function(t){try{return[2,"".concat(tn.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,Q(e,{returnValue:null})]}return[2]})})()}};var ts=U(),to=T.promisify(I);function tc(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,e6()];case 1:e=t.sent();return[2,e.success?e.result.name:Date.now().toString()]}})})()}h(tc,"getPackageName");function ta(e){return i(function(){var t,n;return g(this,function(r){switch(r.label){case 0:if(e.length===0)return[2];return[4,tc()];case 1:t=r.sent();r.label=2;case 2:r.trys.push([2,4,,5]);return[4,ti.set(t,e)];case 3:r.sent(),setTimeout(function(){return i(function(){var e;return g(this,function(n){switch(n.label){case 0:return[4,ti.getLogLink(t)];case 1:e=n.sent();e&&H.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},0);return[3,5];case 4:n=r.sent();Q(n);return[3,5];case 5:return[2]}})})()}h(ta,"saveErrorListToStorage");function tu(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,tc()];case 1:e=r.sent();return[4,ti.get(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:[]];case 3:n=r.sent();return[2,Q(n,{returnValue:[]})];case 4:return[2]}})})()}h(tu,"getStoredErrorLists");function tl(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,tc()];case 1:e=n.sent();return[4,ti.remove(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();Q(t);return[3,4];case 4:return[2]}})})()}h(tl,"clearAllErrorLists");function td(e){var t=[],n=[],r="",i=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\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 p=i.exec(e)||[],E=s.exec(e)||[],m=o.exec(e)||[];var f,g,y,h,S,v;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===k.Error?k.Error:k.Warning,message:(f=p===null||p===void 0?void 0:(c=p[4])===null||c===void 0?void 0:c.trim())!==null&&f!==void 0?f:"",rule:(g=p===null||p===void 0?void 0:(a=p[5])===null||a===void 0?void 0:a.trim())!==null&&g!==void 0?g:""}):E.length?t.push({file:(y=E===null||E===void 0?void 0:E[1])!==null&&y!==void 0?y:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===k.Error?k.Error:k.Warning,message:(h=E===null||E===void 0?void 0:(u=E[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):m.length?t.push({file:"commitlint",type:k.Error,message:(S=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&S!==void 0?S:"",rule:(v=m===null||m===void 0?void 0:(d=m[2])===null||d===void 0?void 0:d.trim())!==null&&v!==void 0?v:""}):n.push(e.trim())}}),t.length&&ta(t),ts.DEBUG&&n.length&&(H.warn("Unmatched lines:"),n.forEach(function(e){return H.info(" ".concat(e))}))}h(td,"parseTextErrors");function tp(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,i=e.line,s=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?k.Error:k.Warning,file:t,position:"".concat(i,":").concat(s),rule:o,message:c})})}),n.length&&ta(n)}catch(t){td(e)}}h(tp,"parseCommandOutput");function tE(e){return i(function(e){var t,n,r,i,s,o,c,a,u;var l=arguments;return g(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tp;n=new AbortController;N.on("SIGINT",function(){H.warn("Process interrupted. Terminating..."),n.abort(),N.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,to(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),i=r.stdout,s=r.stderr;[i,s].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&&H.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}h(tE,"executeCommand");function tm(e){return{raw:!0,cmd:e}}h(tm,"rawCommand");function tf(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eH," ").concat(eY," ").concat(eG," ").concat(e):"".concat(eH," ").concat(eR," ").concat(e)}h(tf,"formatCLI");function tg(e,t){return typeof e=="function"?tf(e(t),t):(typeof e==="undefined"?"undefined":m(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tf(e,t):e}h(tg,"formatCommand");function ty(e){return i(function(){var t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,e6({name:ey})];case 1:t=i.sent();if(t.success){n={isCurrentProject:t.result.isCurrentProject},r=typeof e=="function"?e(n):e;return[2,Object.fromEntries(Object.entries(r).map(function(e){var t=p(e,2),r=t[0],i=t[1];return[r,tg(i,n)]}))]}return[2]}})})()}h(ty,"resolveCommands");function th(e,t){return i(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);H.start("".concat(e)),ts.DEBUG&&H.info("→ ".concat(t));return[4,tE(t)];case 1:r.sent(),H.success("".concat(e," done."));return[3,3];case 2:n=r.sent();Q(n);return[3,3];case 3:return[2]}})})()}h(th,"runCommand");function tS(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:if(!ec(e1.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,e3.typescriptCheck()];case 1:return[4,th.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=H.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})})()}h(tS,"checkTypescript");function tv(){return i(function(){var e,t,n,r;var i=arguments;return g(this,function(s){switch(s.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,e3.eslintFix()];case 1:return[4,th.apply(void 0,n.concat([s.sent()]))];case 2:t=s.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,e3.eslintCheck()];case 4:return[4,th.apply(void 0,r.concat([s.sent()]))];case 5:t=s.sent();s.label=6;case 6:t;return[2]}})}).apply(this,arguments)}h(tv,"checkEslint");function tD(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";H.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}h(tD,"printIssues");function tO(){return i(function(){return g(this,function(e){setTimeout(function(){return i(function(){var e,t,n;return g(this,function(r){switch(r.label){case 0:return[4,tu()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===k.Error}),n=e.filter(function(e){return e.type===k.Warning});!t.length&&!n.length?H.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tD("Warnings",n),tD("Errors",t),(t.length>0||n.length>0)&&S.exit(1));return[2]}})})()},0);return[2]})})()}h(tO,"showCheckResult");function tC(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,tl()];case 1:i.sent();return[4,e6({name:ey})];case 2:e=i.sent();if(!e.success){H.error("Failed to retrieve package information. Aborting lint-staged.");return[2]}t=e.result.isCurrentProject;if(!t)return[3,5];n=["Building package: ".concat(ey)];return[4,e3.build()];case 3:return[4,th.apply(void 0,n.concat([i.sent()]))];case 4:t=i.sent();i.label=5;case 5:t;r=["Executing lint-staged"];return[4,e3.lintStaged()];case 6:return[4,th.apply(void 0,r.concat([i.sent()]))];case 7:i.sent(),tO();return[2]}})})()}h(tC,"lintStaged");function tI(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,e3.eslintInspect()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tI,"inspectLint");function tN(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tl()];case 1:e.sent();return[4,Promise.all([tS(),tv()])];case 2:e.sent(),tO();return[2]}})})()}h(tN,"lintCheck");function tT(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,tl()];case 1:e.sent();return[4,Promise.all([tS(),tv(!0)])];case 2:e.sent(),tO();return[2]}})})()}h(tT,"lintFix");function tx(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,tl()];case 1:t.sent();e=["Validating commit message"];return[4,e3.commitLint()];case 2:return[4,th.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tO();return[2]}})})()}h(tx,"commitLint");function tA(){return i(function(){var e,t,n,r;return g(this,function(i){switch(i.label){case 0:e=["Configuring Git hooks"];return[4,e3.configureGitHook()];case 1:return[4,th.apply(void 0,e.concat([i.sent()]))];case 2:i.sent(),ea(e1.GIT_HOOK);return[4,ty(e2)];case 3:t=i.sent();es(e1.SIMPLE_GIT_HOOKS_JSON,JSON.stringify(t,null,4));n="\n".concat(eI,"\n");ec(e1.GIT_IGNORE)?et(e1.GIT_IGNORE,"utf-8").split("\n").includes(eI)||eo(e1.GIT_IGNORE,n):es(e1.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,e3.simpleGitHooks()];case 4:return[4,th.apply(void 0,r.concat([i.sent()]))];case 5:i.sent();return[2]}})})()}h(tA,"setupGitHook");function t_(){return i(function(){return g(this,function(e){switch(e.label){case 0:return[4,e9()];case 1:e.sent();return[4,tA()];case 2:e.sent();return[2]}})})()}h(t_,"prepare");function tR(){return i(function(){var e,t;return g(this,function(n){switch(n.label){case 0:ea(e1.NODE_MODULES,e1.PNPM_LOCK_YAML);e=["Pruning pnpm store"];return[4,e3.pnpmPruneStore()];case 1:return[4,th.apply(void 0,e.concat([n.sent()]))];case 2:n.sent();t=["Clearing pnpm cache"];return[4,e3.pnpmCleanCache()];case 3:return[4,th.apply(void 0,t.concat([n.sent()]))];case 4:n.sent();return[4,e9()];case 5:n.sent();return[4,tA()];case 6:n.sent();return[2]}})})()}h(tR,"reset");function tG(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,e3.nodeModulesInspect()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tG,"inspect");function tb(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,e3.testUnit()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tb,"testUnit");function tP(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,e3.testE2e()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tP,"testE2E");function tM(e){return i(function(){var t;return g(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,e3.mongoMigrateCreate(e)];case 1:return[4,th.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})})()}h(tM,"mongoMigrateCreate");function tw(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,e3.mongoMigrateUp()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tw,"mongoMigrateUp");function tL(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,e3.mongoMigrateDown()];case 1:return[4,th.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})})()}h(tL,"mongoMigrateDown");(function(){return i(function(){var e;return g(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,D(v(S.argv)).scriptName(eR).usage("$0 <command> [options]").command("lint","Check code for linting issues",tN).command("lint:fix","Fix linting issues automatically",tT).command("lint:inspect","View active ESLint configuration",tI).command("lint-staged","Run lint checks on staged files",tC).command("commitlint","Validate commit message format",tx).command("prepare","Initialize project and dependencies",t_).command("reset","Reset the project and reinstall dependencies",tR).command("inspect","Analyze installed project dependencies",tG).command("test:unit","Run unit test suite",tb).command("test:e2e","Run end-to-end test suite",tP).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 g(this,function(t){switch(t.label){case 0:if(!e.name){H.error("Migration name is required.");return[2]}return[4,tM(e.name)];case 1:t.sent();return[2]}})})()}).command("mongo:migrate:up","Apply all MongoDB migrations",tw).command("mongo:migrate:down","Rollback last MongoDB migration",tL).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(O.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();Q(e),S.exit(1);return[3,3];case 3:return[2]}})})()})();
|