@cyberskill/shared 1.129.0 → 1.131.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,a)}}function a(e){return function(){var t=this,n=arguments;return new Promise(function(a,o){var c=e.apply(t,n);function i(e){r(c,a,o,i,s,"next",e)}function s(e){r(c,a,o,i,s,"throw",e)}i(undefined)})}}function o(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 a=true;var o=false;var c,i;try{for(n=n.call(e);!(a=(c=n.next()).done);a=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){o=true;i=e}finally{try{if(!a&&n["return"]!=null)n["return"]()}finally{if(o)throw i}}return r}function i(){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 s(){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 u(e,n){return t(e)||c(e,n)||d(e,n)||i()}function l(e){return n(e)||o(e)||d(e)||s()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(o=0)),o)try{if(n=1,r&&(a=i[0]&2?r["return"]:i[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;if(r=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.create;var v=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty;var h=function(e,t){return v(e,"name",{value:t,configurable:!0})};var C=function(e,t){for(var n in t)v(e,n,{get:t[n],enumerable:!0})},D=function(e,t,n,r){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var i=function(){var a=u.value;!_.call(e,a)&&a!==n&&v(e,a,{get:function(){return t[a]},enumerable:!(r=y(t,a))||r.enumerable})};for(var s=E(t)[Symbol.iterator](),u;!(a=(u=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var I=function(e,t,n){return n=e!=null?p(g(e)):{},D(t||!e||!e.__esModule?v(n,"default",{value:e,enumerable:!0}):n,e)},N=function(e){return D(v({},"__esModule",{value:!0}),e)};var b={};C(b,{clearAllErrorLists:function(){return tc},formatCommand:function(){return td},getStoredErrorLists:function(){return to},rawCommand:function(){return tl},resolveCommands:function(){return tm},runCommand:function(){return tp}});module.exports=N(b);var P=require("child_process"),S=I(require("process"),1),O=I(require("util"),1);var T=".cyberskill-storage";var w=I(require("@dotenvx/dotenvx"),1),G=require("envalid"),R=I(require("os"),1),k=I(require("path"),1),L=I(require("process"),1);var A=!1;function U(){A||(w.default.config(),A=!0)}h(U,"loadEnvFile");function j(){U();var e=(0,G.cleanEnv)(L.default.env,{CWD:(0,G.str)({default:L.default.cwd()}),DEBUG:(0,G.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,G.str)({default:k.default.join(R.default.homedir(),T)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}h(j,"getEnv");var Y=function(e){return e.Error="error",e.Warning="warning",e}({});var x=I(require("chalk"),1),M=I(require("consola"),1),F=require("graphql");var V=j();V.DEBUG||(M.default.level=4);function K(e){var t=x.default[e];return typeof t=="function"?t:x.default.green}h(K,"chalkKeyword");var q={silent:M.default.silent,level:M.default.level,fatal:M.default.fatal,error:M.default.error,warn:M.default.warn,log:M.default.log,info:M.default.info,success:M.default.success,ready:M.default.ready,start:M.default.start,box:M.default.box,debug:M.default.debug,trace:M.default.trace,verbose:M.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)){M.default.box(x.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;M.default.log("".concat(x.default.gray("File:")," ").concat(x.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&M.default.log(" ".concat(K(n)("Rule:")," ").concat(a)),M.default.log(" ".concat(K(n)("Message:")," ").concat(o))}),M.default.box(K(n)("".concat(e," : ").concat(t.length))),M.default.log(x.default.gray("─".repeat(40)))}};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}({});var B=I(require("node-fetch"),1);var J=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var H=I(require("fs-extra"),1),$=I(require("path"),1);var z=H.default,Q=z.lstatSync,X=z.readdirSync,Z=z.mkdirSync,ee=z.readFileSync,et=z.unlinkSync,en=z.statSync,er=H.default.readJsonSync;function ea(e,t,n){H.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}h(ea,"writeFileSync");function eo(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return H.default.pathExistsSync(e)})}h(eo,"pathExistsSync");var ec=I(require("fs-extra"),1);var ei=I(require("path"),1);var es=j(),eu=ei.default;function el(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eu).resolve.apply(r,[es.CWD].concat(l(t)))}h(el,"resolveWorkingPath");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eu).join.apply(r,l(t))}h(ef,"join");var ed=j(),em=ed.CWD,ep="@cyberskill/shared",ev="node_modules",ey="dist",eE="package.json",eg="package-lock.json",e_="tsconfig.json",eh=".gitignore",eC=".simple-git-hooks.json",eD="pnpm-lock.yaml",eI=".git/hooks/",eN=".git/COMMIT_EDITMSG",eb=".migrate-mongo.config.js",eP=function(){var e=ec.default.readJsonSync(el(eE)).name===ep?em:ef(em,ev,ep);return ef(e,ey)}(),eS="cyberskill",eO="src/node/cli/index.ts",eT="eslint",ew="eslint",eG="vitest";var eR="vitest",ek="@commitlint/cli",eL="@commitlint/config-conventional",eA="commitlint",eU="lint-staged",ej="lint-staged",eY="typescript",ex="tsc",eM="tsx",eF="git",eV="pnpm",eK="pnpm exec",eq="simple-git-hooks",eW="simple-git-hooks",eB="@eslint/config-inspector",eJ="eslint-config-inspector",eH="node-modules-inspector",e$="node-modules-inspector",ez="migrate-mongo",eQ="./node_modules/migrate-mongo/bin/migrate-mongo",eX={CYBERSKILL_DIRECTORY:eP,WORKING_DIRECTORY:em,TS_CONFIG:el(e_),GIT_IGNORE:el(eh),GIT_HOOK:el(eI),GIT_COMMIT_MSG:el(eN),SIMPLE_GIT_HOOKS_JSON:el(eC),PACKAGE_JSON:el(eE),PACKAGE_LOCK_JSON:el(eg),PNPM_LOCK_YAML:el(eD),NODE_MODULES:el(ev),MIGRATE_MONGO_CONFIG:el(eb),LINT_STAGED_CONFIG:el("".concat(eP,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:el("".concat(eP,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:el("".concat(eP,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:el("".concat(eP,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:el("".concat(eP,"/react/vitest/vitest.e2e.js"))};function eZ(e){var t=e.type,n=e.packages,r=e.command;var o=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 /*#__PURE__*/a(function(){var e;return m(this,function(n){switch(n.label){case 0:switch(t){case J.CLI:return[3,1];case J.STRING:return[3,4]}return[3,5];case 1:e=o===null||o===void 0?void 0:o.length;if(!e)return[3,3];return[4,e6(o,{update:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,td(tl("".concat(eK," ").concat(r))))];case 4:return[2,td(tl(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}h(eZ,"buildCommand");var e0={simpleGitHooks:eZ({type:J.CLI,packages:[{name:eq,type:W.DEV_DEPENDENCY}],command:eW}),eslintInspect:eZ({type:J.CLI,packages:[{name:eB,type:W.DEV_DEPENDENCY}],command:eJ}),nodeModulesInspect:eZ({type:J.CLI,packages:[{name:eH,type:W.DEV_DEPENDENCY}],command:e$}),eslintCheck:eZ({type:J.CLI,packages:[{name:eT,type:W.DEV_DEPENDENCY}],command:"".concat(ew," ").concat(eX.WORKING_DIRECTORY," --no-cache")}),eslintFix:eZ({type:J.CLI,packages:[{name:eT,type:W.DEV_DEPENDENCY}],command:"".concat(ew," ").concat(eX.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:eZ({type:J.CLI,packages:[{name:eY,type:W.DEPENDENCY}],command:"".concat(ex," -p ").concat(eX.TS_CONFIG," --noEmit")}),testUnit:eZ({type:J.CLI,packages:[{name:eG,type:W.DEV_DEPENDENCY}],command:"".concat(eR," --config ").concat(eX.UNIT_TEST_CONFIG)}),testE2e:eZ({type:J.CLI,packages:[{name:eG,type:W.DEV_DEPENDENCY}],command:"".concat(eR," --config ").concat(eX.E2E_TEST_CONFIG)}),mongoMigrateCreate:h(function(e){return eZ({type:J.CLI,packages:[{name:ez,type:W.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," create ").concat(e," -f ").concat(eX.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:eZ({type:J.CLI,packages:[{name:ez,type:W.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," up -f ").concat(eX.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:eZ({type:J.CLI,packages:[{name:ez,type:W.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," down -f ").concat(eX.MIGRATE_MONGO_CONFIG)}),commitLint:eZ({type:J.CLI,packages:[{name:ek,type:W.DEV_DEPENDENCY},{name:eL,type:W.DEV_DEPENDENCY}],command:"".concat(eA," --edit ").concat(eX.GIT_COMMIT_MSG," --config ").concat(eX.COMMITLINT_CONFIG)}),lintStaged:eZ({type:J.CLI,packages:[{name:eU,type:W.DEV_DEPENDENCY}],command:"".concat(ej," --config ").concat(eX.LINT_STAGED_CONFIG)}),configureGitHook:eZ({type:J.STRING,command:"".concat(eF," config core.hooksPath ").concat(eX.GIT_HOOK)}),stageBuildDirectory:eZ({type:J.STRING,command:"".concat(eF," add ").concat(ey)}),build:eZ({type:J.STRING,command:"".concat(eV," run build")}),pnpmInstallStandard:eZ({type:J.STRING,command:"".concat(eV," install")}),pnpmInstallLegacy:eZ({type:J.STRING,command:"".concat(eV," install --legacy-peer-deps")}),pnpmInstallForce:eZ({type:J.STRING,command:"".concat(eV," install --force")})};var e1=j();function e2(e){return /*#__PURE__*/a(function(){var t,n,r,a;return m(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,B.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=o.sent(),r=n.version;return[2,r];case 3:a=o.sent();throw q.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})})()}h(e2,"getLatestPackageVersion");function e3(e){return /*#__PURE__*/a(function(){var t,n,r,a,o,c,i,s,u,l,f,d,p,v,y,E,g,_,h;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,2,,3]);if(!eo(eX.PACKAGE_JSON))return[2,{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:"",file:{}}];t=er(eX.PACKAGE_JSON),n=t.name,r=t.version,a=r===void 0?"":r,o=t.dependencies,c=o===void 0?{}:o,i=t.devDependencies,s=i===void 0?{}:i;if(e.name===n)return[2,{name:n,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:eX.PACKAGE_JSON,file:t}];u=e.name in c,l=e.name in s;return[4,e2(e.name)];case 1:f=m.sent();if(!u&&!l)return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:"",file:{}}];v=(p=(d=c[e.name])!==null&&d!==void 0?d:s[e.name])!==null&&p!==void 0?p:"",y=ef(e1.CWD,ev,e.name,eE);if(!eo(y))return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}];E=er(y),g=E.version,_=g===void 0?"":g;return[2,v!==_?{name:e.name,currentVersion:_||v,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:y,file:E}:{name:e.name,currentVersion:v,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:v===f,isDependency:u,isDevDependency:l,installedPath:y,file:E}];case 2:h=m.sent();throw q.error('Error getting package "'.concat(e.name,'": ').concat(h.message)),h;case 3:return[2]}})})()}h(e3,"getPackage");function e4(e){return /*#__PURE__*/a(function(){var t,n,r,a,o;return m(this,function(c){try{;r=er(eX.PACKAGE_JSON),a=(t=r.dependencies)!==null&&t!==void 0?t:{},o=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?a[e.name]=e.latestVersion:e.isDevDependency&&(o[e.name]=e.latestVersion),ea(eX.PACKAGE_JSON,JSON.stringify(r,null,4)),q.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(t){throw q.error('Error updating package "'.concat(e.name,'": ').concat(t.message)),t}return[2]})})()}h(e4,"updatePackage");function e5(){return /*#__PURE__*/a(function(){var e,t,n,r,a,o,c,i,s,u,l,f,d;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,12,,13]);e=[{command:h(function(){return e0.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return e0.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return e0.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;m.label=1;case 1:m.trys.push([1,9,10,11]);a=e[Symbol.iterator]();m.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;m.label=3;case 3:m.trys.push([3,6,,7]);return[4,i()];case 4:u=m.sent();return[4,tp("".concat(s," using: ").concat(u),u)];case 5:m.sent();return[2];case 6:l=m.sent();q.warn("Installation attempt failed: ".concat(s)),q.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=m.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:d=m.sent();throw q.error("Failed to install dependencies: ".concat(d.message)),d;case 13:return[2]}})})()}h(e5,"installDependencies");function e6(e,t){return /*#__PURE__*/a(function(){var n,r,a,o,c,i,s,u,l,f,d;return m(this,function(m){switch(m.label){case 0:if(!eo(eX.PACKAGE_JSON)){q.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,14,,15]);return[4,Promise.all(e.map(e3))];case 2:n=m.sent().filter(function(e){return!e.isCurrentProject&&(!e.isInstalled||!e.isUpToDate)});r=n.length>0;if(!r)return[3,5];return[4,Promise.all(n.map(e4))];case 3:m.sent();return[4,e5()];case 4:r=m.sent();m.label=5;case 5:r;o=true,c=false,i=undefined;m.label=6;case 6:m.trys.push([6,11,12,13]);s=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();m.label=7;case 7:if(!!(o=(u=s.next()).done))return[3,10];l=u.value;return[4,l()];case 8:m.sent();m.label=9;case 9:o=true;return[3,7];case 10:return[3,13];case 11:f=m.sent();c=true;i=f;return[3,13];case 12:try{if(!o&&s.return!=null){s.return()}}finally{if(c){throw i}}return[7];case 13:return[3,15];case 14:d=m.sent();throw q.error('Failed to setup "'.concat(e.map(function(e){return e.name}).join(", "),'": ').concat(d.message)),d;case 15:return[2]}})})()}h(e6,"setupPackages");var e7=I(require("node-persist"),1);var e8=j();function e9(){return /*#__PURE__*/a(function(){var e;return m(this,function(t){switch(t.label){case 0:e=e7.default.defaultInstance;if(e)return[3,2];return[4,e7.default.init({dir:e8.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}h(e9,"initNodePersist");var te={get:function e(e){return /*#__PURE__*/a(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e7.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(q.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/a(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e7.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();q.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/a(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e7.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();q.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/a(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e7.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(q.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(q.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/a(function(){return m(this,function(t){try{return[2,"".concat(e8.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(q.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tt=j(),tn=O.promisify(P.exec);function tr(e){return"error_list:".concat(e)}h(tr,"getErrorListKey");function ta(e){return /*#__PURE__*/a(function(){var t,n,r;return m(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tr(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,te.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(function(){return /*#__PURE__*/a(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,te.getLogLink(n)];case 1:e=t.sent();e&&q.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=o.sent();q.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}h(ta,"saveErrorListToStorage");function to(){return /*#__PURE__*/a(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return /*#__PURE__*/a(function(){var t;return m(this,function(n){switch(n.label){case 0:return[4,te.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(q.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})})()}h(to,"getStoredErrorLists");function tc(){return /*#__PURE__*/a(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return te.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();q.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})})()}h(tc,"clearAllErrorLists");function ti(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var d=a.exec(e)||[],m=o.exec(e)||[],p=c.exec(e)||[];var v,y,E,g,_,h;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===Y.Error?Y.Error:Y.Warning,message:(v=d===null||d===void 0?void 0:(i=d[4])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:"",rule:(y=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:(E=m===null||m===void 0?void 0:m[1])!==null&&E!==void 0?E:"",position:"".concat(m[2],":").concat(m[3]),type:m[4]===Y.Error?Y.Error:Y.Warning,message:(g=m===null||m===void 0?void 0:(u=m[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):p.length?t.push({file:"commitlint",type:Y.Error,message:(_=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&_!==void 0?_:"",rule:(h=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&h!==void 0?h:""}):n.push(e.trim())}}),t.length&&ta(t),tt.DEBUG&&n.length&&(q.warn("Unmatched lines:"),n.forEach(function(e){return q.info(" ".concat(e))}))}h(ti,"parseTextErrors");function ts(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?Y.Error:Y.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&ta(n)}catch(t){ti(e)}}h(ts,"parseCommandOutput");function tu(e){return /*#__PURE__*/a(function(e){var t,n,r,a,o,c,i,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ts;n=new AbortController;S.default.on("SIGINT",function(){q.warn("Process interrupted. Terminating..."),n.abort(),S.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tn(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&q.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}h(tu,"executeCommand");function tl(e){return{raw:!0,cmd:e}}h(tl,"rawCommand");function tf(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eK," ").concat(eM," ").concat(eO," ").concat(e):"".concat(eK," ").concat(eS," ").concat(e)}h(tf,"formatCLI");function td(e,t){return typeof e=="function"?tf(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"?tf(e,t):e}h(td,"formatCommand");function tm(e){return /*#__PURE__*/a(function(){var t,n,r,a;return m(this,function(o){switch(o.label){case 0:return[4,e3({name:ep})];case 1:t=o.sent(),n=t.isCurrentProject,r={isCurrentProject:n},a=typeof e=="function"?e(r):e;return[2,Object.fromEntries(Object.entries(a).map(function(e){var t=u(e,2),n=t[0],a=t[1];return[n,td(a,r)]}))]}})})()}h(tm,"resolveCommands");function tp(e,t){return /*#__PURE__*/a(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);q.start("".concat(e)),tt.DEBUG&&q.info("→ ".concat(t));return[4,tu(t)];case 1:r.sent(),q.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw q.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}h(tp,"runCommand");0&&(module.exports={clearAllErrorLists:clearAllErrorLists,formatCommand:formatCommand,getStoredErrorLists:getStoredErrorLists,rawCommand:rawCommand,resolveCommands:resolveCommands,runCommand:runCommand});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,a)}}function a(e){return function(){var t=this,n=arguments;return new Promise(function(a,o){var c=e.apply(t,n);function i(e){r(c,a,o,i,s,"next",e)}function s(e){r(c,a,o,i,s,"throw",e)}i(undefined)})}}function o(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 a=true;var o=false;var c,i;try{for(n=n.call(e);!(a=(c=n.next()).done);a=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){o=true;i=e}finally{try{if(!a&&n["return"]!=null)n["return"]()}finally{if(o)throw i}}return r}function i(){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 s(){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 u(e,n){return t(e)||c(e,n)||d(e,n)||i()}function l(e){return n(e)||o(e)||d(e)||s()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(o=0)),o)try{if(n=1,r&&(a=i[0]&2?r["return"]:i[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;if(r=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.create;var v=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var _=function(e,t){return v(e,"name",{value:t,configurable:!0})};var C=function(e,t){for(var n in t)v(e,n,{get:t[n],enumerable:!0})},D=function(e,t,n,r){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var i=function(){var a=u.value;!h.call(e,a)&&a!==n&&v(e,a,{get:function(){return t[a]},enumerable:!(r=y(t,a))||r.enumerable})};for(var s=E(t)[Symbol.iterator](),u;!(a=(u=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var I=function(e,t,n){return n=e!=null?p(g(e)):{},D(t||!e||!e.__esModule?v(n,"default",{value:e,enumerable:!0}):n,e)},N=function(e){return D(v({},"__esModule",{value:!0}),e)};var b={};C(b,{clearAllErrorLists:function(){return tc},formatCommand:function(){return td},getStoredErrorLists:function(){return to},rawCommand:function(){return tl},resolveCommands:function(){return tm},runCommand:function(){return tp}});module.exports=N(b);var P=require("child_process"),S=I(require("process"),1),O=I(require("util"),1);var w=".cyberskill-storage";var T=I(require("@dotenvx/dotenvx"),1),R=require("envalid"),G=I(require("os"),1),k=I(require("path"),1),L=I(require("process"),1);var A=!1;function U(){A||(T.default.config(),A=!0)}_(U,"loadEnvFile");function j(){U();var e=(0,R.cleanEnv)(L.default.env,{CWD:(0,R.str)({default:L.default.cwd()}),DEBUG:(0,R.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,R.str)({default:k.default.join(G.default.homedir(),w)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}_(j,"getEnv");var Y=function(e){return e.Error="error",e.Warning="warning",e}({});var x=I(require("chalk"),1),M=I(require("consola"),1),F=require("graphql");var V=j();V.DEBUG||(M.default.level=4);function K(e){var t=x.default[e];return typeof t=="function"?t:x.default.green}_(K,"chalkKeyword");var q={silent:M.default.silent,level:M.default.level,fatal:M.default.fatal,error:M.default.error,warn:M.default.warn,log:M.default.log,info:M.default.info,success:M.default.success,ready:M.default.ready,start:M.default.start,box:M.default.box,debug:M.default.debug,trace:M.default.trace,verbose:M.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)){M.default.box(x.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;M.default.log("".concat(x.default.gray("File:")," ").concat(x.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&M.default.log(" ".concat(K(n)("Rule:")," ").concat(a)),M.default.log(" ".concat(K(n)("Message:")," ").concat(o))}),M.default.box(K(n)("".concat(e," : ").concat(t.length))),M.default.log(x.default.gray("─".repeat(40)))}};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}({});var B=I(require("node-fetch"),1);var J=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var H=I(require("fs-extra"),1),$=I(require("path"),1);var z=H.default,Q=z.lstatSync,X=z.readdirSync,Z=z.mkdirSync,ee=z.readFileSync,et=z.unlinkSync,en=z.statSync,er=H.default.readJsonSync;function ea(e,t,n){H.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}_(ea,"writeFileSync");function eo(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return H.default.pathExistsSync(e)})}_(eo,"pathExistsSync");var ec=I(require("fs-extra"),1);var ei=I(require("path"),1);var es=j(),eu=ei.default;function el(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eu).resolve.apply(r,[es.CWD].concat(l(t)))}_(el,"resolveWorkingPath");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eu).join.apply(r,l(t))}_(ef,"join");var ed=j(),em=ed.CWD,ep="@cyberskill/shared",ev="node_modules",ey="dist",eE="package.json",eg="package-lock.json",eh="tsconfig.json",e_=".gitignore",eC=".simple-git-hooks.json",eD="pnpm-lock.yaml",eI=".git/hooks/",eN=".git/COMMIT_EDITMSG",eb=".migrate-mongo.config.js",eP=function(){var e=ec.default.readJsonSync(el(eE)).name===ep?em:ef(em,ev,ep);return ef(e,ey)}(),eS="cyberskill",eO="src/node/cli/index.ts",ew="eslint",eT="eslint",eR="vitest";var eG="vitest",ek="@commitlint/cli",eL="@commitlint/config-conventional",eA="commitlint",eU="lint-staged",ej="lint-staged",eY="typescript",ex="tsc",eM="tsx",eF="git",eV="pnpm",eK="pnpm exec",eq="simple-git-hooks",eW="simple-git-hooks",eB="@eslint/config-inspector",eJ="eslint-config-inspector",eH="node-modules-inspector",e$="node-modules-inspector",ez="migrate-mongo",eQ="./node_modules/migrate-mongo/bin/migrate-mongo",eX={CYBERSKILL_DIRECTORY:eP,WORKING_DIRECTORY:em,TS_CONFIG:el(eh),GIT_IGNORE:el(e_),GIT_HOOK:el(eI),GIT_COMMIT_MSG:el(eN),SIMPLE_GIT_HOOKS_JSON:el(eC),PACKAGE_JSON:el(eE),PACKAGE_LOCK_JSON:el(eg),PNPM_LOCK_YAML:el(eD),NODE_MODULES:el(ev),MIGRATE_MONGO_CONFIG:el(eb),LINT_STAGED_CONFIG:el("".concat(eP,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:el("".concat(eP,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:el("".concat(eP,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:el("".concat(eP,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:el("".concat(eP,"/react/vitest/vitest.e2e.js"))};function eZ(e){var t=e.type,n=e.packages,r=e.command;var o=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 /*#__PURE__*/a(function(){var e;return m(this,function(n){switch(n.label){case 0:switch(t){case J.CLI:return[3,1];case J.STRING:return[3,4]}return[3,5];case 1:e=o===null||o===void 0?void 0:o.length;if(!e)return[3,3];return[4,e7(o,{update:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,td(tl("".concat(eK," ").concat(r))))];case 4:return[2,td(tl(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}_(eZ,"buildCommand");var e0={simpleGitHooks:eZ({type:J.CLI,packages:[{name:eq,type:W.DEV_DEPENDENCY}],command:eW}),eslintInspect:eZ({type:J.CLI,packages:[{name:eB,type:W.DEV_DEPENDENCY}],command:eJ}),nodeModulesInspect:eZ({type:J.CLI,packages:[{name:eH,type:W.DEV_DEPENDENCY}],command:e$}),eslintCheck:eZ({type:J.CLI,packages:[{name:ew,type:W.DEV_DEPENDENCY}],command:"".concat(eT," ").concat(eX.WORKING_DIRECTORY," --no-cache")}),eslintFix:eZ({type:J.CLI,packages:[{name:ew,type:W.DEV_DEPENDENCY}],command:"".concat(eT," ").concat(eX.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:eZ({type:J.CLI,packages:[{name:eY,type:W.DEPENDENCY}],command:"".concat(ex," -p ").concat(eX.TS_CONFIG," --noEmit")}),testUnit:eZ({type:J.CLI,packages:[{name:eR,type:W.DEV_DEPENDENCY}],command:"".concat(eG," --config ").concat(eX.UNIT_TEST_CONFIG)}),testE2e:eZ({type:J.CLI,packages:[{name:eR,type:W.DEV_DEPENDENCY}],command:"".concat(eG," --config ").concat(eX.E2E_TEST_CONFIG)}),mongoMigrateCreate:_(function(e){return eZ({type:J.CLI,packages:[{name:ez,type:W.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," create ").concat(e," -f ").concat(eX.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:eZ({type:J.CLI,packages:[{name:ez,type:W.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," up -f ").concat(eX.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:eZ({type:J.CLI,packages:[{name:ez,type:W.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," down -f ").concat(eX.MIGRATE_MONGO_CONFIG)}),commitLint:eZ({type:J.CLI,packages:[{name:ek,type:W.DEV_DEPENDENCY},{name:eL,type:W.DEV_DEPENDENCY}],command:"".concat(eA," --edit ").concat(eX.GIT_COMMIT_MSG," --config ").concat(eX.COMMITLINT_CONFIG)}),lintStaged:eZ({type:J.CLI,packages:[{name:eU,type:W.DEV_DEPENDENCY}],command:"".concat(ej," --config ").concat(eX.LINT_STAGED_CONFIG)}),configureGitHook:eZ({type:J.STRING,command:"".concat(eF," config core.hooksPath ").concat(eX.GIT_HOOK)}),stageBuildDirectory:eZ({type:J.STRING,command:"".concat(eF," add ").concat(ey)}),build:eZ({type:J.STRING,command:"".concat(eV," run --if-present build")}),pnpmInstallStandard:eZ({type:J.STRING,command:"".concat(eV," install")}),pnpmInstallLegacy:eZ({type:J.STRING,command:"".concat(eV," install --legacy-peer-deps")}),pnpmInstallForce:eZ({type:J.STRING,command:"".concat(eV," install --force")})};var e1=j();function e2(e){return /*#__PURE__*/a(function(){var t,n,r,a;return m(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,B.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=o.sent(),r=n.version;return[2,r];case 3:a=o.sent();throw q.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})})()}_(e2,"getLatestPackageVersion");function e3(e){return /*#__PURE__*/a(function(){var t,n,r,a,o,c,i,s,u,l,f,d,p,v,y,E,g,h,_;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,2,,3]);if(!eo(eX.PACKAGE_JSON))return[2,{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:"",file:{}}];t=er(eX.PACKAGE_JSON),n=t.name,r=t.version,a=r===void 0?"":r,o=t.dependencies,c=o===void 0?{}:o,i=t.devDependencies,s=i===void 0?{}:i;if(e.name===n)return[2,{name:n,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:eX.PACKAGE_JSON,file:t}];u=e.name in c,l=e.name in s;return[4,e2(e.name)];case 1:f=m.sent();if(!u&&!l)return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===W.DEPENDENCY,isDevDependency:e.type===W.DEV_DEPENDENCY,installedPath:"",file:{}}];v=(p=(d=c[e.name])!==null&&d!==void 0?d:s[e.name])!==null&&p!==void 0?p:"",y=ef(e1.CWD,ev,e.name,eE);if(!eo(y))return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}];E=er(y),g=E.version,h=g===void 0?"":g;return[2,v!==h?{name:e.name,currentVersion:h||v,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:y,file:E}:{name:e.name,currentVersion:v,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:v===f,isDependency:u,isDevDependency:l,installedPath:y,file:E}];case 2:_=m.sent();throw q.error('Error getting package "'.concat(e.name,'": ').concat(_.message)),_;case 3:return[2]}})})()}_(e3,"getPackage");function e4(e){return /*#__PURE__*/a(function(){var t,n,r,a,o;return m(this,function(c){try{;r=er(eX.PACKAGE_JSON),a=(t=r.dependencies)!==null&&t!==void 0?t:{},o=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?a[e.name]=e.latestVersion:e.isDevDependency&&(o[e.name]=e.latestVersion),ea(eX.PACKAGE_JSON,JSON.stringify(r,null,4)),q.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(t){throw q.error('Error updating package "'.concat(e.name,'": ').concat(t.message)),t}return[2]})})()}_(e4,"updatePackage");function e5(){return /*#__PURE__*/a(function(){var e,t,n,r,a,o,c,i,s,u,l,f,d;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,12,,13]);e=[{command:_(function(){return e0.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:_(function(){return e0.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:_(function(){return e0.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;m.label=1;case 1:m.trys.push([1,9,10,11]);a=e[Symbol.iterator]();m.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;m.label=3;case 3:m.trys.push([3,6,,7]);return[4,i()];case 4:u=m.sent();return[4,tp("".concat(s," using: ").concat(u),u)];case 5:m.sent();return[2];case 6:l=m.sent();q.warn("Installation attempt failed: ".concat(s)),q.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=m.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:d=m.sent();throw q.error("Failed to install dependencies: ".concat(d.message)),d;case 13:return[2]}})})()}_(e5,"installDependencies");function e7(e,t){return /*#__PURE__*/a(function(){var n,r,a,o,c,i,s,u,l,f,d,p;return m(this,function(m){switch(m.label){case 0:if(!eo(eX.PACKAGE_JSON)){q.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,16,,17]);return[4,Promise.all(e.map(e3))];case 2:n=m.sent().filter(function(e){return!e.isCurrentProject&&(!e.isInstalled||!e.isUpToDate)});r=n.length>0;if(!r)return[3,7];return[4,Promise.all(n.map(e4))];case 3:m.sent();return[4,e5()];case 4:m.sent();a=["Running ESLint with auto-fix"];return[4,e0.eslintFix()];case 5:return[4,tp.apply(void 0,a.concat([m.sent()]))];case 6:r=m.sent();m.label=7;case 7:r;c=true,i=false,s=undefined;m.label=8;case 8:m.trys.push([8,13,14,15]);u=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=9;case 9:if(!!(c=(l=u.next()).done))return[3,12];f=l.value;return[4,f()];case 10:m.sent();m.label=11;case 11:c=true;return[3,9];case 12:return[3,15];case 13:d=m.sent();i=true;s=d;return[3,15];case 14:try{if(!c&&u.return!=null){u.return()}}finally{if(i){throw s}}return[7];case 15:return[3,17];case 16:p=m.sent();throw q.error('Failed to setup "'.concat(e.map(function(e){return e.name}).join(", "),'": ').concat(p.message)),p;case 17:return[2]}})})()}_(e7,"setupPackages");var e6=I(require("node-persist"),1);var e8=j();function e9(){return /*#__PURE__*/a(function(){var e;return m(this,function(t){switch(t.label){case 0:e=e6.default.defaultInstance;if(e)return[3,2];return[4,e6.default.init({dir:e8.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}_(e9,"initNodePersist");var te={get:function e(e){return /*#__PURE__*/a(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e6.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(q.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/a(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e6.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();q.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/a(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e6.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();q.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/a(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e6.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(q.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(q.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/a(function(){return m(this,function(t){try{return[2,"".concat(e8.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(q.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tt=j(),tn=O.promisify(P.exec);function tr(e){return"error_list:".concat(e)}_(tr,"getErrorListKey");function ta(e){return /*#__PURE__*/a(function(){var t,n,r;return m(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tr(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,te.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(function(){return /*#__PURE__*/a(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,te.getLogLink(n)];case 1:e=t.sent();e&&q.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=o.sent();q.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}_(ta,"saveErrorListToStorage");function to(){return /*#__PURE__*/a(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return /*#__PURE__*/a(function(){var t;return m(this,function(n){switch(n.label){case 0:return[4,te.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(q.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})})()}_(to,"getStoredErrorLists");function tc(){return /*#__PURE__*/a(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return te.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();q.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})})()}_(tc,"clearAllErrorLists");function ti(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var d=a.exec(e)||[],m=o.exec(e)||[],p=c.exec(e)||[];var v,y,E,g,h,_;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===Y.Error?Y.Error:Y.Warning,message:(v=d===null||d===void 0?void 0:(i=d[4])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:"",rule:(y=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:(E=m===null||m===void 0?void 0:m[1])!==null&&E!==void 0?E:"",position:"".concat(m[2],":").concat(m[3]),type:m[4]===Y.Error?Y.Error:Y.Warning,message:(g=m===null||m===void 0?void 0:(u=m[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):p.length?t.push({file:"commitlint",type:Y.Error,message:(h=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&h!==void 0?h:"",rule:(_=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&_!==void 0?_:""}):n.push(e.trim())}}),t.length&&ta(t),tt.DEBUG&&n.length&&(q.warn("Unmatched lines:"),n.forEach(function(e){return q.info(" ".concat(e))}))}_(ti,"parseTextErrors");function ts(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?Y.Error:Y.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&ta(n)}catch(t){ti(e)}}_(ts,"parseCommandOutput");function tu(e){return /*#__PURE__*/a(function(e){var t,n,r,a,o,c,i,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ts;n=new AbortController;S.default.on("SIGINT",function(){q.warn("Process interrupted. Terminating..."),n.abort(),S.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tn(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&q.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}_(tu,"executeCommand");function tl(e){return{raw:!0,cmd:e}}_(tl,"rawCommand");function tf(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eK," ").concat(eM," ").concat(eO," ").concat(e):"".concat(eK," ").concat(eS," ").concat(e)}_(tf,"formatCLI");function td(e,t){return typeof e=="function"?tf(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"?tf(e,t):e}_(td,"formatCommand");function tm(e){return /*#__PURE__*/a(function(){var t,n,r,a;return m(this,function(o){switch(o.label){case 0:return[4,e3({name:ep})];case 1:t=o.sent(),n=t.isCurrentProject,r={isCurrentProject:n},a=typeof e=="function"?e(r):e;return[2,Object.fromEntries(Object.entries(a).map(function(e){var t=u(e,2),n=t[0],a=t[1];return[n,td(a,r)]}))]}})})()}_(tm,"resolveCommands");function tp(e,t){return /*#__PURE__*/a(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);q.start("".concat(e)),tt.DEBUG&&q.info("→ ".concat(t));return[4,tu(t)];case 1:r.sent(),q.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw q.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}_(tp,"runCommand");0&&(module.exports={clearAllErrorLists:clearAllErrorLists,formatCommand:formatCommand,getStoredErrorLists:getStoredErrorLists,rawCommand:rawCommand,resolveCommands:resolveCommands,runCommand:runCommand});
@@ -1 +1 @@
1
- function e(e,n){if(n==null||n>e.length)n=e.length;for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function n(e){if(Array.isArray(e))return e}function t(n){if(Array.isArray(n))return e(n)}function r(e,n,t,r,o,a,c){try{var s=e[a](c);var i=s.value}catch(e){t(e);return}if(s.done){n(i)}else{Promise.resolve(i).then(r,o)}}function o(e){return function(){var n=this,t=arguments;return new Promise(function(o,a){var c=e.apply(n,t);function s(e){r(c,o,a,s,i,"next",e)}function i(e){r(c,o,a,s,i,"throw",e)}s(undefined)})}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,n){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var r=[];var o=true;var a=false;var c,s;try{for(t=t.call(e);!(o=(c=t.next()).done);o=true){r.push(c.value);if(n&&r.length===n)break}}catch(e){a=true;s=e}finally{try{if(!o&&t["return"]!=null)t["return"]()}finally{if(a)throw s}}return r}function s(){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 i(){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 u(e,t){return n(e)||c(e,t)||d(e,t)||s()}function l(e){return t(e)||a(e)||d(e)||i()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(n,t){if(!n)return;if(typeof n==="string")return e(n,t);var r=Object.prototype.toString.call(n).slice(8,-1);if(r==="Object"&&n.constructor)r=n.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(n,t)}function m(e,n){var t,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=s(0),c["throw"]=s(1),c["return"]=s(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function s(e){return function(n){return i([e,n])}}function i(s){if(t)throw new TypeError("Generator is already executing.");while(c&&(c=0,s[0]&&(a=0)),a)try{if(t=1,r&&(o=s[0]&2?r["return"]:s[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;if(r=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:a.label++;return{value:s[1],done:false};case 5:a.label++;r=s[1];s=[0];continue;case 7:s=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){a=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(s[0]===6&&a.label<o[1]){a.label=o[1];o=s;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(s);break}if(o[2])a.ops.pop();a.trys.pop();continue}s=n.call(e,a)}catch(e){s=[6,e];r=0}finally{t=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var p=Object.defineProperty;var E=function(e,n){return p(e,"name",{value:n,configurable:!0})};import{exec as v}from"node:child_process";import y from"node:process";import*as g from"node:util";var h=".cyberskill-storage";import _ from"@dotenvx/dotenvx";import{bool as D,cleanEnv as C,str as I}from"envalid";import N from"node:os";import b from"node:path";import P from"node:process";var S=!1;function O(){S||(_.config(),S=!0)}E(O,"loadEnvFile");function T(){O();var e=C(P.env,{CWD:I({default:P.cwd()}),DEBUG:D({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:I({default:b.join(N.homedir(),h)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}E(T,"getEnv");var w=function(e){return e.Error="error",e.Warning="warning",e}({});import G from"chalk";import R from"consola";import{GraphQLError as k}from"graphql";var L=T();L.DEBUG||(R.level=4);function A(e){var n=G[e];return typeof n=="function"?n:G.green}E(A,"chalkKeyword");var U={silent:R.silent,level:R.level,fatal:R.fatal,error:R.error,warn:R.warn,log:R.log,info:R.info,success:R.success,ready:R.ready,start:R.start,box:R.box,debug:R.debug,trace:R.trace,verbose:R.verbose,printBoxedLog:function e(e,n){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(n===null||n===void 0?void 0:n.length)){R.box(G.green(e));return}n.forEach(function(e){var n=e.file,r=e.position,o=e.rule,a=e.message;R.log("".concat(G.gray("File:")," ").concat(G.blue("".concat(n).concat(r?":".concat(r):"")))),o&&R.log(" ".concat(A(t)("Rule:")," ").concat(o)),R.log(" ".concat(A(t)("Message:")," ").concat(a))}),R.box(A(t)("".concat(e," : ").concat(n.length))),R.log(G.gray("─".repeat(40)))}};var Y=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";var x=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import F from"fs-extra";var M=F.lstatSync,V=F.readdirSync,K=F.mkdirSync,W=F.readFileSync,B=F.unlinkSync,J=F.statSync,H=F.readJsonSync;function $(e,n,t){F.writeFileSync(e,n,t!==null&&t!==void 0?t:"utf-8")}E($,"writeFileSync");function q(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}return n.every(function(e){return F.pathExistsSync(e)})}E(q,"pathExistsSync");import Q from"fs-extra";import z from"node:path";var X=T(),Z=z;function ee(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}var r;return(r=Z).resolve.apply(r,[X.CWD].concat(l(n)))}E(ee,"resolveWorkingPath");function en(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}var r;return(r=Z).join.apply(r,l(n))}E(en,"join");var et=T(),er=et.CWD,eo="@cyberskill/shared",ea="node_modules",ec="dist",es="package.json",ei="package-lock.json",eu="tsconfig.json",el=".gitignore",ef=".simple-git-hooks.json",ed="pnpm-lock.yaml",em=".git/hooks/",ep=".git/COMMIT_EDITMSG",eE=".migrate-mongo.config.js",ev=function(){var e=Q.readJsonSync(ee(es)).name===eo?er:en(er,ea,eo);return en(e,ec)}(),ey="cyberskill",eg="src/node/cli/index.ts",eh="eslint",e_="eslint",eD="vitest";var eC="vitest",eI="@commitlint/cli",eN="@commitlint/config-conventional",eb="commitlint",eP="lint-staged",eS="lint-staged",eO="typescript",eT="tsc",ew="tsx",eG="git",eR="pnpm",ek="pnpm exec",eL="simple-git-hooks",eA="simple-git-hooks",eU="@eslint/config-inspector",eY="eslint-config-inspector",ej="node-modules-inspector",ex="node-modules-inspector",eF="migrate-mongo",eM="./node_modules/migrate-mongo/bin/migrate-mongo",eV={CYBERSKILL_DIRECTORY:ev,WORKING_DIRECTORY:er,TS_CONFIG:ee(eu),GIT_IGNORE:ee(el),GIT_HOOK:ee(em),GIT_COMMIT_MSG:ee(ep),SIMPLE_GIT_HOOKS_JSON:ee(ef),PACKAGE_JSON:ee(es),PACKAGE_LOCK_JSON:ee(ei),PNPM_LOCK_YAML:ee(ed),NODE_MODULES:ee(ea),MIGRATE_MONGO_CONFIG:ee(eE),LINT_STAGED_CONFIG:ee("".concat(ev,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:ee("".concat(ev,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:ee("".concat(ev,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ee("".concat(ev,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ee("".concat(ev,"/react/vitest/vitest.e2e.js"))};function eK(e){var n=e.type,t=e.packages,r=e.command;var a=t===null||t===void 0?void 0:t.reduce(function(e,n){return e.some(function(e){return e.name===n.name})||e.push(n),e},[]);return function(){return /*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:switch(n){case x.CLI:return[3,1];case x.STRING:return[3,4]}return[3,5];case 1:e=a===null||a===void 0?void 0:a.length;if(!e)return[3,3];return[4,eQ(a,{update:!0})];case 2:e=t.sent();t.label=3;case 3:return[2,(e,nt(ne("".concat(ek," ").concat(r))))];case 4:return[2,nt(ne(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}E(eK,"buildCommand");var eW={simpleGitHooks:eK({type:x.CLI,packages:[{name:eL,type:Y.DEV_DEPENDENCY}],command:eA}),eslintInspect:eK({type:x.CLI,packages:[{name:eU,type:Y.DEV_DEPENDENCY}],command:eY}),nodeModulesInspect:eK({type:x.CLI,packages:[{name:ej,type:Y.DEV_DEPENDENCY}],command:ex}),eslintCheck:eK({type:x.CLI,packages:[{name:eh,type:Y.DEV_DEPENDENCY}],command:"".concat(e_," ").concat(eV.WORKING_DIRECTORY," --no-cache")}),eslintFix:eK({type:x.CLI,packages:[{name:eh,type:Y.DEV_DEPENDENCY}],command:"".concat(e_," ").concat(eV.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:eK({type:x.CLI,packages:[{name:eO,type:Y.DEPENDENCY}],command:"".concat(eT," -p ").concat(eV.TS_CONFIG," --noEmit")}),testUnit:eK({type:x.CLI,packages:[{name:eD,type:Y.DEV_DEPENDENCY}],command:"".concat(eC," --config ").concat(eV.UNIT_TEST_CONFIG)}),testE2e:eK({type:x.CLI,packages:[{name:eD,type:Y.DEV_DEPENDENCY}],command:"".concat(eC," --config ").concat(eV.E2E_TEST_CONFIG)}),mongoMigrateCreate:E(function(e){return eK({type:x.CLI,packages:[{name:eF,type:Y.DEPENDENCY}],command:"".concat(ew," ").concat(eM," create ").concat(e," -f ").concat(eV.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:eK({type:x.CLI,packages:[{name:eF,type:Y.DEPENDENCY}],command:"".concat(ew," ").concat(eM," up -f ").concat(eV.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:eK({type:x.CLI,packages:[{name:eF,type:Y.DEPENDENCY}],command:"".concat(ew," ").concat(eM," down -f ").concat(eV.MIGRATE_MONGO_CONFIG)}),commitLint:eK({type:x.CLI,packages:[{name:eI,type:Y.DEV_DEPENDENCY},{name:eN,type:Y.DEV_DEPENDENCY}],command:"".concat(eb," --edit ").concat(eV.GIT_COMMIT_MSG," --config ").concat(eV.COMMITLINT_CONFIG)}),lintStaged:eK({type:x.CLI,packages:[{name:eP,type:Y.DEV_DEPENDENCY}],command:"".concat(eS," --config ").concat(eV.LINT_STAGED_CONFIG)}),configureGitHook:eK({type:x.STRING,command:"".concat(eG," config core.hooksPath ").concat(eV.GIT_HOOK)}),stageBuildDirectory:eK({type:x.STRING,command:"".concat(eG," add ").concat(ec)}),build:eK({type:x.STRING,command:"".concat(eR," run build")}),pnpmInstallStandard:eK({type:x.STRING,command:"".concat(eR," install")}),pnpmInstallLegacy:eK({type:x.STRING,command:"".concat(eR," install --legacy-peer-deps")}),pnpmInstallForce:eK({type:x.STRING,command:"".concat(eR," install --force")})};var eB=T();function eJ(e){return /*#__PURE__*/o(function(){var n,t,r,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,j("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:n=a.sent();if(!n.ok)throw new Error("Failed to fetch latest version: ".concat(n.status," ").concat(n.statusText));return[4,n.json()];case 2:t=a.sent(),r=t.version;return[2,r];case 3:o=a.sent();throw U.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})})()}E(eJ,"getLatestPackageVersion");function eH(e){return /*#__PURE__*/o(function(){var n,t,r,o,a,c,s,i,u,l,f,d,p,E,v,y,g,h,_;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,2,,3]);if(!q(eV.PACKAGE_JSON))return[2,{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Y.DEPENDENCY,isDevDependency:e.type===Y.DEV_DEPENDENCY,installedPath:"",file:{}}];n=H(eV.PACKAGE_JSON),t=n.name,r=n.version,o=r===void 0?"":r,a=n.dependencies,c=a===void 0?{}:a,s=n.devDependencies,i=s===void 0?{}:s;if(e.name===t)return[2,{name:t,currentVersion:o,latestVersion:o,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===Y.DEPENDENCY,isDevDependency:e.type===Y.DEV_DEPENDENCY,installedPath:eV.PACKAGE_JSON,file:n}];u=e.name in c,l=e.name in i;return[4,eJ(e.name)];case 1:f=m.sent();if(!u&&!l)return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Y.DEPENDENCY,isDevDependency:e.type===Y.DEV_DEPENDENCY,installedPath:"",file:{}}];E=(p=(d=c[e.name])!==null&&d!==void 0?d:i[e.name])!==null&&p!==void 0?p:"",v=en(eB.CWD,ea,e.name,es);if(!q(v))return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}];y=H(v),g=y.version,h=g===void 0?"":g;return[2,E!==h?{name:e.name,currentVersion:h||E,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:v,file:y}:{name:e.name,currentVersion:E,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:E===f,isDependency:u,isDevDependency:l,installedPath:v,file:y}];case 2:_=m.sent();throw U.error('Error getting package "'.concat(e.name,'": ').concat(_.message)),_;case 3:return[2]}})})()}E(eH,"getPackage");function e$(e){return /*#__PURE__*/o(function(){var n,t,r,o,a;return m(this,function(c){try{;r=H(eV.PACKAGE_JSON),o=(n=r.dependencies)!==null&&n!==void 0?n:{},a=(t=r.devDependencies)!==null&&t!==void 0?t:{};e.isDependency?o[e.name]=e.latestVersion:e.isDevDependency&&(a[e.name]=e.latestVersion),$(eV.PACKAGE_JSON,JSON.stringify(r,null,4)),U.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(n){throw U.error('Error updating package "'.concat(e.name,'": ').concat(n.message)),n}return[2]})})()}E(e$,"updatePackage");function eq(){return /*#__PURE__*/o(function(){var e,n,t,r,o,a,c,s,i,u,l,f,d;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,12,,13]);e=[{command:E(function(){return eW.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:E(function(){return eW.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:E(function(){return eW.pnpmInstallForce()},"command"),message:"Retrying with force install"}];n=true,t=false,r=undefined;m.label=1;case 1:m.trys.push([1,9,10,11]);o=e[Symbol.iterator]();m.label=2;case 2:if(!!(n=(a=o.next()).done))return[3,8];c=a.value,s=c.command,i=c.message;m.label=3;case 3:m.trys.push([3,6,,7]);return[4,s()];case 4:u=m.sent();return[4,no("".concat(i," using: ").concat(u),u)];case 5:m.sent();return[2];case 6:l=m.sent();U.warn("Installation attempt failed: ".concat(i)),U.error("Details: ".concat(l.message));return[3,7];case 7:n=true;return[3,2];case 8:return[3,11];case 9:f=m.sent();t=true;r=f;return[3,11];case 10:try{if(!n&&o.return!=null){o.return()}}finally{if(t){throw r}}return[7];case 11:return[3,13];case 12:d=m.sent();throw U.error("Failed to install dependencies: ".concat(d.message)),d;case 13:return[2]}})})()}E(eq,"installDependencies");function eQ(e,n){return /*#__PURE__*/o(function(){var t,r,o,a,c,s,i,u,l,f,d;return m(this,function(m){switch(m.label){case 0:if(!q(eV.PACKAGE_JSON)){U.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,14,,15]);return[4,Promise.all(e.map(eH))];case 2:t=m.sent().filter(function(e){return!e.isCurrentProject&&(!e.isInstalled||!e.isUpToDate)});r=t.length>0;if(!r)return[3,5];return[4,Promise.all(t.map(e$))];case 3:m.sent();return[4,eq()];case 4:r=m.sent();m.label=5;case 5:r;a=true,c=false,s=undefined;m.label=6;case 6:m.trys.push([6,11,12,13]);i=((o=n===null||n===void 0?void 0:n.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=7;case 7:if(!!(a=(u=i.next()).done))return[3,10];l=u.value;return[4,l()];case 8:m.sent();m.label=9;case 9:a=true;return[3,7];case 10:return[3,13];case 11:f=m.sent();c=true;s=f;return[3,13];case 12:try{if(!a&&i.return!=null){i.return()}}finally{if(c){throw s}}return[7];case 13:return[3,15];case 14:d=m.sent();throw U.error('Failed to setup "'.concat(e.map(function(e){return e.name}).join(", "),'": ').concat(d.message)),d;case 15:return[2]}})})()}E(eQ,"setupPackages");import ez from"node-persist";var eX=T();function eZ(){return /*#__PURE__*/o(function(){var e;return m(this,function(n){switch(n.label){case 0:e=ez.defaultInstance;if(e)return[3,2];return[4,ez.init({dir:eX.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=n.sent();n.label=2;case 2:e;return[2]}})})()}E(eZ,"initNodePersist");var e0={get:function e(e){return /*#__PURE__*/o(function(){var n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,ez.getItem(e)];case 2:return[2,(n=r.sent())!==null&&n!==void 0?n:null];case 3:t=r.sent();return[2,(U.error('[Storage:get] Error getting key "'.concat(e,'":'),t),null)];case 4:return[2]}})})()},set:function e(e,n){return /*#__PURE__*/o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,ez.setItem(e,n)];case 2:r.sent();return[3,4];case 3:t=r.sent();U.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/o(function(){var n;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,eZ()];case 1:t.sent();return[4,ez.removeItem(e)];case 2:t.sent();return[3,4];case 3:n=t.sent();U.error('[Storage:remove] Error removing key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/o(function(){var e,n;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,eZ()];case 1:t.sent();return[4,ez.keys()];case 2:e=t.sent();return[2,Array.isArray(e)?e:(U.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:n=t.sent();return[2,(U.error("[Storage:keys] Error getting keys:",n),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/o(function(){return m(this,function(n){try{return[2,"".concat(eX.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(U.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e1=T(),e2=g.promisify(v);function e3(e){return"error_list:".concat(e)}E(e3,"getErrorListKey");function e4(e){return /*#__PURE__*/o(function(){var n,t,r;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];n=Date.now(),t=e3(n);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,e0.set(t,{errors:e,timestamp:n})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/o(function(){var e;return m(this,function(n){switch(n.label){case 0:return[4,e0.getLogLink(t)];case 1:e=n.sent();e&&U.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();U.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}E(e4,"saveErrorListToStorage");function e5(){return /*#__PURE__*/o(function(){var e,n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0.keys()];case 1:e=r.sent(),n=Array.isArray(e)?e.filter(function(e){var n;return e===null||e===void 0?void 0:(n=e.startsWith)===null||n===void 0?void 0:n.call(e,"error_list:")}):[];return[4,Promise.all(n.map(function(e){return /*#__PURE__*/o(function(){var n;return m(this,function(t){switch(t.label){case 0:return[4,e0.get(e)];case 1:return[2,((n=t.sent())===null||n===void 0?void 0:n.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:t=r.sent();return[2,(U.error("Failed to retrieve stored errors: ".concat(t.message)),[])];case 4:return[2]}})})()}E(e5,"getStoredErrorLists");function e6(){return /*#__PURE__*/o(function(){var e,n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0.keys()];case 1:e=r.sent(),n=Array.isArray(e)?e.filter(function(e){var n;return e===null||e===void 0?void 0:(n=e.startsWith)===null||n===void 0?void 0:n.call(e,"error_list:")}):[];return[4,Promise.all(n.map(function(e){return e0.remove(e)}))];case 2:r.sent();return[3,4];case 3:t=r.sent();U.error("Failed to clear error lists: ".concat(t.message));return[3,4];case 4:return[2]}})})()}E(e6,"clearAllErrorLists");function e7(e){var n=[],t=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var s,i,u,l,f;var d=o.exec(e)||[],m=a.exec(e)||[],p=c.exec(e)||[];var E,v,y,g,h,_;d.length&&r?n.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===w.Error?w.Error:w.Warning,message:(E=d===null||d===void 0?void 0:(s=d[4])===null||s===void 0?void 0:s.trim())!==null&&E!==void 0?E:"",rule:(v=d===null||d===void 0?void 0:(i=d[5])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:""}):m.length?n.push({file:(y=m===null||m===void 0?void 0:m[1])!==null&&y!==void 0?y:"",position:"".concat(m[2],":").concat(m[3]),type:m[4]===w.Error?w.Error:w.Warning,message:(g=m===null||m===void 0?void 0:(u=m[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):p.length?n.push({file:"commitlint",type:w.Error,message:(h=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&h!==void 0?h:"",rule:(_=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&_!==void 0?_:""}):t.push(e.trim())}}),n.length&&e4(n),e1.DEBUG&&t.length&&(U.warn("Unmatched lines:"),t.forEach(function(e){return U.info(" ".concat(e))}))}E(e7,"parseTextErrors");function e8(e){try{var n=JSON.parse(e),t=[];n.forEach(function(e){var n=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,c=e.ruleId,s=e.message;t.push({type:r===2?w.Error:w.Warning,file:n,position:"".concat(o,":").concat(a),rule:c,message:s})})}),t.length&&e4(t)}catch(n){e7(e)}}E(e8,"parseCommandOutput");function e9(e){return /*#__PURE__*/o(function(e){var n,t,r,o,a,c,s,i,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:n=l.length>1&&l[1]!==void 0?l[1]:e8;t=new AbortController;y.on("SIGINT",function(){U.warn("Process interrupted. Terminating..."),t.abort(),y.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e2(e,{maxBuffer:0x6400000,signal:t.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&n(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();s=c.stdout,i=c.stderr,u=c.message;[s,i].forEach(function(e){return e&&n(e)}),!i&&!s&&U.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}E(e9,"executeCommand");function ne(e){return{raw:!0,cmd:e}}E(ne,"rawCommand");function nn(e,n){return(n===null||n===void 0?void 0:n.isCurrentProject)?"".concat(ek," ").concat(ew," ").concat(eg," ").concat(e):"".concat(ek," ").concat(ey," ").concat(e)}E(nn,"formatCLI");function nt(e,n){return typeof e=="function"?nn(e(n),n):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?nn(e,n):e}E(nt,"formatCommand");function nr(e){return /*#__PURE__*/o(function(){var n,t,r,o;return m(this,function(a){switch(a.label){case 0:return[4,eH({name:eo})];case 1:n=a.sent(),t=n.isCurrentProject,r={isCurrentProject:t},o=typeof e=="function"?e(r):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var n=u(e,2),t=n[0],o=n[1];return[t,nt(o,r)]}))]}})})()}E(nr,"resolveCommands");function no(e,n){return /*#__PURE__*/o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);U.start("".concat(e)),e1.DEBUG&&U.info("→ ".concat(n));return[4,e9(n)];case 1:r.sent(),U.success("".concat(e," done."));return[3,3];case 2:t=r.sent();throw U.error("".concat(e," failed: ").concat(t.message)),t;case 3:return[2]}})})()}E(no,"runCommand");export{e6 as clearAllErrorLists,nt as formatCommand,e5 as getStoredErrorLists,ne as rawCommand,nr as resolveCommands,no as runCommand};
1
+ function e(e,n){if(n==null||n>e.length)n=e.length;for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function n(e){if(Array.isArray(e))return e}function t(n){if(Array.isArray(n))return e(n)}function r(e,n,t,r,o,a,c){try{var s=e[a](c);var i=s.value}catch(e){t(e);return}if(s.done){n(i)}else{Promise.resolve(i).then(r,o)}}function o(e){return function(){var n=this,t=arguments;return new Promise(function(o,a){var c=e.apply(n,t);function s(e){r(c,o,a,s,i,"next",e)}function i(e){r(c,o,a,s,i,"throw",e)}s(undefined)})}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,n){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var r=[];var o=true;var a=false;var c,s;try{for(t=t.call(e);!(o=(c=t.next()).done);o=true){r.push(c.value);if(n&&r.length===n)break}}catch(e){a=true;s=e}finally{try{if(!o&&t["return"]!=null)t["return"]()}finally{if(a)throw s}}return r}function s(){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 i(){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 u(e,t){return n(e)||c(e,t)||d(e,t)||s()}function l(e){return t(e)||a(e)||d(e)||i()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(n,t){if(!n)return;if(typeof n==="string")return e(n,t);var r=Object.prototype.toString.call(n).slice(8,-1);if(r==="Object"&&n.constructor)r=n.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(n,t)}function m(e,n){var t,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=s(0),c["throw"]=s(1),c["return"]=s(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function s(e){return function(n){return i([e,n])}}function i(s){if(t)throw new TypeError("Generator is already executing.");while(c&&(c=0,s[0]&&(a=0)),a)try{if(t=1,r&&(o=s[0]&2?r["return"]:s[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;if(r=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:a.label++;return{value:s[1],done:false};case 5:a.label++;r=s[1];s=[0];continue;case 7:s=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){a=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(s[0]===6&&a.label<o[1]){a.label=o[1];o=s;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(s);break}if(o[2])a.ops.pop();a.trys.pop();continue}s=n.call(e,a)}catch(e){s=[6,e];r=0}finally{t=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var p=Object.defineProperty;var E=function(e,n){return p(e,"name",{value:n,configurable:!0})};import{exec as v}from"node:child_process";import y from"node:process";import*as g from"node:util";var h=".cyberskill-storage";import _ from"@dotenvx/dotenvx";import{bool as D,cleanEnv as C,str as I}from"envalid";import N from"node:os";import b from"node:path";import P from"node:process";var S=!1;function O(){S||(_.config(),S=!0)}E(O,"loadEnvFile");function T(){O();var e=C(P.env,{CWD:I({default:P.cwd()}),DEBUG:D({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:I({default:b.join(N.homedir(),h)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}E(T,"getEnv");var w=function(e){return e.Error="error",e.Warning="warning",e}({});import G from"chalk";import R from"consola";import{GraphQLError as k}from"graphql";var L=T();L.DEBUG||(R.level=4);function A(e){var n=G[e];return typeof n=="function"?n:G.green}E(A,"chalkKeyword");var U={silent:R.silent,level:R.level,fatal:R.fatal,error:R.error,warn:R.warn,log:R.log,info:R.info,success:R.success,ready:R.ready,start:R.start,box:R.box,debug:R.debug,trace:R.trace,verbose:R.verbose,printBoxedLog:function e(e,n){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(n===null||n===void 0?void 0:n.length)){R.box(G.green(e));return}n.forEach(function(e){var n=e.file,r=e.position,o=e.rule,a=e.message;R.log("".concat(G.gray("File:")," ").concat(G.blue("".concat(n).concat(r?":".concat(r):"")))),o&&R.log(" ".concat(A(t)("Rule:")," ").concat(o)),R.log(" ".concat(A(t)("Message:")," ").concat(a))}),R.box(A(t)("".concat(e," : ").concat(n.length))),R.log(G.gray("─".repeat(40)))}};var Y=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";var x=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import F from"fs-extra";var M=F.lstatSync,V=F.readdirSync,K=F.mkdirSync,W=F.readFileSync,B=F.unlinkSync,J=F.statSync,H=F.readJsonSync;function $(e,n,t){F.writeFileSync(e,n,t!==null&&t!==void 0?t:"utf-8")}E($,"writeFileSync");function q(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}return n.every(function(e){return F.pathExistsSync(e)})}E(q,"pathExistsSync");import Q from"fs-extra";import z from"node:path";var X=T(),Z=z;function ee(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}var r;return(r=Z).resolve.apply(r,[X.CWD].concat(l(n)))}E(ee,"resolveWorkingPath");function en(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}var r;return(r=Z).join.apply(r,l(n))}E(en,"join");var et=T(),er=et.CWD,eo="@cyberskill/shared",ea="node_modules",ec="dist",es="package.json",ei="package-lock.json",eu="tsconfig.json",el=".gitignore",ef=".simple-git-hooks.json",ed="pnpm-lock.yaml",em=".git/hooks/",ep=".git/COMMIT_EDITMSG",eE=".migrate-mongo.config.js",ev=function(){var e=Q.readJsonSync(ee(es)).name===eo?er:en(er,ea,eo);return en(e,ec)}(),ey="cyberskill",eg="src/node/cli/index.ts",eh="eslint",e_="eslint",eD="vitest";var eC="vitest",eI="@commitlint/cli",eN="@commitlint/config-conventional",eb="commitlint",eP="lint-staged",eS="lint-staged",eO="typescript",eT="tsc",ew="tsx",eG="git",eR="pnpm",ek="pnpm exec",eL="simple-git-hooks",eA="simple-git-hooks",eU="@eslint/config-inspector",eY="eslint-config-inspector",ej="node-modules-inspector",ex="node-modules-inspector",eF="migrate-mongo",eM="./node_modules/migrate-mongo/bin/migrate-mongo",eV={CYBERSKILL_DIRECTORY:ev,WORKING_DIRECTORY:er,TS_CONFIG:ee(eu),GIT_IGNORE:ee(el),GIT_HOOK:ee(em),GIT_COMMIT_MSG:ee(ep),SIMPLE_GIT_HOOKS_JSON:ee(ef),PACKAGE_JSON:ee(es),PACKAGE_LOCK_JSON:ee(ei),PNPM_LOCK_YAML:ee(ed),NODE_MODULES:ee(ea),MIGRATE_MONGO_CONFIG:ee(eE),LINT_STAGED_CONFIG:ee("".concat(ev,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:ee("".concat(ev,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:ee("".concat(ev,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ee("".concat(ev,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ee("".concat(ev,"/react/vitest/vitest.e2e.js"))};function eK(e){var n=e.type,t=e.packages,r=e.command;var a=t===null||t===void 0?void 0:t.reduce(function(e,n){return e.some(function(e){return e.name===n.name})||e.push(n),e},[]);return function(){return /*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:switch(n){case x.CLI:return[3,1];case x.STRING:return[3,4]}return[3,5];case 1:e=a===null||a===void 0?void 0:a.length;if(!e)return[3,3];return[4,eQ(a,{update:!0})];case 2:e=t.sent();t.label=3;case 3:return[2,(e,nt(ne("".concat(ek," ").concat(r))))];case 4:return[2,nt(ne(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}E(eK,"buildCommand");var eW={simpleGitHooks:eK({type:x.CLI,packages:[{name:eL,type:Y.DEV_DEPENDENCY}],command:eA}),eslintInspect:eK({type:x.CLI,packages:[{name:eU,type:Y.DEV_DEPENDENCY}],command:eY}),nodeModulesInspect:eK({type:x.CLI,packages:[{name:ej,type:Y.DEV_DEPENDENCY}],command:ex}),eslintCheck:eK({type:x.CLI,packages:[{name:eh,type:Y.DEV_DEPENDENCY}],command:"".concat(e_," ").concat(eV.WORKING_DIRECTORY," --no-cache")}),eslintFix:eK({type:x.CLI,packages:[{name:eh,type:Y.DEV_DEPENDENCY}],command:"".concat(e_," ").concat(eV.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:eK({type:x.CLI,packages:[{name:eO,type:Y.DEPENDENCY}],command:"".concat(eT," -p ").concat(eV.TS_CONFIG," --noEmit")}),testUnit:eK({type:x.CLI,packages:[{name:eD,type:Y.DEV_DEPENDENCY}],command:"".concat(eC," --config ").concat(eV.UNIT_TEST_CONFIG)}),testE2e:eK({type:x.CLI,packages:[{name:eD,type:Y.DEV_DEPENDENCY}],command:"".concat(eC," --config ").concat(eV.E2E_TEST_CONFIG)}),mongoMigrateCreate:E(function(e){return eK({type:x.CLI,packages:[{name:eF,type:Y.DEPENDENCY}],command:"".concat(ew," ").concat(eM," create ").concat(e," -f ").concat(eV.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:eK({type:x.CLI,packages:[{name:eF,type:Y.DEPENDENCY}],command:"".concat(ew," ").concat(eM," up -f ").concat(eV.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:eK({type:x.CLI,packages:[{name:eF,type:Y.DEPENDENCY}],command:"".concat(ew," ").concat(eM," down -f ").concat(eV.MIGRATE_MONGO_CONFIG)}),commitLint:eK({type:x.CLI,packages:[{name:eI,type:Y.DEV_DEPENDENCY},{name:eN,type:Y.DEV_DEPENDENCY}],command:"".concat(eb," --edit ").concat(eV.GIT_COMMIT_MSG," --config ").concat(eV.COMMITLINT_CONFIG)}),lintStaged:eK({type:x.CLI,packages:[{name:eP,type:Y.DEV_DEPENDENCY}],command:"".concat(eS," --config ").concat(eV.LINT_STAGED_CONFIG)}),configureGitHook:eK({type:x.STRING,command:"".concat(eG," config core.hooksPath ").concat(eV.GIT_HOOK)}),stageBuildDirectory:eK({type:x.STRING,command:"".concat(eG," add ").concat(ec)}),build:eK({type:x.STRING,command:"".concat(eR," run --if-present build")}),pnpmInstallStandard:eK({type:x.STRING,command:"".concat(eR," install")}),pnpmInstallLegacy:eK({type:x.STRING,command:"".concat(eR," install --legacy-peer-deps")}),pnpmInstallForce:eK({type:x.STRING,command:"".concat(eR," install --force")})};var eB=T();function eJ(e){return /*#__PURE__*/o(function(){var n,t,r,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,j("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:n=a.sent();if(!n.ok)throw new Error("Failed to fetch latest version: ".concat(n.status," ").concat(n.statusText));return[4,n.json()];case 2:t=a.sent(),r=t.version;return[2,r];case 3:o=a.sent();throw U.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})})()}E(eJ,"getLatestPackageVersion");function eH(e){return /*#__PURE__*/o(function(){var n,t,r,o,a,c,s,i,u,l,f,d,p,E,v,y,g,h,_;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,2,,3]);if(!q(eV.PACKAGE_JSON))return[2,{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Y.DEPENDENCY,isDevDependency:e.type===Y.DEV_DEPENDENCY,installedPath:"",file:{}}];n=H(eV.PACKAGE_JSON),t=n.name,r=n.version,o=r===void 0?"":r,a=n.dependencies,c=a===void 0?{}:a,s=n.devDependencies,i=s===void 0?{}:s;if(e.name===t)return[2,{name:t,currentVersion:o,latestVersion:o,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===Y.DEPENDENCY,isDevDependency:e.type===Y.DEV_DEPENDENCY,installedPath:eV.PACKAGE_JSON,file:n}];u=e.name in c,l=e.name in i;return[4,eJ(e.name)];case 1:f=m.sent();if(!u&&!l)return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===Y.DEPENDENCY,isDevDependency:e.type===Y.DEV_DEPENDENCY,installedPath:"",file:{}}];E=(p=(d=c[e.name])!==null&&d!==void 0?d:i[e.name])!==null&&p!==void 0?p:"",v=en(eB.CWD,ea,e.name,es);if(!q(v))return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}];y=H(v),g=y.version,h=g===void 0?"":g;return[2,E!==h?{name:e.name,currentVersion:h||E,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:v,file:y}:{name:e.name,currentVersion:E,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:E===f,isDependency:u,isDevDependency:l,installedPath:v,file:y}];case 2:_=m.sent();throw U.error('Error getting package "'.concat(e.name,'": ').concat(_.message)),_;case 3:return[2]}})})()}E(eH,"getPackage");function e$(e){return /*#__PURE__*/o(function(){var n,t,r,o,a;return m(this,function(c){try{;r=H(eV.PACKAGE_JSON),o=(n=r.dependencies)!==null&&n!==void 0?n:{},a=(t=r.devDependencies)!==null&&t!==void 0?t:{};e.isDependency?o[e.name]=e.latestVersion:e.isDevDependency&&(a[e.name]=e.latestVersion),$(eV.PACKAGE_JSON,JSON.stringify(r,null,4)),U.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(n){throw U.error('Error updating package "'.concat(e.name,'": ').concat(n.message)),n}return[2]})})()}E(e$,"updatePackage");function eq(){return /*#__PURE__*/o(function(){var e,n,t,r,o,a,c,s,i,u,l,f,d;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,12,,13]);e=[{command:E(function(){return eW.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:E(function(){return eW.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:E(function(){return eW.pnpmInstallForce()},"command"),message:"Retrying with force install"}];n=true,t=false,r=undefined;m.label=1;case 1:m.trys.push([1,9,10,11]);o=e[Symbol.iterator]();m.label=2;case 2:if(!!(n=(a=o.next()).done))return[3,8];c=a.value,s=c.command,i=c.message;m.label=3;case 3:m.trys.push([3,6,,7]);return[4,s()];case 4:u=m.sent();return[4,no("".concat(i," using: ").concat(u),u)];case 5:m.sent();return[2];case 6:l=m.sent();U.warn("Installation attempt failed: ".concat(i)),U.error("Details: ".concat(l.message));return[3,7];case 7:n=true;return[3,2];case 8:return[3,11];case 9:f=m.sent();t=true;r=f;return[3,11];case 10:try{if(!n&&o.return!=null){o.return()}}finally{if(t){throw r}}return[7];case 11:return[3,13];case 12:d=m.sent();throw U.error("Failed to install dependencies: ".concat(d.message)),d;case 13:return[2]}})})()}E(eq,"installDependencies");function eQ(e,n){return /*#__PURE__*/o(function(){var t,r,o,a,c,s,i,u,l,f,d,p;return m(this,function(m){switch(m.label){case 0:if(!q(eV.PACKAGE_JSON)){U.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,16,,17]);return[4,Promise.all(e.map(eH))];case 2:t=m.sent().filter(function(e){return!e.isCurrentProject&&(!e.isInstalled||!e.isUpToDate)});r=t.length>0;if(!r)return[3,7];return[4,Promise.all(t.map(e$))];case 3:m.sent();return[4,eq()];case 4:m.sent();o=["Running ESLint with auto-fix"];return[4,eW.eslintFix()];case 5:return[4,no.apply(void 0,o.concat([m.sent()]))];case 6:r=m.sent();m.label=7;case 7:r;c=true,s=false,i=undefined;m.label=8;case 8:m.trys.push([8,13,14,15]);u=((a=n===null||n===void 0?void 0:n.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();m.label=9;case 9:if(!!(c=(l=u.next()).done))return[3,12];f=l.value;return[4,f()];case 10:m.sent();m.label=11;case 11:c=true;return[3,9];case 12:return[3,15];case 13:d=m.sent();s=true;i=d;return[3,15];case 14:try{if(!c&&u.return!=null){u.return()}}finally{if(s){throw i}}return[7];case 15:return[3,17];case 16:p=m.sent();throw U.error('Failed to setup "'.concat(e.map(function(e){return e.name}).join(", "),'": ').concat(p.message)),p;case 17:return[2]}})})()}E(eQ,"setupPackages");import ez from"node-persist";var eX=T();function eZ(){return /*#__PURE__*/o(function(){var e;return m(this,function(n){switch(n.label){case 0:e=ez.defaultInstance;if(e)return[3,2];return[4,ez.init({dir:eX.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=n.sent();n.label=2;case 2:e;return[2]}})})()}E(eZ,"initNodePersist");var e0={get:function e(e){return /*#__PURE__*/o(function(){var n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,ez.getItem(e)];case 2:return[2,(n=r.sent())!==null&&n!==void 0?n:null];case 3:t=r.sent();return[2,(U.error('[Storage:get] Error getting key "'.concat(e,'":'),t),null)];case 4:return[2]}})})()},set:function e(e,n){return /*#__PURE__*/o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,ez.setItem(e,n)];case 2:r.sent();return[3,4];case 3:t=r.sent();U.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/o(function(){var n;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,eZ()];case 1:t.sent();return[4,ez.removeItem(e)];case 2:t.sent();return[3,4];case 3:n=t.sent();U.error('[Storage:remove] Error removing key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/o(function(){var e,n;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,eZ()];case 1:t.sent();return[4,ez.keys()];case 2:e=t.sent();return[2,Array.isArray(e)?e:(U.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:n=t.sent();return[2,(U.error("[Storage:keys] Error getting keys:",n),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/o(function(){return m(this,function(n){try{return[2,"".concat(eX.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(U.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e1=T(),e2=g.promisify(v);function e3(e){return"error_list:".concat(e)}E(e3,"getErrorListKey");function e4(e){return /*#__PURE__*/o(function(){var n,t,r;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];n=Date.now(),t=e3(n);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,e0.set(t,{errors:e,timestamp:n})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/o(function(){var e;return m(this,function(n){switch(n.label){case 0:return[4,e0.getLogLink(t)];case 1:e=n.sent();e&&U.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();U.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}E(e4,"saveErrorListToStorage");function e5(){return /*#__PURE__*/o(function(){var e,n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0.keys()];case 1:e=r.sent(),n=Array.isArray(e)?e.filter(function(e){var n;return e===null||e===void 0?void 0:(n=e.startsWith)===null||n===void 0?void 0:n.call(e,"error_list:")}):[];return[4,Promise.all(n.map(function(e){return /*#__PURE__*/o(function(){var n;return m(this,function(t){switch(t.label){case 0:return[4,e0.get(e)];case 1:return[2,((n=t.sent())===null||n===void 0?void 0:n.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:t=r.sent();return[2,(U.error("Failed to retrieve stored errors: ".concat(t.message)),[])];case 4:return[2]}})})()}E(e5,"getStoredErrorLists");function e7(){return /*#__PURE__*/o(function(){var e,n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0.keys()];case 1:e=r.sent(),n=Array.isArray(e)?e.filter(function(e){var n;return e===null||e===void 0?void 0:(n=e.startsWith)===null||n===void 0?void 0:n.call(e,"error_list:")}):[];return[4,Promise.all(n.map(function(e){return e0.remove(e)}))];case 2:r.sent();return[3,4];case 3:t=r.sent();U.error("Failed to clear error lists: ".concat(t.message));return[3,4];case 4:return[2]}})})()}E(e7,"clearAllErrorLists");function e6(e){var n=[],t=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var s,i,u,l,f;var d=o.exec(e)||[],m=a.exec(e)||[],p=c.exec(e)||[];var E,v,y,g,h,_;d.length&&r?n.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===w.Error?w.Error:w.Warning,message:(E=d===null||d===void 0?void 0:(s=d[4])===null||s===void 0?void 0:s.trim())!==null&&E!==void 0?E:"",rule:(v=d===null||d===void 0?void 0:(i=d[5])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:""}):m.length?n.push({file:(y=m===null||m===void 0?void 0:m[1])!==null&&y!==void 0?y:"",position:"".concat(m[2],":").concat(m[3]),type:m[4]===w.Error?w.Error:w.Warning,message:(g=m===null||m===void 0?void 0:(u=m[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):p.length?n.push({file:"commitlint",type:w.Error,message:(h=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&h!==void 0?h:"",rule:(_=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&_!==void 0?_:""}):t.push(e.trim())}}),n.length&&e4(n),e1.DEBUG&&t.length&&(U.warn("Unmatched lines:"),t.forEach(function(e){return U.info(" ".concat(e))}))}E(e6,"parseTextErrors");function e8(e){try{var n=JSON.parse(e),t=[];n.forEach(function(e){var n=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,c=e.ruleId,s=e.message;t.push({type:r===2?w.Error:w.Warning,file:n,position:"".concat(o,":").concat(a),rule:c,message:s})})}),t.length&&e4(t)}catch(n){e6(e)}}E(e8,"parseCommandOutput");function e9(e){return /*#__PURE__*/o(function(e){var n,t,r,o,a,c,s,i,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:n=l.length>1&&l[1]!==void 0?l[1]:e8;t=new AbortController;y.on("SIGINT",function(){U.warn("Process interrupted. Terminating..."),t.abort(),y.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e2(e,{maxBuffer:0x6400000,signal:t.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&n(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();s=c.stdout,i=c.stderr,u=c.message;[s,i].forEach(function(e){return e&&n(e)}),!i&&!s&&U.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}E(e9,"executeCommand");function ne(e){return{raw:!0,cmd:e}}E(ne,"rawCommand");function nn(e,n){return(n===null||n===void 0?void 0:n.isCurrentProject)?"".concat(ek," ").concat(ew," ").concat(eg," ").concat(e):"".concat(ek," ").concat(ey," ").concat(e)}E(nn,"formatCLI");function nt(e,n){return typeof e=="function"?nn(e(n),n):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?nn(e,n):e}E(nt,"formatCommand");function nr(e){return /*#__PURE__*/o(function(){var n,t,r,o;return m(this,function(a){switch(a.label){case 0:return[4,eH({name:eo})];case 1:n=a.sent(),t=n.isCurrentProject,r={isCurrentProject:t},o=typeof e=="function"?e(r):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var n=u(e,2),t=n[0],o=n[1];return[t,nt(o,r)]}))]}})})()}E(nr,"resolveCommands");function no(e,n){return /*#__PURE__*/o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);U.start("".concat(e)),e1.DEBUG&&U.info("→ ".concat(n));return[4,e9(n)];case 1:r.sent(),U.success("".concat(e," done."));return[3,3];case 2:t=r.sent();throw U.error("".concat(e," failed: ").concat(t.message)),t;case 3:return[2]}})})()}E(no,"runCommand");export{e7 as clearAllErrorLists,nt as formatCommand,e5 as getStoredErrorLists,ne as rawCommand,nr as resolveCommands,no as runCommand};
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,a)}}function a(e){return function(){var t=this,n=arguments;return new Promise(function(a,o){var c=e.apply(t,n);function i(e){r(c,a,o,i,s,"next",e)}function s(e){r(c,a,o,i,s,"throw",e)}i(undefined)})}}function o(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 a=true;var o=false;var c,i;try{for(n=n.call(e);!(a=(c=n.next()).done);a=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){o=true;i=e}finally{try{if(!a&&n["return"]!=null)n["return"]()}finally{if(o)throw i}}return r}function i(){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 s(){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 u(e,n){return t(e)||c(e,n)||d(e,n)||i()}function l(e){return n(e)||o(e)||d(e)||s()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(o=0)),o)try{if(n=1,r&&(a=i[0]&2?r["return"]:i[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;if(r=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.create;var v=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty;var h=function(e,t){return v(e,"name",{value:t,configurable:!0})};var C=function(e,t){for(var n in t)v(e,n,{get:t[n],enumerable:!0})},D=function(e,t,n,r){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var i=function(){var a=u.value;!_.call(e,a)&&a!==n&&v(e,a,{get:function(){return t[a]},enumerable:!(r=y(t,a))||r.enumerable})};for(var s=E(t)[Symbol.iterator](),u;!(a=(u=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var I=function(e,t,n){return n=e!=null?p(g(e)):{},D(t||!e||!e.__esModule?v(n,"default",{value:e,enumerable:!0}):n,e)},N=function(e){return D(v({},"__esModule",{value:!0}),e)};var b={};C(b,{E_CommandType:function(){return P},clearAllErrorLists:function(){return tc},formatCommand:function(){return td},getStoredErrorLists:function(){return to},rawCommand:function(){return tl},resolveCommands:function(){return tm},runCommand:function(){return tp}});module.exports=N(b);var P=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var S=require("child_process"),O=I(require("process"),1),T=I(require("util"),1);var w=".cyberskill-storage";var G=I(require("@dotenvx/dotenvx"),1),R=require("envalid"),k=I(require("os"),1),L=I(require("path"),1),A=I(require("process"),1);var U=!1;function j(){U||(G.default.config(),U=!0)}h(j,"loadEnvFile");function Y(){j();var e=(0,R.cleanEnv)(A.default.env,{CWD:(0,R.str)({default:A.default.cwd()}),DEBUG:(0,R.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,R.str)({default:L.default.join(k.default.homedir(),w)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}h(Y,"getEnv");var x=function(e){return e.Error="error",e.Warning="warning",e}({});var M=I(require("chalk"),1),F=I(require("consola"),1),V=require("graphql");var K=Y();K.DEBUG||(F.default.level=4);function q(e){var t=M.default[e];return typeof t=="function"?t:M.default.green}h(q,"chalkKeyword");var W={silent:F.default.silent,level:F.default.level,fatal:F.default.fatal,error:F.default.error,warn:F.default.warn,log:F.default.log,info:F.default.info,success:F.default.success,ready:F.default.ready,start:F.default.start,box:F.default.box,debug:F.default.debug,trace:F.default.trace,verbose:F.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)){F.default.box(M.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;F.default.log("".concat(M.default.gray("File:")," ").concat(M.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&F.default.log(" ".concat(q(n)("Rule:")," ").concat(a)),F.default.log(" ".concat(q(n)("Message:")," ").concat(o))}),F.default.box(q(n)("".concat(e," : ").concat(t.length))),F.default.log(M.default.gray("─".repeat(40)))}};var B=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var J=I(require("node-fetch"),1);var H=I(require("fs-extra"),1),$=I(require("path"),1);var z=H.default,Q=z.lstatSync,X=z.readdirSync,Z=z.mkdirSync,ee=z.readFileSync,et=z.unlinkSync,en=z.statSync,er=H.default.readJsonSync;function ea(e,t,n){H.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}h(ea,"writeFileSync");function eo(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return H.default.pathExistsSync(e)})}h(eo,"pathExistsSync");var ec=I(require("fs-extra"),1);var ei=I(require("path"),1);var es=Y(),eu=ei.default;function el(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eu).resolve.apply(r,[es.CWD].concat(l(t)))}h(el,"resolveWorkingPath");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eu).join.apply(r,l(t))}h(ef,"join");var ed=Y(),em=ed.CWD,ep="@cyberskill/shared",ev="node_modules",ey="dist",eE="package.json",eg="package-lock.json",e_="tsconfig.json",eh=".gitignore",eC=".simple-git-hooks.json",eD="pnpm-lock.yaml",eI=".git/hooks/",eN=".git/COMMIT_EDITMSG",eb=".migrate-mongo.config.js",eP=function(){var e=ec.default.readJsonSync(el(eE)).name===ep?em:ef(em,ev,ep);return ef(e,ey)}(),eS="cyberskill",eO="src/node/cli/index.ts",eT="eslint",ew="eslint",eG="vitest";var eR="vitest",ek="@commitlint/cli",eL="@commitlint/config-conventional",eA="commitlint",eU="lint-staged",ej="lint-staged",eY="typescript",ex="tsc",eM="tsx",eF="git",eV="pnpm",eK="pnpm exec",eq="simple-git-hooks",eW="simple-git-hooks",eB="@eslint/config-inspector",eJ="eslint-config-inspector",eH="node-modules-inspector",e$="node-modules-inspector",ez="migrate-mongo",eQ="./node_modules/migrate-mongo/bin/migrate-mongo",eX={CYBERSKILL_DIRECTORY:eP,WORKING_DIRECTORY:em,TS_CONFIG:el(e_),GIT_IGNORE:el(eh),GIT_HOOK:el(eI),GIT_COMMIT_MSG:el(eN),SIMPLE_GIT_HOOKS_JSON:el(eC),PACKAGE_JSON:el(eE),PACKAGE_LOCK_JSON:el(eg),PNPM_LOCK_YAML:el(eD),NODE_MODULES:el(ev),MIGRATE_MONGO_CONFIG:el(eb),LINT_STAGED_CONFIG:el("".concat(eP,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:el("".concat(eP,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:el("".concat(eP,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:el("".concat(eP,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:el("".concat(eP,"/react/vitest/vitest.e2e.js"))};function eZ(e){var t=e.type,n=e.packages,r=e.command;var o=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 /*#__PURE__*/a(function(){var e;return m(this,function(n){switch(n.label){case 0:switch(t){case P.CLI:return[3,1];case P.STRING:return[3,4]}return[3,5];case 1:e=o===null||o===void 0?void 0:o.length;if(!e)return[3,3];return[4,e6(o,{update:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,td(tl("".concat(eK," ").concat(r))))];case 4:return[2,td(tl(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}h(eZ,"buildCommand");var e0={simpleGitHooks:eZ({type:P.CLI,packages:[{name:eq,type:B.DEV_DEPENDENCY}],command:eW}),eslintInspect:eZ({type:P.CLI,packages:[{name:eB,type:B.DEV_DEPENDENCY}],command:eJ}),nodeModulesInspect:eZ({type:P.CLI,packages:[{name:eH,type:B.DEV_DEPENDENCY}],command:e$}),eslintCheck:eZ({type:P.CLI,packages:[{name:eT,type:B.DEV_DEPENDENCY}],command:"".concat(ew," ").concat(eX.WORKING_DIRECTORY," --no-cache")}),eslintFix:eZ({type:P.CLI,packages:[{name:eT,type:B.DEV_DEPENDENCY}],command:"".concat(ew," ").concat(eX.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:eZ({type:P.CLI,packages:[{name:eY,type:B.DEPENDENCY}],command:"".concat(ex," -p ").concat(eX.TS_CONFIG," --noEmit")}),testUnit:eZ({type:P.CLI,packages:[{name:eG,type:B.DEV_DEPENDENCY}],command:"".concat(eR," --config ").concat(eX.UNIT_TEST_CONFIG)}),testE2e:eZ({type:P.CLI,packages:[{name:eG,type:B.DEV_DEPENDENCY}],command:"".concat(eR," --config ").concat(eX.E2E_TEST_CONFIG)}),mongoMigrateCreate:h(function(e){return eZ({type:P.CLI,packages:[{name:ez,type:B.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," create ").concat(e," -f ").concat(eX.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:eZ({type:P.CLI,packages:[{name:ez,type:B.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," up -f ").concat(eX.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:eZ({type:P.CLI,packages:[{name:ez,type:B.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," down -f ").concat(eX.MIGRATE_MONGO_CONFIG)}),commitLint:eZ({type:P.CLI,packages:[{name:ek,type:B.DEV_DEPENDENCY},{name:eL,type:B.DEV_DEPENDENCY}],command:"".concat(eA," --edit ").concat(eX.GIT_COMMIT_MSG," --config ").concat(eX.COMMITLINT_CONFIG)}),lintStaged:eZ({type:P.CLI,packages:[{name:eU,type:B.DEV_DEPENDENCY}],command:"".concat(ej," --config ").concat(eX.LINT_STAGED_CONFIG)}),configureGitHook:eZ({type:P.STRING,command:"".concat(eF," config core.hooksPath ").concat(eX.GIT_HOOK)}),stageBuildDirectory:eZ({type:P.STRING,command:"".concat(eF," add ").concat(ey)}),build:eZ({type:P.STRING,command:"".concat(eV," run build")}),pnpmInstallStandard:eZ({type:P.STRING,command:"".concat(eV," install")}),pnpmInstallLegacy:eZ({type:P.STRING,command:"".concat(eV," install --legacy-peer-deps")}),pnpmInstallForce:eZ({type:P.STRING,command:"".concat(eV," install --force")})};var e1=Y();function e2(e){return /*#__PURE__*/a(function(){var t,n,r,a;return m(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,J.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=o.sent(),r=n.version;return[2,r];case 3:a=o.sent();throw W.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})})()}h(e2,"getLatestPackageVersion");function e3(e){return /*#__PURE__*/a(function(){var t,n,r,a,o,c,i,s,u,l,f,d,p,v,y,E,g,_,h;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,2,,3]);if(!eo(eX.PACKAGE_JSON))return[2,{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===B.DEPENDENCY,isDevDependency:e.type===B.DEV_DEPENDENCY,installedPath:"",file:{}}];t=er(eX.PACKAGE_JSON),n=t.name,r=t.version,a=r===void 0?"":r,o=t.dependencies,c=o===void 0?{}:o,i=t.devDependencies,s=i===void 0?{}:i;if(e.name===n)return[2,{name:n,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===B.DEPENDENCY,isDevDependency:e.type===B.DEV_DEPENDENCY,installedPath:eX.PACKAGE_JSON,file:t}];u=e.name in c,l=e.name in s;return[4,e2(e.name)];case 1:f=m.sent();if(!u&&!l)return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===B.DEPENDENCY,isDevDependency:e.type===B.DEV_DEPENDENCY,installedPath:"",file:{}}];v=(p=(d=c[e.name])!==null&&d!==void 0?d:s[e.name])!==null&&p!==void 0?p:"",y=ef(e1.CWD,ev,e.name,eE);if(!eo(y))return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}];E=er(y),g=E.version,_=g===void 0?"":g;return[2,v!==_?{name:e.name,currentVersion:_||v,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:y,file:E}:{name:e.name,currentVersion:v,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:v===f,isDependency:u,isDevDependency:l,installedPath:y,file:E}];case 2:h=m.sent();throw W.error('Error getting package "'.concat(e.name,'": ').concat(h.message)),h;case 3:return[2]}})})()}h(e3,"getPackage");function e4(e){return /*#__PURE__*/a(function(){var t,n,r,a,o;return m(this,function(c){try{;r=er(eX.PACKAGE_JSON),a=(t=r.dependencies)!==null&&t!==void 0?t:{},o=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?a[e.name]=e.latestVersion:e.isDevDependency&&(o[e.name]=e.latestVersion),ea(eX.PACKAGE_JSON,JSON.stringify(r,null,4)),W.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(t){throw W.error('Error updating package "'.concat(e.name,'": ').concat(t.message)),t}return[2]})})()}h(e4,"updatePackage");function e5(){return /*#__PURE__*/a(function(){var e,t,n,r,a,o,c,i,s,u,l,f,d;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,12,,13]);e=[{command:h(function(){return e0.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return e0.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return e0.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;m.label=1;case 1:m.trys.push([1,9,10,11]);a=e[Symbol.iterator]();m.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;m.label=3;case 3:m.trys.push([3,6,,7]);return[4,i()];case 4:u=m.sent();return[4,tp("".concat(s," using: ").concat(u),u)];case 5:m.sent();return[2];case 6:l=m.sent();W.warn("Installation attempt failed: ".concat(s)),W.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=m.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:d=m.sent();throw W.error("Failed to install dependencies: ".concat(d.message)),d;case 13:return[2]}})})()}h(e5,"installDependencies");function e6(e,t){return /*#__PURE__*/a(function(){var n,r,a,o,c,i,s,u,l,f,d;return m(this,function(m){switch(m.label){case 0:if(!eo(eX.PACKAGE_JSON)){W.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,14,,15]);return[4,Promise.all(e.map(e3))];case 2:n=m.sent().filter(function(e){return!e.isCurrentProject&&(!e.isInstalled||!e.isUpToDate)});r=n.length>0;if(!r)return[3,5];return[4,Promise.all(n.map(e4))];case 3:m.sent();return[4,e5()];case 4:r=m.sent();m.label=5;case 5:r;o=true,c=false,i=undefined;m.label=6;case 6:m.trys.push([6,11,12,13]);s=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();m.label=7;case 7:if(!!(o=(u=s.next()).done))return[3,10];l=u.value;return[4,l()];case 8:m.sent();m.label=9;case 9:o=true;return[3,7];case 10:return[3,13];case 11:f=m.sent();c=true;i=f;return[3,13];case 12:try{if(!o&&s.return!=null){s.return()}}finally{if(c){throw i}}return[7];case 13:return[3,15];case 14:d=m.sent();throw W.error('Failed to setup "'.concat(e.map(function(e){return e.name}).join(", "),'": ').concat(d.message)),d;case 15:return[2]}})})()}h(e6,"setupPackages");var e7=I(require("node-persist"),1);var e8=Y();function e9(){return /*#__PURE__*/a(function(){var e;return m(this,function(t){switch(t.label){case 0:e=e7.default.defaultInstance;if(e)return[3,2];return[4,e7.default.init({dir:e8.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}h(e9,"initNodePersist");var te={get:function e(e){return /*#__PURE__*/a(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e7.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(W.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/a(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e7.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();W.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/a(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e7.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();W.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/a(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e7.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(W.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(W.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/a(function(){return m(this,function(t){try{return[2,"".concat(e8.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(W.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tt=Y(),tn=T.promisify(S.exec);function tr(e){return"error_list:".concat(e)}h(tr,"getErrorListKey");function ta(e){return /*#__PURE__*/a(function(){var t,n,r;return m(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tr(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,te.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(function(){return /*#__PURE__*/a(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,te.getLogLink(n)];case 1:e=t.sent();e&&W.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=o.sent();W.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}h(ta,"saveErrorListToStorage");function to(){return /*#__PURE__*/a(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return /*#__PURE__*/a(function(){var t;return m(this,function(n){switch(n.label){case 0:return[4,te.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(W.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})})()}h(to,"getStoredErrorLists");function tc(){return /*#__PURE__*/a(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return te.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();W.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})})()}h(tc,"clearAllErrorLists");function ti(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var d=a.exec(e)||[],m=o.exec(e)||[],p=c.exec(e)||[];var v,y,E,g,_,h;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===x.Error?x.Error:x.Warning,message:(v=d===null||d===void 0?void 0:(i=d[4])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:"",rule:(y=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:(E=m===null||m===void 0?void 0:m[1])!==null&&E!==void 0?E:"",position:"".concat(m[2],":").concat(m[3]),type:m[4]===x.Error?x.Error:x.Warning,message:(g=m===null||m===void 0?void 0:(u=m[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):p.length?t.push({file:"commitlint",type:x.Error,message:(_=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&_!==void 0?_:"",rule:(h=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&h!==void 0?h:""}):n.push(e.trim())}}),t.length&&ta(t),tt.DEBUG&&n.length&&(W.warn("Unmatched lines:"),n.forEach(function(e){return W.info(" ".concat(e))}))}h(ti,"parseTextErrors");function ts(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?x.Error:x.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&ta(n)}catch(t){ti(e)}}h(ts,"parseCommandOutput");function tu(e){return /*#__PURE__*/a(function(e){var t,n,r,a,o,c,i,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ts;n=new AbortController;O.default.on("SIGINT",function(){W.warn("Process interrupted. Terminating..."),n.abort(),O.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tn(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&W.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}h(tu,"executeCommand");function tl(e){return{raw:!0,cmd:e}}h(tl,"rawCommand");function tf(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eK," ").concat(eM," ").concat(eO," ").concat(e):"".concat(eK," ").concat(eS," ").concat(e)}h(tf,"formatCLI");function td(e,t){return typeof e=="function"?tf(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"?tf(e,t):e}h(td,"formatCommand");function tm(e){return /*#__PURE__*/a(function(){var t,n,r,a;return m(this,function(o){switch(o.label){case 0:return[4,e3({name:ep})];case 1:t=o.sent(),n=t.isCurrentProject,r={isCurrentProject:n},a=typeof e=="function"?e(r):e;return[2,Object.fromEntries(Object.entries(a).map(function(e){var t=u(e,2),n=t[0],a=t[1];return[n,td(a,r)]}))]}})})()}h(tm,"resolveCommands");function tp(e,t){return /*#__PURE__*/a(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);W.start("".concat(e)),tt.DEBUG&&W.info("→ ".concat(t));return[4,tu(t)];case 1:r.sent(),W.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw W.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}h(tp,"runCommand");0&&(module.exports={E_CommandType:E_CommandType,clearAllErrorLists:clearAllErrorLists,formatCommand:formatCommand,getStoredErrorLists:getStoredErrorLists,rawCommand:rawCommand,resolveCommands:resolveCommands,runCommand:runCommand});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,a)}}function a(e){return function(){var t=this,n=arguments;return new Promise(function(a,o){var c=e.apply(t,n);function i(e){r(c,a,o,i,s,"next",e)}function s(e){r(c,a,o,i,s,"throw",e)}i(undefined)})}}function o(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 a=true;var o=false;var c,i;try{for(n=n.call(e);!(a=(c=n.next()).done);a=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){o=true;i=e}finally{try{if(!a&&n["return"]!=null)n["return"]()}finally{if(o)throw i}}return r}function i(){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 s(){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 u(e,n){return t(e)||c(e,n)||d(e,n)||i()}function l(e){return n(e)||o(e)||d(e)||s()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(o=0)),o)try{if(n=1,r&&(a=i[0]&2?r["return"]:i[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;if(r=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.create;var v=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty;var h=function(e,t){return v(e,"name",{value:t,configurable:!0})};var C=function(e,t){for(var n in t)v(e,n,{get:t[n],enumerable:!0})},D=function(e,t,n,r){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var i=function(){var a=u.value;!_.call(e,a)&&a!==n&&v(e,a,{get:function(){return t[a]},enumerable:!(r=y(t,a))||r.enumerable})};for(var s=E(t)[Symbol.iterator](),u;!(a=(u=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var I=function(e,t,n){return n=e!=null?p(g(e)):{},D(t||!e||!e.__esModule?v(n,"default",{value:e,enumerable:!0}):n,e)},N=function(e){return D(v({},"__esModule",{value:!0}),e)};var b={};C(b,{E_CommandType:function(){return P},clearAllErrorLists:function(){return tc},formatCommand:function(){return td},getStoredErrorLists:function(){return to},rawCommand:function(){return tl},resolveCommands:function(){return tm},runCommand:function(){return tp}});module.exports=N(b);var P=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var S=require("child_process"),O=I(require("process"),1),T=I(require("util"),1);var w=".cyberskill-storage";var R=I(require("@dotenvx/dotenvx"),1),G=require("envalid"),k=I(require("os"),1),L=I(require("path"),1),A=I(require("process"),1);var U=!1;function j(){U||(R.default.config(),U=!0)}h(j,"loadEnvFile");function Y(){j();var e=(0,G.cleanEnv)(A.default.env,{CWD:(0,G.str)({default:A.default.cwd()}),DEBUG:(0,G.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,G.str)({default:L.default.join(k.default.homedir(),w)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}h(Y,"getEnv");var x=function(e){return e.Error="error",e.Warning="warning",e}({});var M=I(require("chalk"),1),F=I(require("consola"),1),V=require("graphql");var K=Y();K.DEBUG||(F.default.level=4);function q(e){var t=M.default[e];return typeof t=="function"?t:M.default.green}h(q,"chalkKeyword");var W={silent:F.default.silent,level:F.default.level,fatal:F.default.fatal,error:F.default.error,warn:F.default.warn,log:F.default.log,info:F.default.info,success:F.default.success,ready:F.default.ready,start:F.default.start,box:F.default.box,debug:F.default.debug,trace:F.default.trace,verbose:F.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)){F.default.box(M.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;F.default.log("".concat(M.default.gray("File:")," ").concat(M.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&F.default.log(" ".concat(q(n)("Rule:")," ").concat(a)),F.default.log(" ".concat(q(n)("Message:")," ").concat(o))}),F.default.box(q(n)("".concat(e," : ").concat(t.length))),F.default.log(M.default.gray("─".repeat(40)))}};var B=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});var J=I(require("node-fetch"),1);var H=I(require("fs-extra"),1),$=I(require("path"),1);var z=H.default,Q=z.lstatSync,X=z.readdirSync,Z=z.mkdirSync,ee=z.readFileSync,et=z.unlinkSync,en=z.statSync,er=H.default.readJsonSync;function ea(e,t,n){H.default.writeFileSync(e,t,n!==null&&n!==void 0?n:"utf-8")}h(ea,"writeFileSync");function eo(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return H.default.pathExistsSync(e)})}h(eo,"pathExistsSync");var ec=I(require("fs-extra"),1);var ei=I(require("path"),1);var es=Y(),eu=ei.default;function el(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eu).resolve.apply(r,[es.CWD].concat(l(t)))}h(el,"resolveWorkingPath");function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eu).join.apply(r,l(t))}h(ef,"join");var ed=Y(),em=ed.CWD,ep="@cyberskill/shared",ev="node_modules",ey="dist",eE="package.json",eg="package-lock.json",e_="tsconfig.json",eh=".gitignore",eC=".simple-git-hooks.json",eD="pnpm-lock.yaml",eI=".git/hooks/",eN=".git/COMMIT_EDITMSG",eb=".migrate-mongo.config.js",eP=function(){var e=ec.default.readJsonSync(el(eE)).name===ep?em:ef(em,ev,ep);return ef(e,ey)}(),eS="cyberskill",eO="src/node/cli/index.ts",eT="eslint",ew="eslint",eR="vitest";var eG="vitest",ek="@commitlint/cli",eL="@commitlint/config-conventional",eA="commitlint",eU="lint-staged",ej="lint-staged",eY="typescript",ex="tsc",eM="tsx",eF="git",eV="pnpm",eK="pnpm exec",eq="simple-git-hooks",eW="simple-git-hooks",eB="@eslint/config-inspector",eJ="eslint-config-inspector",eH="node-modules-inspector",e$="node-modules-inspector",ez="migrate-mongo",eQ="./node_modules/migrate-mongo/bin/migrate-mongo",eX={CYBERSKILL_DIRECTORY:eP,WORKING_DIRECTORY:em,TS_CONFIG:el(e_),GIT_IGNORE:el(eh),GIT_HOOK:el(eI),GIT_COMMIT_MSG:el(eN),SIMPLE_GIT_HOOKS_JSON:el(eC),PACKAGE_JSON:el(eE),PACKAGE_LOCK_JSON:el(eg),PNPM_LOCK_YAML:el(eD),NODE_MODULES:el(ev),MIGRATE_MONGO_CONFIG:el(eb),LINT_STAGED_CONFIG:el("".concat(eP,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:el("".concat(eP,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:el("".concat(eP,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:el("".concat(eP,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:el("".concat(eP,"/react/vitest/vitest.e2e.js"))};function eZ(e){var t=e.type,n=e.packages,r=e.command;var o=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 /*#__PURE__*/a(function(){var e;return m(this,function(n){switch(n.label){case 0:switch(t){case P.CLI:return[3,1];case P.STRING:return[3,4]}return[3,5];case 1:e=o===null||o===void 0?void 0:o.length;if(!e)return[3,3];return[4,e7(o,{update:!0})];case 2:e=n.sent();n.label=3;case 3:return[2,(e,td(tl("".concat(eK," ").concat(r))))];case 4:return[2,td(tl(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}h(eZ,"buildCommand");var e0={simpleGitHooks:eZ({type:P.CLI,packages:[{name:eq,type:B.DEV_DEPENDENCY}],command:eW}),eslintInspect:eZ({type:P.CLI,packages:[{name:eB,type:B.DEV_DEPENDENCY}],command:eJ}),nodeModulesInspect:eZ({type:P.CLI,packages:[{name:eH,type:B.DEV_DEPENDENCY}],command:e$}),eslintCheck:eZ({type:P.CLI,packages:[{name:eT,type:B.DEV_DEPENDENCY}],command:"".concat(ew," ").concat(eX.WORKING_DIRECTORY," --no-cache")}),eslintFix:eZ({type:P.CLI,packages:[{name:eT,type:B.DEV_DEPENDENCY}],command:"".concat(ew," ").concat(eX.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:eZ({type:P.CLI,packages:[{name:eY,type:B.DEPENDENCY}],command:"".concat(ex," -p ").concat(eX.TS_CONFIG," --noEmit")}),testUnit:eZ({type:P.CLI,packages:[{name:eR,type:B.DEV_DEPENDENCY}],command:"".concat(eG," --config ").concat(eX.UNIT_TEST_CONFIG)}),testE2e:eZ({type:P.CLI,packages:[{name:eR,type:B.DEV_DEPENDENCY}],command:"".concat(eG," --config ").concat(eX.E2E_TEST_CONFIG)}),mongoMigrateCreate:h(function(e){return eZ({type:P.CLI,packages:[{name:ez,type:B.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," create ").concat(e," -f ").concat(eX.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:eZ({type:P.CLI,packages:[{name:ez,type:B.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," up -f ").concat(eX.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:eZ({type:P.CLI,packages:[{name:ez,type:B.DEPENDENCY}],command:"".concat(eM," ").concat(eQ," down -f ").concat(eX.MIGRATE_MONGO_CONFIG)}),commitLint:eZ({type:P.CLI,packages:[{name:ek,type:B.DEV_DEPENDENCY},{name:eL,type:B.DEV_DEPENDENCY}],command:"".concat(eA," --edit ").concat(eX.GIT_COMMIT_MSG," --config ").concat(eX.COMMITLINT_CONFIG)}),lintStaged:eZ({type:P.CLI,packages:[{name:eU,type:B.DEV_DEPENDENCY}],command:"".concat(ej," --config ").concat(eX.LINT_STAGED_CONFIG)}),configureGitHook:eZ({type:P.STRING,command:"".concat(eF," config core.hooksPath ").concat(eX.GIT_HOOK)}),stageBuildDirectory:eZ({type:P.STRING,command:"".concat(eF," add ").concat(ey)}),build:eZ({type:P.STRING,command:"".concat(eV," run --if-present build")}),pnpmInstallStandard:eZ({type:P.STRING,command:"".concat(eV," install")}),pnpmInstallLegacy:eZ({type:P.STRING,command:"".concat(eV," install --legacy-peer-deps")}),pnpmInstallForce:eZ({type:P.STRING,command:"".concat(eV," install --force")})};var e1=Y();function e2(e){return /*#__PURE__*/a(function(){var t,n,r,a;return m(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,J.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=o.sent(),r=n.version;return[2,r];case 3:a=o.sent();throw W.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})})()}h(e2,"getLatestPackageVersion");function e3(e){return /*#__PURE__*/a(function(){var t,n,r,a,o,c,i,s,u,l,f,d,p,v,y,E,g,_,h;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,2,,3]);if(!eo(eX.PACKAGE_JSON))return[2,{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===B.DEPENDENCY,isDevDependency:e.type===B.DEV_DEPENDENCY,installedPath:"",file:{}}];t=er(eX.PACKAGE_JSON),n=t.name,r=t.version,a=r===void 0?"":r,o=t.dependencies,c=o===void 0?{}:o,i=t.devDependencies,s=i===void 0?{}:i;if(e.name===n)return[2,{name:n,currentVersion:a,latestVersion:a,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===B.DEPENDENCY,isDevDependency:e.type===B.DEV_DEPENDENCY,installedPath:eX.PACKAGE_JSON,file:t}];u=e.name in c,l=e.name in s;return[4,e2(e.name)];case 1:f=m.sent();if(!u&&!l)return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===B.DEPENDENCY,isDevDependency:e.type===B.DEV_DEPENDENCY,installedPath:"",file:{}}];v=(p=(d=c[e.name])!==null&&d!==void 0?d:s[e.name])!==null&&p!==void 0?p:"",y=ef(e1.CWD,ev,e.name,eE);if(!eo(y))return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}];E=er(y),g=E.version,_=g===void 0?"":g;return[2,v!==_?{name:e.name,currentVersion:_||v,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:y,file:E}:{name:e.name,currentVersion:v,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:v===f,isDependency:u,isDevDependency:l,installedPath:y,file:E}];case 2:h=m.sent();throw W.error('Error getting package "'.concat(e.name,'": ').concat(h.message)),h;case 3:return[2]}})})()}h(e3,"getPackage");function e4(e){return /*#__PURE__*/a(function(){var t,n,r,a,o;return m(this,function(c){try{;r=er(eX.PACKAGE_JSON),a=(t=r.dependencies)!==null&&t!==void 0?t:{},o=(n=r.devDependencies)!==null&&n!==void 0?n:{};e.isDependency?a[e.name]=e.latestVersion:e.isDevDependency&&(o[e.name]=e.latestVersion),ea(eX.PACKAGE_JSON,JSON.stringify(r,null,4)),W.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(t){throw W.error('Error updating package "'.concat(e.name,'": ').concat(t.message)),t}return[2]})})()}h(e4,"updatePackage");function e5(){return /*#__PURE__*/a(function(){var e,t,n,r,a,o,c,i,s,u,l,f,d;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,12,,13]);e=[{command:h(function(){return e0.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return e0.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return e0.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;m.label=1;case 1:m.trys.push([1,9,10,11]);a=e[Symbol.iterator]();m.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;m.label=3;case 3:m.trys.push([3,6,,7]);return[4,i()];case 4:u=m.sent();return[4,tp("".concat(s," using: ").concat(u),u)];case 5:m.sent();return[2];case 6:l=m.sent();W.warn("Installation attempt failed: ".concat(s)),W.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=m.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:return[3,13];case 12:d=m.sent();throw W.error("Failed to install dependencies: ".concat(d.message)),d;case 13:return[2]}})})()}h(e5,"installDependencies");function e7(e,t){return /*#__PURE__*/a(function(){var n,r,a,o,c,i,s,u,l,f,d,p;return m(this,function(m){switch(m.label){case 0:if(!eo(eX.PACKAGE_JSON)){W.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,16,,17]);return[4,Promise.all(e.map(e3))];case 2:n=m.sent().filter(function(e){return!e.isCurrentProject&&(!e.isInstalled||!e.isUpToDate)});r=n.length>0;if(!r)return[3,7];return[4,Promise.all(n.map(e4))];case 3:m.sent();return[4,e5()];case 4:m.sent();a=["Running ESLint with auto-fix"];return[4,e0.eslintFix()];case 5:return[4,tp.apply(void 0,a.concat([m.sent()]))];case 6:r=m.sent();m.label=7;case 7:r;c=true,i=false,s=undefined;m.label=8;case 8:m.trys.push([8,13,14,15]);u=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=9;case 9:if(!!(c=(l=u.next()).done))return[3,12];f=l.value;return[4,f()];case 10:m.sent();m.label=11;case 11:c=true;return[3,9];case 12:return[3,15];case 13:d=m.sent();i=true;s=d;return[3,15];case 14:try{if(!c&&u.return!=null){u.return()}}finally{if(i){throw s}}return[7];case 15:return[3,17];case 16:p=m.sent();throw W.error('Failed to setup "'.concat(e.map(function(e){return e.name}).join(", "),'": ').concat(p.message)),p;case 17:return[2]}})})()}h(e7,"setupPackages");var e6=I(require("node-persist"),1);var e8=Y();function e9(){return /*#__PURE__*/a(function(){var e;return m(this,function(t){switch(t.label){case 0:e=e6.default.defaultInstance;if(e)return[3,2];return[4,e6.default.init({dir:e8.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}h(e9,"initNodePersist");var te={get:function e(e){return /*#__PURE__*/a(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e6.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(W.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/a(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e6.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();W.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/a(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e6.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();W.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/a(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e6.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(W.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(W.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/a(function(){return m(this,function(t){try{return[2,"".concat(e8.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(W.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tt=Y(),tn=T.promisify(S.exec);function tr(e){return"error_list:".concat(e)}h(tr,"getErrorListKey");function ta(e){return /*#__PURE__*/a(function(){var t,n,r;return m(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tr(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,te.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(function(){return /*#__PURE__*/a(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,te.getLogLink(n)];case 1:e=t.sent();e&&W.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=o.sent();W.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}h(ta,"saveErrorListToStorage");function to(){return /*#__PURE__*/a(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return /*#__PURE__*/a(function(){var t;return m(this,function(n){switch(n.label){case 0:return[4,te.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(W.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})})()}h(to,"getStoredErrorLists");function tc(){return /*#__PURE__*/a(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return te.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();W.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})})()}h(tc,"clearAllErrorLists");function ti(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var d=a.exec(e)||[],m=o.exec(e)||[],p=c.exec(e)||[];var v,y,E,g,_,h;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===x.Error?x.Error:x.Warning,message:(v=d===null||d===void 0?void 0:(i=d[4])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:"",rule:(y=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:(E=m===null||m===void 0?void 0:m[1])!==null&&E!==void 0?E:"",position:"".concat(m[2],":").concat(m[3]),type:m[4]===x.Error?x.Error:x.Warning,message:(g=m===null||m===void 0?void 0:(u=m[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):p.length?t.push({file:"commitlint",type:x.Error,message:(_=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&_!==void 0?_:"",rule:(h=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&h!==void 0?h:""}):n.push(e.trim())}}),t.length&&ta(t),tt.DEBUG&&n.length&&(W.warn("Unmatched lines:"),n.forEach(function(e){return W.info(" ".concat(e))}))}h(ti,"parseTextErrors");function ts(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?x.Error:x.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&ta(n)}catch(t){ti(e)}}h(ts,"parseCommandOutput");function tu(e){return /*#__PURE__*/a(function(e){var t,n,r,a,o,c,i,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ts;n=new AbortController;O.default.on("SIGINT",function(){W.warn("Process interrupted. Terminating..."),n.abort(),O.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,tn(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&W.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}h(tu,"executeCommand");function tl(e){return{raw:!0,cmd:e}}h(tl,"rawCommand");function tf(e,t){return(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eK," ").concat(eM," ").concat(eO," ").concat(e):"".concat(eK," ").concat(eS," ").concat(e)}h(tf,"formatCLI");function td(e,t){return typeof e=="function"?tf(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"?tf(e,t):e}h(td,"formatCommand");function tm(e){return /*#__PURE__*/a(function(){var t,n,r,a;return m(this,function(o){switch(o.label){case 0:return[4,e3({name:ep})];case 1:t=o.sent(),n=t.isCurrentProject,r={isCurrentProject:n},a=typeof e=="function"?e(r):e;return[2,Object.fromEntries(Object.entries(a).map(function(e){var t=u(e,2),n=t[0],a=t[1];return[n,td(a,r)]}))]}})})()}h(tm,"resolveCommands");function tp(e,t){return /*#__PURE__*/a(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);W.start("".concat(e)),tt.DEBUG&&W.info("→ ".concat(t));return[4,tu(t)];case 1:r.sent(),W.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw W.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}h(tp,"runCommand");0&&(module.exports={E_CommandType:E_CommandType,clearAllErrorLists:clearAllErrorLists,formatCommand:formatCommand,getStoredErrorLists:getStoredErrorLists,rawCommand:rawCommand,resolveCommands:resolveCommands,runCommand:runCommand});
@@ -1 +1 @@
1
- function e(e,n){if(n==null||n>e.length)n=e.length;for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function n(e){if(Array.isArray(e))return e}function t(n){if(Array.isArray(n))return e(n)}function r(e,n,t,r,o,a,c){try{var s=e[a](c);var i=s.value}catch(e){t(e);return}if(s.done){n(i)}else{Promise.resolve(i).then(r,o)}}function o(e){return function(){var n=this,t=arguments;return new Promise(function(o,a){var c=e.apply(n,t);function s(e){r(c,o,a,s,i,"next",e)}function i(e){r(c,o,a,s,i,"throw",e)}s(undefined)})}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,n){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var r=[];var o=true;var a=false;var c,s;try{for(t=t.call(e);!(o=(c=t.next()).done);o=true){r.push(c.value);if(n&&r.length===n)break}}catch(e){a=true;s=e}finally{try{if(!o&&t["return"]!=null)t["return"]()}finally{if(a)throw s}}return r}function s(){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 i(){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 u(e,t){return n(e)||c(e,t)||d(e,t)||s()}function l(e){return t(e)||a(e)||d(e)||i()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(n,t){if(!n)return;if(typeof n==="string")return e(n,t);var r=Object.prototype.toString.call(n).slice(8,-1);if(r==="Object"&&n.constructor)r=n.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(n,t)}function m(e,n){var t,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=s(0),c["throw"]=s(1),c["return"]=s(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function s(e){return function(n){return i([e,n])}}function i(s){if(t)throw new TypeError("Generator is already executing.");while(c&&(c=0,s[0]&&(a=0)),a)try{if(t=1,r&&(o=s[0]&2?r["return"]:s[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;if(r=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:a.label++;return{value:s[1],done:false};case 5:a.label++;r=s[1];s=[0];continue;case 7:s=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){a=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(s[0]===6&&a.label<o[1]){a.label=o[1];o=s;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(s);break}if(o[2])a.ops.pop();a.trys.pop();continue}s=n.call(e,a)}catch(e){s=[6,e];r=0}finally{t=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var p=Object.defineProperty;var E=function(e,n){return p(e,"name",{value:n,configurable:!0})};var v=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as y}from"node:child_process";import g from"node:process";import*as _ from"node:util";var h=".cyberskill-storage";import D from"@dotenvx/dotenvx";import{bool as C,cleanEnv as I,str as N}from"envalid";import b from"node:os";import P from"node:path";import S from"node:process";var O=!1;function T(){O||(D.config(),O=!0)}E(T,"loadEnvFile");function w(){T();var e=I(S.env,{CWD:N({default:S.cwd()}),DEBUG:C({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:N({default:P.join(b.homedir(),h)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}E(w,"getEnv");var G=function(e){return e.Error="error",e.Warning="warning",e}({});import R from"chalk";import k from"consola";import{GraphQLError as L}from"graphql";var A=w();A.DEBUG||(k.level=4);function U(e){var n=R[e];return typeof n=="function"?n:R.green}E(U,"chalkKeyword");var Y={silent:k.silent,level:k.level,fatal:k.fatal,error:k.error,warn:k.warn,log:k.log,info:k.info,success:k.success,ready:k.ready,start:k.start,box:k.box,debug:k.debug,trace:k.trace,verbose:k.verbose,printBoxedLog:function e(e,n){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(n===null||n===void 0?void 0:n.length)){k.box(R.green(e));return}n.forEach(function(e){var n=e.file,r=e.position,o=e.rule,a=e.message;k.log("".concat(R.gray("File:")," ").concat(R.blue("".concat(n).concat(r?":".concat(r):"")))),o&&k.log(" ".concat(U(t)("Rule:")," ").concat(o)),k.log(" ".concat(U(t)("Message:")," ").concat(a))}),k.box(U(t)("".concat(e," : ").concat(n.length))),k.log(R.gray("─".repeat(40)))}};var j=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});import x from"node-fetch";import F from"fs-extra";var M=F.lstatSync,V=F.readdirSync,K=F.mkdirSync,W=F.readFileSync,B=F.unlinkSync,J=F.statSync,H=F.readJsonSync;function $(e,n,t){F.writeFileSync(e,n,t!==null&&t!==void 0?t:"utf-8")}E($,"writeFileSync");function q(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}return n.every(function(e){return F.pathExistsSync(e)})}E(q,"pathExistsSync");import Q from"fs-extra";import z from"node:path";var X=w(),Z=z;function ee(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}var r;return(r=Z).resolve.apply(r,[X.CWD].concat(l(n)))}E(ee,"resolveWorkingPath");function en(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}var r;return(r=Z).join.apply(r,l(n))}E(en,"join");var et=w(),er=et.CWD,eo="@cyberskill/shared",ea="node_modules",ec="dist",es="package.json",ei="package-lock.json",eu="tsconfig.json",el=".gitignore",ef=".simple-git-hooks.json",ed="pnpm-lock.yaml",em=".git/hooks/",ep=".git/COMMIT_EDITMSG",eE=".migrate-mongo.config.js",ev=function(){var e=Q.readJsonSync(ee(es)).name===eo?er:en(er,ea,eo);return en(e,ec)}(),ey="cyberskill",eg="src/node/cli/index.ts",e_="eslint",eh="eslint",eD="vitest";var eC="vitest",eI="@commitlint/cli",eN="@commitlint/config-conventional",eb="commitlint",eP="lint-staged",eS="lint-staged",eO="typescript",eT="tsc",ew="tsx",eG="git",eR="pnpm",ek="pnpm exec",eL="simple-git-hooks",eA="simple-git-hooks",eU="@eslint/config-inspector",eY="eslint-config-inspector",ej="node-modules-inspector",ex="node-modules-inspector",eF="migrate-mongo",eM="./node_modules/migrate-mongo/bin/migrate-mongo",eV={CYBERSKILL_DIRECTORY:ev,WORKING_DIRECTORY:er,TS_CONFIG:ee(eu),GIT_IGNORE:ee(el),GIT_HOOK:ee(em),GIT_COMMIT_MSG:ee(ep),SIMPLE_GIT_HOOKS_JSON:ee(ef),PACKAGE_JSON:ee(es),PACKAGE_LOCK_JSON:ee(ei),PNPM_LOCK_YAML:ee(ed),NODE_MODULES:ee(ea),MIGRATE_MONGO_CONFIG:ee(eE),LINT_STAGED_CONFIG:ee("".concat(ev,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:ee("".concat(ev,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:ee("".concat(ev,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ee("".concat(ev,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ee("".concat(ev,"/react/vitest/vitest.e2e.js"))};function eK(e){var n=e.type,t=e.packages,r=e.command;var a=t===null||t===void 0?void 0:t.reduce(function(e,n){return e.some(function(e){return e.name===n.name})||e.push(n),e},[]);return function(){return /*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:switch(n){case v.CLI:return[3,1];case v.STRING:return[3,4]}return[3,5];case 1:e=a===null||a===void 0?void 0:a.length;if(!e)return[3,3];return[4,eQ(a,{update:!0})];case 2:e=t.sent();t.label=3;case 3:return[2,(e,nt(ne("".concat(ek," ").concat(r))))];case 4:return[2,nt(ne(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}E(eK,"buildCommand");var eW={simpleGitHooks:eK({type:v.CLI,packages:[{name:eL,type:j.DEV_DEPENDENCY}],command:eA}),eslintInspect:eK({type:v.CLI,packages:[{name:eU,type:j.DEV_DEPENDENCY}],command:eY}),nodeModulesInspect:eK({type:v.CLI,packages:[{name:ej,type:j.DEV_DEPENDENCY}],command:ex}),eslintCheck:eK({type:v.CLI,packages:[{name:e_,type:j.DEV_DEPENDENCY}],command:"".concat(eh," ").concat(eV.WORKING_DIRECTORY," --no-cache")}),eslintFix:eK({type:v.CLI,packages:[{name:e_,type:j.DEV_DEPENDENCY}],command:"".concat(eh," ").concat(eV.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:eK({type:v.CLI,packages:[{name:eO,type:j.DEPENDENCY}],command:"".concat(eT," -p ").concat(eV.TS_CONFIG," --noEmit")}),testUnit:eK({type:v.CLI,packages:[{name:eD,type:j.DEV_DEPENDENCY}],command:"".concat(eC," --config ").concat(eV.UNIT_TEST_CONFIG)}),testE2e:eK({type:v.CLI,packages:[{name:eD,type:j.DEV_DEPENDENCY}],command:"".concat(eC," --config ").concat(eV.E2E_TEST_CONFIG)}),mongoMigrateCreate:E(function(e){return eK({type:v.CLI,packages:[{name:eF,type:j.DEPENDENCY}],command:"".concat(ew," ").concat(eM," create ").concat(e," -f ").concat(eV.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:eK({type:v.CLI,packages:[{name:eF,type:j.DEPENDENCY}],command:"".concat(ew," ").concat(eM," up -f ").concat(eV.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:eK({type:v.CLI,packages:[{name:eF,type:j.DEPENDENCY}],command:"".concat(ew," ").concat(eM," down -f ").concat(eV.MIGRATE_MONGO_CONFIG)}),commitLint:eK({type:v.CLI,packages:[{name:eI,type:j.DEV_DEPENDENCY},{name:eN,type:j.DEV_DEPENDENCY}],command:"".concat(eb," --edit ").concat(eV.GIT_COMMIT_MSG," --config ").concat(eV.COMMITLINT_CONFIG)}),lintStaged:eK({type:v.CLI,packages:[{name:eP,type:j.DEV_DEPENDENCY}],command:"".concat(eS," --config ").concat(eV.LINT_STAGED_CONFIG)}),configureGitHook:eK({type:v.STRING,command:"".concat(eG," config core.hooksPath ").concat(eV.GIT_HOOK)}),stageBuildDirectory:eK({type:v.STRING,command:"".concat(eG," add ").concat(ec)}),build:eK({type:v.STRING,command:"".concat(eR," run build")}),pnpmInstallStandard:eK({type:v.STRING,command:"".concat(eR," install")}),pnpmInstallLegacy:eK({type:v.STRING,command:"".concat(eR," install --legacy-peer-deps")}),pnpmInstallForce:eK({type:v.STRING,command:"".concat(eR," install --force")})};var eB=w();function eJ(e){return /*#__PURE__*/o(function(){var n,t,r,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,x("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:n=a.sent();if(!n.ok)throw new Error("Failed to fetch latest version: ".concat(n.status," ").concat(n.statusText));return[4,n.json()];case 2:t=a.sent(),r=t.version;return[2,r];case 3:o=a.sent();throw Y.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})})()}E(eJ,"getLatestPackageVersion");function eH(e){return /*#__PURE__*/o(function(){var n,t,r,o,a,c,s,i,u,l,f,d,p,E,v,y,g,_,h;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,2,,3]);if(!q(eV.PACKAGE_JSON))return[2,{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===j.DEPENDENCY,isDevDependency:e.type===j.DEV_DEPENDENCY,installedPath:"",file:{}}];n=H(eV.PACKAGE_JSON),t=n.name,r=n.version,o=r===void 0?"":r,a=n.dependencies,c=a===void 0?{}:a,s=n.devDependencies,i=s===void 0?{}:s;if(e.name===t)return[2,{name:t,currentVersion:o,latestVersion:o,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===j.DEPENDENCY,isDevDependency:e.type===j.DEV_DEPENDENCY,installedPath:eV.PACKAGE_JSON,file:n}];u=e.name in c,l=e.name in i;return[4,eJ(e.name)];case 1:f=m.sent();if(!u&&!l)return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===j.DEPENDENCY,isDevDependency:e.type===j.DEV_DEPENDENCY,installedPath:"",file:{}}];E=(p=(d=c[e.name])!==null&&d!==void 0?d:i[e.name])!==null&&p!==void 0?p:"",v=en(eB.CWD,ea,e.name,es);if(!q(v))return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}];y=H(v),g=y.version,_=g===void 0?"":g;return[2,E!==_?{name:e.name,currentVersion:_||E,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:v,file:y}:{name:e.name,currentVersion:E,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:E===f,isDependency:u,isDevDependency:l,installedPath:v,file:y}];case 2:h=m.sent();throw Y.error('Error getting package "'.concat(e.name,'": ').concat(h.message)),h;case 3:return[2]}})})()}E(eH,"getPackage");function e$(e){return /*#__PURE__*/o(function(){var n,t,r,o,a;return m(this,function(c){try{;r=H(eV.PACKAGE_JSON),o=(n=r.dependencies)!==null&&n!==void 0?n:{},a=(t=r.devDependencies)!==null&&t!==void 0?t:{};e.isDependency?o[e.name]=e.latestVersion:e.isDevDependency&&(a[e.name]=e.latestVersion),$(eV.PACKAGE_JSON,JSON.stringify(r,null,4)),Y.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(n){throw Y.error('Error updating package "'.concat(e.name,'": ').concat(n.message)),n}return[2]})})()}E(e$,"updatePackage");function eq(){return /*#__PURE__*/o(function(){var e,n,t,r,o,a,c,s,i,u,l,f,d;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,12,,13]);e=[{command:E(function(){return eW.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:E(function(){return eW.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:E(function(){return eW.pnpmInstallForce()},"command"),message:"Retrying with force install"}];n=true,t=false,r=undefined;m.label=1;case 1:m.trys.push([1,9,10,11]);o=e[Symbol.iterator]();m.label=2;case 2:if(!!(n=(a=o.next()).done))return[3,8];c=a.value,s=c.command,i=c.message;m.label=3;case 3:m.trys.push([3,6,,7]);return[4,s()];case 4:u=m.sent();return[4,no("".concat(i," using: ").concat(u),u)];case 5:m.sent();return[2];case 6:l=m.sent();Y.warn("Installation attempt failed: ".concat(i)),Y.error("Details: ".concat(l.message));return[3,7];case 7:n=true;return[3,2];case 8:return[3,11];case 9:f=m.sent();t=true;r=f;return[3,11];case 10:try{if(!n&&o.return!=null){o.return()}}finally{if(t){throw r}}return[7];case 11:return[3,13];case 12:d=m.sent();throw Y.error("Failed to install dependencies: ".concat(d.message)),d;case 13:return[2]}})})()}E(eq,"installDependencies");function eQ(e,n){return /*#__PURE__*/o(function(){var t,r,o,a,c,s,i,u,l,f,d;return m(this,function(m){switch(m.label){case 0:if(!q(eV.PACKAGE_JSON)){Y.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,14,,15]);return[4,Promise.all(e.map(eH))];case 2:t=m.sent().filter(function(e){return!e.isCurrentProject&&(!e.isInstalled||!e.isUpToDate)});r=t.length>0;if(!r)return[3,5];return[4,Promise.all(t.map(e$))];case 3:m.sent();return[4,eq()];case 4:r=m.sent();m.label=5;case 5:r;a=true,c=false,s=undefined;m.label=6;case 6:m.trys.push([6,11,12,13]);i=((o=n===null||n===void 0?void 0:n.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=7;case 7:if(!!(a=(u=i.next()).done))return[3,10];l=u.value;return[4,l()];case 8:m.sent();m.label=9;case 9:a=true;return[3,7];case 10:return[3,13];case 11:f=m.sent();c=true;s=f;return[3,13];case 12:try{if(!a&&i.return!=null){i.return()}}finally{if(c){throw s}}return[7];case 13:return[3,15];case 14:d=m.sent();throw Y.error('Failed to setup "'.concat(e.map(function(e){return e.name}).join(", "),'": ').concat(d.message)),d;case 15:return[2]}})})()}E(eQ,"setupPackages");import ez from"node-persist";var eX=w();function eZ(){return /*#__PURE__*/o(function(){var e;return m(this,function(n){switch(n.label){case 0:e=ez.defaultInstance;if(e)return[3,2];return[4,ez.init({dir:eX.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=n.sent();n.label=2;case 2:e;return[2]}})})()}E(eZ,"initNodePersist");var e0={get:function e(e){return /*#__PURE__*/o(function(){var n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,ez.getItem(e)];case 2:return[2,(n=r.sent())!==null&&n!==void 0?n:null];case 3:t=r.sent();return[2,(Y.error('[Storage:get] Error getting key "'.concat(e,'":'),t),null)];case 4:return[2]}})})()},set:function e(e,n){return /*#__PURE__*/o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,ez.setItem(e,n)];case 2:r.sent();return[3,4];case 3:t=r.sent();Y.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/o(function(){var n;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,eZ()];case 1:t.sent();return[4,ez.removeItem(e)];case 2:t.sent();return[3,4];case 3:n=t.sent();Y.error('[Storage:remove] Error removing key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/o(function(){var e,n;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,eZ()];case 1:t.sent();return[4,ez.keys()];case 2:e=t.sent();return[2,Array.isArray(e)?e:(Y.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:n=t.sent();return[2,(Y.error("[Storage:keys] Error getting keys:",n),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/o(function(){return m(this,function(n){try{return[2,"".concat(eX.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(Y.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e1=w(),e2=_.promisify(y);function e3(e){return"error_list:".concat(e)}E(e3,"getErrorListKey");function e4(e){return /*#__PURE__*/o(function(){var n,t,r;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];n=Date.now(),t=e3(n);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,e0.set(t,{errors:e,timestamp:n})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/o(function(){var e;return m(this,function(n){switch(n.label){case 0:return[4,e0.getLogLink(t)];case 1:e=n.sent();e&&Y.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();Y.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}E(e4,"saveErrorListToStorage");function e5(){return /*#__PURE__*/o(function(){var e,n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0.keys()];case 1:e=r.sent(),n=Array.isArray(e)?e.filter(function(e){var n;return e===null||e===void 0?void 0:(n=e.startsWith)===null||n===void 0?void 0:n.call(e,"error_list:")}):[];return[4,Promise.all(n.map(function(e){return /*#__PURE__*/o(function(){var n;return m(this,function(t){switch(t.label){case 0:return[4,e0.get(e)];case 1:return[2,((n=t.sent())===null||n===void 0?void 0:n.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:t=r.sent();return[2,(Y.error("Failed to retrieve stored errors: ".concat(t.message)),[])];case 4:return[2]}})})()}E(e5,"getStoredErrorLists");function e6(){return /*#__PURE__*/o(function(){var e,n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0.keys()];case 1:e=r.sent(),n=Array.isArray(e)?e.filter(function(e){var n;return e===null||e===void 0?void 0:(n=e.startsWith)===null||n===void 0?void 0:n.call(e,"error_list:")}):[];return[4,Promise.all(n.map(function(e){return e0.remove(e)}))];case 2:r.sent();return[3,4];case 3:t=r.sent();Y.error("Failed to clear error lists: ".concat(t.message));return[3,4];case 4:return[2]}})})()}E(e6,"clearAllErrorLists");function e7(e){var n=[],t=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var s,i,u,l,f;var d=o.exec(e)||[],m=a.exec(e)||[],p=c.exec(e)||[];var E,v,y,g,_,h;d.length&&r?n.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===G.Error?G.Error:G.Warning,message:(E=d===null||d===void 0?void 0:(s=d[4])===null||s===void 0?void 0:s.trim())!==null&&E!==void 0?E:"",rule:(v=d===null||d===void 0?void 0:(i=d[5])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:""}):m.length?n.push({file:(y=m===null||m===void 0?void 0:m[1])!==null&&y!==void 0?y:"",position:"".concat(m[2],":").concat(m[3]),type:m[4]===G.Error?G.Error:G.Warning,message:(g=m===null||m===void 0?void 0:(u=m[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):p.length?n.push({file:"commitlint",type:G.Error,message:(_=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&_!==void 0?_:"",rule:(h=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&h!==void 0?h:""}):t.push(e.trim())}}),n.length&&e4(n),e1.DEBUG&&t.length&&(Y.warn("Unmatched lines:"),t.forEach(function(e){return Y.info(" ".concat(e))}))}E(e7,"parseTextErrors");function e8(e){try{var n=JSON.parse(e),t=[];n.forEach(function(e){var n=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,c=e.ruleId,s=e.message;t.push({type:r===2?G.Error:G.Warning,file:n,position:"".concat(o,":").concat(a),rule:c,message:s})})}),t.length&&e4(t)}catch(n){e7(e)}}E(e8,"parseCommandOutput");function e9(e){return /*#__PURE__*/o(function(e){var n,t,r,o,a,c,s,i,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:n=l.length>1&&l[1]!==void 0?l[1]:e8;t=new AbortController;g.on("SIGINT",function(){Y.warn("Process interrupted. Terminating..."),t.abort(),g.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e2(e,{maxBuffer:0x6400000,signal:t.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&n(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();s=c.stdout,i=c.stderr,u=c.message;[s,i].forEach(function(e){return e&&n(e)}),!i&&!s&&Y.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}E(e9,"executeCommand");function ne(e){return{raw:!0,cmd:e}}E(ne,"rawCommand");function nn(e,n){return(n===null||n===void 0?void 0:n.isCurrentProject)?"".concat(ek," ").concat(ew," ").concat(eg," ").concat(e):"".concat(ek," ").concat(ey," ").concat(e)}E(nn,"formatCLI");function nt(e,n){return typeof e=="function"?nn(e(n),n):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?nn(e,n):e}E(nt,"formatCommand");function nr(e){return /*#__PURE__*/o(function(){var n,t,r,o;return m(this,function(a){switch(a.label){case 0:return[4,eH({name:eo})];case 1:n=a.sent(),t=n.isCurrentProject,r={isCurrentProject:t},o=typeof e=="function"?e(r):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var n=u(e,2),t=n[0],o=n[1];return[t,nt(o,r)]}))]}})})()}E(nr,"resolveCommands");function no(e,n){return /*#__PURE__*/o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);Y.start("".concat(e)),e1.DEBUG&&Y.info("→ ".concat(n));return[4,e9(n)];case 1:r.sent(),Y.success("".concat(e," done."));return[3,3];case 2:t=r.sent();throw Y.error("".concat(e," failed: ").concat(t.message)),t;case 3:return[2]}})})()}E(no,"runCommand");export{v as E_CommandType,e6 as clearAllErrorLists,nt as formatCommand,e5 as getStoredErrorLists,ne as rawCommand,nr as resolveCommands,no as runCommand};
1
+ function e(e,n){if(n==null||n>e.length)n=e.length;for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function n(e){if(Array.isArray(e))return e}function t(n){if(Array.isArray(n))return e(n)}function r(e,n,t,r,o,a,c){try{var s=e[a](c);var i=s.value}catch(e){t(e);return}if(s.done){n(i)}else{Promise.resolve(i).then(r,o)}}function o(e){return function(){var n=this,t=arguments;return new Promise(function(o,a){var c=e.apply(n,t);function s(e){r(c,o,a,s,i,"next",e)}function i(e){r(c,o,a,s,i,"throw",e)}s(undefined)})}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,n){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var r=[];var o=true;var a=false;var c,s;try{for(t=t.call(e);!(o=(c=t.next()).done);o=true){r.push(c.value);if(n&&r.length===n)break}}catch(e){a=true;s=e}finally{try{if(!o&&t["return"]!=null)t["return"]()}finally{if(a)throw s}}return r}function s(){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 i(){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 u(e,t){return n(e)||c(e,t)||d(e,t)||s()}function l(e){return t(e)||a(e)||d(e)||i()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(n,t){if(!n)return;if(typeof n==="string")return e(n,t);var r=Object.prototype.toString.call(n).slice(8,-1);if(r==="Object"&&n.constructor)r=n.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(n,t)}function m(e,n){var t,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=s(0),c["throw"]=s(1),c["return"]=s(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function s(e){return function(n){return i([e,n])}}function i(s){if(t)throw new TypeError("Generator is already executing.");while(c&&(c=0,s[0]&&(a=0)),a)try{if(t=1,r&&(o=s[0]&2?r["return"]:s[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;if(r=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:a.label++;return{value:s[1],done:false};case 5:a.label++;r=s[1];s=[0];continue;case 7:s=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){a=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(s[0]===6&&a.label<o[1]){a.label=o[1];o=s;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(s);break}if(o[2])a.ops.pop();a.trys.pop();continue}s=n.call(e,a)}catch(e){s=[6,e];r=0}finally{t=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var p=Object.defineProperty;var E=function(e,n){return p(e,"name",{value:n,configurable:!0})};var v=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as y}from"node:child_process";import g from"node:process";import*as h from"node:util";var _=".cyberskill-storage";import D from"@dotenvx/dotenvx";import{bool as C,cleanEnv as I,str as N}from"envalid";import b from"node:os";import P from"node:path";import S from"node:process";var O=!1;function T(){O||(D.config(),O=!0)}E(T,"loadEnvFile");function w(){T();var e=I(S.env,{CWD:N({default:S.cwd()}),DEBUG:C({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:N({default:P.join(b.homedir(),_)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}E(w,"getEnv");var G=function(e){return e.Error="error",e.Warning="warning",e}({});import R from"chalk";import k from"consola";import{GraphQLError as L}from"graphql";var A=w();A.DEBUG||(k.level=4);function U(e){var n=R[e];return typeof n=="function"?n:R.green}E(U,"chalkKeyword");var Y={silent:k.silent,level:k.level,fatal:k.fatal,error:k.error,warn:k.warn,log:k.log,info:k.info,success:k.success,ready:k.ready,start:k.start,box:k.box,debug:k.debug,trace:k.trace,verbose:k.verbose,printBoxedLog:function e(e,n){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(n===null||n===void 0?void 0:n.length)){k.box(R.green(e));return}n.forEach(function(e){var n=e.file,r=e.position,o=e.rule,a=e.message;k.log("".concat(R.gray("File:")," ").concat(R.blue("".concat(n).concat(r?":".concat(r):"")))),o&&k.log(" ".concat(U(t)("Rule:")," ").concat(o)),k.log(" ".concat(U(t)("Message:")," ").concat(a))}),k.box(U(t)("".concat(e," : ").concat(n.length))),k.log(R.gray("─".repeat(40)))}};var j=function(e){return e.DEPENDENCY="dependencies",e.DEV_DEPENDENCY="devDependencies",e.PEER_DEPENDENCY="peerDependencies",e.BUNDLE_DEPENDENCY="bundleDependencies",e.OPTIONAL_DEPENDENCY="optionalDependencies",e}({});import x from"node-fetch";import F from"fs-extra";var M=F.lstatSync,V=F.readdirSync,K=F.mkdirSync,W=F.readFileSync,B=F.unlinkSync,J=F.statSync,H=F.readJsonSync;function $(e,n,t){F.writeFileSync(e,n,t!==null&&t!==void 0?t:"utf-8")}E($,"writeFileSync");function q(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}return n.every(function(e){return F.pathExistsSync(e)})}E(q,"pathExistsSync");import Q from"fs-extra";import z from"node:path";var X=w(),Z=z;function ee(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}var r;return(r=Z).resolve.apply(r,[X.CWD].concat(l(n)))}E(ee,"resolveWorkingPath");function en(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++){n[t]=arguments[t]}var r;return(r=Z).join.apply(r,l(n))}E(en,"join");var et=w(),er=et.CWD,eo="@cyberskill/shared",ea="node_modules",ec="dist",es="package.json",ei="package-lock.json",eu="tsconfig.json",el=".gitignore",ef=".simple-git-hooks.json",ed="pnpm-lock.yaml",em=".git/hooks/",ep=".git/COMMIT_EDITMSG",eE=".migrate-mongo.config.js",ev=function(){var e=Q.readJsonSync(ee(es)).name===eo?er:en(er,ea,eo);return en(e,ec)}(),ey="cyberskill",eg="src/node/cli/index.ts",eh="eslint",e_="eslint",eD="vitest";var eC="vitest",eI="@commitlint/cli",eN="@commitlint/config-conventional",eb="commitlint",eP="lint-staged",eS="lint-staged",eO="typescript",eT="tsc",ew="tsx",eG="git",eR="pnpm",ek="pnpm exec",eL="simple-git-hooks",eA="simple-git-hooks",eU="@eslint/config-inspector",eY="eslint-config-inspector",ej="node-modules-inspector",ex="node-modules-inspector",eF="migrate-mongo",eM="./node_modules/migrate-mongo/bin/migrate-mongo",eV={CYBERSKILL_DIRECTORY:ev,WORKING_DIRECTORY:er,TS_CONFIG:ee(eu),GIT_IGNORE:ee(el),GIT_HOOK:ee(em),GIT_COMMIT_MSG:ee(ep),SIMPLE_GIT_HOOKS_JSON:ee(ef),PACKAGE_JSON:ee(es),PACKAGE_LOCK_JSON:ee(ei),PNPM_LOCK_YAML:ee(ed),NODE_MODULES:ee(ea),MIGRATE_MONGO_CONFIG:ee(eE),LINT_STAGED_CONFIG:ee("".concat(ev,"/configs/lint-staged/index.js")),COMMITLINT_CONFIG:ee("".concat(ev,"/configs/commitlint/index.js")),UNIT_TEST_CONFIG:ee("".concat(ev,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ee("".concat(ev,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ee("".concat(ev,"/react/vitest/vitest.e2e.js"))};function eK(e){var n=e.type,t=e.packages,r=e.command;var a=t===null||t===void 0?void 0:t.reduce(function(e,n){return e.some(function(e){return e.name===n.name})||e.push(n),e},[]);return function(){return /*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:switch(n){case v.CLI:return[3,1];case v.STRING:return[3,4]}return[3,5];case 1:e=a===null||a===void 0?void 0:a.length;if(!e)return[3,3];return[4,eQ(a,{update:!0})];case 2:e=t.sent();t.label=3;case 3:return[2,(e,nt(ne("".concat(ek," ").concat(r))))];case 4:return[2,nt(ne(r))];case 5:throw new Error("Unsupported command type");case 6:return[2]}})})()}}E(eK,"buildCommand");var eW={simpleGitHooks:eK({type:v.CLI,packages:[{name:eL,type:j.DEV_DEPENDENCY}],command:eA}),eslintInspect:eK({type:v.CLI,packages:[{name:eU,type:j.DEV_DEPENDENCY}],command:eY}),nodeModulesInspect:eK({type:v.CLI,packages:[{name:ej,type:j.DEV_DEPENDENCY}],command:ex}),eslintCheck:eK({type:v.CLI,packages:[{name:eh,type:j.DEV_DEPENDENCY}],command:"".concat(e_," ").concat(eV.WORKING_DIRECTORY," --no-cache")}),eslintFix:eK({type:v.CLI,packages:[{name:eh,type:j.DEV_DEPENDENCY}],command:"".concat(e_," ").concat(eV.WORKING_DIRECTORY," --fix --no-cache")}),typescriptCheck:eK({type:v.CLI,packages:[{name:eO,type:j.DEPENDENCY}],command:"".concat(eT," -p ").concat(eV.TS_CONFIG," --noEmit")}),testUnit:eK({type:v.CLI,packages:[{name:eD,type:j.DEV_DEPENDENCY}],command:"".concat(eC," --config ").concat(eV.UNIT_TEST_CONFIG)}),testE2e:eK({type:v.CLI,packages:[{name:eD,type:j.DEV_DEPENDENCY}],command:"".concat(eC," --config ").concat(eV.E2E_TEST_CONFIG)}),mongoMigrateCreate:E(function(e){return eK({type:v.CLI,packages:[{name:eF,type:j.DEPENDENCY}],command:"".concat(ew," ").concat(eM," create ").concat(e," -f ").concat(eV.MIGRATE_MONGO_CONFIG)})()},"mongoMigrateCreate"),mongoMigrateUp:eK({type:v.CLI,packages:[{name:eF,type:j.DEPENDENCY}],command:"".concat(ew," ").concat(eM," up -f ").concat(eV.MIGRATE_MONGO_CONFIG)}),mongoMigrateDown:eK({type:v.CLI,packages:[{name:eF,type:j.DEPENDENCY}],command:"".concat(ew," ").concat(eM," down -f ").concat(eV.MIGRATE_MONGO_CONFIG)}),commitLint:eK({type:v.CLI,packages:[{name:eI,type:j.DEV_DEPENDENCY},{name:eN,type:j.DEV_DEPENDENCY}],command:"".concat(eb," --edit ").concat(eV.GIT_COMMIT_MSG," --config ").concat(eV.COMMITLINT_CONFIG)}),lintStaged:eK({type:v.CLI,packages:[{name:eP,type:j.DEV_DEPENDENCY}],command:"".concat(eS," --config ").concat(eV.LINT_STAGED_CONFIG)}),configureGitHook:eK({type:v.STRING,command:"".concat(eG," config core.hooksPath ").concat(eV.GIT_HOOK)}),stageBuildDirectory:eK({type:v.STRING,command:"".concat(eG," add ").concat(ec)}),build:eK({type:v.STRING,command:"".concat(eR," run --if-present build")}),pnpmInstallStandard:eK({type:v.STRING,command:"".concat(eR," install")}),pnpmInstallLegacy:eK({type:v.STRING,command:"".concat(eR," install --legacy-peer-deps")}),pnpmInstallForce:eK({type:v.STRING,command:"".concat(eR," install --force")})};var eB=w();function eJ(e){return /*#__PURE__*/o(function(){var n,t,r,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,x("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:n=a.sent();if(!n.ok)throw new Error("Failed to fetch latest version: ".concat(n.status," ").concat(n.statusText));return[4,n.json()];case 2:t=a.sent(),r=t.version;return[2,r];case 3:o=a.sent();throw Y.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})})()}E(eJ,"getLatestPackageVersion");function eH(e){return /*#__PURE__*/o(function(){var n,t,r,o,a,c,s,i,u,l,f,d,p,E,v,y,g,h,_;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,2,,3]);if(!q(eV.PACKAGE_JSON))return[2,{name:e.name,currentVersion:"",latestVersion:"",isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===j.DEPENDENCY,isDevDependency:e.type===j.DEV_DEPENDENCY,installedPath:"",file:{}}];n=H(eV.PACKAGE_JSON),t=n.name,r=n.version,o=r===void 0?"":r,a=n.dependencies,c=a===void 0?{}:a,s=n.devDependencies,i=s===void 0?{}:s;if(e.name===t)return[2,{name:t,currentVersion:o,latestVersion:o,isCurrentProject:!0,isInstalled:!0,isUpToDate:!0,isDependency:e.type===j.DEPENDENCY,isDevDependency:e.type===j.DEV_DEPENDENCY,installedPath:eV.PACKAGE_JSON,file:n}];u=e.name in c,l=e.name in i;return[4,eJ(e.name)];case 1:f=m.sent();if(!u&&!l)return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:e.type===j.DEPENDENCY,isDevDependency:e.type===j.DEV_DEPENDENCY,installedPath:"",file:{}}];E=(p=(d=c[e.name])!==null&&d!==void 0?d:i[e.name])!==null&&p!==void 0?p:"",v=en(eB.CWD,ea,e.name,es);if(!q(v))return[2,{name:e.name,currentVersion:"",latestVersion:f,isCurrentProject:!1,isInstalled:!1,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:"",file:{}}];y=H(v),g=y.version,h=g===void 0?"":g;return[2,E!==h?{name:e.name,currentVersion:h||E,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:!1,isDependency:u,isDevDependency:l,installedPath:v,file:y}:{name:e.name,currentVersion:E,latestVersion:f,isCurrentProject:!1,isInstalled:!0,isUpToDate:E===f,isDependency:u,isDevDependency:l,installedPath:v,file:y}];case 2:_=m.sent();throw Y.error('Error getting package "'.concat(e.name,'": ').concat(_.message)),_;case 3:return[2]}})})()}E(eH,"getPackage");function e$(e){return /*#__PURE__*/o(function(){var n,t,r,o,a;return m(this,function(c){try{;r=H(eV.PACKAGE_JSON),o=(n=r.dependencies)!==null&&n!==void 0?n:{},a=(t=r.devDependencies)!==null&&t!==void 0?t:{};e.isDependency?o[e.name]=e.latestVersion:e.isDevDependency&&(a[e.name]=e.latestVersion),$(eV.PACKAGE_JSON,JSON.stringify(r,null,4)),Y.info('Updated "'.concat(e.name,'" to version ').concat(e.latestVersion))}catch(n){throw Y.error('Error updating package "'.concat(e.name,'": ').concat(n.message)),n}return[2]})})()}E(e$,"updatePackage");function eq(){return /*#__PURE__*/o(function(){var e,n,t,r,o,a,c,s,i,u,l,f,d;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,12,,13]);e=[{command:E(function(){return eW.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:E(function(){return eW.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:E(function(){return eW.pnpmInstallForce()},"command"),message:"Retrying with force install"}];n=true,t=false,r=undefined;m.label=1;case 1:m.trys.push([1,9,10,11]);o=e[Symbol.iterator]();m.label=2;case 2:if(!!(n=(a=o.next()).done))return[3,8];c=a.value,s=c.command,i=c.message;m.label=3;case 3:m.trys.push([3,6,,7]);return[4,s()];case 4:u=m.sent();return[4,no("".concat(i," using: ").concat(u),u)];case 5:m.sent();return[2];case 6:l=m.sent();Y.warn("Installation attempt failed: ".concat(i)),Y.error("Details: ".concat(l.message));return[3,7];case 7:n=true;return[3,2];case 8:return[3,11];case 9:f=m.sent();t=true;r=f;return[3,11];case 10:try{if(!n&&o.return!=null){o.return()}}finally{if(t){throw r}}return[7];case 11:return[3,13];case 12:d=m.sent();throw Y.error("Failed to install dependencies: ".concat(d.message)),d;case 13:return[2]}})})()}E(eq,"installDependencies");function eQ(e,n){return /*#__PURE__*/o(function(){var t,r,o,a,c,s,i,u,l,f,d,p;return m(this,function(m){switch(m.label){case 0:if(!q(eV.PACKAGE_JSON)){Y.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,16,,17]);return[4,Promise.all(e.map(eH))];case 2:t=m.sent().filter(function(e){return!e.isCurrentProject&&(!e.isInstalled||!e.isUpToDate)});r=t.length>0;if(!r)return[3,7];return[4,Promise.all(t.map(e$))];case 3:m.sent();return[4,eq()];case 4:m.sent();o=["Running ESLint with auto-fix"];return[4,eW.eslintFix()];case 5:return[4,no.apply(void 0,o.concat([m.sent()]))];case 6:r=m.sent();m.label=7;case 7:r;c=true,s=false,i=undefined;m.label=8;case 8:m.trys.push([8,13,14,15]);u=((a=n===null||n===void 0?void 0:n.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();m.label=9;case 9:if(!!(c=(l=u.next()).done))return[3,12];f=l.value;return[4,f()];case 10:m.sent();m.label=11;case 11:c=true;return[3,9];case 12:return[3,15];case 13:d=m.sent();s=true;i=d;return[3,15];case 14:try{if(!c&&u.return!=null){u.return()}}finally{if(s){throw i}}return[7];case 15:return[3,17];case 16:p=m.sent();throw Y.error('Failed to setup "'.concat(e.map(function(e){return e.name}).join(", "),'": ').concat(p.message)),p;case 17:return[2]}})})()}E(eQ,"setupPackages");import ez from"node-persist";var eX=w();function eZ(){return /*#__PURE__*/o(function(){var e;return m(this,function(n){switch(n.label){case 0:e=ez.defaultInstance;if(e)return[3,2];return[4,ez.init({dir:eX.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=n.sent();n.label=2;case 2:e;return[2]}})})()}E(eZ,"initNodePersist");var e0={get:function e(e){return /*#__PURE__*/o(function(){var n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,ez.getItem(e)];case 2:return[2,(n=r.sent())!==null&&n!==void 0?n:null];case 3:t=r.sent();return[2,(Y.error('[Storage:get] Error getting key "'.concat(e,'":'),t),null)];case 4:return[2]}})})()},set:function e(e,n){return /*#__PURE__*/o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,ez.setItem(e,n)];case 2:r.sent();return[3,4];case 3:t=r.sent();Y.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/o(function(){var n;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,eZ()];case 1:t.sent();return[4,ez.removeItem(e)];case 2:t.sent();return[3,4];case 3:n=t.sent();Y.error('[Storage:remove] Error removing key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/o(function(){var e,n;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,eZ()];case 1:t.sent();return[4,ez.keys()];case 2:e=t.sent();return[2,Array.isArray(e)?e:(Y.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:n=t.sent();return[2,(Y.error("[Storage:keys] Error getting keys:",n),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/o(function(){return m(this,function(n){try{return[2,"".concat(eX.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(Y.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e1=w(),e2=h.promisify(y);function e3(e){return"error_list:".concat(e)}E(e3,"getErrorListKey");function e4(e){return /*#__PURE__*/o(function(){var n,t,r;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];n=Date.now(),t=e3(n);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,e0.set(t,{errors:e,timestamp:n})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/o(function(){var e;return m(this,function(n){switch(n.label){case 0:return[4,e0.getLogLink(t)];case 1:e=n.sent();e&&Y.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();Y.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}E(e4,"saveErrorListToStorage");function e5(){return /*#__PURE__*/o(function(){var e,n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0.keys()];case 1:e=r.sent(),n=Array.isArray(e)?e.filter(function(e){var n;return e===null||e===void 0?void 0:(n=e.startsWith)===null||n===void 0?void 0:n.call(e,"error_list:")}):[];return[4,Promise.all(n.map(function(e){return /*#__PURE__*/o(function(){var n;return m(this,function(t){switch(t.label){case 0:return[4,e0.get(e)];case 1:return[2,((n=t.sent())===null||n===void 0?void 0:n.errors)||[]]}})})()}))];case 2:return[2,r.sent().flat()];case 3:t=r.sent();return[2,(Y.error("Failed to retrieve stored errors: ".concat(t.message)),[])];case 4:return[2]}})})()}E(e5,"getStoredErrorLists");function e7(){return /*#__PURE__*/o(function(){var e,n,t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e0.keys()];case 1:e=r.sent(),n=Array.isArray(e)?e.filter(function(e){var n;return e===null||e===void 0?void 0:(n=e.startsWith)===null||n===void 0?void 0:n.call(e,"error_list:")}):[];return[4,Promise.all(n.map(function(e){return e0.remove(e)}))];case 2:r.sent();return[3,4];case 3:t=r.sent();Y.error("Failed to clear error lists: ".concat(t.message));return[3,4];case 4:return[2]}})})()}E(e7,"clearAllErrorLists");function e6(e){var n=[],t=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var s,i,u,l,f;var d=o.exec(e)||[],m=a.exec(e)||[],p=c.exec(e)||[];var E,v,y,g,h,_;d.length&&r?n.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===G.Error?G.Error:G.Warning,message:(E=d===null||d===void 0?void 0:(s=d[4])===null||s===void 0?void 0:s.trim())!==null&&E!==void 0?E:"",rule:(v=d===null||d===void 0?void 0:(i=d[5])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:""}):m.length?n.push({file:(y=m===null||m===void 0?void 0:m[1])!==null&&y!==void 0?y:"",position:"".concat(m[2],":").concat(m[3]),type:m[4]===G.Error?G.Error:G.Warning,message:(g=m===null||m===void 0?void 0:(u=m[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):p.length?n.push({file:"commitlint",type:G.Error,message:(h=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&h!==void 0?h:"",rule:(_=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&_!==void 0?_:""}):t.push(e.trim())}}),n.length&&e4(n),e1.DEBUG&&t.length&&(Y.warn("Unmatched lines:"),t.forEach(function(e){return Y.info(" ".concat(e))}))}E(e6,"parseTextErrors");function e8(e){try{var n=JSON.parse(e),t=[];n.forEach(function(e){var n=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,c=e.ruleId,s=e.message;t.push({type:r===2?G.Error:G.Warning,file:n,position:"".concat(o,":").concat(a),rule:c,message:s})})}),t.length&&e4(t)}catch(n){e6(e)}}E(e8,"parseCommandOutput");function e9(e){return /*#__PURE__*/o(function(e){var n,t,r,o,a,c,s,i,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:n=l.length>1&&l[1]!==void 0?l[1]:e8;t=new AbortController;g.on("SIGINT",function(){Y.warn("Process interrupted. Terminating..."),t.abort(),g.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e2(e,{maxBuffer:0x6400000,signal:t.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&n(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();s=c.stdout,i=c.stderr,u=c.message;[s,i].forEach(function(e){return e&&n(e)}),!i&&!s&&Y.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}E(e9,"executeCommand");function ne(e){return{raw:!0,cmd:e}}E(ne,"rawCommand");function nn(e,n){return(n===null||n===void 0?void 0:n.isCurrentProject)?"".concat(ek," ").concat(ew," ").concat(eg," ").concat(e):"".concat(ek," ").concat(ey," ").concat(e)}E(nn,"formatCLI");function nt(e,n){return typeof e=="function"?nn(e(n),n):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?nn(e,n):e}E(nt,"formatCommand");function nr(e){return /*#__PURE__*/o(function(){var n,t,r,o;return m(this,function(a){switch(a.label){case 0:return[4,eH({name:eo})];case 1:n=a.sent(),t=n.isCurrentProject,r={isCurrentProject:t},o=typeof e=="function"?e(r):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var n=u(e,2),t=n[0],o=n[1];return[t,nt(o,r)]}))]}})})()}E(nr,"resolveCommands");function no(e,n){return /*#__PURE__*/o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);Y.start("".concat(e)),e1.DEBUG&&Y.info("→ ".concat(n));return[4,e9(n)];case 1:r.sent(),Y.success("".concat(e," done."));return[3,3];case 2:t=r.sent();throw Y.error("".concat(e," failed: ").concat(t.message)),t;case 3:return[2]}})})()}E(no,"runCommand");export{v as E_CommandType,e7 as clearAllErrorLists,nt as formatCommand,e5 as getStoredErrorLists,ne as rawCommand,nr as resolveCommands,no as runCommand};