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