@cyberskill/shared 1.95.0 → 1.96.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_tsup-dts-rollup.d.cts +51 -17
- package/dist/_tsup-dts-rollup.d.ts +51 -17
- package/dist/configs/config.util.cjs +1 -1
- package/dist/configs/config.util.js +1 -1
- package/dist/configs/env/env.constant.cjs +1 -0
- package/dist/configs/env/env.constant.d.cts +1 -0
- package/dist/configs/env/env.constant.d.ts +1 -0
- package/dist/configs/env/env.constant.js +1 -0
- package/dist/configs/env/env.d.cjs +1 -0
- package/dist/configs/env/env.d.d.cts +1 -0
- package/dist/configs/env/env.d.d.ts +1 -0
- package/dist/configs/env/env.d.js +0 -0
- package/dist/configs/env/env.type.cjs +1 -0
- package/dist/configs/env/env.type.d.cts +1 -0
- package/dist/configs/env/env.type.d.ts +1 -0
- package/dist/configs/env/env.type.js +0 -0
- package/dist/configs/env/env.util.cjs +1 -0
- package/dist/configs/env/env.util.d.cts +1 -0
- package/dist/configs/env/env.util.d.ts +1 -0
- package/dist/configs/env/env.util.js +1 -0
- package/dist/configs/env/index.cjs +1 -0
- package/dist/configs/env/index.d.cts +3 -0
- package/dist/configs/env/index.d.ts +3 -0
- package/dist/configs/env/index.js +1 -0
- package/dist/configs/index.cjs +1 -1
- package/dist/configs/index.d.cts +3 -0
- package/dist/configs/index.d.ts +3 -0
- package/dist/configs/index.js +1 -1
- package/dist/constants/index.cjs +1 -1
- package/dist/constants/index.d.cts +0 -1
- package/dist/constants/index.d.ts +0 -1
- package/dist/constants/index.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +7 -3
- package/dist/index.d.ts +7 -3
- package/dist/index.js +1 -1
- package/dist/nodejs/apollo-server/apollo-server.util.cjs +1 -1
- package/dist/nodejs/apollo-server/apollo-server.util.js +1 -1
- package/dist/nodejs/apollo-server/index.cjs +1 -1
- package/dist/nodejs/apollo-server/index.js +1 -1
- package/dist/nodejs/cli/cli.util.cjs +1 -1
- package/dist/nodejs/cli/cli.util.js +1 -1
- package/dist/nodejs/cli/index.cjs +1 -1
- package/dist/nodejs/cli/index.js +1 -1
- package/dist/nodejs/command/command.util.cjs +1 -1
- package/dist/nodejs/command/command.util.js +1 -1
- package/dist/nodejs/command/index.cjs +1 -1
- package/dist/nodejs/command/index.js +1 -1
- package/dist/nodejs/express/express.util.cjs +1 -1
- package/dist/nodejs/express/express.util.d.cts +0 -1
- package/dist/nodejs/express/express.util.d.ts +0 -1
- package/dist/nodejs/express/express.util.js +1 -1
- package/dist/nodejs/express/index.cjs +1 -1
- package/dist/nodejs/express/index.d.cts +0 -1
- package/dist/nodejs/express/index.d.ts +0 -1
- package/dist/nodejs/express/index.js +1 -1
- package/dist/nodejs/index.cjs +1 -1
- package/dist/nodejs/index.d.cts +4 -2
- package/dist/nodejs/index.d.ts +4 -2
- package/dist/nodejs/index.js +1 -1
- package/dist/nodejs/log/index.cjs +1 -1
- package/dist/nodejs/log/index.js +1 -1
- package/dist/nodejs/log/log.util.cjs +1 -1
- package/dist/nodejs/log/log.util.js +1 -1
- package/dist/nodejs/mongo/index.cjs +1 -1
- package/dist/nodejs/mongo/index.d.cts +1 -0
- package/dist/nodejs/mongo/index.d.ts +1 -0
- package/dist/nodejs/mongo/index.js +1 -1
- package/dist/nodejs/mongo/migrate.util.cjs +1 -0
- package/dist/nodejs/mongo/migrate.util.d.cts +1 -0
- package/dist/nodejs/mongo/migrate.util.d.ts +1 -0
- package/dist/nodejs/mongo/migrate.util.js +1 -0
- package/dist/nodejs/package/index.cjs +1 -1
- package/dist/nodejs/package/index.js +1 -1
- package/dist/nodejs/package/package.util.cjs +1 -1
- package/dist/nodejs/package/package.util.js +1 -1
- package/dist/nodejs/path/index.cjs +1 -1
- package/dist/nodejs/path/index.d.cts +3 -1
- package/dist/nodejs/path/index.d.ts +3 -1
- package/dist/nodejs/path/index.js +1 -1
- package/dist/nodejs/path/path.constant.cjs +1 -1
- package/dist/nodejs/path/path.constant.d.cts +2 -1
- package/dist/nodejs/path/path.constant.d.ts +2 -1
- package/dist/nodejs/path/path.constant.js +1 -1
- package/dist/nodejs/path/path.util.cjs +1 -1
- package/dist/nodejs/path/path.util.d.cts +1 -0
- package/dist/nodejs/path/path.util.d.ts +1 -0
- package/dist/nodejs/path/path.util.js +1 -1
- package/dist/nodejs/storage/index.cjs +1 -1
- package/dist/nodejs/storage/index.js +1 -1
- package/dist/nodejs/storage/storage.util.cjs +1 -1
- package/dist/nodejs/storage/storage.util.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.js +1 -1
- package/dist/react/vitest/index.cjs +1 -1
- package/dist/react/vitest/index.js +1 -1
- package/dist/react/vitest/vitest.unit.cjs +1 -1
- package/dist/react/vitest/vitest.unit.js +1 -1
- package/package.json +7 -3
- package/dist/constants/nodejs.cjs +0 -1
- package/dist/constants/nodejs.d.cts +0 -1
- package/dist/constants/nodejs.d.ts +0 -1
- package/dist/constants/nodejs.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,s,i,o){try{var a=e[i](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,i){var o=e.apply(t,n);function a(e){r(o,s,i,a,c,"next",e)}function c(e){r(o,s,i,a,c,"throw",e)}a(undefined)})}}function i(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function a(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var i=false;var o,a;try{for(n=n.call(e);!(s=(o=n.next()).done);s=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){i=true;a=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(i)throw a}}return r}function c(){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){i(e,t,n[t])})}return e}function d(e,n){return t(e)||a(e,n)||g(e,n)||c()}function p(e){return n(e)||o(e)||g(e)||u()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function g(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 y(e,t){var n,r,s,i={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(i=0)),i)try{if(n=1,r&&(s=a[0]&2?r["return"]:a[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,a[1])).done)return s;if(r=0,s)a=[a[0]&2,s.value];switch(a[0]){case 0:case 1:s=a;break;case 4:i.label++;return{value:a[1],done:false};case 5:i.label++;r=a[1];a=[0];continue;case 7:a=i.ops.pop();i.trys.pop();continue;default:if(!(s=i.trys,s=s.length>0&&s[s.length-1])&&(a[0]===6||a[0]===2)){i=0;continue}if(a[0]===3&&(!s||a[1]>s[0]&&a[1]<s[3])){i.label=a[1];break}if(a[0]===6&&i.label<s[1]){i.label=s[1];s=a;break}if(s&&i.label<s[2]){i.label=s[2];i.ops.push(a);break}if(s[2])i.ops.pop();i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e];r=0}finally{n=s=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var h=Object.create;var v=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var x=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var w=function(e,t){return v(e,"name",{value:t,configurable:!0})};var I=function(e,t,n,r){var s=true,i=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var a=function(){var s=u.value;!b.call(e,s)&&s!==n&&v(e,s,{get:function(){return t[s]},enumerable:!(r=m(t,s))||r.enumerable})};for(var c=x(t)[Symbol.iterator](),u;!(s=(u=c.next()).done);s=true)a()}catch(e){i=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(i){throw o}}}return e};var S=function(e,t,n){return n=e!=null?h(j(e)):{},I(t||!e||!e.__esModule?v(n,"default",{value:e,enumerable:!0}):n,e)},E=function(e){return I(v({},"__esModule",{value:!0}),e)};var O={};module.exports=E(O);var k=S(require("process"),1),_=require("yargs/helpers"),C=S(require("yargs/yargs"),1);var T={name:"@cyberskill/shared",type:"module",version:"1.94.0",description:"CyberSkill Shared",author:"Stephen Cheng",license:"MIT",homepage:"https://github.com/cyberskill-world/shared#readme",repository:{type:"git",url:"git+https://github.com/cyberskill-world/shared.git"},bugs:{url:"https://github.com/cyberskill-world/shared/issues"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./configs":{types:"./dist/configs/index.d.ts",import:"./dist/configs/index.js",require:"./dist/configs/index.cjs"},"./configs/commitlint":{types:"./dist/configs/commitlint/index.d.ts",import:"./dist/configs/commitlint/index.js",require:"./dist/configs/commitlint/index.cjs"},"./configs/eslint":{types:"./dist/configs/eslint/index.d.ts",import:"./dist/configs/eslint/index.js",require:"./dist/configs/eslint/index.cjs"},"./configs/graphql-codegen":{types:"./dist/configs/graphql-codegen/index.d.ts",import:"./dist/configs/graphql-codegen/index.js",require:"./dist/configs/graphql-codegen/index.cjs"},"./configs/lint-staged":{types:"./dist/configs/lint-staged/index.d.ts",import:"./dist/configs/lint-staged/index.js",require:"./dist/configs/lint-staged/index.cjs"},"./constants":{types:"./dist/constants/index.d.ts",import:"./dist/constants/index.js",require:"./dist/constants/index.cjs"},"./nodejs":{types:"./dist/nodejs/index.d.ts",import:"./dist/nodejs/index.js",require:"./dist/nodejs/index.cjs"},"./nodejs/apollo-server":{types:"./dist/nodejs/apollo-server/index.d.ts",import:"./dist/nodejs/apollo-server/index.js",require:"./dist/nodejs/apollo-server/index.cjs"},"./nodejs/cli":{types:"./dist/nodejs/cli/index.d.ts",import:"./dist/nodejs/cli/index.js",require:"./dist/nodejs/cli/index.cjs"},"./nodejs/command":{types:"./dist/nodejs/command/index.d.ts",import:"./dist/nodejs/command/index.js",require:"./dist/nodejs/command/index.cjs"},"./nodejs/express":{types:"./dist/nodejs/express/index.d.ts",import:"./dist/nodejs/express/index.js",require:"./dist/nodejs/express/index.cjs"},"./nodejs/fs":{types:"./dist/nodejs/fs/index.d.ts",import:"./dist/nodejs/fs/index.js",require:"./dist/nodejs/fs/index.cjs"},"./nodejs/log":{types:"./dist/nodejs/log/index.d.ts",import:"./dist/nodejs/log/index.js",require:"./dist/nodejs/log/index.cjs"},"./nodejs/mongo":{types:"./dist/nodejs/mongo/index.d.ts",import:"./dist/nodejs/mongo/index.js",require:"./dist/nodejs/mongo/index.cjs"},"./nodejs/package":{types:"./dist/nodejs/package/index.d.ts",import:"./dist/nodejs/package/index.js",require:"./dist/nodejs/package/index.cjs"},"./nodejs/path":{types:"./dist/nodejs/path/index.d.ts",import:"./dist/nodejs/path/index.js",require:"./dist/nodejs/path/index.cjs"},"./nodejs/storage":{types:"./dist/nodejs/storage/index.d.ts",import:"./dist/nodejs/storage/index.js",require:"./dist/nodejs/storage/index.cjs"},"./nodejs/ws":{types:"./dist/nodejs/ws/index.d.ts",import:"./dist/nodejs/ws/index.js",require:"./dist/nodejs/ws/index.cjs"},"./react":{types:"./dist/react/index.d.ts",import:"./dist/react/index.js",require:"./dist/react/index.cjs"},"./react/apollo-client":{types:"./dist/react/apollo-client/index.d.ts",import:"./dist/react/apollo-client/index.js",require:"./dist/react/apollo-client/index.cjs"},"./react/apollo-error":{types:"./dist/react/apollo-error/index.d.ts",import:"./dist/react/apollo-error/index.js",require:"./dist/react/apollo-error/index.cjs"},"./react/i18next":{types:"./dist/react/i18next/index.d.ts",import:"./dist/react/i18next/index.js",require:"./dist/react/i18next/index.cjs"},"./react/loading":{types:"./dist/react/loading/index.d.ts",import:"./dist/react/loading/index.js",require:"./dist/react/loading/index.cjs"},"./react/log":{types:"./dist/react/log/index.d.ts",import:"./dist/react/log/index.js",require:"./dist/react/log/index.cjs"},"./react/next-intl":{types:"./dist/react/next-intl/index.d.ts",import:"./dist/react/next-intl/index.js",require:"./dist/react/next-intl/index.cjs"},"./react/storage":{types:"./dist/react/storage/index.d.ts",import:"./dist/react/storage/index.js",require:"./dist/react/storage/index.cjs"},"./react/toast":{types:"./dist/react/toast/index.d.ts",import:"./dist/react/toast/index.js",require:"./dist/react/toast/index.cjs"},"./react/vitest":{types:"./dist/react/vitest/index.d.ts",import:"./dist/react/vitest/index.js",require:"./dist/react/vitest/index.cjs"},"./styles/reset.css":{import:"./dist/styles/reset.css",require:"./dist/styles/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./utils":{types:"./dist/utils/index.d.ts",import:"./dist/utils/index.js",require:"./dist/utils/index.cjs"}},main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",bin:{cyberskill:"./dist/nodejs/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"dotenv -e .env -- tsup --watch",lint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint","lint:fix":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:fix","lint:inspect":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:inspect",reset:"dotenv -e .env -- tsx src/nodejs/cli/index.ts reset",setup:"dotenv -e .env -- tsx src/nodejs/cli/index.ts setup",inspect:"dotenv -e .env -- tsx src/nodejs/cli/index.ts inspect","test:unit":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:unit","test:e2e":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:e2e",commitlint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts commitlint","lint-staged":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint-staged"},dependencies:{"@antfu/eslint-config":"4.12.0","@apollo/client":"3.13.8","@apollo/server":"4.12.0","@eddeee888/gcg-typescript-resolver-files":"0.12.0","@eslint-react/eslint-plugin":"1.48.3","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@microsoft/api-extractor":"7.52.4","@next/eslint-plugin-next":"15.3.1","@swc/core":"1.11.21","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.1",chalk:"5.4.1",classnames:"2.5.1",compression:"1.8.0",consola:"3.4.2",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.0","dotenv-cli":"8.0.0","eslint-config-next":"15.3.1","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.19",express:"4.21.2","express-device":"0.4.2","express-session":"1.18.1",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"25.0.0",jsdom:"26.1.0",localforage:"1.10.0","modern-normalize":"3.0.1",mongodb:"6.15.0",mongoose:"8.13.2","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.0","next-intl":"4.0.2","node-fetch":"3.3.2","node-persist":"4.0.4",ora:"8.2.0",playwright:"1.52.0","postcss-modules":"6.0.1",qs:"6.14.0",react:"19.1.0","react-dom":"19.1.0","react-hot-toast":"2.5.2","react-i18next":"15.4.1","react-icons":"5.5.0",sass:"1.86.3",slugify:"1.6.6",tsup:"8.4.0",tsx:"4.19.3",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.2",vitest:"3.1.1","vitest-browser-react":"0.1.1",ws:"8.18.1",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.0","@eslint/config-inspector":"1.0.2","@types/compression":"1.7.5","@types/cors":"2.8.17","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.1","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.2","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.24.0","lint-staged":"15.5.1","node-modules-inspector":"0.6.6","simple-git-hooks":"2.12.1"}};var q=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});var L=require("child_process"),P=S(require("process"),1),N=S(require("util"),1);var G=S(require("process"),1),A=G.default.env.DEBUG==="true";var R=function(e){return e.Error="error",e.Warning="warning",e}({});var D=S(require("chalk"),1),F=S(require("consola"),1),M=require("graphql");A||(F.default.level=4);function W(e){var t=D.default[e];return typeof t=="function"?t:D.default.green}w(W,"chalkKeyword");var U={silent:F.default.silent,level:F.default.level,fatal:F.default.fatal,error:F.default.error,warn:F.default.warn,log:F.default.log,info:F.default.info,success:F.default.success,ready:F.default.ready,start:F.default.start,box:F.default.box,debug:F.default.debug,trace:F.default.trace,verbose:F.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){F.default.box(D.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,i=e.message;F.default.log("".concat(D.default.gray("File:")," ").concat(D.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&F.default.log(" ".concat(W(n)("Rule:")," ").concat(s)),F.default.log(" ".concat(W(n)("Message:")," ").concat(i))}),F.default.box(W(n)("".concat(e," : ").concat(t.length))),F.default.log(D.default.gray("─".repeat(40)))}};var J={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var K=S(require("node-fetch"),1);var B=S(require("fs"),1);function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return B.existsSync(e)})}w(H,"existsSync");function Y(e,t){var n=B.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":f(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}w(Y,"readFileSync");function $(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,s=r===void 0?!1:r,i=s&&(typeof t==="undefined"?"undefined":f(t))=="object"?JSON.stringify(t,null,4):String(t);B.writeFileSync(e,i,"utf-8")}w($,"writeFileSync");function V(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,s=r===void 0?!1:r,i=s&&(typeof t==="undefined"?"undefined":f(t))=="object"?JSON.stringify(t,null,4):String(t);B.appendFileSync(e,i,"utf-8")}w(V,"appendFileSync");function z(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){H(e)&&B.rmSync(e,{recursive:!0,force:!0})})}w(z,"rmSync");var Q=S(require("process"),1);var X=S(require("path"),1);function Z(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=X).resolve.apply(r,[et].concat(p(t)))}w(Z,"resolveWorkingPath");function ee(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=X).join.apply(r,p(t))}w(ee,"join");var et=Q.default.env.INIT_CWD||Q.default.cwd(),en="@cyberskill/shared",er=".cyberskill-storage",es="node_modules",ei="dist",eo="package.json",ea="package-lock.json",ec="tsconfig.json",eu=".gitignore",el=".simple-git-hooks.json",ed="pnpm-lock.yaml",ep=".git/hooks/",ef=".git/COMMIT_EDITMSG",eg=ee(et,es,en,ei),ey="cyberskill",eh="src/nodejs/cli/index.ts",ev="eslint",em="eslint",ex="vitest",ej="playwright",eb="vitest",ew="@commitlint/cli",eI="commitlint",eS="lint-staged",eE="lint-staged",eO="typescript",ek="tsc",e_="tsx",eC="git",eT="pnpm",eq="pnpm exec",eL="simple-git-hooks",eP="simple-git-hooks",eN="@eslint/config-inspector",eG="eslint-config-inspector",eA="node-modules-inspector",eR="node-modules-inspector",eD={CYBERSKILL_DIRECTORY:eg,WORKING_DIRECTORY:et,TS_CONFIG:Z(ec),GIT_IGNORE:Z(eu),GIT_HOOK:Z(ep),GIT_COMMIT_MSG:Z(ef),SIMPLE_GIT_HOOKS_JSON:Z(el),PACKAGE_JSON:Z(eo),PACKAGE_LOCK_JSON:Z(ea),PNPM_LOCK_YAML:Z(ed),NODE_MODULES:Z(es),LINT_STAGED_CONFIG:Z("".concat(eg,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:Z("".concat(eg,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:Z("".concat(eg,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:Z("".concat(eg,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:Z("".concat(eg,"/react/vitest/vitest.e2e.js"))};function eF(e){var t=e.isCurrentProject;return l({"pre-commit":eE,"commit-msg":eI},t&&{"pre-push":tc("".concat(eC," pull"))})}w(eF,"HOOK");function eM(e){return eW.apply(this,arguments)}function eW(){eW=s(function(e){var t,n,r,s,i,o;var a=arguments;return y(this,function(c){switch(c.label){case 0:for(t=a.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=a[r]}s=d(n,2),i=s[0],o=s[1];if(!i)throw new Error("'first' argument is undefined");switch(e){case q.CLI:return[3,1];case q.RAW:return[3,3]}return[3,4];case 1:return[4,eQ(i.split(" "),{update:!0})];case 2:return[2,(c.sent(),tl(tc("".concat(eq," ").concat(o))))];case 3:return[2,tl(tc(i))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eW.apply(this,arguments)}w(eM,"buildCommand");function eU(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__*/s(function(){return y(this,function(t){return[2,eM.apply(void 0,[e].concat(p(n)))]})})}w(eU,"commandFactory");var eJ={simpleGitHooks:eU(q.CLI,eL,eP),eslintInspect:eU(q.CLI,eN,eG),nodeModulesInspect:eU(q.CLI,eA,eR),eslintCheck:eU(q.CLI,ev,"".concat(em," ").concat(eD.WORKING_DIRECTORY)),eslintFix:eU(q.CLI,ev,"".concat(em," ").concat(eD.WORKING_DIRECTORY," --fix")),typescriptCheck:eU(q.CLI,eO,"".concat(ek," -p ").concat(eD.TS_CONFIG," --noEmit")),configureGitHook:eU(q.RAW,"".concat(eC," config core.hooksPath ").concat(eD.GIT_HOOK)),testUnit:eU(q.CLI,ex,"".concat(eb," --config ").concat(eD.UNIT_TEST_CONFIG)),testE2e:eU(q.CLI,"".concat(ex," ").concat(ej),"".concat(eb," --config ").concat(eD.E2E_TEST_CONFIG)),commitLint:eU(q.CLI,ew,"".concat(eI," --edit ").concat(eD.GIT_COMMIT_MSG," --config ").concat(eD.COMMITLINT_CONFIG)),lintStaged:eU(q.CLI,eS,"".concat(eE," --config ").concat(eD.LINT_STAGED_CONFIG)),stageBuildDirectory:eU(q.RAW,"".concat(eC," add ").concat(ei)),build:eU(q.RAW,"".concat(eT," run build")),pnpmInstallStandard:eU(q.RAW,"".concat(eT," install")),pnpmInstallLegacy:eU(q.RAW,"".concat(eT," install --legacy-peer-deps")),pnpmInstallForce:eU(q.RAW,"".concat(eT," install --force"))};function eK(e){var t=ee(et,eo);if(!H(t))return!1;try{var n=Y(t,{asJson:!0}),r=n.name,s=n.dependencies,i=s===void 0?{}:s,o=n.devDependencies,a=o===void 0?{}:o,c=r===e,u=e in i,l=e in a;return c||u||l?{path:t,file:n,isCurrentProject:c,isDepend:u,isDevDepend:l}:!1}catch(e){return U.warn("Failed to read package.json: ".concat(e.message)),!1}}w(eK,"getPackage");function eB(e){return eH.apply(this,arguments)}function eH(){eH=s(function(e){var t,n,r,s;return y(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,(0,K.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=i.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=i.sent(),r=n.version;return[2,r];case 3:s=i.sent();throw U.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})});return eH.apply(this,arguments)}w(eB,"getLatestPackageVersion");function eY(e,t){return e$.apply(this,arguments)}function e$(){e$=s(function(e,t){var n,r,s,i,o,a,c,u,d,p,f,g,h,v,m,x,j,b,w,I,S;return y(this,function(y){switch(y.label){case 0:y.trys.push([0,4,,5]);n=eK(e);if(!n)return[2,l({},J)];c=n.path,u=n.file,d=n.isCurrentProject,p=n.isDepend,f=n.isDevDepend,g=(r=u.dependencies)!==null&&r!==void 0?r:{},h=(s=u.devDependencies)!==null&&s!==void 0?s:{},v=d?(i=u.version)!==null&&i!==void 0?i:"0.0.0":p?(o=g[e])!==null&&o!==void 0?o:"0.0.0":f?(a=h[e])!==null&&a!==void 0?a:"0.0.0":"0.0.0";if(!d)return[3,1];j=v;return[3,3];case 1:return[4,eB(e)];case 2:j=y.sent();y.label=3;case 3:m=j,x=d||v===m;if(!x&&(t===null||t===void 0?void 0:t.update)){;w=p?"dependencies":f?"devDependencies":null;w&&((b=u[w])===null||b===void 0?void 0:b[e])!==m&&(u[w]=(I=u[w])!==null&&I!==void 0?I:{},u[w][e]=m,$(c,u,{isJson:!0}),U.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:d,installedPath:c,file:u,isUpToDate:x}];case 4:S=y.sent();return[2,(U.error('Error checking package "'.concat(e,'": ').concat(S.message)),l({},J))];case 5:return[2]}})});return e$.apply(this,arguments)}w(eY,"checkPackage");function eV(){return ez.apply(this,arguments)}function ez(){ez=s(function(){var e,t,n,r,s,i,o,a,c,u,l,d;return y(this,function(p){switch(p.label){case 0:e=[{command:w(function(){return eJ.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:w(function(){return eJ.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:w(function(){return eJ.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);s=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(i=s.next()).done))return[3,8];o=i.value,a=o.command,c=o.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,a()];case 4:u=p.sent();return[4,tf("".concat(c," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();U.warn("Installation attempt failed: ".concat(c)),U.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=p.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ez.apply(this,arguments)}w(eV,"installDependencies");function eQ(e,t){return eX.apply(this,arguments)}function eX(){eX=s(function(e,t){var n,r,s,i,o,a,c,u,d,f,g;return y(this,function(y){switch(y.label){case 0:if(!H(eD.PACKAGE_JSON)){U.error("package.json not found. Aborting setup.");return[2]}y.label=1;case 1:y.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eY(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=y.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eV()];case 3:r=y.sent();y.label=4;case 4:r;i=true,o=false,a=undefined;y.label=5;case 5:y.trys.push([5,10,11,12]);c=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();y.label=6;case 6:if(!!(i=(u=c.next()).done))return[3,9];d=u.value;return[4,d()];case 7:y.sent();y.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:f=y.sent();o=true;a=f;return[3,12];case 11:try{if(!i&&c.return!=null){c.return()}}finally{if(o){throw a}}return[7];case 12:return[3,14];case 13:g=y.sent();throw U.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return eX.apply(this,arguments)}w(eQ,"setupPackages");var eZ=S(require("node-persist"),1),e0=S(require("os"),1),e1=S(require("process"),1);function e2(){return e1.default.env.CYBERSKILL_STORAGE_DIR||ee(e0.default.homedir(),er)}w(e2,"getStorageDir");function e4(){return e3.apply(this,arguments)}function e3(){e3=s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=eZ.default.defaultInstance;if(e)return[3,2];return[4,eZ.default.init({dir:e2(),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 e3.apply(this,arguments)}w(e4,"initNodePersist");var e8={get:function e(e){return s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e4()];case 1:r.sent();return[4,eZ.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(U.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return s(function(){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e4()];case 1:r.sent();return[4,eZ.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();U.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return s(function(){var t;return y(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e4()];case 1:n.sent();return[4,eZ.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();U.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return s(function(){var e,t;return y(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e4()];case 1:n.sent();return[4,eZ.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(U.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(U.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return s(function(){return y(this,function(t){try{return[2,"".concat(e2()," (key: ").concat(e,")")]}catch(e){return[2,(U.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e5=N.promisify(L.exec);function e6(e){return"error_list:".concat(e)}w(e6,"getErrorListKey");function e9(e){return e7.apply(this,arguments)}function e7(){e7=s(function(e){var t,n,r;return y(this,function(i){switch(i.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e6(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,e8.set(n,{errors:e,timestamp:t})];case 2:i.sent(),setTimeout(/*#__PURE__*/s(function(){var e;return y(this,function(t){switch(t.label){case 0:return[4,e8.getLogLink(n)];case 1:e=t.sent();e&&U.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=i.sent();U.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return e7.apply(this,arguments)}w(e9,"saveErrorListToStorage");function te(){return tt.apply(this,arguments)}function tt(){tt=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e8.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(/*#__PURE__*/function(){var e=s(function(e){var t;return y(this,function(n){switch(n.label){case 0:return[4,e8.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})});return function(t){return e.apply(this,arguments)}}()))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(U.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})});return tt.apply(this,arguments)}w(te,"getStoredErrorLists");function tn(){return tr.apply(this,arguments)}function tr(){tr=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e8.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return e8.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();U.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})});return tr.apply(this,arguments)}w(tn,"clearAllErrorLists");function ts(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,i=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var a,c,u,l,d;var p=s.exec(e)||[],f=i.exec(e)||[],g=o.exec(e)||[];var y,h,v,m,x,j;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===R.Error?R.Error:R.Warning,message:(y=p===null||p===void 0?void 0:(a=p[4])===null||a===void 0?void 0:a.trim())!==null&&y!==void 0?y:"",rule:(h=p===null||p===void 0?void 0:(c=p[5])===null||c===void 0?void 0:c.trim())!==null&&h!==void 0?h:""}):f.length?t.push({file:(v=f===null||f===void 0?void 0:f[1])!==null&&v!==void 0?v:"",position:"".concat(f[2],":").concat(f[3]),type:f[4]===R.Error?R.Error:R.Warning,message:(m=f===null||f===void 0?void 0:(u=f[5])===null||u===void 0?void 0:u.trim())!==null&&m!==void 0?m:""}):g.length?t.push({file:"commitlint",type:R.Error,message:(x=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&x!==void 0?x:"",rule:(j=g===null||g===void 0?void 0:(d=g[2])===null||d===void 0?void 0:d.trim())!==null&&j!==void 0?j:""}):n.push(e.trim())}}),t.length&&e9(t),A&&n.length&&(U.warn("Unmatched lines:"),n.forEach(function(e){return U.info(" ".concat(e))}))}w(ts,"parseTextErrors");function ti(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,s=e.line,i=e.column,o=e.ruleId,a=e.message;n.push({type:r===2?R.Error:R.Warning,file:t,position:"".concat(s,":").concat(i),rule:o,message:a})})}),n.length&&e9(n)}catch(t){ts(e)}}w(ti,"parseCommandOutput");function to(e){return ta.apply(this,arguments)}function ta(){ta=s(function(e){var t,n,r,s,i,o,a,c,u;var l=arguments;return y(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ti;n=new AbortController;P.default.on("SIGINT",function(){U.warn("Process interrupted. Terminating..."),n.abort(),P.default.exit()});d.label=1;case 1:d.trys.push([1,3,,4]);return[4,e5(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),s=r.stdout,i=r.stderr;[s,i].forEach(function(e){return e&&t(e)});return[3,4];case 3:o=d.sent();a=o.stdout,c=o.stderr,u=o.message;[a,c].forEach(function(e){return e&&t(e)}),!c&&!a&&U.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return ta.apply(this,arguments)}w(to,"executeCommand");function tc(e){return{raw:!0,cmd:e}}w(tc,"rawCommand");function tu(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eq," ").concat(en," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eq," ").concat(e_," ").concat(eh," ").concat(e):"".concat(eq," ").concat(ey," ").concat(e)}w(tu,"formatCLI");function tl(e,t){return typeof e=="function"?tu(e(t),t):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tu(e,t):e}w(tl,"formatCommand");function td(e){return tp.apply(this,arguments)}function tp(){tp=s(function(e){var t,n,r,s,i,o,a;var c=arguments;return y(this,function(u){switch(u.label){case 0:t=c.length>1&&c[1]!==void 0?c[1]:{};r=(n=t===null||t===void 0?void 0:t.isRemote)!==null&&n!==void 0?n:!1;if(!r)return[3,1];a=!1;return[3,3];case 1:return[4,eY(en)];case 2:a=u.sent().isCurrentProject;u.label=3;case 3:s=a,i={isRemote:r,isCurrentProject:s},o=typeof e=="function"?e(i):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var t=d(e,2),n=t[0],r=t[1];return[n,tl(r,i)]}))]}})});return tp.apply(this,arguments)}w(td,"resolveCommands");function tf(e,t){return tg.apply(this,arguments)}function tg(){tg=s(function(e,t){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);U.start("".concat(e)),A&&U.info("→ ".concat(t));return[4,to(t)];case 1:r.sent(),U.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw U.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return tg.apply(this,arguments)}w(tf,"runCommand");function ty(){return th.apply(this,arguments)}function th(){th=s(function(){var e,t;return y(this,function(n){switch(n.label){case 0:if(!H(eD.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,eJ.typescriptCheck()];case 1:return[4,tf.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=U.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})});return th.apply(this,arguments)}w(ty,"checkTypescript");function tv(){return tm.apply(this,arguments)}function tm(){tm=s(function(){var e,t,n,r;var s=arguments;return y(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,eJ.eslintFix()];case 1:return[4,tf.apply(void 0,n.concat([i.sent()]))];case 2:t=i.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,eJ.eslintCheck()];case 4:return[4,tf.apply(void 0,r.concat([i.sent()]))];case 5:t=i.sent();i.label=6;case 6:t;return[2]}})});return tm.apply(this,arguments)}w(tv,"checkEslint");function tx(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";U.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}w(tx,"printIssues");function tj(){return tb.apply(this,arguments)}function tb(){tb=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:return[4,te()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===R.Error}),n=e.filter(function(e){return e.type===R.Warning});!t.length&&!n.length?U.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tx("Warnings",n),tx("Errors",t),(t.length>0||n.length>0)&&k.default.exit(1));return[2]}})});return tb.apply(this,arguments)}w(tj,"showCheckResult");function tw(){return tI.apply(this,arguments)}function tI(){tI=s(function(){var e,t,n,r,s,i;return y(this,function(o){switch(o.label){case 0:return[4,tn()];case 1:o.sent();return[4,eY(en)];case 2:e=o.sent(),t=e.isCurrentProject;if(!t)return[3,9];o.label=3;case 3:o.trys.push([3,8,,9]);n=["Building package: ".concat(en)];return[4,eJ.build()];case 4:return[4,tf.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,eJ.stageBuildDirectory()];case 6:return[4,tf.apply(void 0,r.concat([o.sent()]))];case 7:o.sent();return[3,9];case 8:s=o.sent();throw U.error("Error building and staging ".concat(en,": ").concat(s.message)),s;case 9:i=["Executing lint-staged"];return[4,eJ.lintStaged()];case 10:return[4,tf.apply(void 0,i.concat([o.sent()]))];case 11:o.sent(),tj();return[2]}})});return tI.apply(this,arguments)}w(tw,"lintStaged");function tS(){return tE.apply(this,arguments)}function tE(){tE=s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,eJ.eslintInspect()];case 1:return[4,tf.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tE.apply(this,arguments)}w(tS,"inspectLint");function tO(){return tk.apply(this,arguments)}function tk(){tk=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,tn()];case 1:e.sent();return[4,Promise.all([ty(),tv()])];case 2:e.sent(),tj();return[2]}})});return tk.apply(this,arguments)}w(tO,"lintCheck");function t_(){return tC.apply(this,arguments)}function tC(){tC=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,tn()];case 1:e.sent();return[4,Promise.all([ty(),tv(!0)])];case 2:e.sent(),tj();return[2]}})});return tC.apply(this,arguments)}w(t_,"lintFix");function tT(){return tq.apply(this,arguments)}function tq(){tq=s(function(){var e;return y(this,function(t){switch(t.label){case 0:return[4,tn()];case 1:t.sent();e=["Validating commit message"];return[4,eJ.commitLint()];case 2:return[4,tf.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tj();return[2]}})});return tq.apply(this,arguments)}w(tT,"commitLint");function tL(){return tP.apply(this,arguments)}function tP(){tP=s(function(){var e,t,n,r;return y(this,function(s){switch(s.label){case 0:e=["Configuring Git hooks"];return[4,eJ.configureGitHook()];case 1:return[4,tf.apply(void 0,e.concat([s.sent()]))];case 2:s.sent(),z(eD.GIT_HOOK);return[4,td(eF)];case 3:t=s.sent();$(eD.SIMPLE_GIT_HOOKS_JSON,t,{isJson:!0});n="\n".concat(el,"\n");H(eD.GIT_IGNORE)?Y(eD.GIT_IGNORE).split("\n").includes(el)||V(eD.GIT_IGNORE,n):$(eD.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,eJ.simpleGitHooks()];case 4:return[4,tf.apply(void 0,r.concat([s.sent()]))];case 5:s.sent();return[2]}})});return tP.apply(this,arguments)}w(tL,"setupGitHook");function tN(){return tG.apply(this,arguments)}function tG(){tG=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,eQ([en],{update:!0,postInstallActions:[tL]})];case 1:e.sent();return[2]}})});return tG.apply(this,arguments)}w(tN,"setup");function tA(){return tR.apply(this,arguments)}function tR(){tR=s(function(){return y(this,function(e){switch(e.label){case 0:z(eD.NODE_MODULES,eD.PNPM_LOCK_YAML);return[4,eV()];case 1:e.sent();return[4,tL()];case 2:e.sent();return[2]}})});return tR.apply(this,arguments)}w(tA,"reset");function tD(){return tF.apply(this,arguments)}function tF(){tF=s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,eJ.nodeModulesInspect()];case 1:return[4,tf.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tF.apply(this,arguments)}w(tD,"inspect");function tM(){return tW.apply(this,arguments)}function tW(){tW=s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,eJ.testUnit()];case 1:return[4,tf.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tW.apply(this,arguments)}w(tM,"testUnit");function tU(){return tJ.apply(this,arguments)}function tJ(){tJ=s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,eJ.testE2e()];case 1:return[4,tf.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tJ.apply(this,arguments)}w(tU,"testE2E");s(function(){var e;return y(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,C.default)((0,_.hideBin)(k.default.argv)).scriptName(ey).usage("$0 <command> [options]").command("lint","Check code for linting issues",tO).command("lint:fix","Fix linting issues automatically",t_).command("lint:inspect","View active ESLint configuration",tS).command("lint-staged","Run lint checks on staged files",tw).command("commitlint","Validate commit message format",tT).command("setup","Initialize project setup and dependencies",tN).command("reset","Reset the project and reinstall dependencies",tA).command("inspect","Analyze installed project dependencies",tD).command("test:unit","Run unit test suite",tM).command("test:e2e","Run end-to-end test suite",tU).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(T.version).epilog('\uD83D\uDCA1 Tip: Use "--help" with any command to see options\n').parse()];case 1:t.sent();return[3,3];case 2:e=t.sent();U.error("Fatal: ".concat(e.message)),k.default.exit(1);return[3,3];case 3:return[2]}})})();
|
|
1
|
+
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,i,s,o){try{var a=e[s](o);var c=a.value}catch(e){n(e);return}if(a.done){t(c)}else{Promise.resolve(c).then(r,i)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(i,s){var o=e.apply(t,n);function a(e){r(o,i,s,a,c,"next",e)}function c(e){r(o,i,s,a,c,"throw",e)}a(undefined)})}}function s(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function a(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var i=true;var s=false;var o,a;try{for(n=n.call(e);!(i=(o=n.next()).done);i=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){s=true;a=e}finally{try{if(!i&&n["return"]!=null)n["return"]()}finally{if(s)throw a}}return r}function c(){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){s(e,t,n[t])})}return e}function d(e,n){return t(e)||a(e,n)||g(e,n)||c()}function p(e){return n(e)||o(e)||g(e)||u()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function g(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,i,s={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=a(0),o["throw"]=a(1),o["return"]=a(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(t){return c([e,t])}}function c(a){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,a[0]&&(s=0)),s)try{if(n=1,r&&(i=a[0]&2?r["return"]:a[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,a[1])).done)return i;if(r=0,i)a=[a[0]&2,i.value];switch(a[0]){case 0:case 1:i=a;break;case 4:s.label++;return{value:a[1],done:false};case 5:s.label++;r=a[1];a=[0];continue;case 7:a=s.ops.pop();s.trys.pop();continue;default:if(!(i=s.trys,i=i.length>0&&i[i.length-1])&&(a[0]===6||a[0]===2)){s=0;continue}if(a[0]===3&&(!i||a[1]>i[0]&&a[1]<i[3])){s.label=a[1];break}if(a[0]===6&&s.label<i[1]){s.label=i[1];i=a;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(a);break}if(i[2])s.ops.pop();s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e];r=0}finally{n=i=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}var y=Object.create;var h=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var j=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var w=function(e,t){return h(e,"name",{value:t,configurable:!0})};var I=function(e,t,n,r){var i=true,s=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":f(t))=="object"||typeof t=="function")try{var a=function(){var i=u.value;!b.call(e,i)&&i!==n&&h(e,i,{get:function(){return t[i]},enumerable:!(r=v(t,i))||r.enumerable})};for(var c=j(t)[Symbol.iterator](),u;!(i=(u=c.next()).done);i=true)a()}catch(e){s=true;o=e}finally{try{if(!i&&c.return!=null){c.return()}}finally{if(s){throw o}}}return e};var E=function(e,t,n){return n=e!=null?y(x(e)):{},I(t||!e||!e.__esModule?h(n,"default",{value:e,enumerable:!0}):n,e)},S=function(e){return I(h({},"__esModule",{value:!0}),e)};var C={};module.exports=S(C);var O=E(require("process"),1),_=require("yargs/helpers"),k=E(require("yargs/yargs"),1);var L={name:"@cyberskill/shared",type:"module",version:"1.95.0",description:"CyberSkill Shared",author:"Stephen Cheng",license:"MIT",homepage:"https://github.com/cyberskill-world/shared#readme",repository:{type:"git",url:"git+https://github.com/cyberskill-world/shared.git"},bugs:{url:"https://github.com/cyberskill-world/shared/issues"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./configs":{types:"./dist/configs/index.d.ts",import:"./dist/configs/index.js",require:"./dist/configs/index.cjs"},"./configs/commitlint":{types:"./dist/configs/commitlint/index.d.ts",import:"./dist/configs/commitlint/index.js",require:"./dist/configs/commitlint/index.cjs"},"./configs/eslint":{types:"./dist/configs/eslint/index.d.ts",import:"./dist/configs/eslint/index.js",require:"./dist/configs/eslint/index.cjs"},"./configs/graphql-codegen":{types:"./dist/configs/graphql-codegen/index.d.ts",import:"./dist/configs/graphql-codegen/index.js",require:"./dist/configs/graphql-codegen/index.cjs"},"./configs/lint-staged":{types:"./dist/configs/lint-staged/index.d.ts",import:"./dist/configs/lint-staged/index.js",require:"./dist/configs/lint-staged/index.cjs"},"./constants":{types:"./dist/constants/index.d.ts",import:"./dist/constants/index.js",require:"./dist/constants/index.cjs"},"./nodejs":{types:"./dist/nodejs/index.d.ts",import:"./dist/nodejs/index.js",require:"./dist/nodejs/index.cjs"},"./nodejs/apollo-server":{types:"./dist/nodejs/apollo-server/index.d.ts",import:"./dist/nodejs/apollo-server/index.js",require:"./dist/nodejs/apollo-server/index.cjs"},"./nodejs/cli":{types:"./dist/nodejs/cli/index.d.ts",import:"./dist/nodejs/cli/index.js",require:"./dist/nodejs/cli/index.cjs"},"./nodejs/command":{types:"./dist/nodejs/command/index.d.ts",import:"./dist/nodejs/command/index.js",require:"./dist/nodejs/command/index.cjs"},"./nodejs/express":{types:"./dist/nodejs/express/index.d.ts",import:"./dist/nodejs/express/index.js",require:"./dist/nodejs/express/index.cjs"},"./nodejs/fs":{types:"./dist/nodejs/fs/index.d.ts",import:"./dist/nodejs/fs/index.js",require:"./dist/nodejs/fs/index.cjs"},"./nodejs/log":{types:"./dist/nodejs/log/index.d.ts",import:"./dist/nodejs/log/index.js",require:"./dist/nodejs/log/index.cjs"},"./nodejs/mongo":{types:"./dist/nodejs/mongo/index.d.ts",import:"./dist/nodejs/mongo/index.js",require:"./dist/nodejs/mongo/index.cjs"},"./nodejs/package":{types:"./dist/nodejs/package/index.d.ts",import:"./dist/nodejs/package/index.js",require:"./dist/nodejs/package/index.cjs"},"./nodejs/path":{types:"./dist/nodejs/path/index.d.ts",import:"./dist/nodejs/path/index.js",require:"./dist/nodejs/path/index.cjs"},"./nodejs/storage":{types:"./dist/nodejs/storage/index.d.ts",import:"./dist/nodejs/storage/index.js",require:"./dist/nodejs/storage/index.cjs"},"./nodejs/ws":{types:"./dist/nodejs/ws/index.d.ts",import:"./dist/nodejs/ws/index.js",require:"./dist/nodejs/ws/index.cjs"},"./react":{types:"./dist/react/index.d.ts",import:"./dist/react/index.js",require:"./dist/react/index.cjs"},"./react/apollo-client":{types:"./dist/react/apollo-client/index.d.ts",import:"./dist/react/apollo-client/index.js",require:"./dist/react/apollo-client/index.cjs"},"./react/apollo-error":{types:"./dist/react/apollo-error/index.d.ts",import:"./dist/react/apollo-error/index.js",require:"./dist/react/apollo-error/index.cjs"},"./react/i18next":{types:"./dist/react/i18next/index.d.ts",import:"./dist/react/i18next/index.js",require:"./dist/react/i18next/index.cjs"},"./react/loading":{types:"./dist/react/loading/index.d.ts",import:"./dist/react/loading/index.js",require:"./dist/react/loading/index.cjs"},"./react/log":{types:"./dist/react/log/index.d.ts",import:"./dist/react/log/index.js",require:"./dist/react/log/index.cjs"},"./react/next-intl":{types:"./dist/react/next-intl/index.d.ts",import:"./dist/react/next-intl/index.js",require:"./dist/react/next-intl/index.cjs"},"./react/storage":{types:"./dist/react/storage/index.d.ts",import:"./dist/react/storage/index.js",require:"./dist/react/storage/index.cjs"},"./react/toast":{types:"./dist/react/toast/index.d.ts",import:"./dist/react/toast/index.js",require:"./dist/react/toast/index.cjs"},"./react/vitest":{types:"./dist/react/vitest/index.d.ts",import:"./dist/react/vitest/index.js",require:"./dist/react/vitest/index.cjs"},"./styles/reset.css":{import:"./dist/styles/reset.css",require:"./dist/styles/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./utils":{types:"./dist/utils/index.d.ts",import:"./dist/utils/index.js",require:"./dist/utils/index.cjs"}},main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",bin:{cyberskill:"./dist/nodejs/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"dotenv -e .env -- tsup --watch",lint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint","lint:fix":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:fix","lint:inspect":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:inspect",reset:"dotenv -e .env -- tsx src/nodejs/cli/index.ts reset",setup:"dotenv -e .env -- tsx src/nodejs/cli/index.ts setup",inspect:"dotenv -e .env -- tsx src/nodejs/cli/index.ts inspect","test:unit":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:unit","test:e2e":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:e2e",commitlint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts commitlint","lint-staged":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint-staged"},dependencies:{"@antfu/eslint-config":"4.12.0","@apollo/client":"3.13.8","@apollo/server":"4.12.0","@eddeee888/gcg-typescript-resolver-files":"0.12.0","@eslint-react/eslint-plugin":"1.48.4","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@microsoft/api-extractor":"7.52.4","@next/eslint-plugin-next":"15.3.1","@swc/core":"1.11.21","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.1",chalk:"5.4.1",classnames:"2.5.1",compression:"1.8.0",consola:"3.4.2",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.0",dotenv:"16.5.0","dotenv-cli":"8.0.0",envalid:"8.0.0","eslint-config-next":"15.3.1","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.19",express:"4.21.2","express-device":"0.4.2","express-session":"1.18.1",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"25.0.0",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.15.0",mongoose:"8.13.2","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.0","next-intl":"4.0.2","node-fetch":"3.3.2","node-persist":"4.0.4",ora:"8.2.0",playwright:"1.52.0","postcss-modules":"6.0.1",qs:"6.14.0",react:"19.1.0","react-dom":"19.1.0","react-hot-toast":"2.5.2","react-i18next":"15.4.1","react-icons":"5.5.0",sass:"1.86.3",slugify:"1.6.6",tsup:"8.4.0",tsx:"4.19.3",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.2",vitest:"3.1.1","vitest-browser-react":"0.1.1",ws:"8.18.1",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.0","@eslint/config-inspector":"1.0.2","@types/compression":"1.7.5","@types/cors":"2.8.17","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.1","@types/migrate-mongo":"10.0.5","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.2","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.25.0","lint-staged":"15.5.1","node-modules-inspector":"0.6.6","simple-git-hooks":"2.12.1"}};var T=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});var R=require("child_process"),D=E(require("process"),1),G=E(require("util"),1);var q=".cyberskill-storage";var A=E(require("dotenv"),1),P=require("envalid"),N=E(require("os"),1),M=E(require("path"),1),F=E(require("process"),1);A.default.config();function U(){var e={DEBUG:F.default.env.DEBUG,CWD:F.default.env.CWD,CYBERSKILL_STORAGE_DIR:F.default.env.CYBERSKILL_STORAGE_DIR},t=(0,P.cleanEnv)(e,{DEBUG:(0,P.bool)({default:!1}),CWD:(0,P.str)({default:F.default.cwd()}),CYBERSKILL_STORAGE_DIR:(0,P.str)({default:M.default.join(N.default.homedir(),q)})});return{DEBUG:t.DEBUG,CWD:t.CWD,CYBERSKILL_STORAGE_DIR:t.CYBERSKILL_STORAGE_DIR}}w(U,"getEnv");var W=function(e){return e.Error="error",e.Warning="warning",e}({});var B=E(require("chalk"),1),K=E(require("consola"),1),J=require("graphql");var Y=U();Y.DEBUG||(K.default.level=4);function H(e){var t=B.default[e];return typeof t=="function"?t:B.default.green}w(H,"chalkKeyword");var $={silent:K.default.silent,level:K.default.level,fatal:K.default.fatal,error:K.default.error,warn:K.default.warn,log:K.default.log,info:K.default.info,success:K.default.success,ready:K.default.ready,start:K.default.start,box:K.default.box,debug:K.default.debug,trace:K.default.trace,verbose:K.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){K.default.box(B.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;K.default.log("".concat(B.default.gray("File:")," ").concat(B.default.blue("".concat(t).concat(r?":".concat(r):"")))),i&&K.default.log(" ".concat(H(n)("Rule:")," ").concat(i)),K.default.log(" ".concat(H(n)("Message:")," ").concat(s))}),K.default.box(H(n)("".concat(e," : ").concat(t.length))),K.default.log(B.default.gray("─".repeat(40)))}};var V={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var z=E(require("node-fetch"),1);var Q=E(require("fs"),1);function X(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return Q.existsSync(e)})}w(X,"existsSync");function Z(e,t){var n=Q.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":f(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}w(Z,"readFileSync");function ee(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,i=r===void 0?!1:r,s=i&&(typeof t==="undefined"?"undefined":f(t))=="object"?JSON.stringify(t,null,4):String(t);Q.writeFileSync(e,s,"utf-8")}w(ee,"writeFileSync");function et(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,i=r===void 0?!1:r,s=i&&(typeof t==="undefined"?"undefined":f(t))=="object"?JSON.stringify(t,null,4):String(t);Q.appendFileSync(e,s,"utf-8")}w(et,"appendFileSync");function en(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){X(e)&&Q.rmSync(e,{recursive:!0,force:!0})})}w(en,"rmSync");var er=E(require("path"),1);function ei(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;var i=U();return(r=er).resolve.apply(r,[i.CWD].concat(p(t)))}w(ei,"resolveWorkingPath");function es(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=er).join.apply(r,p(t))}w(es,"join");var eo=U(),ea=eo.CWD,ec="@cyberskill/shared",eu="node_modules",el="dist",ed="package.json",ep="package-lock.json",ef="tsconfig.json",eg=".gitignore",em=".simple-git-hooks.json",ey="pnpm-lock.yaml",eh=".git/hooks/",ev=".git/COMMIT_EDITMSG",ej=es(ea,eu,ec,el),ex="cyberskill",eb="src/nodejs/cli/index.ts",ew="eslint",eI="eslint",eE="vitest",eS="playwright",eC="vitest",eO="@commitlint/cli",e_="commitlint",ek="lint-staged",eL="lint-staged",eT="typescript",eR="tsc",eD="tsx",eG="git",eq="pnpm",eA="pnpm exec",eP="simple-git-hooks",eN="simple-git-hooks",eM="@eslint/config-inspector",eF="eslint-config-inspector",eU="node-modules-inspector",eW="node-modules-inspector",eB="migrate-mongo",eK="migrate-mongo",eJ={CYBERSKILL_DIRECTORY:ej,WORKING_DIRECTORY:ea,TS_CONFIG:ei(ef),GIT_IGNORE:ei(eg),GIT_HOOK:ei(eh),GIT_COMMIT_MSG:ei(ev),SIMPLE_GIT_HOOKS_JSON:ei(em),PACKAGE_JSON:ei(ed),PACKAGE_LOCK_JSON:ei(ep),PNPM_LOCK_YAML:ei(ey),NODE_MODULES:ei(eu),LINT_STAGED_CONFIG:ei("".concat(ej,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ei("".concat(ej,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ei("".concat(ej,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ei("".concat(ej,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ei("".concat(ej,"/react/vitest/vitest.e2e.js"))};function eY(e){var t=e.isCurrentProject;return l({"pre-commit":eL,"commit-msg":e_},t&&{"pre-push":tg("".concat(eG," pull"))})}w(eY,"HOOK");function eH(e){return e$.apply(this,arguments)}function e$(){e$=i(function(e){var t,n,r,i,s,o;var a=arguments;return m(this,function(c){switch(c.label){case 0:for(t=a.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=a[r]}i=d(n,2),s=i[0],o=i[1];if(!s)throw new Error("'first' argument is undefined");switch(e){case T.CLI:return[3,1];case T.RAW:return[3,3]}return[3,4];case 1:return[4,e3(s.split(" "),{update:!0})];case 2:return[2,(c.sent(),ty(tg("".concat(eA," ").concat(o))))];case 3:return[2,ty(tg(s))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return e$.apply(this,arguments)}w(eH,"buildCommand");function eV(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__*/i(function(){return m(this,function(t){return[2,eH.apply(void 0,[e].concat(p(n)))]})})}w(eV,"commandFactory");var ez={simpleGitHooks:eV(T.CLI,eP,eN),eslintInspect:eV(T.CLI,eM,eF),nodeModulesInspect:eV(T.CLI,eU,eW),eslintCheck:eV(T.CLI,ew,"".concat(eI," ").concat(eJ.WORKING_DIRECTORY)),eslintFix:eV(T.CLI,ew,"".concat(eI," ").concat(eJ.WORKING_DIRECTORY," --fix")),typescriptCheck:eV(T.CLI,eT,"".concat(eR," -p ").concat(eJ.TS_CONFIG," --noEmit")),configureGitHook:eV(T.RAW,"".concat(eG," config core.hooksPath ").concat(eJ.GIT_HOOK)),testUnit:eV(T.CLI,eE,"".concat(eC," --config ").concat(eJ.UNIT_TEST_CONFIG)),testE2e:eV(T.CLI,"".concat(eE," ").concat(eS),"".concat(eC," --config ").concat(eJ.E2E_TEST_CONFIG)),mongoMigrateCreate:w(function(e){return eV(T.CLI,"".concat(eB),"".concat(eK," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:eV(T.CLI,"".concat(eB),"".concat(eK," up")),mongoMigrateDown:eV(T.CLI,"".concat(eB),"".concat(eK," down")),commitLint:eV(T.CLI,eO,"".concat(e_," --edit ").concat(eJ.GIT_COMMIT_MSG," --config ").concat(eJ.COMMITLINT_CONFIG)),lintStaged:eV(T.CLI,ek,"".concat(eL," --config ").concat(eJ.LINT_STAGED_CONFIG)),stageBuildDirectory:eV(T.RAW,"".concat(eG," add ").concat(el)),build:eV(T.RAW,"".concat(eq," run build")),pnpmInstallStandard:eV(T.RAW,"".concat(eq," install")),pnpmInstallLegacy:eV(T.RAW,"".concat(eq," install --legacy-peer-deps")),pnpmInstallForce:eV(T.RAW,"".concat(eq," install --force"))};function eQ(e){var t=U(),n=es(t.CWD,ed);if(!X(n))return!1;try{var r=Z(n,{asJson:!0}),i=r.name,s=r.dependencies,o=s===void 0?{}:s,a=r.devDependencies,c=a===void 0?{}:a,u=i===e,l=e in o,d=e in c;return u||l||d?{path:n,file:r,isCurrentProject:u,isDepend:l,isDevDepend:d}:!1}catch(e){return $.warn("Failed to read package.json: ".concat(e.message)),!1}}w(eQ,"getPackage");function eX(e){return eZ.apply(this,arguments)}function eZ(){eZ=i(function(e){var t,n,r,i;return m(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,(0,z.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=s.sent(),r=n.version;return[2,r];case 3:i=s.sent();throw $.error('Failed to fetch version for "'.concat(e,'": ').concat(i.message)),i;case 4:return[2]}})});return eZ.apply(this,arguments)}w(eX,"getLatestPackageVersion");function e0(e,t){return e1.apply(this,arguments)}function e1(){e1=i(function(e,t){var n,r,i,s,o,a,c,u,d,p,f,g,y,h,v,j,x,b,w,I,E;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=eQ(e);if(!n)return[2,l({},V)];c=n.path,u=n.file,d=n.isCurrentProject,p=n.isDepend,f=n.isDevDepend,g=(r=u.dependencies)!==null&&r!==void 0?r:{},y=(i=u.devDependencies)!==null&&i!==void 0?i:{},h=d?(s=u.version)!==null&&s!==void 0?s:"0.0.0":p?(o=g[e])!==null&&o!==void 0?o:"0.0.0":f?(a=y[e])!==null&&a!==void 0?a:"0.0.0":"0.0.0";if(!d)return[3,1];x=h;return[3,3];case 1:return[4,eX(e)];case 2:x=m.sent();m.label=3;case 3:v=x,j=d||h===v;if(!j&&(t===null||t===void 0?void 0:t.update)){;w=p?"dependencies":f?"devDependencies":null;w&&((b=u[w])===null||b===void 0?void 0:b[e])!==v&&(u[w]=(I=u[w])!==null&&I!==void 0?I:{},u[w][e]=v,ee(c,u,{isJson:!0}),$.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:d,installedPath:c,file:u,isUpToDate:j}];case 4:E=m.sent();return[2,($.error('Error checking package "'.concat(e,'": ').concat(E.message)),l({},V))];case 5:return[2]}})});return e1.apply(this,arguments)}w(e0,"checkPackage");function e2(){return e4.apply(this,arguments)}function e4(){e4=i(function(){var e,t,n,r,i,s,o,a,c,u,l,d;return m(this,function(p){switch(p.label){case 0:e=[{command:w(function(){return ez.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:w(function(){return ez.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:w(function(){return ez.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);i=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,8];o=s.value,a=o.command,c=o.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,a()];case 4:u=p.sent();return[4,tj("".concat(c," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();$.warn("Installation attempt failed: ".concat(c)),$.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=p.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return e4.apply(this,arguments)}w(e2,"installDependencies");function e3(e,t){return e8.apply(this,arguments)}function e8(){e8=i(function(e,t){var n,r,i,s,o,a,c,u,d,f,g;return m(this,function(m){switch(m.label){case 0:if(!X(eJ.PACKAGE_JSON)){$.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return e0(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=m.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,e2()];case 3:r=m.sent();m.label=4;case 4:r;s=true,o=false,a=undefined;m.label=5;case 5:m.trys.push([5,10,11,12]);c=((i=t===null||t===void 0?void 0:t.postInstallActions)!==null&&i!==void 0?i:[])[Symbol.iterator]();m.label=6;case 6:if(!!(s=(u=c.next()).done))return[3,9];d=u.value;return[4,d()];case 7:m.sent();m.label=8;case 8:s=true;return[3,6];case 9:return[3,12];case 10:f=m.sent();o=true;a=f;return[3,12];case 11:try{if(!s&&c.return!=null){c.return()}}finally{if(o){throw a}}return[7];case 12:return[3,14];case 13:g=m.sent();throw $.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return e8.apply(this,arguments)}w(e3,"setupPackages");var e5=E(require("node-persist"),1);var e6=U();function e9(){return e7.apply(this,arguments)}function e7(){e7=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=e5.default.defaultInstance;if(e)return[3,2];return[4,e5.default.init({dir:e6.CYBERSKILL_STORAGE_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 e7.apply(this,arguments)}w(e9,"initNodePersist");var te={get:function e(e){return i(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e5.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,($.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return i(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e9()];case 1:r.sent();return[4,e5.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();$.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e5.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();$.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e9()];case 1:n.sent();return[4,e5.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:($.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,($.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return m(this,function(t){try{return[2,"".concat(e6.CYBERSKILL_STORAGE_DIR," (key: ").concat(e,")")]}catch(e){return[2,($.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var tt=U(),tn=G.promisify(R.exec);function tr(e){return"error_list:".concat(e)}w(tr,"getErrorListKey");function ti(e){return ts.apply(this,arguments)}function ts(){ts=i(function(e){var t,n,r;return m(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tr(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,te.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(/*#__PURE__*/i(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,te.getLogLink(n)];case 1:e=t.sent();e&&$.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=s.sent();$.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return ts.apply(this,arguments)}w(ti,"saveErrorListToStorage");function to(){return ta.apply(this,arguments)}function ta(){ta=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(/*#__PURE__*/function(){var e=i(function(e){var t;return m(this,function(n){switch(n.label){case 0:return[4,te.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})});return function(t){return e.apply(this,arguments)}}()))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,($.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})});return ta.apply(this,arguments)}w(to,"getStoredErrorLists");function tc(){return tu.apply(this,arguments)}function tu(){tu=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,te.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return te.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();$.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})});return tu.apply(this,arguments)}w(tc,"clearAllErrorLists");function tl(e){var t=[],n=[],r="",i=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var a,c,u,l,d;var p=i.exec(e)||[],f=s.exec(e)||[],g=o.exec(e)||[];var m,y,h,v,j,x;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===W.Error?W.Error:W.Warning,message:(m=p===null||p===void 0?void 0:(a=p[4])===null||a===void 0?void 0:a.trim())!==null&&m!==void 0?m:"",rule:(y=p===null||p===void 0?void 0:(c=p[5])===null||c===void 0?void 0:c.trim())!==null&&y!==void 0?y:""}):f.length?t.push({file:(h=f===null||f===void 0?void 0:f[1])!==null&&h!==void 0?h:"",position:"".concat(f[2],":").concat(f[3]),type:f[4]===W.Error?W.Error:W.Warning,message:(v=f===null||f===void 0?void 0:(u=f[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):g.length?t.push({file:"commitlint",type:W.Error,message:(j=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&j!==void 0?j:"",rule:(x=g===null||g===void 0?void 0:(d=g[2])===null||d===void 0?void 0:d.trim())!==null&&x!==void 0?x:""}):n.push(e.trim())}}),t.length&&ti(t),tt.DEBUG&&n.length&&($.warn("Unmatched lines:"),n.forEach(function(e){return $.info(" ".concat(e))}))}w(tl,"parseTextErrors");function td(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,i=e.line,s=e.column,o=e.ruleId,a=e.message;n.push({type:r===2?W.Error:W.Warning,file:t,position:"".concat(i,":").concat(s),rule:o,message:a})})}),n.length&&ti(n)}catch(t){tl(e)}}w(td,"parseCommandOutput");function tp(e){return tf.apply(this,arguments)}function tf(){tf=i(function(e){var t,n,r,i,s,o,a,c,u;var l=arguments;return m(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:td;n=new AbortController;D.default.on("SIGINT",function(){$.warn("Process interrupted. Terminating..."),n.abort(),D.default.exit()});d.label=1;case 1:d.trys.push([1,3,,4]);return[4,tn(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),i=r.stdout,s=r.stderr;[i,s].forEach(function(e){return e&&t(e)});return[3,4];case 3:o=d.sent();a=o.stdout,c=o.stderr,u=o.message;[a,c].forEach(function(e){return e&&t(e)}),!c&&!a&&$.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return tf.apply(this,arguments)}w(tp,"executeCommand");function tg(e){return{raw:!0,cmd:e}}w(tg,"rawCommand");function tm(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eA," ").concat(ec," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eA," ").concat(eD," ").concat(eb," ").concat(e):"".concat(eA," ").concat(ex," ").concat(e)}w(tm,"formatCLI");function ty(e,t){return typeof e=="function"?tm(e(t),t):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tm(e,t):e}w(ty,"formatCommand");function th(e){return tv.apply(this,arguments)}function tv(){tv=i(function(e){var t,n,r,i,s,o,a;var c=arguments;return m(this,function(u){switch(u.label){case 0:t=c.length>1&&c[1]!==void 0?c[1]:{};r=(n=t===null||t===void 0?void 0:t.isRemote)!==null&&n!==void 0?n:!1;if(!r)return[3,1];a=!1;return[3,3];case 1:return[4,e0(ec)];case 2:a=u.sent().isCurrentProject;u.label=3;case 3:i=a,s={isRemote:r,isCurrentProject:i},o=typeof e=="function"?e(s):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var t=d(e,2),n=t[0],r=t[1];return[n,ty(r,s)]}))]}})});return tv.apply(this,arguments)}w(th,"resolveCommands");function tj(e,t){return tx.apply(this,arguments)}function tx(){tx=i(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);$.start("".concat(e)),tt.DEBUG&&$.info("→ ".concat(t));return[4,tp(t)];case 1:r.sent(),$.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw $.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return tx.apply(this,arguments)}w(tj,"runCommand");function tb(){return tw.apply(this,arguments)}function tw(){tw=i(function(){var e,t;return m(this,function(n){switch(n.label){case 0:if(!X(eJ.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,ez.typescriptCheck()];case 1:return[4,tj.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=$.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})});return tw.apply(this,arguments)}w(tb,"checkTypescript");function tI(){return tE.apply(this,arguments)}function tE(){tE=i(function(){var e,t,n,r;var i=arguments;return m(this,function(s){switch(s.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,ez.eslintFix()];case 1:return[4,tj.apply(void 0,n.concat([s.sent()]))];case 2:t=s.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,ez.eslintCheck()];case 4:return[4,tj.apply(void 0,r.concat([s.sent()]))];case 5:t=s.sent();s.label=6;case 6:t;return[2]}})});return tE.apply(this,arguments)}w(tI,"checkEslint");function tS(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";$.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}w(tS,"printIssues");function tC(){return tO.apply(this,arguments)}function tO(){tO=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:return[4,to()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===W.Error}),n=e.filter(function(e){return e.type===W.Warning});!t.length&&!n.length?$.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tS("Warnings",n),tS("Errors",t),(t.length>0||n.length>0)&&O.default.exit(1));return[2]}})});return tO.apply(this,arguments)}w(tC,"showCheckResult");function t_(){return tk.apply(this,arguments)}function tk(){tk=i(function(){var e,t,n,r,i,s;return m(this,function(o){switch(o.label){case 0:return[4,tc()];case 1:o.sent();return[4,e0(ec)];case 2:e=o.sent(),t=e.isCurrentProject;if(!t)return[3,9];o.label=3;case 3:o.trys.push([3,8,,9]);n=["Building package: ".concat(ec)];return[4,ez.build()];case 4:return[4,tj.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,ez.stageBuildDirectory()];case 6:return[4,tj.apply(void 0,r.concat([o.sent()]))];case 7:o.sent();return[3,9];case 8:i=o.sent();throw $.error("Error building and staging ".concat(ec,": ").concat(i.message)),i;case 9:s=["Executing lint-staged"];return[4,ez.lintStaged()];case 10:return[4,tj.apply(void 0,s.concat([o.sent()]))];case 11:o.sent(),tC();return[2]}})});return tk.apply(this,arguments)}w(t_,"lintStaged");function tL(){return tT.apply(this,arguments)}function tT(){tT=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,ez.eslintInspect()];case 1:return[4,tj.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tT.apply(this,arguments)}w(tL,"inspectLint");function tR(){return tD.apply(this,arguments)}function tD(){tD=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,tc()];case 1:e.sent();return[4,Promise.all([tb(),tI()])];case 2:e.sent(),tC();return[2]}})});return tD.apply(this,arguments)}w(tR,"lintCheck");function tG(){return tq.apply(this,arguments)}function tq(){tq=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,tc()];case 1:e.sent();return[4,Promise.all([tb(),tI(!0)])];case 2:e.sent(),tC();return[2]}})});return tq.apply(this,arguments)}w(tG,"lintFix");function tA(){return tP.apply(this,arguments)}function tP(){tP=i(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,tc()];case 1:t.sent();e=["Validating commit message"];return[4,ez.commitLint()];case 2:return[4,tj.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tC();return[2]}})});return tP.apply(this,arguments)}w(tA,"commitLint");function tN(){return tM.apply(this,arguments)}function tM(){tM=i(function(){var e,t,n,r;return m(this,function(i){switch(i.label){case 0:e=["Configuring Git hooks"];return[4,ez.configureGitHook()];case 1:return[4,tj.apply(void 0,e.concat([i.sent()]))];case 2:i.sent(),en(eJ.GIT_HOOK);return[4,th(eY)];case 3:t=i.sent();ee(eJ.SIMPLE_GIT_HOOKS_JSON,t,{isJson:!0});n="\n".concat(em,"\n");X(eJ.GIT_IGNORE)?Z(eJ.GIT_IGNORE).split("\n").includes(em)||et(eJ.GIT_IGNORE,n):ee(eJ.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,ez.simpleGitHooks()];case 4:return[4,tj.apply(void 0,r.concat([i.sent()]))];case 5:i.sent();return[2]}})});return tM.apply(this,arguments)}w(tN,"setupGitHook");function tF(){return tU.apply(this,arguments)}function tU(){tU=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,e3([ec],{update:!0,postInstallActions:[tN]})];case 1:e.sent();return[2]}})});return tU.apply(this,arguments)}w(tF,"setup");function tW(){return tB.apply(this,arguments)}function tB(){tB=i(function(){return m(this,function(e){switch(e.label){case 0:en(eJ.NODE_MODULES,eJ.PNPM_LOCK_YAML);return[4,e2()];case 1:e.sent();return[4,tN()];case 2:e.sent();return[2]}})});return tB.apply(this,arguments)}w(tW,"reset");function tK(){return tJ.apply(this,arguments)}function tJ(){tJ=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,ez.nodeModulesInspect()];case 1:return[4,tj.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tJ.apply(this,arguments)}w(tK,"inspect");function tY(){return tH.apply(this,arguments)}function tH(){tH=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,ez.testUnit()];case 1:return[4,tj.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tH.apply(this,arguments)}w(tY,"testUnit");function t$(){return tV.apply(this,arguments)}function tV(){tV=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,ez.testE2e()];case 1:return[4,tj.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tV.apply(this,arguments)}w(t$,"testE2E");function tz(e){return tQ.apply(this,arguments)}function tQ(){tQ=i(function(e){var t;return m(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,ez.mongoMigrateCreate(e)];case 1:return[4,tj.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})});return tQ.apply(this,arguments)}w(tz,"mongoMigrateCreate");function tX(){return tZ.apply(this,arguments)}function tZ(){tZ=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,ez.mongoMigrateUp()];case 1:return[4,tj.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tZ.apply(this,arguments)}w(tX,"mongoMigrateUp");function t0(){return t1.apply(this,arguments)}function t1(){t1=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,ez.mongoMigrateDown()];case 1:return[4,tj.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return t1.apply(this,arguments)}w(t0,"mongoMigrateDown");i(function(){var e;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,k.default)((0,_.hideBin)(O.default.argv)).scriptName(ex).usage("$0 <command> [options]").command("lint","Check code for linting issues",tR).command("lint:fix","Fix linting issues automatically",tG).command("lint:inspect","View active ESLint configuration",tL).command("lint-staged","Run lint checks on staged files",t_).command("commitlint","Validate commit message format",tA).command("setup","Initialize project setup and dependencies",tF).command("reset","Reset the project and reinstall dependencies",tW).command("inspect","Analyze installed project dependencies",tK).command("test:unit","Run unit test suite",tY).command("test:e2e","Run end-to-end test suite",t$).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},/*#__PURE__*/function(){var e=i(function(e){return m(this,function(t){switch(t.label){case 0:if(!e.name){$.error("Migration name is required.");return[2]}return[4,tz(e.name)];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}()).command("mongo:migrate:up","Apply all MongoDB migrations",tX).command("mongo:migrate:down","Rollback last MongoDB migration",t0).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(L.version).epilog('\uD83D\uDCA1 Tip: Use "--help" with any command to see options\n').parse()];case 1:t.sent();return[3,3];case 2:e=t.sent();$.error("Fatal: ".concat(e.message)),O.default.exit(1);return[3,3];case 3:return[2]}})})();
|
package/dist/nodejs/cli/index.js
CHANGED
|
@@ -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,s,i,o){try{var c=e[i](o);var a=c.value}catch(e){n(e);return}if(c.done){t(a)}else{Promise.resolve(a).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,i){var o=e.apply(t,n);function c(e){r(o,s,i,c,a,"next",e)}function a(e){r(o,s,i,c,a,"throw",e)}c(undefined)})}}function i(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var i=false;var o,c;try{for(n=n.call(e);!(s=(o=n.next()).done);s=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){i=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(i)throw c}}return r}function a(){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){i(e,t,n[t])})}return e}function d(e,n){return t(e)||c(e,n)||g(e,n)||a()}function p(e){return n(e)||o(e)||g(e)||u()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function g(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,s,i={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return a([e,t])}}function a(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(i=0)),i)try{if(n=1,r&&(s=c[0]&2?r["return"]:c[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,c[1])).done)return s;if(r=0,s)c=[c[0]&2,s.value];switch(c[0]){case 0:case 1:s=c;break;case 4:i.label++;return{value:c[1],done:false};case 5:i.label++;r=c[1];c=[0];continue;case 7:c=i.ops.pop();i.trys.pop();continue;default:if(!(s=i.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){i=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){i.label=c[1];break}if(c[0]===6&&i.label<s[1]){i.label=s[1];s=c;break}if(s&&i.label<s[2]){i.label=s[2];i.ops.push(c);break}if(s[2])i.ops.pop();i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e];r=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var h=Object.defineProperty;var y=function(e,t){return h(e,"name",{value:t,configurable:!0})};import v from"node:process";import{hideBin as x}from"yargs/helpers";import j from"yargs/yargs";var b={name:"@cyberskill/shared",type:"module",version:"1.94.0",description:"CyberSkill Shared",author:"Stephen Cheng",license:"MIT",homepage:"https://github.com/cyberskill-world/shared#readme",repository:{type:"git",url:"git+https://github.com/cyberskill-world/shared.git"},bugs:{url:"https://github.com/cyberskill-world/shared/issues"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./configs":{types:"./dist/configs/index.d.ts",import:"./dist/configs/index.js",require:"./dist/configs/index.cjs"},"./configs/commitlint":{types:"./dist/configs/commitlint/index.d.ts",import:"./dist/configs/commitlint/index.js",require:"./dist/configs/commitlint/index.cjs"},"./configs/eslint":{types:"./dist/configs/eslint/index.d.ts",import:"./dist/configs/eslint/index.js",require:"./dist/configs/eslint/index.cjs"},"./configs/graphql-codegen":{types:"./dist/configs/graphql-codegen/index.d.ts",import:"./dist/configs/graphql-codegen/index.js",require:"./dist/configs/graphql-codegen/index.cjs"},"./configs/lint-staged":{types:"./dist/configs/lint-staged/index.d.ts",import:"./dist/configs/lint-staged/index.js",require:"./dist/configs/lint-staged/index.cjs"},"./constants":{types:"./dist/constants/index.d.ts",import:"./dist/constants/index.js",require:"./dist/constants/index.cjs"},"./nodejs":{types:"./dist/nodejs/index.d.ts",import:"./dist/nodejs/index.js",require:"./dist/nodejs/index.cjs"},"./nodejs/apollo-server":{types:"./dist/nodejs/apollo-server/index.d.ts",import:"./dist/nodejs/apollo-server/index.js",require:"./dist/nodejs/apollo-server/index.cjs"},"./nodejs/cli":{types:"./dist/nodejs/cli/index.d.ts",import:"./dist/nodejs/cli/index.js",require:"./dist/nodejs/cli/index.cjs"},"./nodejs/command":{types:"./dist/nodejs/command/index.d.ts",import:"./dist/nodejs/command/index.js",require:"./dist/nodejs/command/index.cjs"},"./nodejs/express":{types:"./dist/nodejs/express/index.d.ts",import:"./dist/nodejs/express/index.js",require:"./dist/nodejs/express/index.cjs"},"./nodejs/fs":{types:"./dist/nodejs/fs/index.d.ts",import:"./dist/nodejs/fs/index.js",require:"./dist/nodejs/fs/index.cjs"},"./nodejs/log":{types:"./dist/nodejs/log/index.d.ts",import:"./dist/nodejs/log/index.js",require:"./dist/nodejs/log/index.cjs"},"./nodejs/mongo":{types:"./dist/nodejs/mongo/index.d.ts",import:"./dist/nodejs/mongo/index.js",require:"./dist/nodejs/mongo/index.cjs"},"./nodejs/package":{types:"./dist/nodejs/package/index.d.ts",import:"./dist/nodejs/package/index.js",require:"./dist/nodejs/package/index.cjs"},"./nodejs/path":{types:"./dist/nodejs/path/index.d.ts",import:"./dist/nodejs/path/index.js",require:"./dist/nodejs/path/index.cjs"},"./nodejs/storage":{types:"./dist/nodejs/storage/index.d.ts",import:"./dist/nodejs/storage/index.js",require:"./dist/nodejs/storage/index.cjs"},"./nodejs/ws":{types:"./dist/nodejs/ws/index.d.ts",import:"./dist/nodejs/ws/index.js",require:"./dist/nodejs/ws/index.cjs"},"./react":{types:"./dist/react/index.d.ts",import:"./dist/react/index.js",require:"./dist/react/index.cjs"},"./react/apollo-client":{types:"./dist/react/apollo-client/index.d.ts",import:"./dist/react/apollo-client/index.js",require:"./dist/react/apollo-client/index.cjs"},"./react/apollo-error":{types:"./dist/react/apollo-error/index.d.ts",import:"./dist/react/apollo-error/index.js",require:"./dist/react/apollo-error/index.cjs"},"./react/i18next":{types:"./dist/react/i18next/index.d.ts",import:"./dist/react/i18next/index.js",require:"./dist/react/i18next/index.cjs"},"./react/loading":{types:"./dist/react/loading/index.d.ts",import:"./dist/react/loading/index.js",require:"./dist/react/loading/index.cjs"},"./react/log":{types:"./dist/react/log/index.d.ts",import:"./dist/react/log/index.js",require:"./dist/react/log/index.cjs"},"./react/next-intl":{types:"./dist/react/next-intl/index.d.ts",import:"./dist/react/next-intl/index.js",require:"./dist/react/next-intl/index.cjs"},"./react/storage":{types:"./dist/react/storage/index.d.ts",import:"./dist/react/storage/index.js",require:"./dist/react/storage/index.cjs"},"./react/toast":{types:"./dist/react/toast/index.d.ts",import:"./dist/react/toast/index.js",require:"./dist/react/toast/index.cjs"},"./react/vitest":{types:"./dist/react/vitest/index.d.ts",import:"./dist/react/vitest/index.js",require:"./dist/react/vitest/index.cjs"},"./styles/reset.css":{import:"./dist/styles/reset.css",require:"./dist/styles/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./utils":{types:"./dist/utils/index.d.ts",import:"./dist/utils/index.js",require:"./dist/utils/index.cjs"}},main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",bin:{cyberskill:"./dist/nodejs/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"dotenv -e .env -- tsup --watch",lint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint","lint:fix":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:fix","lint:inspect":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:inspect",reset:"dotenv -e .env -- tsx src/nodejs/cli/index.ts reset",setup:"dotenv -e .env -- tsx src/nodejs/cli/index.ts setup",inspect:"dotenv -e .env -- tsx src/nodejs/cli/index.ts inspect","test:unit":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:unit","test:e2e":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:e2e",commitlint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts commitlint","lint-staged":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint-staged"},dependencies:{"@antfu/eslint-config":"4.12.0","@apollo/client":"3.13.8","@apollo/server":"4.12.0","@eddeee888/gcg-typescript-resolver-files":"0.12.0","@eslint-react/eslint-plugin":"1.48.3","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@microsoft/api-extractor":"7.52.4","@next/eslint-plugin-next":"15.3.1","@swc/core":"1.11.21","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.1",chalk:"5.4.1",classnames:"2.5.1",compression:"1.8.0",consola:"3.4.2",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.0","dotenv-cli":"8.0.0","eslint-config-next":"15.3.1","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.19",express:"4.21.2","express-device":"0.4.2","express-session":"1.18.1",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"25.0.0",jsdom:"26.1.0",localforage:"1.10.0","modern-normalize":"3.0.1",mongodb:"6.15.0",mongoose:"8.13.2","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.0","next-intl":"4.0.2","node-fetch":"3.3.2","node-persist":"4.0.4",ora:"8.2.0",playwright:"1.52.0","postcss-modules":"6.0.1",qs:"6.14.0",react:"19.1.0","react-dom":"19.1.0","react-hot-toast":"2.5.2","react-i18next":"15.4.1","react-icons":"5.5.0",sass:"1.86.3",slugify:"1.6.6",tsup:"8.4.0",tsx:"4.19.3",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.2",vitest:"3.1.1","vitest-browser-react":"0.1.1",ws:"8.18.1",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.0","@eslint/config-inspector":"1.0.2","@types/compression":"1.7.5","@types/cors":"2.8.17","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.1","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.2","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.24.0","lint-staged":"15.5.1","node-modules-inspector":"0.6.6","simple-git-hooks":"2.12.1"}};var w=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});import{exec as I}from"node:child_process";import S from"node:process";import*as E from"node:util";import k from"node:process";var O=k.env.DEBUG==="true";var C=function(e){return e.Error="error",e.Warning="warning",e}({});import _ from"chalk";import T from"consola";import{GraphQLError as L}from"graphql";O||(T.level=4);function G(e){var t=_[e];return typeof t=="function"?t:_.green}y(G,"chalkKeyword");var N={silent:T.silent,level:T.level,fatal:T.fatal,error:T.error,warn:T.warn,log:T.log,info:T.info,success:T.success,ready:T.ready,start:T.start,box:T.box,debug:T.debug,trace:T.trace,verbose:T.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)){T.box(_.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,i=e.message;T.log("".concat(_.gray("File:")," ").concat(_.blue("".concat(t).concat(r?":".concat(r):"")))),s&&T.log(" ".concat(G(n)("Rule:")," ").concat(s)),T.log(" ".concat(G(n)("Message:")," ").concat(i))}),T.box(G(n)("".concat(e," : ").concat(t.length))),T.log(_.gray("─".repeat(40)))}};var P={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import A from"node-fetch";import*as R from"node:fs";function q(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return R.existsSync(e)})}y(q,"existsSync");function F(e,t){var n=R.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":f(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}y(F,"readFileSync");function D(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,s=r===void 0?!1:r,i=s&&(typeof t==="undefined"?"undefined":f(t))=="object"?JSON.stringify(t,null,4):String(t);R.writeFileSync(e,i,"utf-8")}y(D,"writeFileSync");function M(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,s=r===void 0?!1:r,i=s&&(typeof t==="undefined"?"undefined":f(t))=="object"?JSON.stringify(t,null,4):String(t);R.appendFileSync(e,i,"utf-8")}y(M,"appendFileSync");function W(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){q(e)&&R.rmSync(e,{recursive:!0,force:!0})})}y(W,"rmSync");import U from"node:process";import*as J from"node:path";function K(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=J).resolve.apply(r,[H].concat(p(t)))}y(K,"resolveWorkingPath");function B(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=J).join.apply(r,p(t))}y(B,"join");var H=U.env.INIT_CWD||U.cwd(),Y="@cyberskill/shared",$=".cyberskill-storage",V="node_modules",z="dist",Q="package.json",X="package-lock.json",Z="tsconfig.json",ee=".gitignore",et=".simple-git-hooks.json",en="pnpm-lock.yaml",er=".git/hooks/",es=".git/COMMIT_EDITMSG",ei=B(H,V,Y,z),eo="cyberskill",ec="src/nodejs/cli/index.ts",ea="eslint",eu="eslint",el="vitest",ed="playwright",ep="vitest",ef="@commitlint/cli",eg="commitlint",em="lint-staged",eh="lint-staged",ey="typescript",ev="tsc",ex="tsx",ej="git",eb="pnpm",ew="pnpm exec",eI="simple-git-hooks",eS="simple-git-hooks",eE="@eslint/config-inspector",ek="eslint-config-inspector",eO="node-modules-inspector",eC="node-modules-inspector",e_={CYBERSKILL_DIRECTORY:ei,WORKING_DIRECTORY:H,TS_CONFIG:K(Z),GIT_IGNORE:K(ee),GIT_HOOK:K(er),GIT_COMMIT_MSG:K(es),SIMPLE_GIT_HOOKS_JSON:K(et),PACKAGE_JSON:K(Q),PACKAGE_LOCK_JSON:K(X),PNPM_LOCK_YAML:K(en),NODE_MODULES:K(V),LINT_STAGED_CONFIG:K("".concat(ei,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:K("".concat(ei,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:K("".concat(ei,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:K("".concat(ei,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:K("".concat(ei,"/react/vitest/vitest.e2e.js"))};function eT(e){var t=e.isCurrentProject;return l({"pre-commit":eh,"commit-msg":eg},t&&{"pre-push":e7("".concat(ej," pull"))})}y(eT,"HOOK");function eL(e){return eG.apply(this,arguments)}function eG(){eG=s(function(e){var t,n,r,s,i,o;var c=arguments;return m(this,function(a){switch(a.label){case 0:for(t=c.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=c[r]}s=d(n,2),i=s[0],o=s[1];if(!i)throw new Error("'first' argument is undefined");switch(e){case w.CLI:return[3,1];case w.RAW:return[3,3]}return[3,4];case 1:return[4,eU(i.split(" "),{update:!0})];case 2:return[2,(a.sent(),tt(e7("".concat(ew," ").concat(o))))];case 3:return[2,tt(e7(i))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eG.apply(this,arguments)}y(eL,"buildCommand");function eN(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__*/s(function(){return m(this,function(t){return[2,eL.apply(void 0,[e].concat(p(n)))]})})}y(eN,"commandFactory");var eP={simpleGitHooks:eN(w.CLI,eI,eS),eslintInspect:eN(w.CLI,eE,ek),nodeModulesInspect:eN(w.CLI,eO,eC),eslintCheck:eN(w.CLI,ea,"".concat(eu," ").concat(e_.WORKING_DIRECTORY)),eslintFix:eN(w.CLI,ea,"".concat(eu," ").concat(e_.WORKING_DIRECTORY," --fix")),typescriptCheck:eN(w.CLI,ey,"".concat(ev," -p ").concat(e_.TS_CONFIG," --noEmit")),configureGitHook:eN(w.RAW,"".concat(ej," config core.hooksPath ").concat(e_.GIT_HOOK)),testUnit:eN(w.CLI,el,"".concat(ep," --config ").concat(e_.UNIT_TEST_CONFIG)),testE2e:eN(w.CLI,"".concat(el," ").concat(ed),"".concat(ep," --config ").concat(e_.E2E_TEST_CONFIG)),commitLint:eN(w.CLI,ef,"".concat(eg," --edit ").concat(e_.GIT_COMMIT_MSG," --config ").concat(e_.COMMITLINT_CONFIG)),lintStaged:eN(w.CLI,em,"".concat(eh," --config ").concat(e_.LINT_STAGED_CONFIG)),stageBuildDirectory:eN(w.RAW,"".concat(ej," add ").concat(z)),build:eN(w.RAW,"".concat(eb," run build")),pnpmInstallStandard:eN(w.RAW,"".concat(eb," install")),pnpmInstallLegacy:eN(w.RAW,"".concat(eb," install --legacy-peer-deps")),pnpmInstallForce:eN(w.RAW,"".concat(eb," install --force"))};function eA(e){var t=B(H,Q);if(!q(t))return!1;try{var n=F(t,{asJson:!0}),r=n.name,s=n.dependencies,i=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,a=r===e,u=e in i,l=e in c;return a||u||l?{path:t,file:n,isCurrentProject:a,isDepend:u,isDevDepend:l}:!1}catch(e){return N.warn("Failed to read package.json: ".concat(e.message)),!1}}y(eA,"getPackage");function eR(e){return eq.apply(this,arguments)}function eq(){eq=s(function(e){var t,n,r,s;return m(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,A("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=i.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=i.sent(),r=n.version;return[2,r];case 3:s=i.sent();throw N.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})});return eq.apply(this,arguments)}y(eR,"getLatestPackageVersion");function eF(e,t){return eD.apply(this,arguments)}function eD(){eD=s(function(e,t){var n,r,s,i,o,c,a,u,d,p,f,g,h,y,v,x,j,b,w,I,S;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=eA(e);if(!n)return[2,l({},P)];a=n.path,u=n.file,d=n.isCurrentProject,p=n.isDepend,f=n.isDevDepend,g=(r=u.dependencies)!==null&&r!==void 0?r:{},h=(s=u.devDependencies)!==null&&s!==void 0?s:{},y=d?(i=u.version)!==null&&i!==void 0?i:"0.0.0":p?(o=g[e])!==null&&o!==void 0?o:"0.0.0":f?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!d)return[3,1];j=y;return[3,3];case 1:return[4,eR(e)];case 2:j=m.sent();m.label=3;case 3:v=j,x=d||y===v;if(!x&&(t===null||t===void 0?void 0:t.update)){;w=p?"dependencies":f?"devDependencies":null;w&&((b=u[w])===null||b===void 0?void 0:b[e])!==v&&(u[w]=(I=u[w])!==null&&I!==void 0?I:{},u[w][e]=v,D(a,u,{isJson:!0}),N.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:d,installedPath:a,file:u,isUpToDate:x}];case 4:S=m.sent();return[2,(N.error('Error checking package "'.concat(e,'": ').concat(S.message)),l({},P))];case 5:return[2]}})});return eD.apply(this,arguments)}y(eF,"checkPackage");function eM(){return eW.apply(this,arguments)}function eW(){eW=s(function(){var e,t,n,r,s,i,o,c,a,u,l,d;return m(this,function(p){switch(p.label){case 0:e=[{command:y(function(){return eP.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return eP.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return eP.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);s=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(i=s.next()).done))return[3,8];o=i.value,c=o.command,a=o.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,c()];case 4:u=p.sent();return[4,ts("".concat(a," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();N.warn("Installation attempt failed: ".concat(a)),N.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=p.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eW.apply(this,arguments)}y(eM,"installDependencies");function eU(e,t){return eJ.apply(this,arguments)}function eJ(){eJ=s(function(e,t){var n,r,s,i,o,c,a,u,d,f,g;return m(this,function(m){switch(m.label){case 0:if(!q(e_.PACKAGE_JSON)){N.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eF(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=m.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eM()];case 3:r=m.sent();m.label=4;case 4:r;i=true,o=false,c=undefined;m.label=5;case 5:m.trys.push([5,10,11,12]);a=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();m.label=6;case 6:if(!!(i=(u=a.next()).done))return[3,9];d=u.value;return[4,d()];case 7:m.sent();m.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:f=m.sent();o=true;c=f;return[3,12];case 11:try{if(!i&&a.return!=null){a.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:g=m.sent();throw N.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return eJ.apply(this,arguments)}y(eU,"setupPackages");import eK from"node-persist";import eB from"node:os";import eH from"node:process";function eY(){return eH.env.CYBERSKILL_STORAGE_DIR||B(eB.homedir(),$)}y(eY,"getStorageDir");function e$(){return eV.apply(this,arguments)}function eV(){eV=s(function(){var e;return m(this,function(t){switch(t.label){case 0:e=eK.defaultInstance;if(e)return[3,2];return[4,eK.init({dir:eY(),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 eV.apply(this,arguments)}y(e$,"initNodePersist");var ez={get:function e(e){return s(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e$()];case 1:r.sent();return[4,eK.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(N.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return s(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e$()];case 1:r.sent();return[4,eK.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();N.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return s(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e$()];case 1:n.sent();return[4,eK.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();N.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return s(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e$()];case 1:n.sent();return[4,eK.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(N.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(N.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return s(function(){return m(this,function(t){try{return[2,"".concat(eY()," (key: ").concat(e,")")]}catch(e){return[2,(N.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eQ=E.promisify(I);function eX(e){return"error_list:".concat(e)}y(eX,"getErrorListKey");function eZ(e){return e0.apply(this,arguments)}function e0(){e0=s(function(e){var t,n,r;return m(this,function(i){switch(i.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eX(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,ez.set(n,{errors:e,timestamp:t})];case 2:i.sent(),setTimeout(/*#__PURE__*/s(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,ez.getLogLink(n)];case 1:e=t.sent();e&&N.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=i.sent();N.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return e0.apply(this,arguments)}y(eZ,"saveErrorListToStorage");function e1(){return e2.apply(this,arguments)}function e2(){e2=s(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ez.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(/*#__PURE__*/function(){var e=s(function(e){var t;return m(this,function(n){switch(n.label){case 0:return[4,ez.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})});return function(t){return e.apply(this,arguments)}}()))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(N.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})});return e2.apply(this,arguments)}y(e1,"getStoredErrorLists");function e4(){return e3.apply(this,arguments)}function e3(){e3=s(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ez.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return ez.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();N.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})});return e3.apply(this,arguments)}y(e4,"clearAllErrorLists");function e8(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,i=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,a,u,l,d;var p=s.exec(e)||[],f=i.exec(e)||[],g=o.exec(e)||[];var m,h,y,v,x,j;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===C.Error?C.Error:C.Warning,message:(m=p===null||p===void 0?void 0:(c=p[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(h=p===null||p===void 0?void 0:(a=p[5])===null||a===void 0?void 0:a.trim())!==null&&h!==void 0?h:""}):f.length?t.push({file:(y=f===null||f===void 0?void 0:f[1])!==null&&y!==void 0?y:"",position:"".concat(f[2],":").concat(f[3]),type:f[4]===C.Error?C.Error:C.Warning,message:(v=f===null||f===void 0?void 0:(u=f[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):g.length?t.push({file:"commitlint",type:C.Error,message:(x=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&x!==void 0?x:"",rule:(j=g===null||g===void 0?void 0:(d=g[2])===null||d===void 0?void 0:d.trim())!==null&&j!==void 0?j:""}):n.push(e.trim())}}),t.length&&eZ(t),O&&n.length&&(N.warn("Unmatched lines:"),n.forEach(function(e){return N.info(" ".concat(e))}))}y(e8,"parseTextErrors");function e5(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,s=e.line,i=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?C.Error:C.Warning,file:t,position:"".concat(s,":").concat(i),rule:o,message:c})})}),n.length&&eZ(n)}catch(t){e8(e)}}y(e5,"parseCommandOutput");function e6(e){return e9.apply(this,arguments)}function e9(){e9=s(function(e){var t,n,r,s,i,o,c,a,u;var l=arguments;return m(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e5;n=new AbortController;S.on("SIGINT",function(){N.warn("Process interrupted. Terminating..."),n.abort(),S.exit()});d.label=1;case 1:d.trys.push([1,3,,4]);return[4,eQ(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),s=r.stdout,i=r.stderr;[s,i].forEach(function(e){return e&&t(e)});return[3,4];case 3:o=d.sent();c=o.stdout,a=o.stderr,u=o.message;[c,a].forEach(function(e){return e&&t(e)}),!a&&!c&&N.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return e9.apply(this,arguments)}y(e6,"executeCommand");function e7(e){return{raw:!0,cmd:e}}y(e7,"rawCommand");function te(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(ew," ").concat(Y," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(ew," ").concat(ex," ").concat(ec," ").concat(e):"".concat(ew," ").concat(eo," ").concat(e)}y(te,"formatCLI");function tt(e,t){return typeof e=="function"?te(e(t),t):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?te(e,t):e}y(tt,"formatCommand");function tn(e){return tr.apply(this,arguments)}function tr(){tr=s(function(e){var t,n,r,s,i,o,c;var a=arguments;return m(this,function(u){switch(u.label){case 0:t=a.length>1&&a[1]!==void 0?a[1]:{};r=(n=t===null||t===void 0?void 0:t.isRemote)!==null&&n!==void 0?n:!1;if(!r)return[3,1];c=!1;return[3,3];case 1:return[4,eF(Y)];case 2:c=u.sent().isCurrentProject;u.label=3;case 3:s=c,i={isRemote:r,isCurrentProject:s},o=typeof e=="function"?e(i):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var t=d(e,2),n=t[0],r=t[1];return[n,tt(r,i)]}))]}})});return tr.apply(this,arguments)}y(tn,"resolveCommands");function ts(e,t){return ti.apply(this,arguments)}function ti(){ti=s(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);N.start("".concat(e)),O&&N.info("→ ".concat(t));return[4,e6(t)];case 1:r.sent(),N.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw N.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ti.apply(this,arguments)}y(ts,"runCommand");function to(){return tc.apply(this,arguments)}function tc(){tc=s(function(){var e,t;return m(this,function(n){switch(n.label){case 0:if(!q(e_.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,eP.typescriptCheck()];case 1:return[4,ts.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=N.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})});return tc.apply(this,arguments)}y(to,"checkTypescript");function ta(){return tu.apply(this,arguments)}function tu(){tu=s(function(){var e,t,n,r;var s=arguments;return m(this,function(i){switch(i.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,eP.eslintFix()];case 1:return[4,ts.apply(void 0,n.concat([i.sent()]))];case 2:t=i.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,eP.eslintCheck()];case 4:return[4,ts.apply(void 0,r.concat([i.sent()]))];case 5:t=i.sent();i.label=6;case 6:t;return[2]}})});return tu.apply(this,arguments)}y(ta,"checkEslint");function tl(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";N.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}y(tl,"printIssues");function td(){return tp.apply(this,arguments)}function tp(){tp=s(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:return[4,e1()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===C.Error}),n=e.filter(function(e){return e.type===C.Warning});!t.length&&!n.length?N.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tl("Warnings",n),tl("Errors",t),(t.length>0||n.length>0)&&v.exit(1));return[2]}})});return tp.apply(this,arguments)}y(td,"showCheckResult");function tf(){return tg.apply(this,arguments)}function tg(){tg=s(function(){var e,t,n,r,s,i;return m(this,function(o){switch(o.label){case 0:return[4,e4()];case 1:o.sent();return[4,eF(Y)];case 2:e=o.sent(),t=e.isCurrentProject;if(!t)return[3,9];o.label=3;case 3:o.trys.push([3,8,,9]);n=["Building package: ".concat(Y)];return[4,eP.build()];case 4:return[4,ts.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,eP.stageBuildDirectory()];case 6:return[4,ts.apply(void 0,r.concat([o.sent()]))];case 7:o.sent();return[3,9];case 8:s=o.sent();throw N.error("Error building and staging ".concat(Y,": ").concat(s.message)),s;case 9:i=["Executing lint-staged"];return[4,eP.lintStaged()];case 10:return[4,ts.apply(void 0,i.concat([o.sent()]))];case 11:o.sent(),td();return[2]}})});return tg.apply(this,arguments)}y(tf,"lintStaged");function tm(){return th.apply(this,arguments)}function th(){th=s(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,eP.eslintInspect()];case 1:return[4,ts.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return th.apply(this,arguments)}y(tm,"inspectLint");function ty(){return tv.apply(this,arguments)}function tv(){tv=s(function(){return m(this,function(e){switch(e.label){case 0:return[4,e4()];case 1:e.sent();return[4,Promise.all([to(),ta()])];case 2:e.sent(),td();return[2]}})});return tv.apply(this,arguments)}y(ty,"lintCheck");function tx(){return tj.apply(this,arguments)}function tj(){tj=s(function(){return m(this,function(e){switch(e.label){case 0:return[4,e4()];case 1:e.sent();return[4,Promise.all([to(),ta(!0)])];case 2:e.sent(),td();return[2]}})});return tj.apply(this,arguments)}y(tx,"lintFix");function tb(){return tw.apply(this,arguments)}function tw(){tw=s(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,e4()];case 1:t.sent();e=["Validating commit message"];return[4,eP.commitLint()];case 2:return[4,ts.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),td();return[2]}})});return tw.apply(this,arguments)}y(tb,"commitLint");function tI(){return tS.apply(this,arguments)}function tS(){tS=s(function(){var e,t,n,r;return m(this,function(s){switch(s.label){case 0:e=["Configuring Git hooks"];return[4,eP.configureGitHook()];case 1:return[4,ts.apply(void 0,e.concat([s.sent()]))];case 2:s.sent(),W(e_.GIT_HOOK);return[4,tn(eT)];case 3:t=s.sent();D(e_.SIMPLE_GIT_HOOKS_JSON,t,{isJson:!0});n="\n".concat(et,"\n");q(e_.GIT_IGNORE)?F(e_.GIT_IGNORE).split("\n").includes(et)||M(e_.GIT_IGNORE,n):D(e_.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,eP.simpleGitHooks()];case 4:return[4,ts.apply(void 0,r.concat([s.sent()]))];case 5:s.sent();return[2]}})});return tS.apply(this,arguments)}y(tI,"setupGitHook");function tE(){return tk.apply(this,arguments)}function tk(){tk=s(function(){return m(this,function(e){switch(e.label){case 0:return[4,eU([Y],{update:!0,postInstallActions:[tI]})];case 1:e.sent();return[2]}})});return tk.apply(this,arguments)}y(tE,"setup");function tO(){return tC.apply(this,arguments)}function tC(){tC=s(function(){return m(this,function(e){switch(e.label){case 0:W(e_.NODE_MODULES,e_.PNPM_LOCK_YAML);return[4,eM()];case 1:e.sent();return[4,tI()];case 2:e.sent();return[2]}})});return tC.apply(this,arguments)}y(tO,"reset");function t_(){return tT.apply(this,arguments)}function tT(){tT=s(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,eP.nodeModulesInspect()];case 1:return[4,ts.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tT.apply(this,arguments)}y(t_,"inspect");function tL(){return tG.apply(this,arguments)}function tG(){tG=s(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,eP.testUnit()];case 1:return[4,ts.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tG.apply(this,arguments)}y(tL,"testUnit");function tN(){return tP.apply(this,arguments)}function tP(){tP=s(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,eP.testE2e()];case 1:return[4,ts.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tP.apply(this,arguments)}y(tN,"testE2E");s(function(){var e;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,j(x(v.argv)).scriptName(eo).usage("$0 <command> [options]").command("lint","Check code for linting issues",ty).command("lint:fix","Fix linting issues automatically",tx).command("lint:inspect","View active ESLint configuration",tm).command("lint-staged","Run lint checks on staged files",tf).command("commitlint","Validate commit message format",tb).command("setup","Initialize project setup and dependencies",tE).command("reset","Reset the project and reinstall dependencies",tO).command("inspect","Analyze installed project dependencies",t_).command("test:unit","Run unit test suite",tL).command("test:e2e","Run end-to-end test suite",tN).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(b.version).epilog('\uD83D\uDCA1 Tip: Use "--help" with any command to see options\n').parse()];case 1:t.sent();return[3,3];case 2:e=t.sent();N.error("Fatal: ".concat(e.message)),v.exit(1);return[3,3];case 3:return[2]}})})();
|
|
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,i,s,o){try{var c=e[s](o);var a=c.value}catch(e){n(e);return}if(c.done){t(a)}else{Promise.resolve(a).then(r,i)}}function i(e){return function(){var t=this,n=arguments;return new Promise(function(i,s){var o=e.apply(t,n);function c(e){r(o,i,s,c,a,"next",e)}function a(e){r(o,i,s,c,a,"throw",e)}c(undefined)})}}function s(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var i=true;var s=false;var o,c;try{for(n=n.call(e);!(i=(o=n.next()).done);i=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){s=true;c=e}finally{try{if(!i&&n["return"]!=null)n["return"]()}finally{if(s)throw c}}return r}function a(){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){s(e,t,n[t])})}return e}function d(e,n){return t(e)||c(e,n)||g(e,n)||a()}function p(e){return n(e)||o(e)||g(e)||u()}function f(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function g(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,i,s={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return a([e,t])}}function a(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(s=0)),s)try{if(n=1,r&&(i=c[0]&2?r["return"]:c[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,c[1])).done)return i;if(r=0,i)c=[c[0]&2,i.value];switch(c[0]){case 0:case 1:i=c;break;case 4:s.label++;return{value:c[1],done:false};case 5:s.label++;r=c[1];c=[0];continue;case 7:c=s.ops.pop();s.trys.pop();continue;default:if(!(i=s.trys,i=i.length>0&&i[i.length-1])&&(c[0]===6||c[0]===2)){s=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]<i[3])){s.label=c[1];break}if(c[0]===6&&s.label<i[1]){s.label=i[1];i=c;break}if(i&&s.label<i[2]){s.label=i[2];s.ops.push(c);break}if(i[2])s.ops.pop();s.trys.pop();continue}c=t.call(e,s)}catch(e){c=[6,e];r=0}finally{n=i=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var h=Object.defineProperty;var y=function(e,t){return h(e,"name",{value:t,configurable:!0})};import v from"node:process";import{hideBin as x}from"yargs/helpers";import j from"yargs/yargs";var b={name:"@cyberskill/shared",type:"module",version:"1.95.0",description:"CyberSkill Shared",author:"Stephen Cheng",license:"MIT",homepage:"https://github.com/cyberskill-world/shared#readme",repository:{type:"git",url:"git+https://github.com/cyberskill-world/shared.git"},bugs:{url:"https://github.com/cyberskill-world/shared/issues"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./configs":{types:"./dist/configs/index.d.ts",import:"./dist/configs/index.js",require:"./dist/configs/index.cjs"},"./configs/commitlint":{types:"./dist/configs/commitlint/index.d.ts",import:"./dist/configs/commitlint/index.js",require:"./dist/configs/commitlint/index.cjs"},"./configs/eslint":{types:"./dist/configs/eslint/index.d.ts",import:"./dist/configs/eslint/index.js",require:"./dist/configs/eslint/index.cjs"},"./configs/graphql-codegen":{types:"./dist/configs/graphql-codegen/index.d.ts",import:"./dist/configs/graphql-codegen/index.js",require:"./dist/configs/graphql-codegen/index.cjs"},"./configs/lint-staged":{types:"./dist/configs/lint-staged/index.d.ts",import:"./dist/configs/lint-staged/index.js",require:"./dist/configs/lint-staged/index.cjs"},"./constants":{types:"./dist/constants/index.d.ts",import:"./dist/constants/index.js",require:"./dist/constants/index.cjs"},"./nodejs":{types:"./dist/nodejs/index.d.ts",import:"./dist/nodejs/index.js",require:"./dist/nodejs/index.cjs"},"./nodejs/apollo-server":{types:"./dist/nodejs/apollo-server/index.d.ts",import:"./dist/nodejs/apollo-server/index.js",require:"./dist/nodejs/apollo-server/index.cjs"},"./nodejs/cli":{types:"./dist/nodejs/cli/index.d.ts",import:"./dist/nodejs/cli/index.js",require:"./dist/nodejs/cli/index.cjs"},"./nodejs/command":{types:"./dist/nodejs/command/index.d.ts",import:"./dist/nodejs/command/index.js",require:"./dist/nodejs/command/index.cjs"},"./nodejs/express":{types:"./dist/nodejs/express/index.d.ts",import:"./dist/nodejs/express/index.js",require:"./dist/nodejs/express/index.cjs"},"./nodejs/fs":{types:"./dist/nodejs/fs/index.d.ts",import:"./dist/nodejs/fs/index.js",require:"./dist/nodejs/fs/index.cjs"},"./nodejs/log":{types:"./dist/nodejs/log/index.d.ts",import:"./dist/nodejs/log/index.js",require:"./dist/nodejs/log/index.cjs"},"./nodejs/mongo":{types:"./dist/nodejs/mongo/index.d.ts",import:"./dist/nodejs/mongo/index.js",require:"./dist/nodejs/mongo/index.cjs"},"./nodejs/package":{types:"./dist/nodejs/package/index.d.ts",import:"./dist/nodejs/package/index.js",require:"./dist/nodejs/package/index.cjs"},"./nodejs/path":{types:"./dist/nodejs/path/index.d.ts",import:"./dist/nodejs/path/index.js",require:"./dist/nodejs/path/index.cjs"},"./nodejs/storage":{types:"./dist/nodejs/storage/index.d.ts",import:"./dist/nodejs/storage/index.js",require:"./dist/nodejs/storage/index.cjs"},"./nodejs/ws":{types:"./dist/nodejs/ws/index.d.ts",import:"./dist/nodejs/ws/index.js",require:"./dist/nodejs/ws/index.cjs"},"./react":{types:"./dist/react/index.d.ts",import:"./dist/react/index.js",require:"./dist/react/index.cjs"},"./react/apollo-client":{types:"./dist/react/apollo-client/index.d.ts",import:"./dist/react/apollo-client/index.js",require:"./dist/react/apollo-client/index.cjs"},"./react/apollo-error":{types:"./dist/react/apollo-error/index.d.ts",import:"./dist/react/apollo-error/index.js",require:"./dist/react/apollo-error/index.cjs"},"./react/i18next":{types:"./dist/react/i18next/index.d.ts",import:"./dist/react/i18next/index.js",require:"./dist/react/i18next/index.cjs"},"./react/loading":{types:"./dist/react/loading/index.d.ts",import:"./dist/react/loading/index.js",require:"./dist/react/loading/index.cjs"},"./react/log":{types:"./dist/react/log/index.d.ts",import:"./dist/react/log/index.js",require:"./dist/react/log/index.cjs"},"./react/next-intl":{types:"./dist/react/next-intl/index.d.ts",import:"./dist/react/next-intl/index.js",require:"./dist/react/next-intl/index.cjs"},"./react/storage":{types:"./dist/react/storage/index.d.ts",import:"./dist/react/storage/index.js",require:"./dist/react/storage/index.cjs"},"./react/toast":{types:"./dist/react/toast/index.d.ts",import:"./dist/react/toast/index.js",require:"./dist/react/toast/index.cjs"},"./react/vitest":{types:"./dist/react/vitest/index.d.ts",import:"./dist/react/vitest/index.js",require:"./dist/react/vitest/index.cjs"},"./styles/reset.css":{import:"./dist/styles/reset.css",require:"./dist/styles/reset.css"},"./typescript":{types:"./dist/typescript/index.d.ts",import:"./dist/typescript/index.js",require:"./dist/typescript/index.cjs"},"./utils":{types:"./dist/utils/index.d.ts",import:"./dist/utils/index.js",require:"./dist/utils/index.cjs"}},main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",bin:{cyberskill:"./dist/nodejs/cli/index.js"},files:["dist","public"],scripts:{build:"tsup",dev:"dotenv -e .env -- tsup --watch",lint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint","lint:fix":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:fix","lint:inspect":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint:inspect",reset:"dotenv -e .env -- tsx src/nodejs/cli/index.ts reset",setup:"dotenv -e .env -- tsx src/nodejs/cli/index.ts setup",inspect:"dotenv -e .env -- tsx src/nodejs/cli/index.ts inspect","test:unit":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:unit","test:e2e":"dotenv -e .env -- tsx src/nodejs/cli/index.ts test:e2e",commitlint:"dotenv -e .env -- tsx src/nodejs/cli/index.ts commitlint","lint-staged":"dotenv -e .env -- tsx src/nodejs/cli/index.ts lint-staged"},dependencies:{"@antfu/eslint-config":"4.12.0","@apollo/client":"3.13.8","@apollo/server":"4.12.0","@eddeee888/gcg-typescript-resolver-files":"0.12.0","@eslint-react/eslint-plugin":"1.48.4","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@microsoft/api-extractor":"7.52.4","@next/eslint-plugin-next":"15.3.1","@swc/core":"1.11.21","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.9.0","@vitest/browser":"3.1.1",chalk:"5.4.1",classnames:"2.5.1",compression:"1.8.0",consola:"3.4.2",cors:"2.8.5","crypto-js":"4.2.0","date-fns":"4.1.0",dotenv:"16.5.0","dotenv-cli":"8.0.0",envalid:"8.0.0","eslint-config-next":"15.3.1","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.19",express:"4.21.2","express-device":"0.4.2","express-session":"1.18.1",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"25.0.0",jsdom:"26.1.0",localforage:"1.10.0","migrate-mongo":"12.1.3","modern-normalize":"3.0.1",mongodb:"6.15.0",mongoose:"8.13.2","mongoose-aggregate-paginate-v2":"1.1.4","mongoose-paginate-v2":"1.9.0","next-intl":"4.0.2","node-fetch":"3.3.2","node-persist":"4.0.4",ora:"8.2.0",playwright:"1.52.0","postcss-modules":"6.0.1",qs:"6.14.0",react:"19.1.0","react-dom":"19.1.0","react-hot-toast":"2.5.2","react-i18next":"15.4.1","react-icons":"5.5.0",sass:"1.86.3",slugify:"1.6.6",tsup:"8.4.0",tsx:"4.19.3",typescript:"5.8.3",unorm:"1.6.0",uuid:"11.1.0",vite:"6.3.2",vitest:"3.1.1","vitest-browser-react":"0.1.1",ws:"8.18.1",yargs:"17.7.2"},publishConfig:{access:"public",registry:"https://registry.npmjs.org/"},devDependencies:{"@commitlint/cli":"19.8.0","@eslint/config-inspector":"1.0.2","@types/compression":"1.7.5","@types/cors":"2.8.17","@types/crypto-js":"4.2.2","@types/express":"4.17.21","@types/express-session":"1.18.1","@types/migrate-mongo":"10.0.5","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.2","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/ws":"8.18.1","@types/yargs":"17.0.33",eslint:"9.25.0","lint-staged":"15.5.1","node-modules-inspector":"0.6.6","simple-git-hooks":"2.12.1"}};var w=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});import{exec as I}from"node:child_process";import E from"node:process";import*as S from"node:util";var C=".cyberskill-storage";import _ from"dotenv";import{bool as O,cleanEnv as k,str as L}from"envalid";import T from"node:os";import R from"node:path";import G from"node:process";_.config();function D(){var e={DEBUG:G.env.DEBUG,CWD:G.env.CWD,CYBERSKILL_STORAGE_DIR:G.env.CYBERSKILL_STORAGE_DIR},t=k(e,{DEBUG:O({default:!1}),CWD:L({default:G.cwd()}),CYBERSKILL_STORAGE_DIR:L({default:R.join(T.homedir(),C)})});return{DEBUG:t.DEBUG,CWD:t.CWD,CYBERSKILL_STORAGE_DIR:t.CYBERSKILL_STORAGE_DIR}}y(D,"getEnv");var A=function(e){return e.Error="error",e.Warning="warning",e}({});import N from"chalk";import P from"consola";import{GraphQLError as M}from"graphql";var q=D();q.DEBUG||(P.level=4);function F(e){var t=N[e];return typeof t=="function"?t:N.green}y(F,"chalkKeyword");var U={silent:P.silent,level:P.level,fatal:P.fatal,error:P.error,warn:P.warn,log:P.log,info:P.info,success:P.success,ready:P.ready,start:P.start,box:P.box,debug:P.debug,trace:P.trace,verbose:P.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)){P.box(N.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;P.log("".concat(N.gray("File:")," ").concat(N.blue("".concat(t).concat(r?":".concat(r):"")))),i&&P.log(" ".concat(F(n)("Rule:")," ").concat(i)),P.log(" ".concat(F(n)("Message:")," ").concat(s))}),P.box(F(n)("".concat(e," : ").concat(t.length))),P.log(N.gray("─".repeat(40)))}};var W={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import B from"node-fetch";import*as K from"node:fs";function J(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return K.existsSync(e)})}y(J,"existsSync");function Y(e,t){var n=K.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":f(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}y(Y,"readFileSync");function H(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,i=r===void 0?!1:r,s=i&&(typeof t==="undefined"?"undefined":f(t))=="object"?JSON.stringify(t,null,4):String(t);K.writeFileSync(e,s,"utf-8")}y(H,"writeFileSync");function $(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,i=r===void 0?!1:r,s=i&&(typeof t==="undefined"?"undefined":f(t))=="object"?JSON.stringify(t,null,4):String(t);K.appendFileSync(e,s,"utf-8")}y($,"appendFileSync");function V(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){J(e)&&K.rmSync(e,{recursive:!0,force:!0})})}y(V,"rmSync");import*as z from"node:path";function Q(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;var i=D();return(r=z).resolve.apply(r,[i.CWD].concat(p(t)))}y(Q,"resolveWorkingPath");function X(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=z).join.apply(r,p(t))}y(X,"join");var Z=D(),ee=Z.CWD,et="@cyberskill/shared",en="node_modules",er="dist",ei="package.json",es="package-lock.json",eo="tsconfig.json",ec=".gitignore",ea=".simple-git-hooks.json",eu="pnpm-lock.yaml",el=".git/hooks/",ed=".git/COMMIT_EDITMSG",ep=X(ee,en,et,er),ef="cyberskill",eg="src/nodejs/cli/index.ts",em="eslint",eh="eslint",ey="vitest",ev="playwright",ex="vitest",ej="@commitlint/cli",eb="commitlint",ew="lint-staged",eI="lint-staged",eE="typescript",eS="tsc",eC="tsx",e_="git",eO="pnpm",ek="pnpm exec",eL="simple-git-hooks",eT="simple-git-hooks",eR="@eslint/config-inspector",eG="eslint-config-inspector",eD="node-modules-inspector",eA="node-modules-inspector",eN="migrate-mongo",eP="migrate-mongo",eM={CYBERSKILL_DIRECTORY:ep,WORKING_DIRECTORY:ee,TS_CONFIG:Q(eo),GIT_IGNORE:Q(ec),GIT_HOOK:Q(el),GIT_COMMIT_MSG:Q(ed),SIMPLE_GIT_HOOKS_JSON:Q(ea),PACKAGE_JSON:Q(ei),PACKAGE_LOCK_JSON:Q(es),PNPM_LOCK_YAML:Q(eu),NODE_MODULES:Q(en),LINT_STAGED_CONFIG:Q("".concat(ep,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:Q("".concat(ep,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:Q("".concat(ep,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:Q("".concat(ep,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:Q("".concat(ep,"/react/vitest/vitest.e2e.js"))};function eq(e){var t=e.isCurrentProject;return l({"pre-commit":eI,"commit-msg":eb},t&&{"pre-push":tc("".concat(e_," pull"))})}y(eq,"HOOK");function eF(e){return eU.apply(this,arguments)}function eU(){eU=i(function(e){var t,n,r,i,s,o;var c=arguments;return m(this,function(a){switch(a.label){case 0:for(t=c.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=c[r]}i=d(n,2),s=i[0],o=i[1];if(!s)throw new Error("'first' argument is undefined");switch(e){case w.CLI:return[3,1];case w.RAW:return[3,3]}return[3,4];case 1:return[4,eQ(s.split(" "),{update:!0})];case 2:return[2,(a.sent(),tu(tc("".concat(ek," ").concat(o))))];case 3:return[2,tu(tc(s))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eU.apply(this,arguments)}y(eF,"buildCommand");function eW(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__*/i(function(){return m(this,function(t){return[2,eF.apply(void 0,[e].concat(p(n)))]})})}y(eW,"commandFactory");var eB={simpleGitHooks:eW(w.CLI,eL,eT),eslintInspect:eW(w.CLI,eR,eG),nodeModulesInspect:eW(w.CLI,eD,eA),eslintCheck:eW(w.CLI,em,"".concat(eh," ").concat(eM.WORKING_DIRECTORY)),eslintFix:eW(w.CLI,em,"".concat(eh," ").concat(eM.WORKING_DIRECTORY," --fix")),typescriptCheck:eW(w.CLI,eE,"".concat(eS," -p ").concat(eM.TS_CONFIG," --noEmit")),configureGitHook:eW(w.RAW,"".concat(e_," config core.hooksPath ").concat(eM.GIT_HOOK)),testUnit:eW(w.CLI,ey,"".concat(ex," --config ").concat(eM.UNIT_TEST_CONFIG)),testE2e:eW(w.CLI,"".concat(ey," ").concat(ev),"".concat(ex," --config ").concat(eM.E2E_TEST_CONFIG)),mongoMigrateCreate:y(function(e){return eW(w.CLI,"".concat(eN),"".concat(eP," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:eW(w.CLI,"".concat(eN),"".concat(eP," up")),mongoMigrateDown:eW(w.CLI,"".concat(eN),"".concat(eP," down")),commitLint:eW(w.CLI,ej,"".concat(eb," --edit ").concat(eM.GIT_COMMIT_MSG," --config ").concat(eM.COMMITLINT_CONFIG)),lintStaged:eW(w.CLI,ew,"".concat(eI," --config ").concat(eM.LINT_STAGED_CONFIG)),stageBuildDirectory:eW(w.RAW,"".concat(e_," add ").concat(er)),build:eW(w.RAW,"".concat(eO," run build")),pnpmInstallStandard:eW(w.RAW,"".concat(eO," install")),pnpmInstallLegacy:eW(w.RAW,"".concat(eO," install --legacy-peer-deps")),pnpmInstallForce:eW(w.RAW,"".concat(eO," install --force"))};function eK(e){var t=D(),n=X(t.CWD,ei);if(!J(n))return!1;try{var r=Y(n,{asJson:!0}),i=r.name,s=r.dependencies,o=s===void 0?{}:s,c=r.devDependencies,a=c===void 0?{}:c,u=i===e,l=e in o,d=e in a;return u||l||d?{path:n,file:r,isCurrentProject:u,isDepend:l,isDevDepend:d}:!1}catch(e){return U.warn("Failed to read package.json: ".concat(e.message)),!1}}y(eK,"getPackage");function eJ(e){return eY.apply(this,arguments)}function eY(){eY=i(function(e){var t,n,r,i;return m(this,function(s){switch(s.label){case 0:s.trys.push([0,3,,4]);return[4,B("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=s.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=s.sent(),r=n.version;return[2,r];case 3:i=s.sent();throw U.error('Failed to fetch version for "'.concat(e,'": ').concat(i.message)),i;case 4:return[2]}})});return eY.apply(this,arguments)}y(eJ,"getLatestPackageVersion");function eH(e,t){return e$.apply(this,arguments)}function e$(){e$=i(function(e,t){var n,r,i,s,o,c,a,u,d,p,f,g,h,y,v,x,j,b,w,I,E;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=eK(e);if(!n)return[2,l({},W)];a=n.path,u=n.file,d=n.isCurrentProject,p=n.isDepend,f=n.isDevDepend,g=(r=u.dependencies)!==null&&r!==void 0?r:{},h=(i=u.devDependencies)!==null&&i!==void 0?i:{},y=d?(s=u.version)!==null&&s!==void 0?s:"0.0.0":p?(o=g[e])!==null&&o!==void 0?o:"0.0.0":f?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!d)return[3,1];j=y;return[3,3];case 1:return[4,eJ(e)];case 2:j=m.sent();m.label=3;case 3:v=j,x=d||y===v;if(!x&&(t===null||t===void 0?void 0:t.update)){;w=p?"dependencies":f?"devDependencies":null;w&&((b=u[w])===null||b===void 0?void 0:b[e])!==v&&(u[w]=(I=u[w])!==null&&I!==void 0?I:{},u[w][e]=v,H(a,u,{isJson:!0}),U.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:d,installedPath:a,file:u,isUpToDate:x}];case 4:E=m.sent();return[2,(U.error('Error checking package "'.concat(e,'": ').concat(E.message)),l({},W))];case 5:return[2]}})});return e$.apply(this,arguments)}y(eH,"checkPackage");function eV(){return ez.apply(this,arguments)}function ez(){ez=i(function(){var e,t,n,r,i,s,o,c,a,u,l,d;return m(this,function(p){switch(p.label){case 0:e=[{command:y(function(){return eB.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return eB.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return eB.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);i=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,8];o=s.value,c=o.command,a=o.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,c()];case 4:u=p.sent();return[4,tp("".concat(a," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();U.warn("Installation attempt failed: ".concat(a)),U.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=p.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ez.apply(this,arguments)}y(eV,"installDependencies");function eQ(e,t){return eX.apply(this,arguments)}function eX(){eX=i(function(e,t){var n,r,i,s,o,c,a,u,d,f,g;return m(this,function(m){switch(m.label){case 0:if(!J(eM.PACKAGE_JSON)){U.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eH(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=m.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eV()];case 3:r=m.sent();m.label=4;case 4:r;s=true,o=false,c=undefined;m.label=5;case 5:m.trys.push([5,10,11,12]);a=((i=t===null||t===void 0?void 0:t.postInstallActions)!==null&&i!==void 0?i:[])[Symbol.iterator]();m.label=6;case 6:if(!!(s=(u=a.next()).done))return[3,9];d=u.value;return[4,d()];case 7:m.sent();m.label=8;case 8:s=true;return[3,6];case 9:return[3,12];case 10:f=m.sent();o=true;c=f;return[3,12];case 11:try{if(!s&&a.return!=null){a.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:g=m.sent();throw U.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return eX.apply(this,arguments)}y(eQ,"setupPackages");import eZ from"node-persist";var e0=D();function e1(){return e2.apply(this,arguments)}function e2(){e2=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=eZ.defaultInstance;if(e)return[3,2];return[4,eZ.init({dir:e0.CYBERSKILL_STORAGE_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 e2.apply(this,arguments)}y(e1,"initNodePersist");var e4={get:function e(e){return i(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e1()];case 1:r.sent();return[4,eZ.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(U.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return i(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e1()];case 1:r.sent();return[4,eZ.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();U.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e1()];case 1:n.sent();return[4,eZ.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();U.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e1()];case 1:n.sent();return[4,eZ.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(U.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(U.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return m(this,function(t){try{return[2,"".concat(e0.CYBERSKILL_STORAGE_DIR," (key: ").concat(e,")")]}catch(e){return[2,(U.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e3=D(),e8=S.promisify(I);function e5(e){return"error_list:".concat(e)}y(e5,"getErrorListKey");function e6(e){return e9.apply(this,arguments)}function e9(){e9=i(function(e){var t,n,r;return m(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e5(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,e4.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(/*#__PURE__*/i(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,e4.getLogLink(n)];case 1:e=t.sent();e&&U.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=s.sent();U.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return e9.apply(this,arguments)}y(e6,"saveErrorListToStorage");function e7(){return te.apply(this,arguments)}function te(){te=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e4.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(/*#__PURE__*/function(){var e=i(function(e){var t;return m(this,function(n){switch(n.label){case 0:return[4,e4.get(e)];case 1:return[2,((t=n.sent())===null||t===void 0?void 0:t.errors)||[]]}})});return function(t){return e.apply(this,arguments)}}()))];case 2:return[2,r.sent().flat()];case 3:n=r.sent();return[2,(U.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})});return te.apply(this,arguments)}y(e7,"getStoredErrorLists");function tt(){return tn.apply(this,arguments)}function tn(){tn=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e4.keys()];case 1:e=r.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return e4.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();U.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})});return tn.apply(this,arguments)}y(tt,"clearAllErrorLists");function tr(e){var t=[],n=[],r="",i=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,s=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,a,u,l,d;var p=i.exec(e)||[],f=s.exec(e)||[],g=o.exec(e)||[];var m,h,y,v,x,j;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===A.Error?A.Error:A.Warning,message:(m=p===null||p===void 0?void 0:(c=p[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(h=p===null||p===void 0?void 0:(a=p[5])===null||a===void 0?void 0:a.trim())!==null&&h!==void 0?h:""}):f.length?t.push({file:(y=f===null||f===void 0?void 0:f[1])!==null&&y!==void 0?y:"",position:"".concat(f[2],":").concat(f[3]),type:f[4]===A.Error?A.Error:A.Warning,message:(v=f===null||f===void 0?void 0:(u=f[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):g.length?t.push({file:"commitlint",type:A.Error,message:(x=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&x!==void 0?x:"",rule:(j=g===null||g===void 0?void 0:(d=g[2])===null||d===void 0?void 0:d.trim())!==null&&j!==void 0?j:""}):n.push(e.trim())}}),t.length&&e6(t),e3.DEBUG&&n.length&&(U.warn("Unmatched lines:"),n.forEach(function(e){return U.info(" ".concat(e))}))}y(tr,"parseTextErrors");function ti(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,i=e.line,s=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?A.Error:A.Warning,file:t,position:"".concat(i,":").concat(s),rule:o,message:c})})}),n.length&&e6(n)}catch(t){tr(e)}}y(ti,"parseCommandOutput");function ts(e){return to.apply(this,arguments)}function to(){to=i(function(e){var t,n,r,i,s,o,c,a,u;var l=arguments;return m(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ti;n=new AbortController;E.on("SIGINT",function(){U.warn("Process interrupted. Terminating..."),n.abort(),E.exit()});d.label=1;case 1:d.trys.push([1,3,,4]);return[4,e8(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),i=r.stdout,s=r.stderr;[i,s].forEach(function(e){return e&&t(e)});return[3,4];case 3:o=d.sent();c=o.stdout,a=o.stderr,u=o.message;[c,a].forEach(function(e){return e&&t(e)}),!a&&!c&&U.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return to.apply(this,arguments)}y(ts,"executeCommand");function tc(e){return{raw:!0,cmd:e}}y(tc,"rawCommand");function ta(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(ek," ").concat(et," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(ek," ").concat(eC," ").concat(eg," ").concat(e):"".concat(ek," ").concat(ef," ").concat(e)}y(ta,"formatCLI");function tu(e,t){return typeof e=="function"?ta(e(t),t):(typeof e==="undefined"?"undefined":f(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ta(e,t):e}y(tu,"formatCommand");function tl(e){return td.apply(this,arguments)}function td(){td=i(function(e){var t,n,r,i,s,o,c;var a=arguments;return m(this,function(u){switch(u.label){case 0:t=a.length>1&&a[1]!==void 0?a[1]:{};r=(n=t===null||t===void 0?void 0:t.isRemote)!==null&&n!==void 0?n:!1;if(!r)return[3,1];c=!1;return[3,3];case 1:return[4,eH(et)];case 2:c=u.sent().isCurrentProject;u.label=3;case 3:i=c,s={isRemote:r,isCurrentProject:i},o=typeof e=="function"?e(s):e;return[2,Object.fromEntries(Object.entries(o).map(function(e){var t=d(e,2),n=t[0],r=t[1];return[n,tu(r,s)]}))]}})});return td.apply(this,arguments)}y(tl,"resolveCommands");function tp(e,t){return tf.apply(this,arguments)}function tf(){tf=i(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);U.start("".concat(e)),e3.DEBUG&&U.info("→ ".concat(t));return[4,ts(t)];case 1:r.sent(),U.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw U.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return tf.apply(this,arguments)}y(tp,"runCommand");function tg(){return tm.apply(this,arguments)}function tm(){tm=i(function(){var e,t;return m(this,function(n){switch(n.label){case 0:if(!J(eM.TS_CONFIG))return[3,3];t=["Performing TypeScript validation"];return[4,eB.typescriptCheck()];case 1:return[4,tp.apply(void 0,t.concat([n.sent()]))];case 2:e=n.sent();return[3,4];case 3:e=U.warn("No TypeScript configuration found. Skipping type check.");n.label=4;case 4:e;return[2]}})});return tm.apply(this,arguments)}y(tg,"checkTypescript");function th(){return ty.apply(this,arguments)}function ty(){ty=i(function(){var e,t,n,r;var i=arguments;return m(this,function(s){switch(s.label){case 0:e=i.length>0&&i[0]!==void 0?i[0]:!1;if(!e)return[3,3];n=["Running ESLint with auto-fix"];return[4,eB.eslintFix()];case 1:return[4,tp.apply(void 0,n.concat([s.sent()]))];case 2:t=s.sent();return[3,6];case 3:r=["Running ESLint check"];return[4,eB.eslintCheck()];case 4:return[4,tp.apply(void 0,r.concat([s.sent()]))];case 5:t=s.sent();s.label=6;case 6:t;return[2]}})});return ty.apply(this,arguments)}y(th,"checkEslint");function tv(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";U.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}y(tv,"printIssues");function tx(){return tj.apply(this,arguments)}function tj(){tj=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:return[4,e7()];case 1:e=r.sent(),t=e.filter(function(e){return e.type===A.Error}),n=e.filter(function(e){return e.type===A.Warning});!t.length&&!n.length?U.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tv("Warnings",n),tv("Errors",t),(t.length>0||n.length>0)&&v.exit(1));return[2]}})});return tj.apply(this,arguments)}y(tx,"showCheckResult");function tb(){return tw.apply(this,arguments)}function tw(){tw=i(function(){var e,t,n,r,i,s;return m(this,function(o){switch(o.label){case 0:return[4,tt()];case 1:o.sent();return[4,eH(et)];case 2:e=o.sent(),t=e.isCurrentProject;if(!t)return[3,9];o.label=3;case 3:o.trys.push([3,8,,9]);n=["Building package: ".concat(et)];return[4,eB.build()];case 4:return[4,tp.apply(void 0,n.concat([o.sent()]))];case 5:o.sent();r=["Staging build artifacts"];return[4,eB.stageBuildDirectory()];case 6:return[4,tp.apply(void 0,r.concat([o.sent()]))];case 7:o.sent();return[3,9];case 8:i=o.sent();throw U.error("Error building and staging ".concat(et,": ").concat(i.message)),i;case 9:s=["Executing lint-staged"];return[4,eB.lintStaged()];case 10:return[4,tp.apply(void 0,s.concat([o.sent()]))];case 11:o.sent(),tx();return[2]}})});return tw.apply(this,arguments)}y(tb,"lintStaged");function tI(){return tE.apply(this,arguments)}function tE(){tE=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Inspecting ESLint configuration"];return[4,eB.eslintInspect()];case 1:return[4,tp.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tE.apply(this,arguments)}y(tI,"inspectLint");function tS(){return tC.apply(this,arguments)}function tC(){tC=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,tt()];case 1:e.sent();return[4,Promise.all([tg(),th()])];case 2:e.sent(),tx();return[2]}})});return tC.apply(this,arguments)}y(tS,"lintCheck");function t_(){return tO.apply(this,arguments)}function tO(){tO=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,tt()];case 1:e.sent();return[4,Promise.all([tg(),th(!0)])];case 2:e.sent(),tx();return[2]}})});return tO.apply(this,arguments)}y(t_,"lintFix");function tk(){return tL.apply(this,arguments)}function tL(){tL=i(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,tt()];case 1:t.sent();e=["Validating commit message"];return[4,eB.commitLint()];case 2:return[4,tp.apply(void 0,e.concat([t.sent()]))];case 3:t.sent(),tx();return[2]}})});return tL.apply(this,arguments)}y(tk,"commitLint");function tT(){return tR.apply(this,arguments)}function tR(){tR=i(function(){var e,t,n,r;return m(this,function(i){switch(i.label){case 0:e=["Configuring Git hooks"];return[4,eB.configureGitHook()];case 1:return[4,tp.apply(void 0,e.concat([i.sent()]))];case 2:i.sent(),V(eM.GIT_HOOK);return[4,tl(eq)];case 3:t=i.sent();H(eM.SIMPLE_GIT_HOOKS_JSON,t,{isJson:!0});n="\n".concat(ea,"\n");J(eM.GIT_IGNORE)?Y(eM.GIT_IGNORE).split("\n").includes(ea)||$(eM.GIT_IGNORE,n):H(eM.GIT_IGNORE,n);r=["Setting up simple-git-hooks"];return[4,eB.simpleGitHooks()];case 4:return[4,tp.apply(void 0,r.concat([i.sent()]))];case 5:i.sent();return[2]}})});return tR.apply(this,arguments)}y(tT,"setupGitHook");function tG(){return tD.apply(this,arguments)}function tD(){tD=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,eQ([et],{update:!0,postInstallActions:[tT]})];case 1:e.sent();return[2]}})});return tD.apply(this,arguments)}y(tG,"setup");function tA(){return tN.apply(this,arguments)}function tN(){tN=i(function(){return m(this,function(e){switch(e.label){case 0:V(eM.NODE_MODULES,eM.PNPM_LOCK_YAML);return[4,eV()];case 1:e.sent();return[4,tT()];case 2:e.sent();return[2]}})});return tN.apply(this,arguments)}y(tA,"reset");function tP(){return tM.apply(this,arguments)}function tM(){tM=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Inspecting project dependencies"];return[4,eB.nodeModulesInspect()];case 1:return[4,tp.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tM.apply(this,arguments)}y(tP,"inspect");function tq(){return tF.apply(this,arguments)}function tF(){tF=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Running unit tests"];return[4,eB.testUnit()];case 1:return[4,tp.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tF.apply(this,arguments)}y(tq,"testUnit");function tU(){return tW.apply(this,arguments)}function tW(){tW=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Running end-to-end tests"];return[4,eB.testE2e()];case 1:return[4,tp.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tW.apply(this,arguments)}y(tU,"testE2E");function tB(e){return tK.apply(this,arguments)}function tK(){tK=i(function(e){var t;return m(this,function(n){switch(n.label){case 0:t=["Creating MongoDB migration"];return[4,eB.mongoMigrateCreate(e)];case 1:return[4,tp.apply(void 0,t.concat([n.sent()]))];case 2:n.sent();return[2]}})});return tK.apply(this,arguments)}y(tB,"mongoMigrateCreate");function tJ(){return tY.apply(this,arguments)}function tY(){tY=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Running MongoDB migrations"];return[4,eB.mongoMigrateUp()];case 1:return[4,tp.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return tY.apply(this,arguments)}y(tJ,"mongoMigrateUp");function tH(){return t$.apply(this,arguments)}function t$(){t$=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=["Rolling back MongoDB migration"];return[4,eB.mongoMigrateDown()];case 1:return[4,tp.apply(void 0,e.concat([t.sent()]))];case 2:t.sent();return[2]}})});return t$.apply(this,arguments)}y(tH,"mongoMigrateDown");i(function(){var e;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,j(x(v.argv)).scriptName(ef).usage("$0 <command> [options]").command("lint","Check code for linting issues",tS).command("lint:fix","Fix linting issues automatically",t_).command("lint:inspect","View active ESLint configuration",tI).command("lint-staged","Run lint checks on staged files",tb).command("commitlint","Validate commit message format",tk).command("setup","Initialize project setup and dependencies",tG).command("reset","Reset the project and reinstall dependencies",tA).command("inspect","Analyze installed project dependencies",tP).command("test:unit","Run unit test suite",tq).command("test:e2e","Run end-to-end test suite",tU).command("mongo:migrate:create <name>","Create a MongoDB migration",function(e){return e.positional("name",{describe:"Migration name",type:"string"})},/*#__PURE__*/function(){var e=i(function(e){return m(this,function(t){switch(t.label){case 0:if(!e.name){U.error("Migration name is required.");return[2]}return[4,tB(e.name)];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}()).command("mongo:migrate:up","Apply all MongoDB migrations",tJ).command("mongo:migrate:down","Rollback last MongoDB migration",tH).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(b.version).epilog('\uD83D\uDCA1 Tip: Use "--help" with any command to see options\n').parse()];case 1:t.sent();return[3,3];case 2:e=t.sent();U.error("Fatal: ".concat(e.message)),v.exit(1);return[3,3];case 3:return[2]}})})();
|
|
@@ -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,o,a,i){try{var c=e[a](i);var s=c.value}catch(e){r(e);return}if(c.done){t(s)}else{Promise.resolve(s).then(n,o)}}function o(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var i=e.apply(t,r);function c(e){n(i,o,a,c,s,"next",e)}function s(e){n(i,o,a,c,s,"throw",e)}c(undefined)})}}function a(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 i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var r=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r==null)return;var n=[];var o=true;var a=false;var i,c;try{for(r=r.call(e);!(o=(i=r.next()).done);o=true){n.push(i.value);if(t&&n.length===t)break}}catch(e){a=true;c=e}finally{try{if(!o&&r["return"]!=null)r["return"]()}finally{if(a)throw c}}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){a(e,t,r[t])})}return e}function f(e,r){return t(e)||c(e,r)||v(e,r)||s()}function d(e){return r(e)||i(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 m(e,t){var r,n,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},i=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return i.next=c(0),i["throw"]=c(1),i["return"]=c(2),typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function c(e){return function(t){return s([e,t])}}function s(c){if(r)throw new TypeError("Generator is already executing.");while(i&&(i=0,c[0]&&(a=0)),a)try{if(r=1,n&&(o=c[0]&2?n["return"]:c[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;if(n=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++;n=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];n=0}finally{r=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var y=Object.create;var h=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var E=function(e,t){return h(e,"name",{value:t,configurable:!0})};var S=function(e,t){for(var r in t)h(e,r,{get:t[r],enumerable:!0})},C=function(e,t,r,n){var o=true,a=false,i=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var c=function(){var o=u.value;!I.call(e,o)&&o!==r&&h(e,o,{get:function(){return t[o]},enumerable:!(n=g(t,o))||n.enumerable})};for(var s=b(t)[Symbol.iterator](),u;!(o=(u=s.next()).done);o=true)c()}catch(e){a=true;i=e}finally{try{if(!o&&s.return!=null){s.return()}}finally{if(a){throw i}}}return e};var O=function(e,t,r){return r=e!=null?y(w(e)):{},C(t||!e||!e.__esModule?h(r,"default",{value:e,enumerable:!0}):r,e)},_=function(e){return C(h({},"__esModule",{value:!0}),e)};var T={};S(T,{clearAllErrorLists:function(){return e6},formatCommand:function(){return to},getStoredErrorLists:function(){return e3},rawCommand:function(){return tr},resolveCommands:function(){return ta},runCommand:function(){return tc}});module.exports=_(T);var k=require("child_process"),j=O(require("process"),1),L=O(require("util"),1);var A=O(require("process"),1),P=A.default.env.DEBUG==="true";var N=function(e){return e.Error="error",e.Warning="warning",e}({});var G=O(require("chalk"),1),R=O(require("consola"),1),x=require("graphql");P||(R.default.level=4);function D(e){var t=G.default[e];return typeof t=="function"?t:G.default.green}E(D,"chalkKeyword");var F={silent:R.default.silent,level:R.default.level,fatal:R.default.fatal,error:R.default.error,warn:R.default.warn,log:R.default.log,info:R.default.info,success:R.default.success,ready:R.default.ready,start:R.default.start,box:R.default.box,debug:R.default.debug,trace:R.default.trace,verbose:R.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)){R.default.box(G.default.green(e));return}t.forEach(function(e){var t=e.file,n=e.position,o=e.rule,a=e.message;R.default.log("".concat(G.default.gray("File:")," ").concat(G.default.blue("".concat(t).concat(n?":".concat(n):"")))),o&&R.default.log(" ".concat(D(r)("Rule:")," ").concat(o)),R.default.log(" ".concat(D(r)("Message:")," ").concat(a))}),R.default.box(D(r)("".concat(e," : ").concat(t.length))),R.default.log(G.default.gray("─".repeat(40)))}};var M={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var W=O(require("node-fetch"),1);var U=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});var q=O(require("fs"),1);function J(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return t.every(function(e){return q.existsSync(e)})}E(J,"existsSync");function K(e,t){var r=q.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}E(K,"readFileSync");function Y(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=r.isJson,o=n===void 0?!1:n,a=o&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);q.writeFileSync(e,a,"utf-8")}E(Y,"writeFileSync");var B=O(require("process"),1);var H=O(require("path"),1);function $(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=H).resolve.apply(n,[z].concat(d(t)))}E($,"resolveWorkingPath");function V(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=H).join.apply(n,d(t))}E(V,"join");var z=B.default.env.INIT_CWD||B.default.cwd(),Q="@cyberskill/shared",X=".cyberskill-storage",Z="node_modules",ee="dist",et="package.json",er="package-lock.json",en="tsconfig.json",eo=".gitignore",ea=".simple-git-hooks.json",ei="pnpm-lock.yaml",ec=".git/hooks/",es=".git/COMMIT_EDITMSG",eu=V(z,Z,Q,ee),el="cyberskill",ef="src/nodejs/cli/index.ts",ed="eslint",ep="eslint",ev="vitest",em="playwright",ey="vitest",eh="@commitlint/cli",eg="commitlint",eb="lint-staged",ew="lint-staged",eI="typescript",eE="tsc",eS="tsx",eC="git",eO="pnpm",e_="pnpm exec",eT="simple-git-hooks",ek="simple-git-hooks",ej="@eslint/config-inspector",eL="eslint-config-inspector",eA="node-modules-inspector",eP="node-modules-inspector",eN={CYBERSKILL_DIRECTORY:eu,WORKING_DIRECTORY:z,TS_CONFIG:$(en),GIT_IGNORE:$(eo),GIT_HOOK:$(ec),GIT_COMMIT_MSG:$(es),SIMPLE_GIT_HOOKS_JSON:$(ea),PACKAGE_JSON:$(et),PACKAGE_LOCK_JSON:$(er),PNPM_LOCK_YAML:$(ei),NODE_MODULES:$(Z),LINT_STAGED_CONFIG:$("".concat(eu,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:$("".concat(eu,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:$("".concat(eu,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:$("".concat(eu,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:$("".concat(eu,"/react/vitest/vitest.e2e.js"))};function eG(e){return eR.apply(this,arguments)}function eR(){eR=o(function(e){var t,r,n,o,a,i;var c=arguments;return m(this,function(s){switch(s.label){case 0:for(t=c.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=c[n]}o=f(r,2),a=o[0],i=o[1];if(!a)throw new Error("'first' argument is undefined");switch(e){case U.CLI:return[3,1];case U.RAW:return[3,3]}return[3,4];case 1:return[4,eY(a.split(" "),{update:!0})];case 2:return[2,(s.sent(),to(tr("".concat(e_," ").concat(i))))];case 3:return[2,to(tr(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eR.apply(this,arguments)}E(eG,"buildCommand");function ex(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__*/o(function(){return m(this,function(t){return[2,eG.apply(void 0,[e].concat(d(r)))]})})}E(ex,"commandFactory");var eD={simpleGitHooks:ex(U.CLI,eT,ek),eslintInspect:ex(U.CLI,ej,eL),nodeModulesInspect:ex(U.CLI,eA,eP),eslintCheck:ex(U.CLI,ed,"".concat(ep," ").concat(eN.WORKING_DIRECTORY)),eslintFix:ex(U.CLI,ed,"".concat(ep," ").concat(eN.WORKING_DIRECTORY," --fix")),typescriptCheck:ex(U.CLI,eI,"".concat(eE," -p ").concat(eN.TS_CONFIG," --noEmit")),configureGitHook:ex(U.RAW,"".concat(eC," config core.hooksPath ").concat(eN.GIT_HOOK)),testUnit:ex(U.CLI,ev,"".concat(ey," --config ").concat(eN.UNIT_TEST_CONFIG)),testE2e:ex(U.CLI,"".concat(ev," ").concat(em),"".concat(ey," --config ").concat(eN.E2E_TEST_CONFIG)),commitLint:ex(U.CLI,eh,"".concat(eg," --edit ").concat(eN.GIT_COMMIT_MSG," --config ").concat(eN.COMMITLINT_CONFIG)),lintStaged:ex(U.CLI,eb,"".concat(ew," --config ").concat(eN.LINT_STAGED_CONFIG)),stageBuildDirectory:ex(U.RAW,"".concat(eC," add ").concat(ee)),build:ex(U.RAW,"".concat(eO," run build")),pnpmInstallStandard:ex(U.RAW,"".concat(eO," install")),pnpmInstallLegacy:ex(U.RAW,"".concat(eO," install --legacy-peer-deps")),pnpmInstallForce:ex(U.RAW,"".concat(eO," install --force"))};function eF(e){var t=V(z,et);if(!J(t))return!1;try{var r=K(t,{asJson:!0}),n=r.name,o=r.dependencies,a=o===void 0?{}:o,i=r.devDependencies,c=i===void 0?{}:i,s=n===e,u=e in a,l=e in c;return s||u||l?{path:t,file:r,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return F.warn("Failed to read package.json: ".concat(e.message)),!1}}E(eF,"getPackage");function eM(e){return eW.apply(this,arguments)}function eW(){eW=o(function(e){var t,r,n,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,W.default)("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:r=a.sent(),n=r.version;return[2,n];case 3:o=a.sent();throw F.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return eW.apply(this,arguments)}E(eM,"getLatestPackageVersion");function eU(e,t){return eq.apply(this,arguments)}function eq(){eq=o(function(e,t){var r,n,o,a,i,c,s,u,f,d,p,v,y,h,g,b,w,I,E,S,C;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);r=eF(e);if(!r)return[2,l({},M)];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=(o=u.devDependencies)!==null&&o!==void 0?o:{},h=f?(a=u.version)!==null&&a!==void 0?a:"0.0.0":d?(i=v[e])!==null&&i!==void 0?i:"0.0.0":p?(c=y[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];w=h;return[3,3];case 1:return[4,eM(e)];case 2:w=m.sent();m.label=3;case 3:g=w,b=f||h===g;if(!b&&(t===null||t===void 0?void 0:t.update)){;E=d?"dependencies":p?"devDependencies":null;E&&((I=u[E])===null||I===void 0?void 0:I[e])!==g&&(u[E]=(S=u[E])!==null&&S!==void 0?S:{},u[E][e]=g,Y(s,u,{isJson:!0}),F.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:C=m.sent();return[2,(F.error('Error checking package "'.concat(e,'": ').concat(C.message)),l({},M))];case 5:return[2]}})});return eq.apply(this,arguments)}E(eU,"checkPackage");function eJ(){return eK.apply(this,arguments)}function eK(){eK=o(function(){var e,t,r,n,o,a,i,c,s,u,l,f;return m(this,function(d){switch(d.label){case 0:e=[{command:E(function(){return eD.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:E(function(){return eD.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:E(function(){return eD.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,r=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);o=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];i=a.value,c=i.command,s=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:u=d.sent();return[4,tc("".concat(s," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();F.warn("Installation attempt failed: ".concat(s)),F.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&&o.return!=null){o.return()}}finally{if(r){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eK.apply(this,arguments)}E(eJ,"installDependencies");function eY(e,t){return eB.apply(this,arguments)}function eB(){eB=o(function(e,t){var r,n,o,a,i,c,s,u,f,p,v;return m(this,function(m){switch(m.label){case 0:if(!J(eN.PACKAGE_JSON)){F.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,13,,14]);r=d(new Set(e)).sort();return[4,Promise.all(r.map(function(e){return eU(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:n=m.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,eJ()];case 3:n=m.sent();m.label=4;case 4:n;a=true,i=false,c=undefined;m.label=5;case 5:m.trys.push([5,10,11,12]);s=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=6;case 6:if(!!(a=(u=s.next()).done))return[3,9];f=u.value;return[4,f()];case 7:m.sent();m.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:p=m.sent();i=true;c=p;return[3,12];case 11:try{if(!a&&s.return!=null){s.return()}}finally{if(i){throw c}}return[7];case 12:return[3,14];case 13:v=m.sent();throw F.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})});return eB.apply(this,arguments)}E(eY,"setupPackages");var eH=O(require("node-persist"),1),e$=O(require("os"),1),eV=O(require("process"),1);function ez(){return eV.default.env.CYBERSKILL_STORAGE_DIR||V(e$.default.homedir(),X)}E(ez,"getStorageDir");function eQ(){return eX.apply(this,arguments)}function eX(){eX=o(function(){var e;return m(this,function(t){switch(t.label){case 0:e=eH.default.defaultInstance;if(e)return[3,2];return[4,eH.default.init({dir:ez(),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 eX.apply(this,arguments)}E(eQ,"initNodePersist");var eZ={get:function e(e){return o(function(){var t,r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eQ()];case 1:n.sent();return[4,eH.default.getItem(e)];case 2:return[2,(t=n.sent())!==null&&t!==void 0?t:null];case 3:r=n.sent();return[2,(F.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 4:return[2]}})})()},set:function e(e,t){return o(function(){var r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eQ()];case 1:n.sent();return[4,eH.default.setItem(e,t)];case 2:n.sent();return[3,4];case 3:r=n.sent();F.error('[Storage:set] Error setting key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},remove:function e(e){return o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eQ()];case 1:r.sent();return[4,eH.default.removeItem(e)];case 2:r.sent();return[3,4];case 3:t=r.sent();F.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(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eQ()];case 1:r.sent();return[4,eH.default.keys()];case 2:e=r.sent();return[2,Array.isArray(e)?e:(F.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=r.sent();return[2,(F.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(ez()," (key: ").concat(e,")")]}catch(e){return[2,(F.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e0=L.promisify(k.exec);function e1(e){return"error_list:".concat(e)}E(e1,"getErrorListKey");function e2(e){return e4.apply(this,arguments)}function e4(){e4=o(function(e){var t,r,n;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),r=e1(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eZ.set(r,{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,eZ.getLogLink(r)];case 1:e=t.sent();e&&F.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:n=a.sent();F.error("Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return e4.apply(this,arguments)}E(e2,"saveErrorListToStorage");function e3(){return e5.apply(this,arguments)}function e5(){e5=o(function(){var e,t,r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eZ.keys()];case 1:e=n.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(/*#__PURE__*/function(){var e=o(function(e){var t;return m(this,function(r){switch(r.label){case 0:return[4,eZ.get(e)];case 1:return[2,((t=r.sent())===null||t===void 0?void 0:t.errors)||[]]}})});return function(t){return e.apply(this,arguments)}}()))];case 2:return[2,n.sent().flat()];case 3:r=n.sent();return[2,(F.error("Failed to retrieve stored errors: ".concat(r.message)),[])];case 4:return[2]}})});return e5.apply(this,arguments)}E(e3,"getStoredErrorLists");function e6(){return e8.apply(this,arguments)}function e8(){e8=o(function(){var e,t,r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eZ.keys()];case 1:e=n.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return eZ.remove(e)}))];case 2:n.sent();return[3,4];case 3:r=n.sent();F.error("Failed to clear error lists: ".concat(r.message));return[3,4];case 4:return[2]}})});return e8.apply(this,arguments)}E(e6,"clearAllErrorLists");function e7(e){var t=[],r=[],n="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))n=e.trim();else{var c,s,u,l,f;var d=o.exec(e)||[],p=a.exec(e)||[],v=i.exec(e)||[];var m,y,h,g,b,w;d.length&&n?t.push({file:n,position:"".concat(d[1],":").concat(d[2]),type:d[3]===N.Error?N.Error:N.Warning,message:(m=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(y=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&y!==void 0?y:""}):p.length?t.push({file:(h=p===null||p===void 0?void 0:p[1])!==null&&h!==void 0?h:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===N.Error?N.Error:N.Warning,message:(g=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):v.length?t.push({file:"commitlint",type:N.Error,message:(b=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&b!==void 0?b:"",rule:(w=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&w!==void 0?w:""}):r.push(e.trim())}}),t.length&&e2(t),P&&r.length&&(F.warn("Unmatched lines:"),r.forEach(function(e){return F.info(" ".concat(e))}))}E(e7,"parseTextErrors");function e9(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,o=e.line,a=e.column,i=e.ruleId,c=e.message;r.push({type:n===2?N.Error:N.Warning,file:t,position:"".concat(o,":").concat(a),rule:i,message:c})})}),r.length&&e2(r)}catch(t){e7(e)}}E(e9,"parseCommandOutput");function te(e){return tt.apply(this,arguments)}function tt(){tt=o(function(e){var t,r,n,o,a,i,c,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]:e9;r=new AbortController;j.default.on("SIGINT",function(){F.warn("Process interrupted. Terminating..."),r.abort(),j.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,e0(e,{maxBuffer:0x6400000,signal:r.signal})];case 2:n=f.sent(),o=n.stdout,a=n.stderr;[o,a].forEach(function(e){return e&&t(e)});return[3,4];case 3:i=f.sent();c=i.stdout,s=i.stderr,u=i.message;[c,s].forEach(function(e){return e&&t(e)}),!s&&!c&&F.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return tt.apply(this,arguments)}E(te,"executeCommand");function tr(e){return{raw:!0,cmd:e}}E(tr,"rawCommand");function tn(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e_," ").concat(Q," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e_," ").concat(eS," ").concat(ef," ").concat(e):"".concat(e_," ").concat(el," ").concat(e)}E(tn,"formatCLI");function to(e,t){return typeof e=="function"?tn(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"?tn(e,t):e}E(to,"formatCommand");function ta(e){return ti.apply(this,arguments)}function ti(){ti=o(function(e){var t,r,n,o,a,i,c;var s=arguments;return m(this,function(u){switch(u.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};n=(r=t===null||t===void 0?void 0:t.isRemote)!==null&&r!==void 0?r:!1;if(!n)return[3,1];c=!1;return[3,3];case 1:return[4,eU(Q)];case 2:c=u.sent().isCurrentProject;u.label=3;case 3:o=c,a={isRemote:n,isCurrentProject:o},i=typeof e=="function"?e(a):e;return[2,Object.fromEntries(Object.entries(i).map(function(e){var t=f(e,2),r=t[0],n=t[1];return[r,to(n,a)]}))]}})});return ti.apply(this,arguments)}E(ta,"resolveCommands");function tc(e,t){return ts.apply(this,arguments)}function ts(){ts=o(function(e,t){var r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);F.start("".concat(e)),P&&F.info("→ ".concat(t));return[4,te(t)];case 1:n.sent(),F.success("".concat(e," done."));return[3,3];case 2:r=n.sent();throw F.error("".concat(e," failed: ").concat(r.message)),r;case 3:return[2]}})});return ts.apply(this,arguments)}E(tc,"runCommand");0&&(module.exports={clearAllErrorLists:clearAllErrorLists,formatCommand:formatCommand,getStoredErrorLists:getStoredErrorLists,rawCommand:rawCommand,resolveCommands:resolveCommands,runCommand:runCommand});
|
|
1
|
+
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var 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,o,a,i){try{var c=e[a](i);var u=c.value}catch(e){r(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(n,o)}}function o(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var i=e.apply(t,r);function c(e){n(i,o,a,c,u,"next",e)}function u(e){n(i,o,a,c,u,"throw",e)}c(undefined)})}}function a(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 i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var r=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r==null)return;var n=[];var o=true;var a=false;var i,c;try{for(r=r.call(e);!(o=(i=r.next()).done);o=true){n.push(i.value);if(t&&n.length===t)break}}catch(e){a=true;c=e}finally{try{if(!o&&r["return"]!=null)r["return"]()}finally{if(a)throw c}}return n}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function s(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function 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){a(e,t,r[t])})}return e}function f(e,r){return t(e)||c(e,r)||v(e,r)||u()}function d(e){return r(e)||i(e)||v(e)||s()}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 m(e,t){var r,n,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},i=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return i.next=c(0),i["throw"]=c(1),i["return"]=c(2),typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function c(e){return function(t){return u([e,t])}}function u(c){if(r)throw new TypeError("Generator is already executing.");while(i&&(i=0,c[0]&&(a=0)),a)try{if(r=1,n&&(o=c[0]&2?n["return"]:c[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;if(n=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++;n=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];n=0}finally{r=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var h=Object.create;var y=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var w=function(e,t){return y(e,"name",{value:t,configurable:!0})};var C=function(e,t){for(var r in t)y(e,r,{get:t[r],enumerable:!0})},S=function(e,t,r,n){var o=true,a=false,i=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var c=function(){var o=s.value;!I.call(e,o)&&o!==r&&y(e,o,{get:function(){return t[o]},enumerable:!(n=g(t,o))||n.enumerable})};for(var u=b(t)[Symbol.iterator](),s;!(o=(s=u.next()).done);o=true)c()}catch(e){a=true;i=e}finally{try{if(!o&&u.return!=null){u.return()}}finally{if(a){throw i}}}return e};var O=function(e,t,r){return r=e!=null?h(E(e)):{},S(t||!e||!e.__esModule?y(r,"default",{value:e,enumerable:!0}):r,e)},_=function(e){return S(y({},"__esModule",{value:!0}),e)};var L={};C(L,{clearAllErrorLists:function(){return tr},formatCommand:function(){return tl},getStoredErrorLists:function(){return te},rawCommand:function(){return tu},resolveCommands:function(){return tf},runCommand:function(){return tp}});module.exports=_(L);var T=require("child_process"),A=O(require("process"),1),R=O(require("util"),1);var k=".cyberskill-storage";var D=O(require("dotenv"),1),j=require("envalid"),G=O(require("os"),1),P=O(require("path"),1),N=O(require("process"),1);D.default.config();function x(){var e={DEBUG:N.default.env.DEBUG,CWD:N.default.env.CWD,CYBERSKILL_STORAGE_DIR:N.default.env.CYBERSKILL_STORAGE_DIR},t=(0,j.cleanEnv)(e,{DEBUG:(0,j.bool)({default:!1}),CWD:(0,j.str)({default:N.default.cwd()}),CYBERSKILL_STORAGE_DIR:(0,j.str)({default:P.default.join(G.default.homedir(),k)})});return{DEBUG:t.DEBUG,CWD:t.CWD,CYBERSKILL_STORAGE_DIR:t.CYBERSKILL_STORAGE_DIR}}w(x,"getEnv");var F=function(e){return e.Error="error",e.Warning="warning",e}({});var W=O(require("chalk"),1),M=O(require("consola"),1),U=require("graphql");var K=x();K.DEBUG||(M.default.level=4);function B(e){var t=W.default[e];return typeof t=="function"?t:W.default.green}w(B,"chalkKeyword");var q={silent:M.default.silent,level:M.default.level,fatal:M.default.fatal,error:M.default.error,warn:M.default.warn,log:M.default.log,info:M.default.info,success:M.default.success,ready:M.default.ready,start:M.default.start,box:M.default.box,debug:M.default.debug,trace:M.default.trace,verbose:M.default.verbose,printBoxedLog:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){M.default.box(W.default.green(e));return}t.forEach(function(e){var t=e.file,n=e.position,o=e.rule,a=e.message;M.default.log("".concat(W.default.gray("File:")," ").concat(W.default.blue("".concat(t).concat(n?":".concat(n):"")))),o&&M.default.log(" ".concat(B(r)("Rule:")," ").concat(o)),M.default.log(" ".concat(B(r)("Message:")," ").concat(a))}),M.default.box(B(r)("".concat(e," : ").concat(t.length))),M.default.log(W.default.gray("─".repeat(40)))}};var J={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var Y=O(require("node-fetch"),1);var H=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});var $=O(require("fs"),1);function V(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return t.every(function(e){return $.existsSync(e)})}w(V,"existsSync");function z(e,t){var r=$.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}w(z,"readFileSync");function Q(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=r.isJson,o=n===void 0?!1:n,a=o&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);$.writeFileSync(e,a,"utf-8")}w(Q,"writeFileSync");var X=O(require("path"),1);function Z(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;var o=x();return(n=X).resolve.apply(n,[o.CWD].concat(d(t)))}w(Z,"resolveWorkingPath");function ee(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n;return(n=X).join.apply(n,d(t))}w(ee,"join");var et=x(),er=et.CWD,en="@cyberskill/shared",eo="node_modules",ea="dist",ei="package.json",ec="package-lock.json",eu="tsconfig.json",es=".gitignore",el=".simple-git-hooks.json",ef="pnpm-lock.yaml",ed=".git/hooks/",ep=".git/COMMIT_EDITMSG",ev=ee(er,eo,en,ea),em="cyberskill",eh="src/nodejs/cli/index.ts",ey="eslint",eg="eslint",eb="vitest",eE="playwright",eI="vitest",ew="@commitlint/cli",eC="commitlint",eS="lint-staged",eO="lint-staged",e_="typescript",eL="tsc",eT="tsx",eA="git",eR="pnpm",ek="pnpm exec",eD="simple-git-hooks",ej="simple-git-hooks",eG="@eslint/config-inspector",eP="eslint-config-inspector",eN="node-modules-inspector",ex="node-modules-inspector",eF="migrate-mongo",eW="migrate-mongo",eM={CYBERSKILL_DIRECTORY:ev,WORKING_DIRECTORY:er,TS_CONFIG:Z(eu),GIT_IGNORE:Z(es),GIT_HOOK:Z(ed),GIT_COMMIT_MSG:Z(ep),SIMPLE_GIT_HOOKS_JSON:Z(el),PACKAGE_JSON:Z(ei),PACKAGE_LOCK_JSON:Z(ec),PNPM_LOCK_YAML:Z(ef),NODE_MODULES:Z(eo),LINT_STAGED_CONFIG:Z("".concat(ev,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:Z("".concat(ev,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:Z("".concat(ev,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:Z("".concat(ev,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:Z("".concat(ev,"/react/vitest/vitest.e2e.js"))};function eU(e){return eK.apply(this,arguments)}function eK(){eK=o(function(e){var t,r,n,o,a,i;var c=arguments;return m(this,function(u){switch(u.label){case 0:for(t=c.length,r=new Array(t>1?t-1:0),n=1;n<t;n++){r[n-1]=c[n]}o=f(r,2),a=o[0],i=o[1];if(!a)throw new Error("'first' argument is undefined");switch(e){case H.CLI:return[3,1];case H.RAW:return[3,3]}return[3,4];case 1:return[4,eX(a.split(" "),{update:!0})];case 2:return[2,(u.sent(),tl(tu("".concat(ek," ").concat(i))))];case 3:return[2,tl(tu(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eK.apply(this,arguments)}w(eU,"buildCommand");function eB(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__*/o(function(){return m(this,function(t){return[2,eU.apply(void 0,[e].concat(d(r)))]})})}w(eB,"commandFactory");var eq={simpleGitHooks:eB(H.CLI,eD,ej),eslintInspect:eB(H.CLI,eG,eP),nodeModulesInspect:eB(H.CLI,eN,ex),eslintCheck:eB(H.CLI,ey,"".concat(eg," ").concat(eM.WORKING_DIRECTORY)),eslintFix:eB(H.CLI,ey,"".concat(eg," ").concat(eM.WORKING_DIRECTORY," --fix")),typescriptCheck:eB(H.CLI,e_,"".concat(eL," -p ").concat(eM.TS_CONFIG," --noEmit")),configureGitHook:eB(H.RAW,"".concat(eA," config core.hooksPath ").concat(eM.GIT_HOOK)),testUnit:eB(H.CLI,eb,"".concat(eI," --config ").concat(eM.UNIT_TEST_CONFIG)),testE2e:eB(H.CLI,"".concat(eb," ").concat(eE),"".concat(eI," --config ").concat(eM.E2E_TEST_CONFIG)),mongoMigrateCreate:w(function(e){return eB(H.CLI,"".concat(eF),"".concat(eW," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:eB(H.CLI,"".concat(eF),"".concat(eW," up")),mongoMigrateDown:eB(H.CLI,"".concat(eF),"".concat(eW," down")),commitLint:eB(H.CLI,ew,"".concat(eC," --edit ").concat(eM.GIT_COMMIT_MSG," --config ").concat(eM.COMMITLINT_CONFIG)),lintStaged:eB(H.CLI,eS,"".concat(eO," --config ").concat(eM.LINT_STAGED_CONFIG)),stageBuildDirectory:eB(H.RAW,"".concat(eA," add ").concat(ea)),build:eB(H.RAW,"".concat(eR," run build")),pnpmInstallStandard:eB(H.RAW,"".concat(eR," install")),pnpmInstallLegacy:eB(H.RAW,"".concat(eR," install --legacy-peer-deps")),pnpmInstallForce:eB(H.RAW,"".concat(eR," install --force"))};function eJ(e){var t=x(),r=ee(t.CWD,ei);if(!V(r))return!1;try{var n=z(r,{asJson:!0}),o=n.name,a=n.dependencies,i=a===void 0?{}:a,c=n.devDependencies,u=c===void 0?{}:c,s=o===e,l=e in i,f=e in u;return s||l||f?{path:r,file:n,isCurrentProject:s,isDepend:l,isDevDepend:f}:!1}catch(e){return q.warn("Failed to read package.json: ".concat(e.message)),!1}}w(eJ,"getPackage");function eY(e){return eH.apply(this,arguments)}function eH(){eH=o(function(e){var t,r,n,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,Y.default)("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:r=a.sent(),n=r.version;return[2,n];case 3:o=a.sent();throw q.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return eH.apply(this,arguments)}w(eY,"getLatestPackageVersion");function e$(e,t){return eV.apply(this,arguments)}function eV(){eV=o(function(e,t){var r,n,o,a,i,c,u,s,f,d,p,v,h,y,g,b,E,I,w,C,S;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);r=eJ(e);if(!r)return[2,l({},J)];u=r.path,s=r.file,f=r.isCurrentProject,d=r.isDepend,p=r.isDevDepend,v=(n=s.dependencies)!==null&&n!==void 0?n:{},h=(o=s.devDependencies)!==null&&o!==void 0?o:{},y=f?(a=s.version)!==null&&a!==void 0?a:"0.0.0":d?(i=v[e])!==null&&i!==void 0?i:"0.0.0":p?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];E=y;return[3,3];case 1:return[4,eY(e)];case 2:E=m.sent();m.label=3;case 3:g=E,b=f||y===g;if(!b&&(t===null||t===void 0?void 0:t.update)){;w=d?"dependencies":p?"devDependencies":null;w&&((I=s[w])===null||I===void 0?void 0:I[e])!==g&&(s[w]=(C=s[w])!==null&&C!==void 0?C:{},s[w][e]=g,Q(u,s,{isJson:!0}),q.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:f,installedPath:u,file:s,isUpToDate:b}];case 4:S=m.sent();return[2,(q.error('Error checking package "'.concat(e,'": ').concat(S.message)),l({},J))];case 5:return[2]}})});return eV.apply(this,arguments)}w(e$,"checkPackage");function ez(){return eQ.apply(this,arguments)}function eQ(){eQ=o(function(){var e,t,r,n,o,a,i,c,u,s,l,f;return m(this,function(d){switch(d.label){case 0:e=[{command:w(function(){return eq.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:w(function(){return eq.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:w(function(){return eq.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,r=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);o=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];i=a.value,c=i.command,u=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:s=d.sent();return[4,tp("".concat(u," using: ").concat(s),s)];case 5:d.sent();return[2];case 6:l=d.sent();q.warn("Installation attempt failed: ".concat(u)),q.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&&o.return!=null){o.return()}}finally{if(r){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eQ.apply(this,arguments)}w(ez,"installDependencies");function eX(e,t){return eZ.apply(this,arguments)}function eZ(){eZ=o(function(e,t){var r,n,o,a,i,c,u,s,f,p,v;return m(this,function(m){switch(m.label){case 0:if(!V(eM.PACKAGE_JSON)){q.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,13,,14]);r=d(new Set(e)).sort();return[4,Promise.all(r.map(function(e){return e$(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:n=m.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,ez()];case 3:n=m.sent();m.label=4;case 4:n;a=true,i=false,c=undefined;m.label=5;case 5:m.trys.push([5,10,11,12]);u=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=6;case 6:if(!!(a=(s=u.next()).done))return[3,9];f=s.value;return[4,f()];case 7:m.sent();m.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:p=m.sent();i=true;c=p;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(i){throw c}}return[7];case 12:return[3,14];case 13:v=m.sent();throw q.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})});return eZ.apply(this,arguments)}w(eX,"setupPackages");var e0=O(require("node-persist"),1);var e1=x();function e2(){return e4.apply(this,arguments)}function e4(){e4=o(function(){var e;return m(this,function(t){switch(t.label){case 0:e=e0.default.defaultInstance;if(e)return[3,2];return[4,e0.default.init({dir:e1.CYBERSKILL_STORAGE_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 e4.apply(this,arguments)}w(e2,"initNodePersist");var e3={get:function e(e){return o(function(){var t,r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e2()];case 1:n.sent();return[4,e0.default.getItem(e)];case 2:return[2,(t=n.sent())!==null&&t!==void 0?t:null];case 3:r=n.sent();return[2,(q.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 4:return[2]}})})()},set:function e(e,t){return o(function(){var r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e2()];case 1:n.sent();return[4,e0.default.setItem(e,t)];case 2:n.sent();return[3,4];case 3:r=n.sent();q.error('[Storage:set] Error setting key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},remove:function e(e){return o(function(){var t;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e2()];case 1:r.sent();return[4,e0.default.removeItem(e)];case 2:r.sent();return[3,4];case 3:t=r.sent();q.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(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e2()];case 1:r.sent();return[4,e0.default.keys()];case 2:e=r.sent();return[2,Array.isArray(e)?e:(q.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=r.sent();return[2,(q.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(e1.CYBERSKILL_STORAGE_DIR," (key: ").concat(e,")")]}catch(e){return[2,(q.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e5=x(),e6=R.promisify(T.exec);function e8(e){return"error_list:".concat(e)}w(e8,"getErrorListKey");function e7(e){return e9.apply(this,arguments)}function e9(){e9=o(function(e){var t,r,n;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),r=e8(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,e3.set(r,{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,e3.getLogLink(r)];case 1:e=t.sent();e&&q.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:n=a.sent();q.error("Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return e9.apply(this,arguments)}w(e7,"saveErrorListToStorage");function te(){return tt.apply(this,arguments)}function tt(){tt=o(function(){var e,t,r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e3.keys()];case 1:e=n.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(/*#__PURE__*/function(){var e=o(function(e){var t;return m(this,function(r){switch(r.label){case 0:return[4,e3.get(e)];case 1:return[2,((t=r.sent())===null||t===void 0?void 0:t.errors)||[]]}})});return function(t){return e.apply(this,arguments)}}()))];case 2:return[2,n.sent().flat()];case 3:r=n.sent();return[2,(q.error("Failed to retrieve stored errors: ".concat(r.message)),[])];case 4:return[2]}})});return tt.apply(this,arguments)}w(te,"getStoredErrorLists");function tr(){return tn.apply(this,arguments)}function tn(){tn=o(function(){var e,t,r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e3.keys()];case 1:e=n.sent(),t=Array.isArray(e)?e.filter(function(e){var t;return e===null||e===void 0?void 0:(t=e.startsWith)===null||t===void 0?void 0:t.call(e,"error_list:")}):[];return[4,Promise.all(t.map(function(e){return e3.remove(e)}))];case 2:n.sent();return[3,4];case 3:r=n.sent();q.error("Failed to clear error lists: ".concat(r.message));return[3,4];case 4:return[2]}})});return tn.apply(this,arguments)}w(tr,"clearAllErrorLists");function to(e){var t=[],r=[],n="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))n=e.trim();else{var c,u,s,l,f;var d=o.exec(e)||[],p=a.exec(e)||[],v=i.exec(e)||[];var m,h,y,g,b,E;d.length&&n?t.push({file:n,position:"".concat(d[1],":").concat(d[2]),type:d[3]===F.Error?F.Error:F.Warning,message:(m=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(h=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(y=p===null||p===void 0?void 0:p[1])!==null&&y!==void 0?y:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===F.Error?F.Error:F.Warning,message:(g=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&g!==void 0?g:""}):v.length?t.push({file:"commitlint",type:F.Error,message:(b=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&b!==void 0?b:"",rule:(E=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&E!==void 0?E:""}):r.push(e.trim())}}),t.length&&e7(t),e5.DEBUG&&r.length&&(q.warn("Unmatched lines:"),r.forEach(function(e){return q.info(" ".concat(e))}))}w(to,"parseTextErrors");function ta(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,o=e.line,a=e.column,i=e.ruleId,c=e.message;r.push({type:n===2?F.Error:F.Warning,file:t,position:"".concat(o,":").concat(a),rule:i,message:c})})}),r.length&&e7(r)}catch(t){to(e)}}w(ta,"parseCommandOutput");function ti(e){return tc.apply(this,arguments)}function tc(){tc=o(function(e){var t,r,n,o,a,i,c,u,s;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ta;r=new AbortController;A.default.on("SIGINT",function(){q.warn("Process interrupted. Terminating..."),r.abort(),A.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,e6(e,{maxBuffer:0x6400000,signal:r.signal})];case 2:n=f.sent(),o=n.stdout,a=n.stderr;[o,a].forEach(function(e){return e&&t(e)});return[3,4];case 3:i=f.sent();c=i.stdout,u=i.stderr,s=i.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&q.error("Command failed: ".concat(s));return[3,4];case 4:return[2]}})});return tc.apply(this,arguments)}w(ti,"executeCommand");function tu(e){return{raw:!0,cmd:e}}w(tu,"rawCommand");function ts(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(ek," ").concat(en," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(ek," ").concat(eT," ").concat(eh," ").concat(e):"".concat(ek," ").concat(em," ").concat(e)}w(ts,"formatCLI");function tl(e,t){return typeof e=="function"?ts(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"?ts(e,t):e}w(tl,"formatCommand");function tf(e){return td.apply(this,arguments)}function td(){td=o(function(e){var t,r,n,o,a,i,c;var u=arguments;return m(this,function(s){switch(s.label){case 0:t=u.length>1&&u[1]!==void 0?u[1]:{};n=(r=t===null||t===void 0?void 0:t.isRemote)!==null&&r!==void 0?r:!1;if(!n)return[3,1];c=!1;return[3,3];case 1:return[4,e$(en)];case 2:c=s.sent().isCurrentProject;s.label=3;case 3:o=c,a={isRemote:n,isCurrentProject:o},i=typeof e=="function"?e(a):e;return[2,Object.fromEntries(Object.entries(i).map(function(e){var t=f(e,2),r=t[0],n=t[1];return[r,tl(n,a)]}))]}})});return td.apply(this,arguments)}w(tf,"resolveCommands");function tp(e,t){return tv.apply(this,arguments)}function tv(){tv=o(function(e,t){var r;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);q.start("".concat(e)),e5.DEBUG&&q.info("→ ".concat(t));return[4,ti(t)];case 1:n.sent(),q.success("".concat(e," done."));return[3,3];case 2:r=n.sent();throw q.error("".concat(e," failed: ").concat(r.message)),r;case 3:return[2]}})});return tv.apply(this,arguments)}w(tp,"runCommand");0&&(module.exports={clearAllErrorLists:clearAllErrorLists,formatCommand:formatCommand,getStoredErrorLists:getStoredErrorLists,rawCommand:rawCommand,resolveCommands:resolveCommands,runCommand:runCommand});
|