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