@cyberskill/shared 1.75.0 → 1.76.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.
Files changed (42) hide show
  1. package/README.md +9 -10
  2. package/dist/configs/config.util.cjs +1 -1
  3. package/dist/configs/config.util.js +1 -1
  4. package/dist/configs/graphql-codegen/graphql-codegen.util.cjs +1 -1
  5. package/dist/configs/graphql-codegen/graphql-codegen.util.js +1 -1
  6. package/dist/configs/graphql-codegen/index.cjs +1 -1
  7. package/dist/configs/graphql-codegen/index.js +1 -1
  8. package/dist/configs/index.cjs +1 -1
  9. package/dist/configs/index.js +1 -1
  10. package/dist/index.cjs +1 -1
  11. package/dist/index.js +1 -1
  12. package/dist/nodejs/cli/cli.util.cjs +1 -1
  13. package/dist/nodejs/cli/cli.util.js +1 -1
  14. package/dist/nodejs/cli/index.cjs +1 -1
  15. package/dist/nodejs/cli/index.js +1 -1
  16. package/dist/nodejs/command/command.util.cjs +1 -1
  17. package/dist/nodejs/command/command.util.js +1 -1
  18. package/dist/nodejs/command/index.cjs +1 -1
  19. package/dist/nodejs/command/index.js +1 -1
  20. package/dist/nodejs/index.cjs +1 -1
  21. package/dist/nodejs/index.js +1 -1
  22. package/dist/nodejs/package/index.cjs +1 -1
  23. package/dist/nodejs/package/index.js +1 -1
  24. package/dist/nodejs/package/package.util.cjs +1 -1
  25. package/dist/nodejs/package/package.util.js +1 -1
  26. package/dist/nodejs/path/index.cjs +1 -1
  27. package/dist/nodejs/path/index.js +1 -1
  28. package/dist/nodejs/path/path.constant.cjs +1 -1
  29. package/dist/nodejs/path/path.constant.js +1 -1
  30. package/dist/nodejs/path/path.util.cjs +1 -1
  31. package/dist/nodejs/path/path.util.js +1 -1
  32. package/dist/nodejs/storage/index.cjs +1 -1
  33. package/dist/nodejs/storage/index.js +1 -1
  34. package/dist/nodejs/storage/storage.util.cjs +1 -1
  35. package/dist/nodejs/storage/storage.util.js +1 -1
  36. package/dist/react/index.cjs +1 -1
  37. package/dist/react/index.js +1 -1
  38. package/dist/react/vitest/index.cjs +1 -1
  39. package/dist/react/vitest/index.js +1 -1
  40. package/dist/react/vitest/vitest.unit.cjs +1 -1
  41. package/dist/react/vitest/vitest.unit.js +1 -1
  42. package/package.json +1 -1
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function t(e){if(Array.isArray(e))return e}function r(t){if(Array.isArray(t))return e(t)}function n(e,t,r,n,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){r(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(n,a)}}function a(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 o(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function c(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,t){var r=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r==null)return;var n=[];var a=true;var o=false;var c,i;try{for(r=r.call(e);!(a=(c=r.next()).done);a=true){n.push(c.value);if(t&&n.length===t)break}}catch(e){o=true;i=e}finally{try{if(!a&&r["return"]!=null)r["return"]()}finally{if(o)throw i}}return n}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){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 l(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){o(e,t,r[t])})}return e}function f(e,r){return t(e)||i(e,r)||v(e,r)||s()}function d(e){return r(e)||c(e)||v(e)||u()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(t,r){if(!t)return;if(typeof t==="string")return e(t,r);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor)n=t.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(t,r)}function h(e,t){var r,n,a,o,c={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]};return o={next:i(0),"throw":i(1),"return":i(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function i(e){return function(t){return s([e,t])}}function s(o){if(r)throw new TypeError("Generator is already executing.");while(c)try{if(r=1,n&&(a=o[0]&2?n["return"]:o[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;if(n=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:c.label++;return{value:o[1],done:false};case 5:c.label++;n=o[1];o=[0];continue;case 7:o=c.ops.pop();c.trys.pop();continue;default:if(!(a=c.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){c=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){c.label=o[1];break}if(o[0]===6&&c.label<a[1]){c.label=a[1];a=o;break}if(a&&c.label<a[2]){c.label=a[2];c.ops.push(o);break}if(a[2])c.ops.pop();c.trys.pop();continue}o=t.call(e,c)}catch(e){o=[6,e];n=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var y=Object.create;var g=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var O=function(e,t){for(var r in t)g(e,r,{get:t[r],enumerable:!0})},S=function(e,t,r,n){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var i=function(){var a=u.value;!I.call(e,a)&&a!==r&&g(e,a,{get:function(){return t[a]},enumerable:!(n=m(t,a))||n.enumerable})};for(var s=b(t)[Symbol.iterator](),u;!(a=(u=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var E=function(e,t,r){return r=e!=null?y(w(e)):{},S(t||!e||!e.__esModule?g(r,"default",{value:e,enumerable:!0}):r,e)},_=function(e){return S(g({},"__esModule",{value:!0}),e)};var T={};O(T,{vitestE2E:function(){return k},vitestUnit:function(){return to}});module.exports=_(T);var C=E(require("@vitejs/plugin-react-swc"),1),j=require("vitest/config");function k(e){return(0,j.defineConfig)(l({plugins:[(0,C.default)()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}var N=E(require("@vitejs/plugin-react-swc"),1),A=require("vitest/config");var G=E(require("process"),1);var L=require("child_process"),P=E(require("process"),1),x=E(require("util"),1);var D=E(require("process"),1),R=D.default.env.DEBUG==="true";var F=E(require("chalk"),1),M=E(require("consola"),1),U=require("graphql");R||(M.default.level=4);function q(e){var t=F.default[e];return typeof t=="function"?t:F.default.green}var J={silent:M.default.silent,level:M.default.level,fatal:M.default.fatal,error:M.default.error,warn:M.default.warn,log:M.default.log,info:M.default.info,success:M.default.success,ready:M.default.ready,start:M.default.start,box:M.default.box,debug:M.default.debug,trace:M.default.trace,verbose:M.default.verbose,printBoxedLog:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){M.default.box(F.default.green(e));return}t.forEach(function(e){var t=e.file,n=e.position,a=e.rule,o=e.message;M.default.log("".concat(F.default.gray("File:")," ").concat(F.default.blue("".concat(t).concat(n?":".concat(n):"")))),a&&M.default.log(" ".concat(q(r)("Rule:")," ").concat(a)),M.default.log(" ".concat(q(r)("Message:")," ").concat(o))}),M.default.box(q(r)("".concat(e," : ").concat(t.length))),M.default.log(F.default.gray("─".repeat(40)))}};var K={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var W=E(require("node-fetch"),1);var Y=E(require("fs"),1);function B(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return t.every(function(e){return Y.existsSync(e)})}function H(e,t){var r=Y.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var n=JSON.parse(r);if((typeof n==="undefined"?"undefined":p(n))=="object"&&n!==null)return n;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return r}function $(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=r.isJson,a=n===void 0?!1:n,o=a&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);Y.writeFileSync(e,o,"utf-8")}function z(e){var t=eT(eC,eG);if(!B(t))return!1;try{var r=H(t,{asJson:!0}),n=r.name,a=r.dependencies,o=a===void 0?{}:a,c=r.devDependencies,i=c===void 0?{}:c,s=n===e,u=e in o,l=e in i;return s||u||l?{path:t,file:r,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return J.warn("Failed to read package.json: ".concat(e.message)),!1}}function Q(e){return V.apply(this,arguments)}function V(){V=a(function(e){var t,r,n,a;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,W.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:r=o.sent(),n=r.version;return[2,n];case 3:a=o.sent();throw J.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return V.apply(this,arguments)}function X(e,t){return Z.apply(this,arguments)}function Z(){Z=a(function(e,t){var r,n,a,o,c,i,s,u,f,d,p,v,y,g,m,b,w,I,O,S,E;return h(this,function(h){switch(h.label){case 0:h.trys.push([0,4,,5]);r=z(e);if(!r)return[2,l({},K)];s=r.path,u=r.file,f=r.isCurrentProject,d=r.isDepend,p=r.isDevDepend,v=(n=u.dependencies)!==null&&n!==void 0?n:{},y=(a=u.devDependencies)!==null&&a!==void 0?a:{},g=f?(o=u.version)!==null&&o!==void 0?o:"0.0.0":d?(c=v[e])!==null&&c!==void 0?c:"0.0.0":p?(i=y[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!f)return[3,1];w=g;return[3,3];case 1:return[4,Q(e)];case 2:w=h.sent();h.label=3;case 3:m=w,b=f||g===m;if(!b&&(t===null||t===void 0?void 0:t.update)){;O=d?"dependencies":p?"devDependencies":null;O&&((I=u[O])===null||I===void 0?void 0:I[e])!==m&&(u[O]=(S=u[O])!==null&&S!==void 0?S:{},u[O][e]=m,$(s,u,{isJson:!0}),J.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:E=h.sent();return[2,(J.error('Error checking package "'.concat(e,'": ').concat(E.message)),l({},K))];case 5:return[2]}})});return Z.apply(this,arguments)}function ee(){return et.apply(this,arguments)}function et(){et=a(function(){var e,t,r,n,a,o,c,i,s,u,l,f;return h(this,function(d){switch(d.label){case 0:e=[{command:function(){return ta.pnpmInstallStandard()},message:"Installing dependencies (standard)"},{command:function(){return ta.pnpmInstallLegacy()},message:"Retrying with legacy peer dependencies"},{command:function(){return ta.pnpmInstallForce()},message:"Retrying with force install"}];t=true,r=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);a=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,i()];case 4:u=d.sent();return[4,eO("".concat(s," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();J.warn("Installation attempt failed: ".concat(s)),J.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();r=true;n=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(r){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return et.apply(this,arguments)}function er(e,t){return en.apply(this,arguments)}function en(){en=a(function(e,t){var r,n,a,o,c,i,s,u,l,f,p;return h(this,function(v){switch(v.label){case 0:if(!B(te.PACKAGE_JSON)){J.error("package.json not found. Aborting setup.");return[2]}v.label=1;case 1:v.trys.push([1,13,,14]);r=d(new Set(e)).sort();return[4,Promise.all(r.map(function(e){return X(e,{update:t===null||t===void 0?void 0:t.update})}))];case 2:n=v.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,ee()];case 3:n=v.sent();v.label=4;case 4:n;o=true,c=false,i=undefined;v.label=5;case 5:v.trys.push([5,10,11,12]);s=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();v.label=6;case 6:if(!!(o=(u=s.next()).done))return[3,9];l=u.value;return[4,l()];case 7:v.sent();v.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:f=v.sent();c=true;i=f;return[3,12];case 11:try{if(!o&&s.return!=null){s.return()}}finally{if(c){throw i}}return[7];case 12:J.success('"'.concat(e.join(", "),'" setup completed.'));return[3,14];case 13:p=v.sent();throw J.error('Failed to setup "'.concat(e.join(", "),'": ').concat(p.message)),p;case 14:return[2]}})});return en.apply(this,arguments)}var ea=E(require("node-persist"),1),eo=E(require("os"),1),ec=E(require("process"),1);function ei(){return ec.default.env.CYBERSKILL_STORAGE_DIR||eT(eo.default.homedir(),ek)}function es(){return eu.apply(this,arguments)}function eu(){eu=a(function(){var e;return h(this,function(t){switch(t.label){case 0:e=ea.default.defaultInstance;if(e)return[3,2];return[4,ea.default.init({dir:ei(),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]}})});return eu.apply(this,arguments)}var el={get:function e(e){return a(function(){var t,r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,es()];case 1:n.sent();return[4,ea.default.getItem(e)];case 2:return[2,(t=n.sent())!==null&&t!==void 0?t:null];case 3:r=n.sent();return[2,(J.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,es()];case 1:n.sent();return[4,ea.default.setItem(e,t)];case 2:n.sent();return[3,4];case 3:r=n.sent();J.error('[Storage:set] Error setting key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,es()];case 1:r.sent();return[4,ea.default.removeItem(e)];case 2:r.sent();return[3,4];case 3:t=r.sent();J.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,es()];case 1:r.sent();return[4,ea.default.keys()];case 2:e=r.sent();return[2,Array.isArray(e)?e:(J.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=r.sent();return[2,(J.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return h(this,function(t){try{return[2,"".concat(ei()," (key: ").concat(e,")")]}catch(e){return[2,(J.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ef=x.promisify(L.exec);function ed(e){return"error_list:".concat(e)}function ep(e){return ev.apply(this,arguments)}function ev(){ev=a(function(e){var t,r,n;return h(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),r=ed(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,el.set(r,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/a(function(){var e;return h(this,function(t){switch(t.label){case 0:return[4,el.getLogLink(r)];case 1:e=t.sent();e&&J.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:n=o.sent();J.error("Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return ev.apply(this,arguments)}function eh(e){var t=[],r=[],n="",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("/"))n=e.trim();else{var i=a.exec(e)||[],s=o.exec(e)||[],u=c.exec(e)||[];i.length&&n?t.push({file:n,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()}):s.length?t.push({file:s[1],position:"".concat(s[2],":").concat(s[3]),type:s[4]==="error"?"error":"warning",message:s[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):r.push(e.trim())}}),t.length&&ep(t),R&&r.length&&(J.warn("Unmatched lines:"),r.forEach(function(e){return J.info(" ".concat(e))}))}function ey(e){try{var t=JSON.parse(e),r=[];t.forEach(function(e){var t=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;r.push({type:n===2?"error":"warning",file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),r.length&&ep(r)}catch(t){eh(e)}}function eg(e){return em.apply(this,arguments)}function em(){em=a(function(e){var t,r,n,a,o,c,i,s,u;var l=arguments;return h(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ey;r=new AbortController;P.default.on("SIGINT",function(){J.warn("Process interrupted. Terminating..."),r.abort(),P.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,ef(e,{maxBuffer:0x6400000,signal:r.signal})];case 2:n=f.sent(),a=n.stdout,o=n.stderr;[a,o].forEach(function(e){return e&&t(e)});return[3,4];case 3:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&J.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return em.apply(this,arguments)}function eb(e){return{raw:!0,cmd:e}}function ew(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e4," ").concat(ej," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e4," ").concat(e0," ").concat(eJ," ").concat(e):"".concat(e4," ").concat(eq," ").concat(e)}function eI(e,t){return typeof e=="function"?ew(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ew(e,t):e}function eO(e,t){return eS.apply(this,arguments)}function eS(){eS=a(function(e,t){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);J.start("".concat(e)),R&&J.info("→ ".concat(t));return[4,eg(t)];case 1:n.sent(),J.success("".concat(e," done."));return[3,3];case 2:r=n.sent();throw J.error("".concat(e," failed: ").concat(r.message)),r;case 3:return[2]}})});return eS.apply(this,arguments)}var eE=E(require("path"),1);function e_(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=eE).resolve.apply(n,[eC].concat(d(t)))}function eT(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=eE).join.apply(n,d(t))}var eC=G.default.env.INIT_CWD||G.default.cwd(),ej="@cyberskill/shared",ek=".cyberskill-storage",eN="node_modules",eA="dist",eG="package.json",eL="package-lock.json",eP="tsconfig.json",ex=".gitignore",eD=".simple-git-hooks.json",eR="pnpm-lock.yaml",eF=".git/hooks/",eM=".git/COMMIT_EDITMSG",eU=eT(eC,eN,ej,eA),eq="cyberskill",eJ="src/nodejs/cli/index.ts",eK="eslint",eW="eslint",eY="vitest",eB="playwright",eH="vitest",e$="@commitlint/cli",ez="commitlint",eQ="lint-staged",eV="lint-staged",eX="typescript",eZ="tsc",e0="tsx",e1="git",e2="pnpm",e4="pnpm exec",e3="simple-git-hooks",e5="simple-git-hooks",e6="@eslint/config-inspector",e8="eslint-config-inspector",e7="node-modules-inspector",e9="node-modules-inspector",te={CYBERSKILL_DIRECTORY:eU,WORKING_DIRECTORY:eC,TS_CONFIG:e_(eP),GIT_IGNORE:e_(ex),GIT_HOOK:e_(eF),GIT_COMMIT_MSG:e_(eM),SIMPLE_GIT_HOOKS_JSON:e_(eD),PACKAGE_JSON:e_(eG),PACKAGE_LOCK_JSON:e_(eL),PNPM_LOCK_YAML:e_(eR),NODE_MODULES:e_(eN),LINT_STAGED_CONFIG:e_("".concat(eU,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e_("".concat(eU,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e_("".concat(eU,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e_("".concat(eU,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e_("".concat(eU,"/react/vitest/vitest.e2e.js"))};function tt(e){return tr.apply(this,arguments)}function tr(){tr=a(function(e){var t,r,n,a,o,c;var i=arguments;return h(this,function(s){switch(s.label){case 0:for(t=i.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=i[n]}a=f(r,2),o=a[0],c=a[1];switch(e){case"CLI":return[3,1];case"RAW":return[3,3]}return[3,4];case 1:return[4,er(o.split(" "),{update:!0})];case 2:return[2,(s.sent(),eI(eb("".concat(e4," ").concat(c))))];case 3:return[2,eI(eb(o))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tr.apply(this,arguments)}function tn(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=arguments[n]}return /*#__PURE__*/a(function(){return h(this,function(t){return[2,tt.apply(void 0,[e].concat(d(r)))]})})}var ta={simpleGitHooks:tn("CLI",e3,e5),eslintInspect:tn("CLI",e6,e8),nodeModulesInspect:tn("CLI",e7,e9),eslintCheck:tn("CLI",eK,"".concat(eW," ").concat(te.WORKING_DIRECTORY)),eslintFix:tn("CLI",eK,"".concat(eW," ").concat(te.WORKING_DIRECTORY," --fix")),typescriptCheck:tn("CLI",eX,"".concat(eZ," -p ").concat(te.TS_CONFIG," --noEmit")),configureGitHook:tn("RAW","".concat(e1," config core.hooksPath ").concat(te.GIT_HOOK)),testUnit:tn("CLI",eY,"".concat(eH," --config ").concat(te.UNIT_TEST_CONFIG)),testE2e:tn("CLI","".concat(eY," ").concat(eB),"".concat(eH," --config ").concat(te.E2E_TEST_CONFIG)),commitLint:tn("CLI",e$,"".concat(ez," --edit ").concat(te.GIT_COMMIT_MSG," --config ").concat(te.COMMITLINT_CONFIG)),lintStaged:tn("CLI",eQ,"".concat(eV," --config ").concat(te.LINT_STAGED_CONFIG)),stageBuildDirectory:tn("RAW","".concat(e1," add ").concat(eA)),build:tn("RAW","".concat(e2," run build")),pnpmInstallStandard:tn("RAW","".concat(e2," install")),pnpmInstallLegacy:tn("RAW","".concat(e2," install --legacy-peer-deps")),pnpmInstallForce:tn("RAW","".concat(e2," install --force"))};function to(e){return(0,A.defineConfig)(l({plugins:[(0,N.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[te.UNIT_TEST_SETUP_CONFIG]}},e))}0&&(module.exports={vitestE2E:vitestE2E,vitestUnit:vitestUnit});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function t(e){if(Array.isArray(e))return e}function r(t){if(Array.isArray(t))return e(t)}function n(e,t,r,n,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){r(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(n,a)}}function a(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 o(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function c(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,t){var r=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r==null)return;var n=[];var a=true;var o=false;var c,i;try{for(r=r.call(e);!(a=(c=r.next()).done);a=true){n.push(c.value);if(t&&n.length===t)break}}catch(e){o=true;i=e}finally{try{if(!a&&r["return"]!=null)r["return"]()}finally{if(o)throw i}}return n}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){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 l(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){o(e,t,r[t])})}return e}function f(e,r){return t(e)||i(e,r)||v(e,r)||s()}function d(e){return r(e)||c(e)||v(e)||u()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(t,r){if(!t)return;if(typeof t==="string")return e(t,r);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor)n=t.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(t,r)}function h(e,t){var r,n,a,o,c={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]};return o={next:i(0),"throw":i(1),"return":i(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function i(e){return function(t){return s([e,t])}}function s(o){if(r)throw new TypeError("Generator is already executing.");while(c)try{if(r=1,n&&(a=o[0]&2?n["return"]:o[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;if(n=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:c.label++;return{value:o[1],done:false};case 5:c.label++;n=o[1];o=[0];continue;case 7:o=c.ops.pop();c.trys.pop();continue;default:if(!(a=c.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){c=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){c.label=o[1];break}if(o[0]===6&&c.label<a[1]){c.label=a[1];a=o;break}if(a&&c.label<a[2]){c.label=a[2];c.ops.push(o);break}if(a[2])c.ops.pop();c.trys.pop();continue}o=t.call(e,c)}catch(e){o=[6,e];n=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var y=Object.create;var g=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var O=function(e,t){for(var r in t)g(e,r,{get:t[r],enumerable:!0})},S=function(e,t,r,n){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var i=function(){var a=u.value;!I.call(e,a)&&a!==r&&g(e,a,{get:function(){return t[a]},enumerable:!(n=m(t,a))||n.enumerable})};for(var s=b(t)[Symbol.iterator](),u;!(a=(u=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var E=function(e,t,r){return r=e!=null?y(w(e)):{},S(t||!e||!e.__esModule?g(r,"default",{value:e,enumerable:!0}):r,e)},_=function(e){return S(g({},"__esModule",{value:!0}),e)};var T={};O(T,{vitestE2E:function(){return k},vitestUnit:function(){return to}});module.exports=_(T);var C=E(require("@vitejs/plugin-react-swc"),1),j=require("vitest/config");function k(e){return(0,j.defineConfig)(l({plugins:[(0,C.default)()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}var N=E(require("@vitejs/plugin-react-swc"),1),A=require("vitest/config");var G=E(require("process"),1);var L=require("child_process"),P=E(require("process"),1),x=E(require("util"),1);var D=E(require("process"),1),R=D.default.env.DEBUG==="true";var F=E(require("chalk"),1),M=E(require("consola"),1),U=require("graphql");R||(M.default.level=4);function q(e){var t=F.default[e];return typeof t=="function"?t:F.default.green}var J={silent:M.default.silent,level:M.default.level,fatal:M.default.fatal,error:M.default.error,warn:M.default.warn,log:M.default.log,info:M.default.info,success:M.default.success,ready:M.default.ready,start:M.default.start,box:M.default.box,debug:M.default.debug,trace:M.default.trace,verbose:M.default.verbose,printBoxedLog:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){M.default.box(F.default.green(e));return}t.forEach(function(e){var t=e.file,n=e.position,a=e.rule,o=e.message;M.default.log("".concat(F.default.gray("File:")," ").concat(F.default.blue("".concat(t).concat(n?":".concat(n):"")))),a&&M.default.log(" ".concat(q(r)("Rule:")," ").concat(a)),M.default.log(" ".concat(q(r)("Message:")," ").concat(o))}),M.default.box(q(r)("".concat(e," : ").concat(t.length))),M.default.log(F.default.gray("─".repeat(40)))}};var K={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var W=E(require("node-fetch"),1);var Y=E(require("fs"),1);function B(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return t.every(function(e){return Y.existsSync(e)})}function H(e,t){var r=Y.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var n=JSON.parse(r);if((typeof n==="undefined"?"undefined":p(n))=="object"&&n!==null)return n;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return r}function $(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=r.isJson,a=n===void 0?!1:n,o=a&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);Y.writeFileSync(e,o,"utf-8")}function z(e){var t=eT(eC,eG);if(!B(t))return!1;try{var r=H(t,{asJson:!0}),n=r.name,a=r.dependencies,o=a===void 0?{}:a,c=r.devDependencies,i=c===void 0?{}:c,s=n===e,u=e in o,l=e in i;return s||u||l?{path:t,file:r,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return J.warn("Failed to read package.json: ".concat(e.message)),!1}}function Q(e){return V.apply(this,arguments)}function V(){V=a(function(e){var t,r,n,a;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,W.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:r=o.sent(),n=r.version;return[2,n];case 3:a=o.sent();throw J.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return V.apply(this,arguments)}function X(e,t){return Z.apply(this,arguments)}function Z(){Z=a(function(e,t){var r,n,a,o,c,i,s,u,f,d,p,v,y,g,m,b,w,I,O,S,E;return h(this,function(h){switch(h.label){case 0:h.trys.push([0,4,,5]);r=z(e);if(!r)return[2,l({},K)];s=r.path,u=r.file,f=r.isCurrentProject,d=r.isDepend,p=r.isDevDepend,v=(n=u.dependencies)!==null&&n!==void 0?n:{},y=(a=u.devDependencies)!==null&&a!==void 0?a:{},g=f?(o=u.version)!==null&&o!==void 0?o:"0.0.0":d?(c=v[e])!==null&&c!==void 0?c:"0.0.0":p?(i=y[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!f)return[3,1];w=g;return[3,3];case 1:return[4,Q(e)];case 2:w=h.sent();h.label=3;case 3:m=w,b=f||g===m;if(!b&&(t===null||t===void 0?void 0:t.update)){;O=d?"dependencies":p?"devDependencies":null;O&&((I=u[O])===null||I===void 0?void 0:I[e])!==m&&(u[O]=(S=u[O])!==null&&S!==void 0?S:{},u[O][e]=m,$(s,u,{isJson:!0}),J.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:E=h.sent();return[2,(J.error('Error checking package "'.concat(e,'": ').concat(E.message)),l({},K))];case 5:return[2]}})});return Z.apply(this,arguments)}function ee(){return et.apply(this,arguments)}function et(){et=a(function(){var e,t,r,n,a,o,c,i,s,u,l,f;return h(this,function(d){switch(d.label){case 0:e=[{command:function(){return ta.pnpmInstallStandard()},message:"Installing dependencies (standard)"},{command:function(){return ta.pnpmInstallLegacy()},message:"Retrying with legacy peer dependencies"},{command:function(){return ta.pnpmInstallForce()},message:"Retrying with force install"}];t=true,r=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);a=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,i()];case 4:u=d.sent();return[4,eO("".concat(s," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();J.warn("Installation attempt failed: ".concat(s)),J.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();r=true;n=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(r){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return et.apply(this,arguments)}function er(e,t){return en.apply(this,arguments)}function en(){en=a(function(e,t){var r,n,a,o,c,i,s,u,l,f,p;return h(this,function(v){switch(v.label){case 0:if(!B(te.PACKAGE_JSON)){J.error("package.json not found. Aborting setup.");return[2]}v.label=1;case 1:v.trys.push([1,13,,14]);r=d(new Set(e)).sort();return[4,Promise.all(r.map(function(e){return X(e,{update:t===null||t===void 0?void 0:t.update})}))];case 2:n=v.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,ee()];case 3:n=v.sent();v.label=4;case 4:n;o=true,c=false,i=undefined;v.label=5;case 5:v.trys.push([5,10,11,12]);s=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();v.label=6;case 6:if(!!(o=(u=s.next()).done))return[3,9];l=u.value;return[4,l()];case 7:v.sent();v.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:f=v.sent();c=true;i=f;return[3,12];case 11:try{if(!o&&s.return!=null){s.return()}}finally{if(c){throw i}}return[7];case 12:return[3,14];case 13:p=v.sent();throw J.error('Failed to setup "'.concat(e.join(", "),'": ').concat(p.message)),p;case 14:return[2]}})});return en.apply(this,arguments)}var ea=E(require("node-persist"),1),eo=E(require("os"),1),ec=E(require("process"),1);function ei(){return ec.default.env.CYBERSKILL_STORAGE_DIR||eT(eo.default.homedir(),ek)}function es(){return eu.apply(this,arguments)}function eu(){eu=a(function(){var e;return h(this,function(t){switch(t.label){case 0:e=ea.default.defaultInstance;if(e)return[3,2];return[4,ea.default.init({dir:ei(),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]}})});return eu.apply(this,arguments)}var el={get:function e(e){return a(function(){var t,r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,es()];case 1:n.sent();return[4,ea.default.getItem(e)];case 2:return[2,(t=n.sent())!==null&&t!==void 0?t:null];case 3:r=n.sent();return[2,(J.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,es()];case 1:n.sent();return[4,ea.default.setItem(e,t)];case 2:n.sent();return[3,4];case 3:r=n.sent();J.error('[Storage:set] Error setting key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,es()];case 1:r.sent();return[4,ea.default.removeItem(e)];case 2:r.sent();return[3,4];case 3:t=r.sent();J.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,es()];case 1:r.sent();return[4,ea.default.keys()];case 2:e=r.sent();return[2,Array.isArray(e)?e:(J.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=r.sent();return[2,(J.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return h(this,function(t){try{return[2,"".concat(ei()," (key: ").concat(e,")")]}catch(e){return[2,(J.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ef=x.promisify(L.exec);function ed(e){return"error_list:".concat(e)}function ep(e){return ev.apply(this,arguments)}function ev(){ev=a(function(e){var t,r,n;return h(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),r=ed(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,el.set(r,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/a(function(){var e;return h(this,function(t){switch(t.label){case 0:return[4,el.getLogLink(r)];case 1:e=t.sent();e&&J.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:n=o.sent();J.error("Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return ev.apply(this,arguments)}function eh(e){var t=[],r=[],n="",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("/"))n=e.trim();else{var i=a.exec(e)||[],s=o.exec(e)||[],u=c.exec(e)||[];i.length&&n?t.push({file:n,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()}):s.length?t.push({file:s[1],position:"".concat(s[2],":").concat(s[3]),type:s[4]==="error"?"error":"warning",message:s[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):r.push(e.trim())}}),t.length&&ep(t),R&&r.length&&(J.warn("Unmatched lines:"),r.forEach(function(e){return J.info(" ".concat(e))}))}function ey(e){try{var t=JSON.parse(e),r=[];t.forEach(function(e){var t=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;r.push({type:n===2?"error":"warning",file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),r.length&&ep(r)}catch(t){eh(e)}}function eg(e){return em.apply(this,arguments)}function em(){em=a(function(e){var t,r,n,a,o,c,i,s,u;var l=arguments;return h(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ey;r=new AbortController;P.default.on("SIGINT",function(){J.warn("Process interrupted. Terminating..."),r.abort(),P.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,ef(e,{maxBuffer:0x6400000,signal:r.signal})];case 2:n=f.sent(),a=n.stdout,o=n.stderr;[a,o].forEach(function(e){return e&&t(e)});return[3,4];case 3:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&J.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return em.apply(this,arguments)}function eb(e){return{raw:!0,cmd:e}}function ew(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e4," ").concat(ej," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e4," ").concat(e0," ").concat(eJ," ").concat(e):"".concat(e4," ").concat(eq," ").concat(e)}function eI(e,t){return typeof e=="function"?ew(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ew(e,t):e}function eO(e,t){return eS.apply(this,arguments)}function eS(){eS=a(function(e,t){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);J.start("".concat(e)),R&&J.info("→ ".concat(t));return[4,eg(t)];case 1:n.sent(),J.success("".concat(e," done."));return[3,3];case 2:r=n.sent();throw J.error("".concat(e," failed: ").concat(r.message)),r;case 3:return[2]}})});return eS.apply(this,arguments)}var eE=E(require("path"),1);function e_(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=eE).resolve.apply(n,[eC].concat(d(t)))}function eT(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=eE).join.apply(n,d(t))}var eC=G.default.env.INIT_CWD||G.default.cwd(),ej="@cyberskill/shared",ek=".cyberskill-storage",eN="node_modules",eA="dist",eG="package.json",eL="package-lock.json",eP="tsconfig.json",ex=".gitignore",eD=".simple-git-hooks.json",eR="pnpm-lock.yaml",eF=".git/hooks/",eM=".git/COMMIT_EDITMSG",eU=eT(eC,eN,ej,eA),eq="cyberskill",eJ="src/nodejs/cli/index.ts",eK="eslint",eW="eslint",eY="vitest",eB="playwright",eH="vitest",e$="@commitlint/cli",ez="commitlint",eQ="lint-staged",eV="lint-staged",eX="typescript",eZ="tsc",e0="tsx",e1="git",e2="pnpm",e4="pnpm exec",e3="simple-git-hooks",e5="simple-git-hooks",e6="@eslint/config-inspector",e8="eslint-config-inspector",e7="node-modules-inspector",e9="node-modules-inspector",te={CYBERSKILL_DIRECTORY:eU,WORKING_DIRECTORY:eC,TS_CONFIG:e_(eP),GIT_IGNORE:e_(ex),GIT_HOOK:e_(eF),GIT_COMMIT_MSG:e_(eM),SIMPLE_GIT_HOOKS_JSON:e_(eD),PACKAGE_JSON:e_(eG),PACKAGE_LOCK_JSON:e_(eL),PNPM_LOCK_YAML:e_(eR),NODE_MODULES:e_(eN),LINT_STAGED_CONFIG:e_("".concat(eU,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e_("".concat(eU,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e_("".concat(eU,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e_("".concat(eU,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e_("".concat(eU,"/react/vitest/vitest.e2e.js"))};function tt(e){return tr.apply(this,arguments)}function tr(){tr=a(function(e){var t,r,n,a,o,c;var i=arguments;return h(this,function(s){switch(s.label){case 0:for(t=i.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=i[n]}a=f(r,2),o=a[0],c=a[1];switch(e){case"CLI":return[3,1];case"RAW":return[3,3]}return[3,4];case 1:return[4,er(o.split(" "),{update:!0})];case 2:return[2,(s.sent(),eI(eb("".concat(e4," ").concat(c))))];case 3:return[2,eI(eb(o))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tr.apply(this,arguments)}function tn(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=arguments[n]}return /*#__PURE__*/a(function(){return h(this,function(t){return[2,tt.apply(void 0,[e].concat(d(r)))]})})}var ta={simpleGitHooks:tn("CLI",e3,e5),eslintInspect:tn("CLI",e6,e8),nodeModulesInspect:tn("CLI",e7,e9),eslintCheck:tn("CLI",eK,"".concat(eW," ").concat(te.WORKING_DIRECTORY)),eslintFix:tn("CLI",eK,"".concat(eW," ").concat(te.WORKING_DIRECTORY," --fix")),typescriptCheck:tn("CLI",eX,"".concat(eZ," -p ").concat(te.TS_CONFIG," --noEmit")),configureGitHook:tn("RAW","".concat(e1," config core.hooksPath ").concat(te.GIT_HOOK)),testUnit:tn("CLI",eY,"".concat(eH," --config ").concat(te.UNIT_TEST_CONFIG)),testE2e:tn("CLI","".concat(eY," ").concat(eB),"".concat(eH," --config ").concat(te.E2E_TEST_CONFIG)),commitLint:tn("CLI",e$,"".concat(ez," --edit ").concat(te.GIT_COMMIT_MSG," --config ").concat(te.COMMITLINT_CONFIG)),lintStaged:tn("CLI",eQ,"".concat(eV," --config ").concat(te.LINT_STAGED_CONFIG)),stageBuildDirectory:tn("RAW","".concat(e1," add ").concat(eA)),build:tn("RAW","".concat(e2," run build")),pnpmInstallStandard:tn("RAW","".concat(e2," install")),pnpmInstallLegacy:tn("RAW","".concat(e2," install --legacy-peer-deps")),pnpmInstallForce:tn("RAW","".concat(e2," install --force"))};function to(e){return(0,A.defineConfig)(l({plugins:[(0,N.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[te.UNIT_TEST_SETUP_CONFIG]}},e))}0&&(module.exports={vitestE2E:vitestE2E,vitestUnit:vitestUnit});
@@ -1 +1 @@
1
- function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,o,c,a){try{var i=e[c](a);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function o(e){return function(){var t=this,n=arguments;return new Promise(function(o,c){var a=e.apply(t,n);function i(e){r(a,o,c,i,s,"next",e)}function s(e){r(a,o,c,i,s,"throw",e)}i(undefined)})}}function c(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var o=true;var c=false;var a,i;try{for(n=n.call(e);!(o=(a=n.next()).done);o=true){r.push(a.value);if(t&&r.length===t)break}}catch(e){c=true;i=e}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(c)throw i}}return r}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){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 l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){c(e,t,n[t])})}return e}function f(e,n){return t(e)||i(e,n)||h(e,n)||s()}function p(e){return n(e)||a(e)||h(e)||u()}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function h(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,o,c,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]};return c={next:i(0),"throw":i(1),"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(c){if(n)throw new TypeError("Generator is already executing.");while(a)try{if(n=1,r&&(o=c[0]&2?r["return"]:c[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;if(r=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(c[0]===6&&a.label<o[1]){a.label=o[1];o=c;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(c);break}if(o[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}import g from"@vitejs/plugin-react-swc";import{defineConfig as y}from"vitest/config";function v(e){return y(l({plugins:[g()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}import b from"@vitejs/plugin-react-swc";import{defineConfig as w}from"vitest/config";import I from"node:process";import{exec as S}from"node:child_process";import E from"node:process";import*as O from"node:util";import _ from"node:process";var T=_.env.DEBUG==="true";import C from"chalk";import k from"consola";import{GraphQLError as j}from"graphql";T||(k.level=4);function N(e){var t=C[e];return typeof t=="function"?t:C.green}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,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){k.box(C.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,c=e.message;k.log("".concat(C.gray("File:")," ").concat(C.blue("".concat(t).concat(r?":".concat(r):"")))),o&&k.log(" ".concat(N(n)("Rule:")," ").concat(o)),k.log(" ".concat(N(n)("Message:")," ").concat(c))}),k.box(N(n)("".concat(e," : ").concat(t.length))),k.log(C.gray("─".repeat(40)))}};var G={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import L from"node-fetch";import*as x from"node:fs";function P(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return x.existsSync(e)})}function R(e,t){var n=x.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":d(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}function D(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,o=r===void 0?!1:r,c=o&&(typeof t==="undefined"?"undefined":d(t))=="object"?JSON.stringify(t,null,4):String(t);x.writeFileSync(e,c,"utf-8")}function F(e){var t=em(eg,eI);if(!P(t))return!1;try{var n=R(t,{asJson:!0}),r=n.name,o=n.dependencies,c=o===void 0?{}:o,a=n.devDependencies,i=a===void 0?{}:a,s=r===e,u=e in c,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return A.warn("Failed to read package.json: ".concat(e.message)),!1}}function M(e){return U.apply(this,arguments)}function U(){U=o(function(e){var t,n,r,o;return m(this,function(c){switch(c.label){case 0:c.trys.push([0,3,,4]);return[4,L("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=c.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=c.sent(),r=n.version;return[2,r];case 3:o=c.sent();throw A.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return U.apply(this,arguments)}function J(e,t){return K.apply(this,arguments)}function K(){K=o(function(e,t){var n,r,o,c,a,i,s,u,f,p,d,h,g,y,v,b,w,I,S,E,O;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=F(e);if(!n)return[2,l({},G)];s=n.path,u=n.file,f=n.isCurrentProject,p=n.isDepend,d=n.isDevDepend,h=(r=u.dependencies)!==null&&r!==void 0?r:{},g=(o=u.devDependencies)!==null&&o!==void 0?o:{},y=f?(c=u.version)!==null&&c!==void 0?c:"0.0.0":p?(a=h[e])!==null&&a!==void 0?a:"0.0.0":d?(i=g[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!f)return[3,1];w=y;return[3,3];case 1:return[4,M(e)];case 2:w=m.sent();m.label=3;case 3:v=w,b=f||y===v;if(!b&&(t===null||t===void 0?void 0:t.update)){;S=p?"dependencies":d?"devDependencies":null;S&&((I=u[S])===null||I===void 0?void 0:I[e])!==v&&(u[S]=(E=u[S])!==null&&E!==void 0?E:{},u[S][e]=v,D(s,u,{isJson:!0}),A.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:O=m.sent();return[2,(A.error('Error checking package "'.concat(e,'": ').concat(O.message)),l({},G))];case 5:return[2]}})});return K.apply(this,arguments)}function W(){return Y.apply(this,arguments)}function Y(){Y=o(function(){var e,t,n,r,o,c,a,i,s,u,l,f;return m(this,function(p){switch(p.label){case 0:e=[{command:function(){return e4.pnpmInstallStandard()},message:"Installing dependencies (standard)"},{command:function(){return e4.pnpmInstallLegacy()},message:"Retrying with legacy peer dependencies"},{command:function(){return e4.pnpmInstallForce()},message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);o=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(c=o.next()).done))return[3,8];a=c.value,i=a.command,s=a.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,i()];case 4:u=p.sent();return[4,ef("".concat(s," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();A.warn("Installation attempt failed: ".concat(s)),A.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=p.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return Y.apply(this,arguments)}function B(e,t){return H.apply(this,arguments)}function H(){H=o(function(e,t){var n,r,o,c,a,i,s,u,l,f,d;return m(this,function(h){switch(h.label){case 0:if(!P(eZ.PACKAGE_JSON)){A.error("package.json not found. Aborting setup.");return[2]}h.label=1;case 1:h.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return J(e,{update:t===null||t===void 0?void 0:t.update})}))];case 2:r=h.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,W()];case 3:r=h.sent();h.label=4;case 4:r;c=true,a=false,i=undefined;h.label=5;case 5:h.trys.push([5,10,11,12]);s=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();h.label=6;case 6:if(!!(c=(u=s.next()).done))return[3,9];l=u.value;return[4,l()];case 7:h.sent();h.label=8;case 8:c=true;return[3,6];case 9:return[3,12];case 10:f=h.sent();a=true;i=f;return[3,12];case 11:try{if(!c&&s.return!=null){s.return()}}finally{if(a){throw i}}return[7];case 12:A.success('"'.concat(e.join(", "),'" setup completed.'));return[3,14];case 13:d=h.sent();throw A.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})});return H.apply(this,arguments)}import $ from"node-persist";import q from"node:os";import Q from"node:process";function z(){return Q.env.CYBERSKILL_STORAGE_DIR||em(q.homedir(),ev)}function V(){return X.apply(this,arguments)}function X(){X=o(function(){var e;return m(this,function(t){switch(t.label){case 0:e=$.defaultInstance;if(e)return[3,2];return[4,$.init({dir:z(),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]}})});return X.apply(this,arguments)}var Z={get:function e(e){return o(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,V()];case 1:r.sent();return[4,$.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(A.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return o(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,V()];case 1:r.sent();return[4,$.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();A.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return o(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,V()];case 1:n.sent();return[4,$.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();A.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return o(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,V()];case 1:n.sent();return[4,$.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(A.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(A.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return o(function(){return m(this,function(t){try{return[2,"".concat(z()," (key: ").concat(e,")")]}catch(e){return[2,(A.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ee=O.promisify(S);function et(e){return"error_list:".concat(e)}function en(e){return er.apply(this,arguments)}function er(){er=o(function(e){var t,n,r;return m(this,function(c){switch(c.label){case 0:if(e.length===0)return[2];t=Date.now(),n=et(t);c.label=1;case 1:c.trys.push([1,3,,4]);return[4,Z.set(n,{errors:e,timestamp:t})];case 2:c.sent(),setTimeout(/*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,Z.getLogLink(n)];case 1:e=t.sent();e&&A.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=c.sent();A.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return er.apply(this,arguments)}function eo(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,c=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i=o.exec(e)||[],s=c.exec(e)||[],u=a.exec(e)||[];i.length&&r?t.push({file:r,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()}):s.length?t.push({file:s[1],position:"".concat(s[2],":").concat(s[3]),type:s[4]==="error"?"error":"warning",message:s[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):n.push(e.trim())}}),t.length&&en(t),T&&n.length&&(A.warn("Unmatched lines:"),n.forEach(function(e){return A.info(" ".concat(e))}))}function ec(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,o=e.line,c=e.column,a=e.ruleId,i=e.message;n.push({type:r===2?"error":"warning",file:t,position:"".concat(o,":").concat(c),rule:a,message:i})})}),n.length&&en(n)}catch(t){eo(e)}}function ea(e){return ei.apply(this,arguments)}function ei(){ei=o(function(e){var t,n,r,o,c,a,i,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ec;n=new AbortController;E.on("SIGINT",function(){A.warn("Process interrupted. Terminating..."),n.abort(),E.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,ee(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,c=r.stderr;[o,c].forEach(function(e){return e&&t(e)});return[3,4];case 3:a=f.sent();i=a.stdout,s=a.stderr,u=a.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&A.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return ei.apply(this,arguments)}function es(e){return{raw:!0,cmd:e}}function eu(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eH," ").concat(ey," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eH," ").concat(eW," ").concat(eA," ").concat(e):"".concat(eH," ").concat(eN," ").concat(e)}function el(e,t){return typeof e=="function"?eu(e(t),t):(typeof e==="undefined"?"undefined":d(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eu(e,t):e}function ef(e,t){return ep.apply(this,arguments)}function ep(){ep=o(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);A.start("".concat(e)),T&&A.info("→ ".concat(t));return[4,ea(t)];case 1:r.sent(),A.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw A.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ep.apply(this,arguments)}import*as ed from"node:path";function eh(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ed).resolve.apply(r,[eg].concat(p(t)))}function em(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ed).join.apply(r,p(t))}var eg=I.env.INIT_CWD||I.cwd(),ey="@cyberskill/shared",ev=".cyberskill-storage",eb="node_modules",ew="dist",eI="package.json",eS="package-lock.json",eE="tsconfig.json",eO=".gitignore",e_=".simple-git-hooks.json",eT="pnpm-lock.yaml",eC=".git/hooks/",ek=".git/COMMIT_EDITMSG",ej=em(eg,eb,ey,ew),eN="cyberskill",eA="src/nodejs/cli/index.ts",eG="eslint",eL="eslint",ex="vitest",eP="playwright",eR="vitest",eD="@commitlint/cli",eF="commitlint",eM="lint-staged",eU="lint-staged",eJ="typescript",eK="tsc",eW="tsx",eY="git",eB="pnpm",eH="pnpm exec",e$="simple-git-hooks",eq="simple-git-hooks",eQ="@eslint/config-inspector",ez="eslint-config-inspector",eV="node-modules-inspector",eX="node-modules-inspector",eZ={CYBERSKILL_DIRECTORY:ej,WORKING_DIRECTORY:eg,TS_CONFIG:eh(eE),GIT_IGNORE:eh(eO),GIT_HOOK:eh(eC),GIT_COMMIT_MSG:eh(ek),SIMPLE_GIT_HOOKS_JSON:eh(e_),PACKAGE_JSON:eh(eI),PACKAGE_LOCK_JSON:eh(eS),PNPM_LOCK_YAML:eh(eT),NODE_MODULES:eh(eb),LINT_STAGED_CONFIG:eh("".concat(ej,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eh("".concat(ej,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eh("".concat(ej,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eh("".concat(ej,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eh("".concat(ej,"/react/vitest/vitest.e2e.js"))};function e0(e){return e1.apply(this,arguments)}function e1(){e1=o(function(e){var t,n,r,o,c,a;var i=arguments;return m(this,function(s){switch(s.label){case 0:for(t=i.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=i[r]}o=f(n,2),c=o[0],a=o[1];switch(e){case"CLI":return[3,1];case"RAW":return[3,3]}return[3,4];case 1:return[4,B(c.split(" "),{update:!0})];case 2:return[2,(s.sent(),el(es("".concat(eH," ").concat(a))))];case 3:return[2,el(es(c))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return e1.apply(this,arguments)}function e2(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}return /*#__PURE__*/o(function(){return m(this,function(t){return[2,e0.apply(void 0,[e].concat(p(n)))]})})}var e4={simpleGitHooks:e2("CLI",e$,eq),eslintInspect:e2("CLI",eQ,ez),nodeModulesInspect:e2("CLI",eV,eX),eslintCheck:e2("CLI",eG,"".concat(eL," ").concat(eZ.WORKING_DIRECTORY)),eslintFix:e2("CLI",eG,"".concat(eL," ").concat(eZ.WORKING_DIRECTORY," --fix")),typescriptCheck:e2("CLI",eJ,"".concat(eK," -p ").concat(eZ.TS_CONFIG," --noEmit")),configureGitHook:e2("RAW","".concat(eY," config core.hooksPath ").concat(eZ.GIT_HOOK)),testUnit:e2("CLI",ex,"".concat(eR," --config ").concat(eZ.UNIT_TEST_CONFIG)),testE2e:e2("CLI","".concat(ex," ").concat(eP),"".concat(eR," --config ").concat(eZ.E2E_TEST_CONFIG)),commitLint:e2("CLI",eD,"".concat(eF," --edit ").concat(eZ.GIT_COMMIT_MSG," --config ").concat(eZ.COMMITLINT_CONFIG)),lintStaged:e2("CLI",eM,"".concat(eU," --config ").concat(eZ.LINT_STAGED_CONFIG)),stageBuildDirectory:e2("RAW","".concat(eY," add ").concat(ew)),build:e2("RAW","".concat(eB," run build")),pnpmInstallStandard:e2("RAW","".concat(eB," install")),pnpmInstallLegacy:e2("RAW","".concat(eB," install --legacy-peer-deps")),pnpmInstallForce:e2("RAW","".concat(eB," install --force"))};function e3(e){return w(l({plugins:[b()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[eZ.UNIT_TEST_SETUP_CONFIG]}},e))}export{v as vitestE2E,e3 as vitestUnit};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,o,c,a){try{var i=e[c](a);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function o(e){return function(){var t=this,n=arguments;return new Promise(function(o,c){var a=e.apply(t,n);function i(e){r(a,o,c,i,s,"next",e)}function s(e){r(a,o,c,i,s,"throw",e)}i(undefined)})}}function c(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var o=true;var c=false;var a,i;try{for(n=n.call(e);!(o=(a=n.next()).done);o=true){r.push(a.value);if(t&&r.length===t)break}}catch(e){c=true;i=e}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(c)throw i}}return r}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){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 l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){c(e,t,n[t])})}return e}function f(e,n){return t(e)||i(e,n)||h(e,n)||s()}function p(e){return n(e)||a(e)||h(e)||u()}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function h(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,o,c,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]};return c={next:i(0),"throw":i(1),"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(c){if(n)throw new TypeError("Generator is already executing.");while(a)try{if(n=1,r&&(o=c[0]&2?r["return"]:c[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;if(r=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(c[0]===6&&a.label<o[1]){a.label=o[1];o=c;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(c);break}if(o[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}import g from"@vitejs/plugin-react-swc";import{defineConfig as y}from"vitest/config";function v(e){return y(l({plugins:[g()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}import b from"@vitejs/plugin-react-swc";import{defineConfig as w}from"vitest/config";import I from"node:process";import{exec as S}from"node:child_process";import E from"node:process";import*as O from"node:util";import _ from"node:process";var T=_.env.DEBUG==="true";import C from"chalk";import k from"consola";import{GraphQLError as N}from"graphql";T||(k.level=4);function j(e){var t=C[e];return typeof t=="function"?t:C.green}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,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){k.box(C.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,c=e.message;k.log("".concat(C.gray("File:")," ").concat(C.blue("".concat(t).concat(r?":".concat(r):"")))),o&&k.log(" ".concat(j(n)("Rule:")," ").concat(o)),k.log(" ".concat(j(n)("Message:")," ").concat(c))}),k.box(j(n)("".concat(e," : ").concat(t.length))),k.log(C.gray("─".repeat(40)))}};var G={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import L from"node-fetch";import*as x from"node:fs";function P(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return x.existsSync(e)})}function R(e,t){var n=x.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":d(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}function D(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,o=r===void 0?!1:r,c=o&&(typeof t==="undefined"?"undefined":d(t))=="object"?JSON.stringify(t,null,4):String(t);x.writeFileSync(e,c,"utf-8")}function F(e){var t=em(eg,eI);if(!P(t))return!1;try{var n=R(t,{asJson:!0}),r=n.name,o=n.dependencies,c=o===void 0?{}:o,a=n.devDependencies,i=a===void 0?{}:a,s=r===e,u=e in c,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return A.warn("Failed to read package.json: ".concat(e.message)),!1}}function M(e){return U.apply(this,arguments)}function U(){U=o(function(e){var t,n,r,o;return m(this,function(c){switch(c.label){case 0:c.trys.push([0,3,,4]);return[4,L("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=c.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=c.sent(),r=n.version;return[2,r];case 3:o=c.sent();throw A.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return U.apply(this,arguments)}function J(e,t){return K.apply(this,arguments)}function K(){K=o(function(e,t){var n,r,o,c,a,i,s,u,f,p,d,h,g,y,v,b,w,I,S,E,O;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=F(e);if(!n)return[2,l({},G)];s=n.path,u=n.file,f=n.isCurrentProject,p=n.isDepend,d=n.isDevDepend,h=(r=u.dependencies)!==null&&r!==void 0?r:{},g=(o=u.devDependencies)!==null&&o!==void 0?o:{},y=f?(c=u.version)!==null&&c!==void 0?c:"0.0.0":p?(a=h[e])!==null&&a!==void 0?a:"0.0.0":d?(i=g[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!f)return[3,1];w=y;return[3,3];case 1:return[4,M(e)];case 2:w=m.sent();m.label=3;case 3:v=w,b=f||y===v;if(!b&&(t===null||t===void 0?void 0:t.update)){;S=p?"dependencies":d?"devDependencies":null;S&&((I=u[S])===null||I===void 0?void 0:I[e])!==v&&(u[S]=(E=u[S])!==null&&E!==void 0?E:{},u[S][e]=v,D(s,u,{isJson:!0}),A.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:O=m.sent();return[2,(A.error('Error checking package "'.concat(e,'": ').concat(O.message)),l({},G))];case 5:return[2]}})});return K.apply(this,arguments)}function W(){return Y.apply(this,arguments)}function Y(){Y=o(function(){var e,t,n,r,o,c,a,i,s,u,l,f;return m(this,function(p){switch(p.label){case 0:e=[{command:function(){return e4.pnpmInstallStandard()},message:"Installing dependencies (standard)"},{command:function(){return e4.pnpmInstallLegacy()},message:"Retrying with legacy peer dependencies"},{command:function(){return e4.pnpmInstallForce()},message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);o=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(c=o.next()).done))return[3,8];a=c.value,i=a.command,s=a.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,i()];case 4:u=p.sent();return[4,ef("".concat(s," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();A.warn("Installation attempt failed: ".concat(s)),A.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=p.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return Y.apply(this,arguments)}function B(e,t){return H.apply(this,arguments)}function H(){H=o(function(e,t){var n,r,o,c,a,i,s,u,l,f,d;return m(this,function(h){switch(h.label){case 0:if(!P(eZ.PACKAGE_JSON)){A.error("package.json not found. Aborting setup.");return[2]}h.label=1;case 1:h.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return J(e,{update:t===null||t===void 0?void 0:t.update})}))];case 2:r=h.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,W()];case 3:r=h.sent();h.label=4;case 4:r;c=true,a=false,i=undefined;h.label=5;case 5:h.trys.push([5,10,11,12]);s=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();h.label=6;case 6:if(!!(c=(u=s.next()).done))return[3,9];l=u.value;return[4,l()];case 7:h.sent();h.label=8;case 8:c=true;return[3,6];case 9:return[3,12];case 10:f=h.sent();a=true;i=f;return[3,12];case 11:try{if(!c&&s.return!=null){s.return()}}finally{if(a){throw i}}return[7];case 12:return[3,14];case 13:d=h.sent();throw A.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})});return H.apply(this,arguments)}import $ from"node-persist";import q from"node:os";import Q from"node:process";function z(){return Q.env.CYBERSKILL_STORAGE_DIR||em(q.homedir(),ev)}function V(){return X.apply(this,arguments)}function X(){X=o(function(){var e;return m(this,function(t){switch(t.label){case 0:e=$.defaultInstance;if(e)return[3,2];return[4,$.init({dir:z(),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]}})});return X.apply(this,arguments)}var Z={get:function e(e){return o(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,V()];case 1:r.sent();return[4,$.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(A.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return o(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,V()];case 1:r.sent();return[4,$.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();A.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return o(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,V()];case 1:n.sent();return[4,$.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();A.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return o(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,V()];case 1:n.sent();return[4,$.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(A.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(A.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return o(function(){return m(this,function(t){try{return[2,"".concat(z()," (key: ").concat(e,")")]}catch(e){return[2,(A.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ee=O.promisify(S);function et(e){return"error_list:".concat(e)}function en(e){return er.apply(this,arguments)}function er(){er=o(function(e){var t,n,r;return m(this,function(c){switch(c.label){case 0:if(e.length===0)return[2];t=Date.now(),n=et(t);c.label=1;case 1:c.trys.push([1,3,,4]);return[4,Z.set(n,{errors:e,timestamp:t})];case 2:c.sent(),setTimeout(/*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,Z.getLogLink(n)];case 1:e=t.sent();e&&A.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=c.sent();A.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return er.apply(this,arguments)}function eo(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,c=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i=o.exec(e)||[],s=c.exec(e)||[],u=a.exec(e)||[];i.length&&r?t.push({file:r,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()}):s.length?t.push({file:s[1],position:"".concat(s[2],":").concat(s[3]),type:s[4]==="error"?"error":"warning",message:s[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):n.push(e.trim())}}),t.length&&en(t),T&&n.length&&(A.warn("Unmatched lines:"),n.forEach(function(e){return A.info(" ".concat(e))}))}function ec(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,o=e.line,c=e.column,a=e.ruleId,i=e.message;n.push({type:r===2?"error":"warning",file:t,position:"".concat(o,":").concat(c),rule:a,message:i})})}),n.length&&en(n)}catch(t){eo(e)}}function ea(e){return ei.apply(this,arguments)}function ei(){ei=o(function(e){var t,n,r,o,c,a,i,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ec;n=new AbortController;E.on("SIGINT",function(){A.warn("Process interrupted. Terminating..."),n.abort(),E.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,ee(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,c=r.stderr;[o,c].forEach(function(e){return e&&t(e)});return[3,4];case 3:a=f.sent();i=a.stdout,s=a.stderr,u=a.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&A.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return ei.apply(this,arguments)}function es(e){return{raw:!0,cmd:e}}function eu(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eH," ").concat(ey," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eH," ").concat(eW," ").concat(eA," ").concat(e):"".concat(eH," ").concat(ej," ").concat(e)}function el(e,t){return typeof e=="function"?eu(e(t),t):(typeof e==="undefined"?"undefined":d(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eu(e,t):e}function ef(e,t){return ep.apply(this,arguments)}function ep(){ep=o(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);A.start("".concat(e)),T&&A.info("→ ".concat(t));return[4,ea(t)];case 1:r.sent(),A.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw A.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ep.apply(this,arguments)}import*as ed from"node:path";function eh(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ed).resolve.apply(r,[eg].concat(p(t)))}function em(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ed).join.apply(r,p(t))}var eg=I.env.INIT_CWD||I.cwd(),ey="@cyberskill/shared",ev=".cyberskill-storage",eb="node_modules",ew="dist",eI="package.json",eS="package-lock.json",eE="tsconfig.json",eO=".gitignore",e_=".simple-git-hooks.json",eT="pnpm-lock.yaml",eC=".git/hooks/",ek=".git/COMMIT_EDITMSG",eN=em(eg,eb,ey,ew),ej="cyberskill",eA="src/nodejs/cli/index.ts",eG="eslint",eL="eslint",ex="vitest",eP="playwright",eR="vitest",eD="@commitlint/cli",eF="commitlint",eM="lint-staged",eU="lint-staged",eJ="typescript",eK="tsc",eW="tsx",eY="git",eB="pnpm",eH="pnpm exec",e$="simple-git-hooks",eq="simple-git-hooks",eQ="@eslint/config-inspector",ez="eslint-config-inspector",eV="node-modules-inspector",eX="node-modules-inspector",eZ={CYBERSKILL_DIRECTORY:eN,WORKING_DIRECTORY:eg,TS_CONFIG:eh(eE),GIT_IGNORE:eh(eO),GIT_HOOK:eh(eC),GIT_COMMIT_MSG:eh(ek),SIMPLE_GIT_HOOKS_JSON:eh(e_),PACKAGE_JSON:eh(eI),PACKAGE_LOCK_JSON:eh(eS),PNPM_LOCK_YAML:eh(eT),NODE_MODULES:eh(eb),LINT_STAGED_CONFIG:eh("".concat(eN,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eh("".concat(eN,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eh("".concat(eN,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eh("".concat(eN,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eh("".concat(eN,"/react/vitest/vitest.e2e.js"))};function e0(e){return e1.apply(this,arguments)}function e1(){e1=o(function(e){var t,n,r,o,c,a;var i=arguments;return m(this,function(s){switch(s.label){case 0:for(t=i.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=i[r]}o=f(n,2),c=o[0],a=o[1];switch(e){case"CLI":return[3,1];case"RAW":return[3,3]}return[3,4];case 1:return[4,B(c.split(" "),{update:!0})];case 2:return[2,(s.sent(),el(es("".concat(eH," ").concat(a))))];case 3:return[2,el(es(c))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return e1.apply(this,arguments)}function e2(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}return /*#__PURE__*/o(function(){return m(this,function(t){return[2,e0.apply(void 0,[e].concat(p(n)))]})})}var e4={simpleGitHooks:e2("CLI",e$,eq),eslintInspect:e2("CLI",eQ,ez),nodeModulesInspect:e2("CLI",eV,eX),eslintCheck:e2("CLI",eG,"".concat(eL," ").concat(eZ.WORKING_DIRECTORY)),eslintFix:e2("CLI",eG,"".concat(eL," ").concat(eZ.WORKING_DIRECTORY," --fix")),typescriptCheck:e2("CLI",eJ,"".concat(eK," -p ").concat(eZ.TS_CONFIG," --noEmit")),configureGitHook:e2("RAW","".concat(eY," config core.hooksPath ").concat(eZ.GIT_HOOK)),testUnit:e2("CLI",ex,"".concat(eR," --config ").concat(eZ.UNIT_TEST_CONFIG)),testE2e:e2("CLI","".concat(ex," ").concat(eP),"".concat(eR," --config ").concat(eZ.E2E_TEST_CONFIG)),commitLint:e2("CLI",eD,"".concat(eF," --edit ").concat(eZ.GIT_COMMIT_MSG," --config ").concat(eZ.COMMITLINT_CONFIG)),lintStaged:e2("CLI",eM,"".concat(eU," --config ").concat(eZ.LINT_STAGED_CONFIG)),stageBuildDirectory:e2("RAW","".concat(eY," add ").concat(ew)),build:e2("RAW","".concat(eB," run build")),pnpmInstallStandard:e2("RAW","".concat(eB," install")),pnpmInstallLegacy:e2("RAW","".concat(eB," install --legacy-peer-deps")),pnpmInstallForce:e2("RAW","".concat(eB," install --force"))};function e3(e){return w(l({plugins:[b()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[eZ.UNIT_TEST_SETUP_CONFIG]}},e))}export{v as vitestE2E,e3 as vitestUnit};
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function t(e){if(Array.isArray(e))return e}function r(t){if(Array.isArray(t))return e(t)}function n(e,t,r,n,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){r(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(n,a)}}function a(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 o(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function c(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,t){var r=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r==null)return;var n=[];var a=true;var o=false;var c,i;try{for(r=r.call(e);!(a=(c=r.next()).done);a=true){n.push(c.value);if(t&&n.length===t)break}}catch(e){o=true;i=e}finally{try{if(!a&&r["return"]!=null)r["return"]()}finally{if(o)throw i}}return n}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){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 l(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){o(e,t,r[t])})}return e}function f(e,r){return t(e)||i(e,r)||v(e,r)||s()}function d(e){return r(e)||c(e)||v(e)||u()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(t,r){if(!t)return;if(typeof t==="string")return e(t,r);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor)n=t.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(t,r)}function h(e,t){var r,n,a,o,c={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]};return o={next:i(0),"throw":i(1),"return":i(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function i(e){return function(t){return s([e,t])}}function s(o){if(r)throw new TypeError("Generator is already executing.");while(c)try{if(r=1,n&&(a=o[0]&2?n["return"]:o[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;if(n=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:c.label++;return{value:o[1],done:false};case 5:c.label++;n=o[1];o=[0];continue;case 7:o=c.ops.pop();c.trys.pop();continue;default:if(!(a=c.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){c=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){c.label=o[1];break}if(o[0]===6&&c.label<a[1]){c.label=a[1];a=o;break}if(a&&c.label<a[2]){c.label=a[2];c.ops.push(o);break}if(a[2])c.ops.pop();c.trys.pop();continue}o=t.call(e,c)}catch(e){o=[6,e];n=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var y=Object.create;var g=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var O=function(e,t){for(var r in t)g(e,r,{get:t[r],enumerable:!0})},S=function(e,t,r,n){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var i=function(){var a=u.value;!I.call(e,a)&&a!==r&&g(e,a,{get:function(){return t[a]},enumerable:!(n=m(t,a))||n.enumerable})};for(var s=b(t)[Symbol.iterator](),u;!(a=(u=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var _=function(e,t,r){return r=e!=null?y(w(e)):{},S(t||!e||!e.__esModule?g(r,"default",{value:e,enumerable:!0}):r,e)},E=function(e){return S(g({},"__esModule",{value:!0}),e)};var T={};O(T,{vitestUnit:function(){return tr}});module.exports=E(T);var C=_(require("@vitejs/plugin-react-swc"),1),j=require("vitest/config");var k=_(require("process"),1);var N=require("child_process"),A=_(require("process"),1),G=_(require("util"),1);var L=_(require("process"),1),P=L.default.env.DEBUG==="true";var x=_(require("chalk"),1),D=_(require("consola"),1),R=require("graphql");P||(D.default.level=4);function F(e){var t=x.default[e];return typeof t=="function"?t:x.default.green}var M={silent:D.default.silent,level:D.default.level,fatal:D.default.fatal,error:D.default.error,warn:D.default.warn,log:D.default.log,info:D.default.info,success:D.default.success,ready:D.default.ready,start:D.default.start,box:D.default.box,debug:D.default.debug,trace:D.default.trace,verbose:D.default.verbose,printBoxedLog:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){D.default.box(x.default.green(e));return}t.forEach(function(e){var t=e.file,n=e.position,a=e.rule,o=e.message;D.default.log("".concat(x.default.gray("File:")," ").concat(x.default.blue("".concat(t).concat(n?":".concat(n):"")))),a&&D.default.log(" ".concat(F(r)("Rule:")," ").concat(a)),D.default.log(" ".concat(F(r)("Message:")," ").concat(o))}),D.default.box(F(r)("".concat(e," : ").concat(t.length))),D.default.log(x.default.gray("─".repeat(40)))}};var U={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var q=_(require("node-fetch"),1);var J=_(require("fs"),1);function K(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return t.every(function(e){return J.existsSync(e)})}function W(e,t){var r=J.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var n=JSON.parse(r);if((typeof n==="undefined"?"undefined":p(n))=="object"&&n!==null)return n;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return r}function Y(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=r.isJson,a=n===void 0?!1:n,o=a&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);J.writeFileSync(e,o,"utf-8")}function B(e){var t=eS(e_,ek);if(!K(t))return!1;try{var r=W(t,{asJson:!0}),n=r.name,a=r.dependencies,o=a===void 0?{}:a,c=r.devDependencies,i=c===void 0?{}:c,s=n===e,u=e in o,l=e in i;return s||u||l?{path:t,file:r,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return M.warn("Failed to read package.json: ".concat(e.message)),!1}}function H(e){return $.apply(this,arguments)}function $(){$=a(function(e){var t,r,n,a;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,q.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:r=o.sent(),n=r.version;return[2,n];case 3:a=o.sent();throw M.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return $.apply(this,arguments)}function z(e,t){return Q.apply(this,arguments)}function Q(){Q=a(function(e,t){var r,n,a,o,c,i,s,u,f,d,p,v,y,g,m,b,w,I,O,S,_;return h(this,function(h){switch(h.label){case 0:h.trys.push([0,4,,5]);r=B(e);if(!r)return[2,l({},U)];s=r.path,u=r.file,f=r.isCurrentProject,d=r.isDepend,p=r.isDevDepend,v=(n=u.dependencies)!==null&&n!==void 0?n:{},y=(a=u.devDependencies)!==null&&a!==void 0?a:{},g=f?(o=u.version)!==null&&o!==void 0?o:"0.0.0":d?(c=v[e])!==null&&c!==void 0?c:"0.0.0":p?(i=y[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!f)return[3,1];w=g;return[3,3];case 1:return[4,H(e)];case 2:w=h.sent();h.label=3;case 3:m=w,b=f||g===m;if(!b&&(t===null||t===void 0?void 0:t.update)){;O=d?"dependencies":p?"devDependencies":null;O&&((I=u[O])===null||I===void 0?void 0:I[e])!==m&&(u[O]=(S=u[O])!==null&&S!==void 0?S:{},u[O][e]=m,Y(s,u,{isJson:!0}),M.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:_=h.sent();return[2,(M.error('Error checking package "'.concat(e,'": ').concat(_.message)),l({},U))];case 5:return[2]}})});return Q.apply(this,arguments)}function V(){return X.apply(this,arguments)}function X(){X=a(function(){var e,t,r,n,a,o,c,i,s,u,l,f;return h(this,function(d){switch(d.label){case 0:e=[{command:function(){return tt.pnpmInstallStandard()},message:"Installing dependencies (standard)"},{command:function(){return tt.pnpmInstallLegacy()},message:"Retrying with legacy peer dependencies"},{command:function(){return tt.pnpmInstallForce()},message:"Retrying with force install"}];t=true,r=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);a=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,i()];case 4:u=d.sent();return[4,eb("".concat(s," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();M.warn("Installation attempt failed: ".concat(s)),M.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();r=true;n=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(r){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return X.apply(this,arguments)}function Z(e,t){return ee.apply(this,arguments)}function ee(){ee=a(function(e,t){var r,n,a,o,c,i,s,u,l,f,p;return h(this,function(v){switch(v.label){case 0:if(!K(e8.PACKAGE_JSON)){M.error("package.json not found. Aborting setup.");return[2]}v.label=1;case 1:v.trys.push([1,13,,14]);r=d(new Set(e)).sort();return[4,Promise.all(r.map(function(e){return z(e,{update:t===null||t===void 0?void 0:t.update})}))];case 2:n=v.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,V()];case 3:n=v.sent();v.label=4;case 4:n;o=true,c=false,i=undefined;v.label=5;case 5:v.trys.push([5,10,11,12]);s=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();v.label=6;case 6:if(!!(o=(u=s.next()).done))return[3,9];l=u.value;return[4,l()];case 7:v.sent();v.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:f=v.sent();c=true;i=f;return[3,12];case 11:try{if(!o&&s.return!=null){s.return()}}finally{if(c){throw i}}return[7];case 12:M.success('"'.concat(e.join(", "),'" setup completed.'));return[3,14];case 13:p=v.sent();throw M.error('Failed to setup "'.concat(e.join(", "),'": ').concat(p.message)),p;case 14:return[2]}})});return ee.apply(this,arguments)}var et=_(require("node-persist"),1),er=_(require("os"),1),en=_(require("process"),1);function ea(){return en.default.env.CYBERSKILL_STORAGE_DIR||eS(er.default.homedir(),eT)}function eo(){return ec.apply(this,arguments)}function ec(){ec=a(function(){var e;return h(this,function(t){switch(t.label){case 0:e=et.default.defaultInstance;if(e)return[3,2];return[4,et.default.init({dir:ea(),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]}})});return ec.apply(this,arguments)}var ei={get:function e(e){return a(function(){var t,r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eo()];case 1:n.sent();return[4,et.default.getItem(e)];case 2:return[2,(t=n.sent())!==null&&t!==void 0?t:null];case 3:r=n.sent();return[2,(M.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eo()];case 1:n.sent();return[4,et.default.setItem(e,t)];case 2:n.sent();return[3,4];case 3:r=n.sent();M.error('[Storage:set] Error setting key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eo()];case 1:r.sent();return[4,et.default.removeItem(e)];case 2:r.sent();return[3,4];case 3:t=r.sent();M.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eo()];case 1:r.sent();return[4,et.default.keys()];case 2:e=r.sent();return[2,Array.isArray(e)?e:(M.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=r.sent();return[2,(M.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return h(this,function(t){try{return[2,"".concat(ea()," (key: ").concat(e,")")]}catch(e){return[2,(M.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var es=G.promisify(N.exec);function eu(e){return"error_list:".concat(e)}function el(e){return ef.apply(this,arguments)}function ef(){ef=a(function(e){var t,r,n;return h(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),r=eu(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,ei.set(r,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/a(function(){var e;return h(this,function(t){switch(t.label){case 0:return[4,ei.getLogLink(r)];case 1:e=t.sent();e&&M.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:n=o.sent();M.error("Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return ef.apply(this,arguments)}function ed(e){var t=[],r=[],n="",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("/"))n=e.trim();else{var i=a.exec(e)||[],s=o.exec(e)||[],u=c.exec(e)||[];i.length&&n?t.push({file:n,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()}):s.length?t.push({file:s[1],position:"".concat(s[2],":").concat(s[3]),type:s[4]==="error"?"error":"warning",message:s[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):r.push(e.trim())}}),t.length&&el(t),P&&r.length&&(M.warn("Unmatched lines:"),r.forEach(function(e){return M.info(" ".concat(e))}))}function ep(e){try{var t=JSON.parse(e),r=[];t.forEach(function(e){var t=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;r.push({type:n===2?"error":"warning",file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),r.length&&el(r)}catch(t){ed(e)}}function ev(e){return eh.apply(this,arguments)}function eh(){eh=a(function(e){var t,r,n,a,o,c,i,s,u;var l=arguments;return h(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ep;r=new AbortController;A.default.on("SIGINT",function(){M.warn("Process interrupted. Terminating..."),r.abort(),A.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,es(e,{maxBuffer:0x6400000,signal:r.signal})];case 2:n=f.sent(),a=n.stdout,o=n.stderr;[a,o].forEach(function(e){return e&&t(e)});return[3,4];case 3:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&M.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return eh.apply(this,arguments)}function ey(e){return{raw:!0,cmd:e}}function eg(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e0," ").concat(eE," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e0," ").concat(eV," ").concat(eM," ").concat(e):"".concat(e0," ").concat(eF," ").concat(e)}function em(e,t){return typeof e=="function"?eg(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eg(e,t):e}function eb(e,t){return ew.apply(this,arguments)}function ew(){ew=a(function(e,t){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);M.start("".concat(e)),P&&M.info("→ ".concat(t));return[4,ev(t)];case 1:n.sent(),M.success("".concat(e," done."));return[3,3];case 2:r=n.sent();throw M.error("".concat(e," failed: ").concat(r.message)),r;case 3:return[2]}})});return ew.apply(this,arguments)}var eI=_(require("path"),1);function eO(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=eI).resolve.apply(n,[e_].concat(d(t)))}function eS(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=eI).join.apply(n,d(t))}var e_=k.default.env.INIT_CWD||k.default.cwd(),eE="@cyberskill/shared",eT=".cyberskill-storage",eC="node_modules",ej="dist",ek="package.json",eN="package-lock.json",eA="tsconfig.json",eG=".gitignore",eL=".simple-git-hooks.json",eP="pnpm-lock.yaml",ex=".git/hooks/",eD=".git/COMMIT_EDITMSG",eR=eS(e_,eC,eE,ej),eF="cyberskill",eM="src/nodejs/cli/index.ts",eU="eslint",eq="eslint",eJ="vitest",eK="playwright",eW="vitest",eY="@commitlint/cli",eB="commitlint",eH="lint-staged",e$="lint-staged",ez="typescript",eQ="tsc",eV="tsx",eX="git",eZ="pnpm",e0="pnpm exec",e1="simple-git-hooks",e2="simple-git-hooks",e4="@eslint/config-inspector",e3="eslint-config-inspector",e5="node-modules-inspector",e6="node-modules-inspector",e8={CYBERSKILL_DIRECTORY:eR,WORKING_DIRECTORY:e_,TS_CONFIG:eO(eA),GIT_IGNORE:eO(eG),GIT_HOOK:eO(ex),GIT_COMMIT_MSG:eO(eD),SIMPLE_GIT_HOOKS_JSON:eO(eL),PACKAGE_JSON:eO(ek),PACKAGE_LOCK_JSON:eO(eN),PNPM_LOCK_YAML:eO(eP),NODE_MODULES:eO(eC),LINT_STAGED_CONFIG:eO("".concat(eR,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eO("".concat(eR,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eO("".concat(eR,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eO("".concat(eR,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eO("".concat(eR,"/react/vitest/vitest.e2e.js"))};function e7(e){return e9.apply(this,arguments)}function e9(){e9=a(function(e){var t,r,n,a,o,c;var i=arguments;return h(this,function(s){switch(s.label){case 0:for(t=i.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=i[n]}a=f(r,2),o=a[0],c=a[1];switch(e){case"CLI":return[3,1];case"RAW":return[3,3]}return[3,4];case 1:return[4,Z(o.split(" "),{update:!0})];case 2:return[2,(s.sent(),em(ey("".concat(e0," ").concat(c))))];case 3:return[2,em(ey(o))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return e9.apply(this,arguments)}function te(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=arguments[n]}return /*#__PURE__*/a(function(){return h(this,function(t){return[2,e7.apply(void 0,[e].concat(d(r)))]})})}var tt={simpleGitHooks:te("CLI",e1,e2),eslintInspect:te("CLI",e4,e3),nodeModulesInspect:te("CLI",e5,e6),eslintCheck:te("CLI",eU,"".concat(eq," ").concat(e8.WORKING_DIRECTORY)),eslintFix:te("CLI",eU,"".concat(eq," ").concat(e8.WORKING_DIRECTORY," --fix")),typescriptCheck:te("CLI",ez,"".concat(eQ," -p ").concat(e8.TS_CONFIG," --noEmit")),configureGitHook:te("RAW","".concat(eX," config core.hooksPath ").concat(e8.GIT_HOOK)),testUnit:te("CLI",eJ,"".concat(eW," --config ").concat(e8.UNIT_TEST_CONFIG)),testE2e:te("CLI","".concat(eJ," ").concat(eK),"".concat(eW," --config ").concat(e8.E2E_TEST_CONFIG)),commitLint:te("CLI",eY,"".concat(eB," --edit ").concat(e8.GIT_COMMIT_MSG," --config ").concat(e8.COMMITLINT_CONFIG)),lintStaged:te("CLI",eH,"".concat(e$," --config ").concat(e8.LINT_STAGED_CONFIG)),stageBuildDirectory:te("RAW","".concat(eX," add ").concat(ej)),build:te("RAW","".concat(eZ," run build")),pnpmInstallStandard:te("RAW","".concat(eZ," install")),pnpmInstallLegacy:te("RAW","".concat(eZ," install --legacy-peer-deps")),pnpmInstallForce:te("RAW","".concat(eZ," install --force"))};function tr(e){return(0,j.defineConfig)(l({plugins:[(0,C.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[e8.UNIT_TEST_SETUP_CONFIG]}},e))}0&&(module.exports={vitestUnit:vitestUnit});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function t(e){if(Array.isArray(e))return e}function r(t){if(Array.isArray(t))return e(t)}function n(e,t,r,n,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){r(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(n,a)}}function a(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 o(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function c(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,t){var r=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r==null)return;var n=[];var a=true;var o=false;var c,i;try{for(r=r.call(e);!(a=(c=r.next()).done);a=true){n.push(c.value);if(t&&n.length===t)break}}catch(e){o=true;i=e}finally{try{if(!a&&r["return"]!=null)r["return"]()}finally{if(o)throw i}}return n}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){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 l(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){o(e,t,r[t])})}return e}function f(e,r){return t(e)||i(e,r)||v(e,r)||s()}function d(e){return r(e)||c(e)||v(e)||u()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(t,r){if(!t)return;if(typeof t==="string")return e(t,r);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor)n=t.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(t,r)}function h(e,t){var r,n,a,o,c={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]};return o={next:i(0),"throw":i(1),"return":i(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function i(e){return function(t){return s([e,t])}}function s(o){if(r)throw new TypeError("Generator is already executing.");while(c)try{if(r=1,n&&(a=o[0]&2?n["return"]:o[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,o[1])).done)return a;if(n=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:c.label++;return{value:o[1],done:false};case 5:c.label++;n=o[1];o=[0];continue;case 7:o=c.ops.pop();c.trys.pop();continue;default:if(!(a=c.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){c=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){c.label=o[1];break}if(o[0]===6&&c.label<a[1]){c.label=a[1];a=o;break}if(a&&c.label<a[2]){c.label=a[2];c.ops.push(o);break}if(a[2])c.ops.pop();c.trys.pop();continue}o=t.call(e,c)}catch(e){o=[6,e];n=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var y=Object.create;var g=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var O=function(e,t){for(var r in t)g(e,r,{get:t[r],enumerable:!0})},S=function(e,t,r,n){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var i=function(){var a=u.value;!I.call(e,a)&&a!==r&&g(e,a,{get:function(){return t[a]},enumerable:!(n=m(t,a))||n.enumerable})};for(var s=b(t)[Symbol.iterator](),u;!(a=(u=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var _=function(e,t,r){return r=e!=null?y(w(e)):{},S(t||!e||!e.__esModule?g(r,"default",{value:e,enumerable:!0}):r,e)},E=function(e){return S(g({},"__esModule",{value:!0}),e)};var T={};O(T,{vitestUnit:function(){return tr}});module.exports=E(T);var C=_(require("@vitejs/plugin-react-swc"),1),j=require("vitest/config");var k=_(require("process"),1);var N=require("child_process"),A=_(require("process"),1),G=_(require("util"),1);var L=_(require("process"),1),P=L.default.env.DEBUG==="true";var x=_(require("chalk"),1),D=_(require("consola"),1),R=require("graphql");P||(D.default.level=4);function F(e){var t=x.default[e];return typeof t=="function"?t:x.default.green}var M={silent:D.default.silent,level:D.default.level,fatal:D.default.fatal,error:D.default.error,warn:D.default.warn,log:D.default.log,info:D.default.info,success:D.default.success,ready:D.default.ready,start:D.default.start,box:D.default.box,debug:D.default.debug,trace:D.default.trace,verbose:D.default.verbose,printBoxedLog:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){D.default.box(x.default.green(e));return}t.forEach(function(e){var t=e.file,n=e.position,a=e.rule,o=e.message;D.default.log("".concat(x.default.gray("File:")," ").concat(x.default.blue("".concat(t).concat(n?":".concat(n):"")))),a&&D.default.log(" ".concat(F(r)("Rule:")," ").concat(a)),D.default.log(" ".concat(F(r)("Message:")," ").concat(o))}),D.default.box(F(r)("".concat(e," : ").concat(t.length))),D.default.log(x.default.gray("─".repeat(40)))}};var U={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var q=_(require("node-fetch"),1);var J=_(require("fs"),1);function K(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return t.every(function(e){return J.existsSync(e)})}function W(e,t){var r=J.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var n=JSON.parse(r);if((typeof n==="undefined"?"undefined":p(n))=="object"&&n!==null)return n;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return r}function Y(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=r.isJson,a=n===void 0?!1:n,o=a&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);J.writeFileSync(e,o,"utf-8")}function B(e){var t=eS(e_,ek);if(!K(t))return!1;try{var r=W(t,{asJson:!0}),n=r.name,a=r.dependencies,o=a===void 0?{}:a,c=r.devDependencies,i=c===void 0?{}:c,s=n===e,u=e in o,l=e in i;return s||u||l?{path:t,file:r,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return M.warn("Failed to read package.json: ".concat(e.message)),!1}}function H(e){return $.apply(this,arguments)}function $(){$=a(function(e){var t,r,n,a;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,q.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:r=o.sent(),n=r.version;return[2,n];case 3:a=o.sent();throw M.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return $.apply(this,arguments)}function z(e,t){return Q.apply(this,arguments)}function Q(){Q=a(function(e,t){var r,n,a,o,c,i,s,u,f,d,p,v,y,g,m,b,w,I,O,S,_;return h(this,function(h){switch(h.label){case 0:h.trys.push([0,4,,5]);r=B(e);if(!r)return[2,l({},U)];s=r.path,u=r.file,f=r.isCurrentProject,d=r.isDepend,p=r.isDevDepend,v=(n=u.dependencies)!==null&&n!==void 0?n:{},y=(a=u.devDependencies)!==null&&a!==void 0?a:{},g=f?(o=u.version)!==null&&o!==void 0?o:"0.0.0":d?(c=v[e])!==null&&c!==void 0?c:"0.0.0":p?(i=y[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!f)return[3,1];w=g;return[3,3];case 1:return[4,H(e)];case 2:w=h.sent();h.label=3;case 3:m=w,b=f||g===m;if(!b&&(t===null||t===void 0?void 0:t.update)){;O=d?"dependencies":p?"devDependencies":null;O&&((I=u[O])===null||I===void 0?void 0:I[e])!==m&&(u[O]=(S=u[O])!==null&&S!==void 0?S:{},u[O][e]=m,Y(s,u,{isJson:!0}),M.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:_=h.sent();return[2,(M.error('Error checking package "'.concat(e,'": ').concat(_.message)),l({},U))];case 5:return[2]}})});return Q.apply(this,arguments)}function V(){return X.apply(this,arguments)}function X(){X=a(function(){var e,t,r,n,a,o,c,i,s,u,l,f;return h(this,function(d){switch(d.label){case 0:e=[{command:function(){return tt.pnpmInstallStandard()},message:"Installing dependencies (standard)"},{command:function(){return tt.pnpmInstallLegacy()},message:"Retrying with legacy peer dependencies"},{command:function(){return tt.pnpmInstallForce()},message:"Retrying with force install"}];t=true,r=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);a=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,i()];case 4:u=d.sent();return[4,eb("".concat(s," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();M.warn("Installation attempt failed: ".concat(s)),M.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();r=true;n=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(r){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return X.apply(this,arguments)}function Z(e,t){return ee.apply(this,arguments)}function ee(){ee=a(function(e,t){var r,n,a,o,c,i,s,u,l,f,p;return h(this,function(v){switch(v.label){case 0:if(!K(e8.PACKAGE_JSON)){M.error("package.json not found. Aborting setup.");return[2]}v.label=1;case 1:v.trys.push([1,13,,14]);r=d(new Set(e)).sort();return[4,Promise.all(r.map(function(e){return z(e,{update:t===null||t===void 0?void 0:t.update})}))];case 2:n=v.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,V()];case 3:n=v.sent();v.label=4;case 4:n;o=true,c=false,i=undefined;v.label=5;case 5:v.trys.push([5,10,11,12]);s=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();v.label=6;case 6:if(!!(o=(u=s.next()).done))return[3,9];l=u.value;return[4,l()];case 7:v.sent();v.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:f=v.sent();c=true;i=f;return[3,12];case 11:try{if(!o&&s.return!=null){s.return()}}finally{if(c){throw i}}return[7];case 12:return[3,14];case 13:p=v.sent();throw M.error('Failed to setup "'.concat(e.join(", "),'": ').concat(p.message)),p;case 14:return[2]}})});return ee.apply(this,arguments)}var et=_(require("node-persist"),1),er=_(require("os"),1),en=_(require("process"),1);function ea(){return en.default.env.CYBERSKILL_STORAGE_DIR||eS(er.default.homedir(),eT)}function eo(){return ec.apply(this,arguments)}function ec(){ec=a(function(){var e;return h(this,function(t){switch(t.label){case 0:e=et.default.defaultInstance;if(e)return[3,2];return[4,et.default.init({dir:ea(),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]}})});return ec.apply(this,arguments)}var ei={get:function e(e){return a(function(){var t,r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eo()];case 1:n.sent();return[4,et.default.getItem(e)];case 2:return[2,(t=n.sent())!==null&&t!==void 0?t:null];case 3:r=n.sent();return[2,(M.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eo()];case 1:n.sent();return[4,et.default.setItem(e,t)];case 2:n.sent();return[3,4];case 3:r=n.sent();M.error('[Storage:set] Error setting key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eo()];case 1:r.sent();return[4,et.default.removeItem(e)];case 2:r.sent();return[3,4];case 3:t=r.sent();M.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eo()];case 1:r.sent();return[4,et.default.keys()];case 2:e=r.sent();return[2,Array.isArray(e)?e:(M.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=r.sent();return[2,(M.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return h(this,function(t){try{return[2,"".concat(ea()," (key: ").concat(e,")")]}catch(e){return[2,(M.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var es=G.promisify(N.exec);function eu(e){return"error_list:".concat(e)}function el(e){return ef.apply(this,arguments)}function ef(){ef=a(function(e){var t,r,n;return h(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),r=eu(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,ei.set(r,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/a(function(){var e;return h(this,function(t){switch(t.label){case 0:return[4,ei.getLogLink(r)];case 1:e=t.sent();e&&M.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:n=o.sent();M.error("Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return ef.apply(this,arguments)}function ed(e){var t=[],r=[],n="",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("/"))n=e.trim();else{var i=a.exec(e)||[],s=o.exec(e)||[],u=c.exec(e)||[];i.length&&n?t.push({file:n,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()}):s.length?t.push({file:s[1],position:"".concat(s[2],":").concat(s[3]),type:s[4]==="error"?"error":"warning",message:s[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):r.push(e.trim())}}),t.length&&el(t),P&&r.length&&(M.warn("Unmatched lines:"),r.forEach(function(e){return M.info(" ".concat(e))}))}function ep(e){try{var t=JSON.parse(e),r=[];t.forEach(function(e){var t=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;r.push({type:n===2?"error":"warning",file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),r.length&&el(r)}catch(t){ed(e)}}function ev(e){return eh.apply(this,arguments)}function eh(){eh=a(function(e){var t,r,n,a,o,c,i,s,u;var l=arguments;return h(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ep;r=new AbortController;A.default.on("SIGINT",function(){M.warn("Process interrupted. Terminating..."),r.abort(),A.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,es(e,{maxBuffer:0x6400000,signal:r.signal})];case 2:n=f.sent(),a=n.stdout,o=n.stderr;[a,o].forEach(function(e){return e&&t(e)});return[3,4];case 3:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&M.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return eh.apply(this,arguments)}function ey(e){return{raw:!0,cmd:e}}function eg(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e0," ").concat(eE," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e0," ").concat(eV," ").concat(eM," ").concat(e):"".concat(e0," ").concat(eF," ").concat(e)}function em(e,t){return typeof e=="function"?eg(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eg(e,t):e}function eb(e,t){return ew.apply(this,arguments)}function ew(){ew=a(function(e,t){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);M.start("".concat(e)),P&&M.info("→ ".concat(t));return[4,ev(t)];case 1:n.sent(),M.success("".concat(e," done."));return[3,3];case 2:r=n.sent();throw M.error("".concat(e," failed: ").concat(r.message)),r;case 3:return[2]}})});return ew.apply(this,arguments)}var eI=_(require("path"),1);function eO(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=eI).resolve.apply(n,[e_].concat(d(t)))}function eS(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=eI).join.apply(n,d(t))}var e_=k.default.env.INIT_CWD||k.default.cwd(),eE="@cyberskill/shared",eT=".cyberskill-storage",eC="node_modules",ej="dist",ek="package.json",eN="package-lock.json",eA="tsconfig.json",eG=".gitignore",eL=".simple-git-hooks.json",eP="pnpm-lock.yaml",ex=".git/hooks/",eD=".git/COMMIT_EDITMSG",eR=eS(e_,eC,eE,ej),eF="cyberskill",eM="src/nodejs/cli/index.ts",eU="eslint",eq="eslint",eJ="vitest",eK="playwright",eW="vitest",eY="@commitlint/cli",eB="commitlint",eH="lint-staged",e$="lint-staged",ez="typescript",eQ="tsc",eV="tsx",eX="git",eZ="pnpm",e0="pnpm exec",e1="simple-git-hooks",e2="simple-git-hooks",e4="@eslint/config-inspector",e3="eslint-config-inspector",e5="node-modules-inspector",e6="node-modules-inspector",e8={CYBERSKILL_DIRECTORY:eR,WORKING_DIRECTORY:e_,TS_CONFIG:eO(eA),GIT_IGNORE:eO(eG),GIT_HOOK:eO(ex),GIT_COMMIT_MSG:eO(eD),SIMPLE_GIT_HOOKS_JSON:eO(eL),PACKAGE_JSON:eO(ek),PACKAGE_LOCK_JSON:eO(eN),PNPM_LOCK_YAML:eO(eP),NODE_MODULES:eO(eC),LINT_STAGED_CONFIG:eO("".concat(eR,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eO("".concat(eR,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eO("".concat(eR,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eO("".concat(eR,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eO("".concat(eR,"/react/vitest/vitest.e2e.js"))};function e7(e){return e9.apply(this,arguments)}function e9(){e9=a(function(e){var t,r,n,a,o,c;var i=arguments;return h(this,function(s){switch(s.label){case 0:for(t=i.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=i[n]}a=f(r,2),o=a[0],c=a[1];switch(e){case"CLI":return[3,1];case"RAW":return[3,3]}return[3,4];case 1:return[4,Z(o.split(" "),{update:!0})];case 2:return[2,(s.sent(),em(ey("".concat(e0," ").concat(c))))];case 3:return[2,em(ey(o))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return e9.apply(this,arguments)}function te(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=arguments[n]}return /*#__PURE__*/a(function(){return h(this,function(t){return[2,e7.apply(void 0,[e].concat(d(r)))]})})}var tt={simpleGitHooks:te("CLI",e1,e2),eslintInspect:te("CLI",e4,e3),nodeModulesInspect:te("CLI",e5,e6),eslintCheck:te("CLI",eU,"".concat(eq," ").concat(e8.WORKING_DIRECTORY)),eslintFix:te("CLI",eU,"".concat(eq," ").concat(e8.WORKING_DIRECTORY," --fix")),typescriptCheck:te("CLI",ez,"".concat(eQ," -p ").concat(e8.TS_CONFIG," --noEmit")),configureGitHook:te("RAW","".concat(eX," config core.hooksPath ").concat(e8.GIT_HOOK)),testUnit:te("CLI",eJ,"".concat(eW," --config ").concat(e8.UNIT_TEST_CONFIG)),testE2e:te("CLI","".concat(eJ," ").concat(eK),"".concat(eW," --config ").concat(e8.E2E_TEST_CONFIG)),commitLint:te("CLI",eY,"".concat(eB," --edit ").concat(e8.GIT_COMMIT_MSG," --config ").concat(e8.COMMITLINT_CONFIG)),lintStaged:te("CLI",eH,"".concat(e$," --config ").concat(e8.LINT_STAGED_CONFIG)),stageBuildDirectory:te("RAW","".concat(eX," add ").concat(ej)),build:te("RAW","".concat(eZ," run build")),pnpmInstallStandard:te("RAW","".concat(eZ," install")),pnpmInstallLegacy:te("RAW","".concat(eZ," install --legacy-peer-deps")),pnpmInstallForce:te("RAW","".concat(eZ," install --force"))};function tr(e){return(0,j.defineConfig)(l({plugins:[(0,C.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[e8.UNIT_TEST_SETUP_CONFIG]}},e))}0&&(module.exports={vitestUnit:vitestUnit});
@@ -1 +1 @@
1
- function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,o,c,a){try{var i=e[c](a);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function o(e){return function(){var t=this,n=arguments;return new Promise(function(o,c){var a=e.apply(t,n);function i(e){r(a,o,c,i,s,"next",e)}function s(e){r(a,o,c,i,s,"throw",e)}i(undefined)})}}function c(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var o=true;var c=false;var a,i;try{for(n=n.call(e);!(o=(a=n.next()).done);o=true){r.push(a.value);if(t&&r.length===t)break}}catch(e){c=true;i=e}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(c)throw i}}return r}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){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 l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){c(e,t,n[t])})}return e}function f(e,n){return t(e)||i(e,n)||h(e,n)||s()}function p(e){return n(e)||a(e)||h(e)||u()}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function h(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,o,c,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]};return c={next:i(0),"throw":i(1),"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(c){if(n)throw new TypeError("Generator is already executing.");while(a)try{if(n=1,r&&(o=c[0]&2?r["return"]:c[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;if(r=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(c[0]===6&&a.label<o[1]){a.label=o[1];o=c;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(c);break}if(o[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}import y from"@vitejs/plugin-react-swc";import{defineConfig as g}from"vitest/config";import v from"node:process";import{exec as b}from"node:child_process";import I from"node:process";import*as w from"node:util";import S from"node:process";var E=S.env.DEBUG==="true";import O from"chalk";import _ from"consola";import{GraphQLError as T}from"graphql";E||(_.level=4);function C(e){var t=O[e];return typeof t=="function"?t:O.green}var k={silent:_.silent,level:_.level,fatal:_.fatal,error:_.error,warn:_.warn,log:_.log,info:_.info,success:_.success,ready:_.ready,start:_.start,box:_.box,debug:_.debug,trace:_.trace,verbose:_.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)){_.box(O.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,c=e.message;_.log("".concat(O.gray("File:")," ").concat(O.blue("".concat(t).concat(r?":".concat(r):"")))),o&&_.log(" ".concat(C(n)("Rule:")," ").concat(o)),_.log(" ".concat(C(n)("Message:")," ").concat(c))}),_.box(C(n)("".concat(e," : ").concat(t.length))),_.log(O.gray("─".repeat(40)))}};var N={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import j from"node-fetch";import*as A from"node:fs";function G(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return A.existsSync(e)})}function L(e,t){var n=A.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":d(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}function P(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,o=r===void 0?!1:r,c=o&&(typeof t==="undefined"?"undefined":d(t))=="object"?JSON.stringify(t,null,4):String(t);A.writeFileSync(e,c,"utf-8")}function R(e){var t=ep(ed,ev);if(!G(t))return!1;try{var n=L(t,{asJson:!0}),r=n.name,o=n.dependencies,c=o===void 0?{}:o,a=n.devDependencies,i=a===void 0?{}:a,s=r===e,u=e in c,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return k.warn("Failed to read package.json: ".concat(e.message)),!1}}function x(e){return D.apply(this,arguments)}function D(){D=o(function(e){var t,n,r,o;return m(this,function(c){switch(c.label){case 0:c.trys.push([0,3,,4]);return[4,j("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=c.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=c.sent(),r=n.version;return[2,r];case 3:o=c.sent();throw k.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return D.apply(this,arguments)}function F(e,t){return M.apply(this,arguments)}function M(){M=o(function(e,t){var n,r,o,c,a,i,s,u,f,p,d,h,y,g,v,b,I,w,S,E,O;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=R(e);if(!n)return[2,l({},N)];s=n.path,u=n.file,f=n.isCurrentProject,p=n.isDepend,d=n.isDevDepend,h=(r=u.dependencies)!==null&&r!==void 0?r:{},y=(o=u.devDependencies)!==null&&o!==void 0?o:{},g=f?(c=u.version)!==null&&c!==void 0?c:"0.0.0":p?(a=h[e])!==null&&a!==void 0?a:"0.0.0":d?(i=y[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!f)return[3,1];I=g;return[3,3];case 1:return[4,x(e)];case 2:I=m.sent();m.label=3;case 3:v=I,b=f||g===v;if(!b&&(t===null||t===void 0?void 0:t.update)){;S=p?"dependencies":d?"devDependencies":null;S&&((w=u[S])===null||w===void 0?void 0:w[e])!==v&&(u[S]=(E=u[S])!==null&&E!==void 0?E:{},u[S][e]=v,P(s,u,{isJson:!0}),k.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:O=m.sent();return[2,(k.error('Error checking package "'.concat(e,'": ').concat(O.message)),l({},N))];case 5:return[2]}})});return M.apply(this,arguments)}function U(){return J.apply(this,arguments)}function J(){J=o(function(){var e,t,n,r,o,c,a,i,s,u,l,f;return m(this,function(p){switch(p.label){case 0:e=[{command:function(){return e0.pnpmInstallStandard()},message:"Installing dependencies (standard)"},{command:function(){return e0.pnpmInstallLegacy()},message:"Retrying with legacy peer dependencies"},{command:function(){return e0.pnpmInstallForce()},message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);o=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(c=o.next()).done))return[3,8];a=c.value,i=a.command,s=a.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,i()];case 4:u=p.sent();return[4,es("".concat(s," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();k.warn("Installation attempt failed: ".concat(s)),k.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=p.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return J.apply(this,arguments)}function K(e,t){return W.apply(this,arguments)}function W(){W=o(function(e,t){var n,r,o,c,a,i,s,u,l,f,d;return m(this,function(h){switch(h.label){case 0:if(!G(ez.PACKAGE_JSON)){k.error("package.json not found. Aborting setup.");return[2]}h.label=1;case 1:h.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return F(e,{update:t===null||t===void 0?void 0:t.update})}))];case 2:r=h.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,U()];case 3:r=h.sent();h.label=4;case 4:r;c=true,a=false,i=undefined;h.label=5;case 5:h.trys.push([5,10,11,12]);s=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();h.label=6;case 6:if(!!(c=(u=s.next()).done))return[3,9];l=u.value;return[4,l()];case 7:h.sent();h.label=8;case 8:c=true;return[3,6];case 9:return[3,12];case 10:f=h.sent();a=true;i=f;return[3,12];case 11:try{if(!c&&s.return!=null){s.return()}}finally{if(a){throw i}}return[7];case 12:k.success('"'.concat(e.join(", "),'" setup completed.'));return[3,14];case 13:d=h.sent();throw k.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})});return W.apply(this,arguments)}import Y from"node-persist";import B from"node:os";import H from"node:process";function $(){return H.env.CYBERSKILL_STORAGE_DIR||ep(B.homedir(),em)}function q(){return Q.apply(this,arguments)}function Q(){Q=o(function(){var e;return m(this,function(t){switch(t.label){case 0:e=Y.defaultInstance;if(e)return[3,2];return[4,Y.init({dir:$(),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]}})});return Q.apply(this,arguments)}var z={get:function e(e){return o(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,q()];case 1:r.sent();return[4,Y.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 o(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,q()];case 1:r.sent();return[4,Y.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 o(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,q()];case 1:n.sent();return[4,Y.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 o(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,q()];case 1:n.sent();return[4,Y.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 o(function(){return m(this,function(t){try{return[2,"".concat($()," (key: ").concat(e,")")]}catch(e){return[2,(k.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var V=w.promisify(b);function X(e){return"error_list:".concat(e)}function Z(e){return ee.apply(this,arguments)}function ee(){ee=o(function(e){var t,n,r;return m(this,function(c){switch(c.label){case 0:if(e.length===0)return[2];t=Date.now(),n=X(t);c.label=1;case 1:c.trys.push([1,3,,4]);return[4,z.set(n,{errors:e,timestamp:t})];case 2:c.sent(),setTimeout(/*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,z.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:r=c.sent();k.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return ee.apply(this,arguments)}function et(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,c=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i=o.exec(e)||[],s=c.exec(e)||[],u=a.exec(e)||[];i.length&&r?t.push({file:r,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()}):s.length?t.push({file:s[1],position:"".concat(s[2],":").concat(s[3]),type:s[4]==="error"?"error":"warning",message:s[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):n.push(e.trim())}}),t.length&&Z(t),E&&n.length&&(k.warn("Unmatched lines:"),n.forEach(function(e){return k.info(" ".concat(e))}))}function en(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,o=e.line,c=e.column,a=e.ruleId,i=e.message;n.push({type:r===2?"error":"warning",file:t,position:"".concat(o,":").concat(c),rule:a,message:i})})}),n.length&&Z(n)}catch(t){et(e)}}function er(e){return eo.apply(this,arguments)}function eo(){eo=o(function(e){var t,n,r,o,c,a,i,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:en;n=new AbortController;I.on("SIGINT",function(){k.warn("Process interrupted. Terminating..."),n.abort(),I.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,V(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,c=r.stderr;[o,c].forEach(function(e){return e&&t(e)});return[3,4];case 3:a=f.sent();i=a.stdout,s=a.stderr,u=a.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&k.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return eo.apply(this,arguments)}function ec(e){return{raw:!0,cmd:e}}function ea(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eW," ").concat(eh," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eW," ").concat(eU," ").concat(ek," ").concat(e):"".concat(eW," ").concat(eC," ").concat(e)}function ei(e,t){return typeof e=="function"?ea(e(t),t):(typeof e==="undefined"?"undefined":d(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ea(e,t):e}function es(e,t){return eu.apply(this,arguments)}function eu(){eu=o(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);k.start("".concat(e)),E&&k.info("→ ".concat(t));return[4,er(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]}})});return eu.apply(this,arguments)}import*as el from"node:path";function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=el).resolve.apply(r,[ed].concat(p(t)))}function ep(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=el).join.apply(r,p(t))}var ed=v.env.INIT_CWD||v.cwd(),eh="@cyberskill/shared",em=".cyberskill-storage",ey="node_modules",eg="dist",ev="package.json",eb="package-lock.json",eI="tsconfig.json",ew=".gitignore",eS=".simple-git-hooks.json",eE="pnpm-lock.yaml",eO=".git/hooks/",e_=".git/COMMIT_EDITMSG",eT=ep(ed,ey,eh,eg),eC="cyberskill",ek="src/nodejs/cli/index.ts",eN="eslint",ej="eslint",eA="vitest",eG="playwright",eL="vitest",eP="@commitlint/cli",eR="commitlint",ex="lint-staged",eD="lint-staged",eF="typescript",eM="tsc",eU="tsx",eJ="git",eK="pnpm",eW="pnpm exec",eY="simple-git-hooks",eB="simple-git-hooks",eH="@eslint/config-inspector",e$="eslint-config-inspector",eq="node-modules-inspector",eQ="node-modules-inspector",ez={CYBERSKILL_DIRECTORY:eT,WORKING_DIRECTORY:ed,TS_CONFIG:ef(eI),GIT_IGNORE:ef(ew),GIT_HOOK:ef(eO),GIT_COMMIT_MSG:ef(e_),SIMPLE_GIT_HOOKS_JSON:ef(eS),PACKAGE_JSON:ef(ev),PACKAGE_LOCK_JSON:ef(eb),PNPM_LOCK_YAML:ef(eE),NODE_MODULES:ef(ey),LINT_STAGED_CONFIG:ef("".concat(eT,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ef("".concat(eT,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ef("".concat(eT,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ef("".concat(eT,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ef("".concat(eT,"/react/vitest/vitest.e2e.js"))};function eV(e){return eX.apply(this,arguments)}function eX(){eX=o(function(e){var t,n,r,o,c,a;var i=arguments;return m(this,function(s){switch(s.label){case 0:for(t=i.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=i[r]}o=f(n,2),c=o[0],a=o[1];switch(e){case"CLI":return[3,1];case"RAW":return[3,3]}return[3,4];case 1:return[4,K(c.split(" "),{update:!0})];case 2:return[2,(s.sent(),ei(ec("".concat(eW," ").concat(a))))];case 3:return[2,ei(ec(c))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eX.apply(this,arguments)}function eZ(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}return /*#__PURE__*/o(function(){return m(this,function(t){return[2,eV.apply(void 0,[e].concat(p(n)))]})})}var e0={simpleGitHooks:eZ("CLI",eY,eB),eslintInspect:eZ("CLI",eH,e$),nodeModulesInspect:eZ("CLI",eq,eQ),eslintCheck:eZ("CLI",eN,"".concat(ej," ").concat(ez.WORKING_DIRECTORY)),eslintFix:eZ("CLI",eN,"".concat(ej," ").concat(ez.WORKING_DIRECTORY," --fix")),typescriptCheck:eZ("CLI",eF,"".concat(eM," -p ").concat(ez.TS_CONFIG," --noEmit")),configureGitHook:eZ("RAW","".concat(eJ," config core.hooksPath ").concat(ez.GIT_HOOK)),testUnit:eZ("CLI",eA,"".concat(eL," --config ").concat(ez.UNIT_TEST_CONFIG)),testE2e:eZ("CLI","".concat(eA," ").concat(eG),"".concat(eL," --config ").concat(ez.E2E_TEST_CONFIG)),commitLint:eZ("CLI",eP,"".concat(eR," --edit ").concat(ez.GIT_COMMIT_MSG," --config ").concat(ez.COMMITLINT_CONFIG)),lintStaged:eZ("CLI",ex,"".concat(eD," --config ").concat(ez.LINT_STAGED_CONFIG)),stageBuildDirectory:eZ("RAW","".concat(eJ," add ").concat(eg)),build:eZ("RAW","".concat(eK," run build")),pnpmInstallStandard:eZ("RAW","".concat(eK," install")),pnpmInstallLegacy:eZ("RAW","".concat(eK," install --legacy-peer-deps")),pnpmInstallForce:eZ("RAW","".concat(eK," install --force"))};function e1(e){return g(l({plugins:[y()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[ez.UNIT_TEST_SETUP_CONFIG]}},e))}export{e1 as vitestUnit};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,o,a,c){try{var i=e[a](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function o(e){return function(){var t=this,n=arguments;return new Promise(function(o,a){var c=e.apply(t,n);function i(e){r(c,o,a,i,s,"next",e)}function s(e){r(c,o,a,i,s,"throw",e)}i(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function c(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var o=true;var a=false;var c,i;try{for(n=n.call(e);!(o=(c=n.next()).done);o=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){a=true;i=e}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(a)throw i}}return r}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){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 l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function f(e,n){return t(e)||i(e,n)||h(e,n)||s()}function p(e){return n(e)||c(e)||h(e)||u()}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function h(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,o,a,c={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]};return a={next:i(0),"throw":i(1),"return":i(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function i(e){return function(t){return s([e,t])}}function s(a){if(n)throw new TypeError("Generator is already executing.");while(c)try{if(n=1,r&&(o=a[0]&2?r["return"]:a[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;if(r=0,o)a=[a[0]&2,o.value];switch(a[0]){case 0:case 1:o=a;break;case 4:c.label++;return{value:a[1],done:false};case 5:c.label++;r=a[1];a=[0];continue;case 7:a=c.ops.pop();c.trys.pop();continue;default:if(!(o=c.trys,o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){c=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){c.label=a[1];break}if(a[0]===6&&c.label<o[1]){c.label=o[1];o=a;break}if(o&&c.label<o[2]){c.label=o[2];c.ops.push(a);break}if(o[2])c.ops.pop();c.trys.pop();continue}a=t.call(e,c)}catch(e){a=[6,e];r=0}finally{n=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}import y from"@vitejs/plugin-react-swc";import{defineConfig as g}from"vitest/config";import v from"node:process";import{exec as b}from"node:child_process";import I from"node:process";import*as w from"node:util";import S from"node:process";var E=S.env.DEBUG==="true";import O from"chalk";import _ from"consola";import{GraphQLError as T}from"graphql";E||(_.level=4);function C(e){var t=O[e];return typeof t=="function"?t:O.green}var k={silent:_.silent,level:_.level,fatal:_.fatal,error:_.error,warn:_.warn,log:_.log,info:_.info,success:_.success,ready:_.ready,start:_.start,box:_.box,debug:_.debug,trace:_.trace,verbose:_.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)){_.box(O.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;_.log("".concat(O.gray("File:")," ").concat(O.blue("".concat(t).concat(r?":".concat(r):"")))),o&&_.log(" ".concat(C(n)("Rule:")," ").concat(o)),_.log(" ".concat(C(n)("Message:")," ").concat(a))}),_.box(C(n)("".concat(e," : ").concat(t.length))),_.log(O.gray("─".repeat(40)))}};var N={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import j from"node-fetch";import*as A from"node:fs";function G(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return A.existsSync(e)})}function L(e,t){var n=A.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":d(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}function P(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,o=r===void 0?!1:r,a=o&&(typeof t==="undefined"?"undefined":d(t))=="object"?JSON.stringify(t,null,4):String(t);A.writeFileSync(e,a,"utf-8")}function R(e){var t=ep(ed,ev);if(!G(t))return!1;try{var n=L(t,{asJson:!0}),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in a,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return k.warn("Failed to read package.json: ".concat(e.message)),!1}}function x(e){return D.apply(this,arguments)}function D(){D=o(function(e){var t,n,r,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,j("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.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=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw k.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return D.apply(this,arguments)}function F(e,t){return M.apply(this,arguments)}function M(){M=o(function(e,t){var n,r,o,a,c,i,s,u,f,p,d,h,y,g,v,b,I,w,S,E,O;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=R(e);if(!n)return[2,l({},N)];s=n.path,u=n.file,f=n.isCurrentProject,p=n.isDepend,d=n.isDevDepend,h=(r=u.dependencies)!==null&&r!==void 0?r:{},y=(o=u.devDependencies)!==null&&o!==void 0?o:{},g=f?(a=u.version)!==null&&a!==void 0?a:"0.0.0":p?(c=h[e])!==null&&c!==void 0?c:"0.0.0":d?(i=y[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!f)return[3,1];I=g;return[3,3];case 1:return[4,x(e)];case 2:I=m.sent();m.label=3;case 3:v=I,b=f||g===v;if(!b&&(t===null||t===void 0?void 0:t.update)){;S=p?"dependencies":d?"devDependencies":null;S&&((w=u[S])===null||w===void 0?void 0:w[e])!==v&&(u[S]=(E=u[S])!==null&&E!==void 0?E:{},u[S][e]=v,P(s,u,{isJson:!0}),k.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:O=m.sent();return[2,(k.error('Error checking package "'.concat(e,'": ').concat(O.message)),l({},N))];case 5:return[2]}})});return M.apply(this,arguments)}function U(){return J.apply(this,arguments)}function J(){J=o(function(){var e,t,n,r,o,a,c,i,s,u,l,f;return m(this,function(p){switch(p.label){case 0:e=[{command:function(){return e0.pnpmInstallStandard()},message:"Installing dependencies (standard)"},{command:function(){return e0.pnpmInstallLegacy()},message:"Retrying with legacy peer dependencies"},{command:function(){return e0.pnpmInstallForce()},message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);o=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,i=c.command,s=c.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,i()];case 4:u=p.sent();return[4,es("".concat(s," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();k.warn("Installation attempt failed: ".concat(s)),k.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=p.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return J.apply(this,arguments)}function K(e,t){return W.apply(this,arguments)}function W(){W=o(function(e,t){var n,r,o,a,c,i,s,u,l,f,d;return m(this,function(h){switch(h.label){case 0:if(!G(ez.PACKAGE_JSON)){k.error("package.json not found. Aborting setup.");return[2]}h.label=1;case 1:h.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return F(e,{update:t===null||t===void 0?void 0:t.update})}))];case 2:r=h.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,U()];case 3:r=h.sent();h.label=4;case 4:r;a=true,c=false,i=undefined;h.label=5;case 5:h.trys.push([5,10,11,12]);s=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();h.label=6;case 6:if(!!(a=(u=s.next()).done))return[3,9];l=u.value;return[4,l()];case 7:h.sent();h.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=h.sent();c=true;i=f;return[3,12];case 11:try{if(!a&&s.return!=null){s.return()}}finally{if(c){throw i}}return[7];case 12:return[3,14];case 13:d=h.sent();throw k.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})});return W.apply(this,arguments)}import Y from"node-persist";import B from"node:os";import H from"node:process";function $(){return H.env.CYBERSKILL_STORAGE_DIR||ep(B.homedir(),em)}function q(){return Q.apply(this,arguments)}function Q(){Q=o(function(){var e;return m(this,function(t){switch(t.label){case 0:e=Y.defaultInstance;if(e)return[3,2];return[4,Y.init({dir:$(),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]}})});return Q.apply(this,arguments)}var z={get:function e(e){return o(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,q()];case 1:r.sent();return[4,Y.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 o(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,q()];case 1:r.sent();return[4,Y.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 o(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,q()];case 1:n.sent();return[4,Y.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 o(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,q()];case 1:n.sent();return[4,Y.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 o(function(){return m(this,function(t){try{return[2,"".concat($()," (key: ").concat(e,")")]}catch(e){return[2,(k.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var V=w.promisify(b);function X(e){return"error_list:".concat(e)}function Z(e){return ee.apply(this,arguments)}function ee(){ee=o(function(e){var t,n,r;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=X(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,z.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,z.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:r=a.sent();k.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return ee.apply(this,arguments)}function et(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i=o.exec(e)||[],s=a.exec(e)||[],u=c.exec(e)||[];i.length&&r?t.push({file:r,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()}):s.length?t.push({file:s[1],position:"".concat(s[2],":").concat(s[3]),type:s[4]==="error"?"error":"warning",message:s[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):n.push(e.trim())}}),t.length&&Z(t),E&&n.length&&(k.warn("Unmatched lines:"),n.forEach(function(e){return k.info(" ".concat(e))}))}function en(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,o=e.line,a=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?"error":"warning",file:t,position:"".concat(o,":").concat(a),rule:c,message:i})})}),n.length&&Z(n)}catch(t){et(e)}}function er(e){return eo.apply(this,arguments)}function eo(){eo=o(function(e){var t,n,r,o,a,c,i,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:en;n=new AbortController;I.on("SIGINT",function(){k.warn("Process interrupted. Terminating..."),n.abort(),I.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,V(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});return[3,4];case 3:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&k.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return eo.apply(this,arguments)}function ea(e){return{raw:!0,cmd:e}}function ec(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eW," ").concat(eh," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eW," ").concat(eU," ").concat(ek," ").concat(e):"".concat(eW," ").concat(eC," ").concat(e)}function ei(e,t){return typeof e=="function"?ec(e(t),t):(typeof e==="undefined"?"undefined":d(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ec(e,t):e}function es(e,t){return eu.apply(this,arguments)}function eu(){eu=o(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);k.start("".concat(e)),E&&k.info("→ ".concat(t));return[4,er(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]}})});return eu.apply(this,arguments)}import*as el from"node:path";function ef(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=el).resolve.apply(r,[ed].concat(p(t)))}function ep(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=el).join.apply(r,p(t))}var ed=v.env.INIT_CWD||v.cwd(),eh="@cyberskill/shared",em=".cyberskill-storage",ey="node_modules",eg="dist",ev="package.json",eb="package-lock.json",eI="tsconfig.json",ew=".gitignore",eS=".simple-git-hooks.json",eE="pnpm-lock.yaml",eO=".git/hooks/",e_=".git/COMMIT_EDITMSG",eT=ep(ed,ey,eh,eg),eC="cyberskill",ek="src/nodejs/cli/index.ts",eN="eslint",ej="eslint",eA="vitest",eG="playwright",eL="vitest",eP="@commitlint/cli",eR="commitlint",ex="lint-staged",eD="lint-staged",eF="typescript",eM="tsc",eU="tsx",eJ="git",eK="pnpm",eW="pnpm exec",eY="simple-git-hooks",eB="simple-git-hooks",eH="@eslint/config-inspector",e$="eslint-config-inspector",eq="node-modules-inspector",eQ="node-modules-inspector",ez={CYBERSKILL_DIRECTORY:eT,WORKING_DIRECTORY:ed,TS_CONFIG:ef(eI),GIT_IGNORE:ef(ew),GIT_HOOK:ef(eO),GIT_COMMIT_MSG:ef(e_),SIMPLE_GIT_HOOKS_JSON:ef(eS),PACKAGE_JSON:ef(ev),PACKAGE_LOCK_JSON:ef(eb),PNPM_LOCK_YAML:ef(eE),NODE_MODULES:ef(ey),LINT_STAGED_CONFIG:ef("".concat(eT,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ef("".concat(eT,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ef("".concat(eT,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ef("".concat(eT,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ef("".concat(eT,"/react/vitest/vitest.e2e.js"))};function eV(e){return eX.apply(this,arguments)}function eX(){eX=o(function(e){var t,n,r,o,a,c;var i=arguments;return m(this,function(s){switch(s.label){case 0:for(t=i.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=i[r]}o=f(n,2),a=o[0],c=o[1];switch(e){case"CLI":return[3,1];case"RAW":return[3,3]}return[3,4];case 1:return[4,K(a.split(" "),{update:!0})];case 2:return[2,(s.sent(),ei(ea("".concat(eW," ").concat(c))))];case 3:return[2,ei(ea(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eX.apply(this,arguments)}function eZ(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}return /*#__PURE__*/o(function(){return m(this,function(t){return[2,eV.apply(void 0,[e].concat(p(n)))]})})}var e0={simpleGitHooks:eZ("CLI",eY,eB),eslintInspect:eZ("CLI",eH,e$),nodeModulesInspect:eZ("CLI",eq,eQ),eslintCheck:eZ("CLI",eN,"".concat(ej," ").concat(ez.WORKING_DIRECTORY)),eslintFix:eZ("CLI",eN,"".concat(ej," ").concat(ez.WORKING_DIRECTORY," --fix")),typescriptCheck:eZ("CLI",eF,"".concat(eM," -p ").concat(ez.TS_CONFIG," --noEmit")),configureGitHook:eZ("RAW","".concat(eJ," config core.hooksPath ").concat(ez.GIT_HOOK)),testUnit:eZ("CLI",eA,"".concat(eL," --config ").concat(ez.UNIT_TEST_CONFIG)),testE2e:eZ("CLI","".concat(eA," ").concat(eG),"".concat(eL," --config ").concat(ez.E2E_TEST_CONFIG)),commitLint:eZ("CLI",eP,"".concat(eR," --edit ").concat(ez.GIT_COMMIT_MSG," --config ").concat(ez.COMMITLINT_CONFIG)),lintStaged:eZ("CLI",ex,"".concat(eD," --config ").concat(ez.LINT_STAGED_CONFIG)),stageBuildDirectory:eZ("RAW","".concat(eJ," add ").concat(eg)),build:eZ("RAW","".concat(eK," run build")),pnpmInstallStandard:eZ("RAW","".concat(eK," install")),pnpmInstallLegacy:eZ("RAW","".concat(eK," install --legacy-peer-deps")),pnpmInstallForce:eZ("RAW","".concat(eK," install --force"))};function e1(e){return g(l({plugins:[y()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[ez.UNIT_TEST_SETUP_CONFIG]}},e))}export{e1 as vitestUnit};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@cyberskill/shared",
3
3
  "type": "module",
4
- "version": "1.75.0",
4
+ "version": "1.76.0",
5
5
  "description": "CyberSkill Shared",
6
6
  "author": "Stephen Cheng",
7
7
  "license": "MIT",