@cyberskill/shared 1.70.0 → 1.71.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +12 -3
  2. package/dist/_tsup-dts-rollup.d.ts +12 -3
  3. package/dist/configs/index.cjs +1 -1
  4. package/dist/configs/index.d.cts +5 -0
  5. package/dist/configs/index.d.ts +5 -0
  6. package/dist/configs/index.js +1 -1
  7. package/dist/index.cjs +1 -1
  8. package/dist/index.d.cts +5 -2
  9. package/dist/index.d.ts +5 -2
  10. package/dist/index.js +1 -1
  11. package/dist/nodejs/cli/cli.util.cjs +1 -1
  12. package/dist/nodejs/cli/cli.util.js +1 -1
  13. package/dist/nodejs/cli/index.cjs +1 -1
  14. package/dist/nodejs/cli/index.js +1 -1
  15. package/dist/nodejs/index.cjs +1 -1
  16. package/dist/nodejs/index.js +1 -1
  17. package/dist/react/index.cjs +1 -1
  18. package/dist/react/index.d.cts +0 -2
  19. package/dist/react/index.d.ts +0 -2
  20. package/dist/react/index.js +1 -1
  21. package/package.json +6 -6
  22. /package/dist/{react → configs}/graphql-codegen/graphql-codegen.type.cjs +0 -0
  23. /package/dist/{react → configs}/graphql-codegen/graphql-codegen.type.d.cts +0 -0
  24. /package/dist/{react → configs}/graphql-codegen/graphql-codegen.type.d.ts +0 -0
  25. /package/dist/{react → configs}/graphql-codegen/graphql-codegen.type.js +0 -0
  26. /package/dist/{react → configs}/graphql-codegen/graphql-codegen.util.cjs +0 -0
  27. /package/dist/{react → configs}/graphql-codegen/graphql-codegen.util.d.cts +0 -0
  28. /package/dist/{react → configs}/graphql-codegen/graphql-codegen.util.d.ts +0 -0
  29. /package/dist/{react → configs}/graphql-codegen/graphql-codegen.util.js +0 -0
  30. /package/dist/{react → configs}/graphql-codegen/index.cjs +0 -0
  31. /package/dist/{react → configs}/graphql-codegen/index.d.cts +0 -0
  32. /package/dist/{react → configs}/graphql-codegen/index.d.ts +0 -0
  33. /package/dist/{react → configs}/graphql-codegen/index.js +0 -0
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- "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 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,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function p(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{d(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function f(e,n){return t(e)||c(e,n)||y(e,n)||a()}function g(e){return n(e)||o(e)||y(e)||u()}function h(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(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,o={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]};return s={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function c(e){return function(t){return a([e,t])}}function a(s){if(n)throw new TypeError("Generator is already executing.");while(o)try{if(n=1,r&&(i=s[0]&2?r["return"]:s[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;if(r=0,i)s=[s[0]&2,i.value];switch(s[0]){case 0:case 1:i=s;break;case 4:o.label++;return{value:s[1],done:false};case 5:o.label++;r=s[1];s=[0];continue;case 7:s=o.ops.pop();o.trys.pop();continue;default:if(!(i=o.trys,i=i.length>0&&i[i.length-1])&&(s[0]===6||s[0]===2)){o=0;continue}if(s[0]===3&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(s[0]===6&&o.label<i[1]){o.label=i[1];i=s;break}if(i&&o.label<i[2]){o.label=i[2];o.ops.push(s);break}if(i[2])o.ops.pop();o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e];r=0}finally{n=i=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var v=Object.create;var j=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var x=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty;var S=function(e,t,n,r){var i=true,s=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":h(t))=="object"||typeof t=="function")try{var c=function(){var i=u.value;!_.call(e,i)&&i!==n&&j(e,i,{get:function(){return t[i]},enumerable:!(r=b(t,i))||r.enumerable})};for(var a=x(t)[Symbol.iterator](),u;!(i=(u=a.next()).done);i=true)c()}catch(e){s=true;o=e}finally{try{if(!i&&a.return!=null){a.return()}}finally{if(s){throw o}}}return e};var I=function(e,t,n){return n=e!=null?v(E(e)):{},S(t||!e||!e.__esModule?j(n,"default",{value:e,enumerable:!0}):n,e)};var O=I(require("process"),1),w=require("yargs/helpers"),N=I(require("yargs/yargs"),1);var T=I(require("process"),1),D=T.default.env.DEBUG==="true";var P={name:"@cyberskill/shared",type:"module",version:"1.69.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/lint-staged":{types:"./dist/configs/lint-staged/index.d.ts",import:"./dist/configs/lint-staged/index.js",require:"./dist/configs/lint-staged/index.cjs"},"./configs/vitest/react/e2e":{types:"./dist/configs/vitest/react/e2e.d.ts",import:"./dist/configs/vitest/react/e2e.js",require:"./dist/configs/vitest/react/e2e.cjs"},"./configs/vitest/react/unit":{types:"./dist/configs/vitest/react/unit.d.ts",import:"./dist/configs/vitest/react/unit.js",require:"./dist/configs/vitest/react/unit.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/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/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"},"./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/graphql-codegen":{types:"./dist/react/graphql-codegen/index.d.ts",import:"./dist/react/graphql-codegen/index.js",require:"./dist/react/graphql-codegen/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.11.0","@apollo/client":"3.13.6","@eslint-react/eslint-plugin":"1.42.1","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@graphql-codegen/typescript-react-apollo":"4.3.2","@microsoft/api-extractor":"7.52.3","@next/eslint-plugin-next":"15.2.5","@swc/core":"1.11.18","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.8.1","@vitest/browser":"3.1.1",chalk:"5.4.1",classnames:"2.5.1",consola:"3.4.2","crypto-js":"4.2.0","date-fns":"4.1.0","dotenv-cli":"8.0.0","eslint-config-next":"15.2.5","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.19",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"24.2.3",jsdom:"26.0.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.51.1","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.2.5",vitest:"3.1.1","vitest-browser-react":"0.1.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/crypto-js":"4.2.2","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.0","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/yargs":"17.0.33",eslint:"9.24.0","lint-staged":"15.5.0","node-modules-inspector":"0.6.3","simple-git-hooks":"2.12.1"}};var C={lint:"Check code for linting issues","lint:fix":"Fix linting issues automatically","lint:inspect":"View active ESLint configuration","lint-staged":"Run lint checks on staged files",commitlint:"Validate commit message format",setup:"Initialize project setup and dependencies",reset:"Reset the project and reinstall dependencies",inspect:"Analyze installed project dependencies","test:unit":"Run unit test suite","test:e2e":"Run end-to-end test suite"};var A=require("child_process"),L=I(require("process"),1),R=I(require("util"),1);var k=I(require("chalk"),1),q=I(require("consola"),1),G=require("graphql");D||(q.default.level=4);function M(e){var t=k.default[e];return typeof t=="function"?t:k.default.green}var K={silent:q.default.silent,level:q.default.level,fatal:q.default.fatal,error:q.default.error,warn:q.default.warn,log:q.default.log,info:q.default.info,success:q.default.success,ready:q.default.ready,start:q.default.start,box:q.default.box,debug:q.default.debug,trace:q.default.trace,verbose:q.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)){q.default.box(k.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;q.default.log("".concat(k.default.gray("File:")," ").concat(k.default.blue("".concat(t).concat(r?":".concat(r):"")))),i&&q.default.log(" ".concat(M(n)("Rule:")," ").concat(i)),q.default.log(" ".concat(M(n)("Message:")," ").concat(s))}),q.default.box(M(n)("".concat(e," : ").concat(t.length))),q.default.log(k.default.gray("─".repeat(40)))}};var F={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var U=I(require("node-fetch"),1);var Y=I(require("fs"),1);function B(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return Y.existsSync(e)})}function J(e,t){var n=Y.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":h(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}function W(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":h(t))=="object"?JSON.stringify(t,null,4):String(t);Y.writeFileSync(e,s,"utf-8")}function X(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":h(t))=="object"?JSON.stringify(t,null,4):String(t);Y.appendFileSync(e,s,"utf-8")}function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){B(e)&&Y.rmSync(e,{recursive:!0,force:!0})})}var V=I(require("process"),1);var $=I(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=$).resolve.apply(r,[Z].concat(g(t)))}function Q(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=$).join.apply(r,g(t))}var Z=V.default.env.INIT_CWD||V.default.cwd(),ee="@cyberskill/shared",et=".cyberskill-storage",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=Q(Z,en,ee,er),ef="cyberskill",eg="src/nodejs/cli/index.ts",eh="eslint",ey="eslint",em="vitest",ev="playwright",ej="vitest",eb="@commitlint/cli",ex="commitlint",eE="lint-staged",e_="lint-staged",eS="typescript",eI="tsc",eO="tsx",ew="git",eN="pnpm",eT="pnpm exec",eD="simple-git-hooks",eP="simple-git-hooks",eC="@eslint/config-inspector",eA="eslint-config-inspector",eL="node-modules-inspector",eR="node-modules-inspector",ek={CYBERSKILL_DIRECTORY:ep,WORKING_DIRECTORY:Z,TS_CONFIG:z(eo),GIT_IGNORE:z(ec),GIT_HOOK:z(el),GIT_COMMIT_MSG:z(ed),SIMPLE_GIT_HOOKS_JSON:z(ea),PACKAGE_JSON:z(ei),PACKAGE_LOCK_JSON:z(es),PNPM_LOCK_YAML:z(eu),NODE_MODULES:z(en),CYBERSKILL:{LINT_STAGED_CONFIG:z("".concat(ep,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:z("".concat(ep,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:z("".concat(ep,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:z("".concat(ep,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:z("".concat(ep,"/react/vitest/vitest.e2e.js"))}};function eq(e){var t=e.isCurrentProject;return l({"pre-commit":e_,"commit-msg":ex},t&&{"pre-push":tt("".concat(ew," pull"))})}function eG(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}var i=f(n,2),s=i[0],o=i[1],c=e==="RAW"?!0:B.apply(void 0,g(s.split(" ").map(function(e){return Q(ek.NODE_MODULES,e)})));switch(e){case"PNPM_ADD_AND_EXEC":return tr(tt("".concat(c?"":"".concat(eN," add ").concat(s," && ")).concat(eT," ").concat(o)));case"PNPM_ADD_DEV_AND_EXEC":return tr(tt("".concat(c?"":"".concat(eN," add -D ").concat(s," && ")).concat(eT," ").concat(o)));case"RAW":return tr(tt(s))}}var eM={SIMPLE_GIT_HOOKS:eG("PNPM_ADD_DEV_AND_EXEC",eD,eP),ESLINT_INSPECT:eG("PNPM_ADD_DEV_AND_EXEC",eC,eA),NODE_MODULES_INSPECT:eG("PNPM_ADD_DEV_AND_EXEC",eL,eR),ESLINT_CHECK:eG("PNPM_ADD_DEV_AND_EXEC",eh,"".concat(ey," ").concat(ek.WORKING_DIRECTORY)),ESLINT_FIX:eG("PNPM_ADD_DEV_AND_EXEC",eh,"".concat(ey," ").concat(ek.WORKING_DIRECTORY," --fix")),TYPESCRIPT_CHECK:eG("PNPM_ADD_AND_EXEC",eS,"".concat(eI," -p ").concat(ek.TS_CONFIG," --noEmit")),CONFIGURE_GIT_HOOK:eG("RAW","".concat(ew," config core.hooksPath ").concat(ek.GIT_HOOK)),BUILD:eG("RAW","".concat(eN," run build")),STAGE_BUILD_DIRECTORY:eG("RAW","".concat(ew," add ").concat(er)),PNPM_INSTALL_STANDARD:eG("RAW","".concat(eN," install")),PNPM_INSTALL_LEGACY:eG("RAW","".concat(eN," install --legacy-peer-deps")),PNPM_INSTALL_FORCE:eG("RAW","".concat(eN," install --force")),CYBERSKILL:{TEST_UNIT:eG("PNPM_ADD_AND_EXEC",em,"".concat(ej," --config ").concat(ek.CYBERSKILL.UNIT_TEST_CONFIG)),TEST_E2E:eG("PNPM_ADD_AND_EXEC","".concat(em," ").concat(ev),"".concat(ej," --config ").concat(ek.CYBERSKILL.E2E_TEST_CONFIG)),COMMIT_LINT:eG("PNPM_ADD_DEV_AND_EXEC",eb,"".concat(ex," --edit ").concat(ek.GIT_COMMIT_MSG," --config ").concat(ek.CYBERSKILL.COMMITLINT_CONFIG)),LINT_STAGED:eG("PNPM_ADD_DEV_AND_EXEC",eE,"".concat(e_," --config ").concat(ek.CYBERSKILL.LINT_STAGED_CONFIG))}};var eK={};function eF(e){if(e in eK)return eK[e];var t=Q(Z,ei);if(!B(t))return eK[e]=!1;try{var n,r;var i=J(t,{asJson:!0}),s=i.name===e,o=!!((n=i.dependencies)===null||n===void 0?void 0:n[e]),c=!!((r=i.devDependencies)===null||r===void 0?void 0:r[e]);return s||o||c?eK[e]={path:t,file:i,isCurrentProject:s,isDepend:o,isDevDepend:c}:eK[e]=!1}catch(t){return K.warn("Failed to read package.json: ".concat(t.message)),eK[e]=!1}}function eU(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,(0,U.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 K.error('Failed to fetch version for "'.concat(e,'": ').concat(i.message)),i;case 4:return[2]}})});return eY.apply(this,arguments)}function eB(e,t){return eJ.apply(this,arguments)}function eJ(){eJ=i(function(e,t){var n,r,i,o,c,a,u,d,f,g,h,y,v,j,b;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);c=eF(e);if(!c)return[2,l({},F)];a=c.path,u=c.file,d=c.isCurrentProject,f=c.isDepend,g=c.isDevDepend,h="0.0.0";d&&u.version?h=u.version:f&&((n=u.dependencies)===null||n===void 0?void 0:n[e])?h=(r=u.dependencies)===null||r===void 0?void 0:r[e]:g&&((i=u.devDependencies)===null||i===void 0?void 0:i[e])&&(h=(o=u.devDependencies)===null||o===void 0?void 0:o[e]);if(!d)return[3,1];j=h;return[3,3];case 1:return[4,eU(e)];case 2:j=m.sent();m.label=3;case 3:y=j,v=d||h===y;return[2,(!v&&(t===null||t===void 0?void 0:t.update)&&(f?u.dependencies=p(l({},u.dependencies||{}),s({},e,y)):g&&(u.devDependencies=p(l({},u.devDependencies||{}),s({},e,y))),K.info('Updating package "'.concat(e,'" to version ').concat(y)),W(a,u,{isJson:!0})),{isCurrentProject:d,installedPath:a,file:u,isUpToDate:v})];case 4:b=m.sent();return[2,(K.error('Error checking package "'.concat(e,'": ').concat(b.message)),l({},F))];case 5:return[2]}})});return eJ.apply(this,arguments)}var eW=I(require("node-persist"),1),eX=I(require("os"),1),eH=I(require("process"),1);function eV(){return eH.default.env.CYBERSKILL_STORAGE_DIR||Q(eX.default.homedir(),et)}function e$(){return ez.apply(this,arguments)}function ez(){ez=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=eW.default.defaultInstance;if(e)return[3,2];return[4,eW.default.init({dir:eV(),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 ez.apply(this,arguments)}var eQ={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,e$()];case 1:r.sent();return[4,eW.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(K.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return i(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,eW.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();K.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(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,eW.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();K.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(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,eW.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(K.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(K.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return m(this,function(t){try{return[2,"".concat(eV()," (key: ").concat(e,")")]}catch(e){return[2,(K.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eZ=R.promisify(A.exec);function e0(e){return"error_list:".concat(e)}function e1(e){return e2.apply(this,arguments)}function e2(){e2=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=e0(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,eQ.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,eQ.getLogLink(n)];case 1:e=t.sent();e&&K.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=s.sent();K.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return e2.apply(this,arguments)}function e4(){return e3.apply(this,arguments)}function e3(){e3=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eQ.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,eQ.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,(K.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})});return e3.apply(this,arguments)}function e5(){return e6.apply(this,arguments)}function e6(){e6=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eQ.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 eQ.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();K.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})});return e6.apply(this,arguments)}function e8(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=i.exec(e)||[],a=s.exec(e)||[],u=o.exec(e)||[];c.length&&r?t.push({file:r,position:"".concat(c[1],":").concat(c[2]),type:c[3]==="error"?"error":"warning",message:c[4].trim(),rule:c[5].trim()}):a.length?t.push({file:a[1],position:"".concat(a[2],":").concat(a[3]),type:a[4]==="error"?"error":"warning",message:a[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):n.push(e.trim())}}),t.length&&e1(t),D&&n.length&&(K.warn("Unmatched lines:"),n.forEach(function(e){return K.info(" ".concat(e))}))}function e7(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?"error":"warning",file:t,position:"".concat(i,":").concat(s),rule:o,message:c})})}),n.length&&e1(n)}catch(t){e8(e)}}function e9(e){return te.apply(this,arguments)}function te(){te=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]:e7;n=new AbortController;L.default.on("SIGINT",function(){K.warn("Process interrupted. Terminating..."),n.abort(),L.default.exit()});d.label=1;case 1:d.trys.push([1,3,,4]);return[4,eZ(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&&K.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return te.apply(this,arguments)}function tt(e){return{raw:!0,cmd:e}}function tn(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eT," ").concat(ee," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eT," ").concat(eO," ").concat(eg," ").concat(e):"".concat(eT," ").concat(ef," ").concat(e)}function tr(e,t){return typeof e=="function"?tn(e(t),t):(typeof e==="undefined"?"undefined":h(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tn(e,t):e}function ti(e){return ts.apply(this,arguments)}function ts(){ts=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,eB(ee)];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=f(e,2),n=t[0],r=t[1];return[n,tr(r,s)]}))]}})});return ts.apply(this,arguments)}function to(e,t){return tc.apply(this,arguments)}function tc(){tc=i(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);K.start("".concat(e)),D&&K.info("→ ".concat(t));return[4,e9(t)];case 1:r.sent(),K.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw K.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return tc.apply(this,arguments)}function ta(){return tu.apply(this,arguments)}function tu(){tu=i(function(){var e;return m(this,function(t){switch(t.label){case 0:if(!B(ek.TS_CONFIG))return[3,2];return[4,to("Performing TypeScript validation",eM.TYPESCRIPT_CHECK)];case 1:e=t.sent();return[3,3];case 2:e=K.warn("No TypeScript configuration found. Skipping type check.");t.label=3;case 3:e;return[2]}})});return tu.apply(this,arguments)}function tl(){return td.apply(this,arguments)}function td(){td=i(function(){var e,t;var n=arguments;return m(this,function(r){switch(r.label){case 0:e=n.length>0&&n[0]!==void 0?n[0]:!1;if(!e)return[3,2];return[4,to("Running ESLint with auto-fix",eM.ESLINT_FIX)];case 1:t=r.sent();return[3,4];case 2:return[4,to("Running ESLint check",eM.ESLINT_CHECK)];case 3:t=r.sent();r.label=4;case 4:t;return[2]}})});return td.apply(this,arguments)}function tp(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";K.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}function tf(){return tg.apply(this,arguments)}function tg(){tg=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:return[4,e4()];case 1:e=r.sent(),t=e.filter(function(e){return e.type==="error"}),n=e.filter(function(e){return e.type==="warning"});!t.length&&!n.length?K.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tp("Warnings",n),tp("Errors",t));return[2]}})});return tg.apply(this,arguments)}function th(){return ty.apply(this,arguments)}function ty(){ty=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:return[4,e5()];case 1:r.sent();return[4,eB(ee)];case 2:e=r.sent(),t=e.isCurrentProject;if(!t)return[3,7];r.label=3;case 3:r.trys.push([3,6,,7]);return[4,to("Building package: ".concat(ee),eM.BUILD)];case 4:r.sent();return[4,to("Staging build artifacts",eM.STAGE_BUILD_DIRECTORY)];case 5:r.sent();return[3,7];case 6:n=r.sent();throw K.error("Error building and staging ".concat(ee,": ").concat(n.message)),n;case 7:return[4,to("Executing lint-staged",eM.CYBERSKILL.LINT_STAGED)];case 8:r.sent(),tf();return[2]}})});return ty.apply(this,arguments)}function tm(){return tv.apply(this,arguments)}function tv(){tv=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,to("Inspecting ESLint configuration",eM.ESLINT_INSPECT)];case 1:e.sent();return[2]}})});return tv.apply(this,arguments)}function tj(){return tb.apply(this,arguments)}function tb(){tb=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,e5()];case 1:e.sent();return[4,Promise.all([ta(),tl()])];case 2:e.sent(),tf();return[2]}})});return tb.apply(this,arguments)}function tx(){return tE.apply(this,arguments)}function tE(){tE=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,e5()];case 1:e.sent();return[4,Promise.all([ta(),tl(!0)])];case 2:e.sent(),tf();return[2]}})});return tE.apply(this,arguments)}function t_(){return tS.apply(this,arguments)}function tS(){tS=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,e5()];case 1:e.sent();return[4,to("Validating commit message",eM.CYBERSKILL.COMMIT_LINT)];case 2:e.sent(),tf();return[2]}})});return tS.apply(this,arguments)}function tI(){return tO.apply(this,arguments)}function tO(){tO=i(function(){var e,t;return m(this,function(n){switch(n.label){case 0:return[4,to("Configuring Git hooks",eM.CONFIGURE_GIT_HOOK)];case 1:n.sent(),H(ek.GIT_HOOK);return[4,ti(eq)];case 2:e=n.sent();W(ek.SIMPLE_GIT_HOOKS_JSON,e,{isJson:!0});t="\n".concat(ea,"\n");B(ek.GIT_IGNORE)?J(ek.GIT_IGNORE).split("\n").includes(ea)||X(ek.GIT_IGNORE,t):W(ek.GIT_IGNORE,t);return[4,to("Setting up simple-git-hooks",eM.SIMPLE_GIT_HOOKS)];case 3:n.sent();return[2]}})});return tO.apply(this,arguments)}function tw(){return tN.apply(this,arguments)}function tN(){tN=i(function(){var e,t,n,r,i,s,o,c,a,u,l;return m(this,function(d){switch(d.label){case 0:e=[{command:eM.PNPM_INSTALL_STANDARD,message:"Installing dependencies (standard)"},{command:eM.PNPM_INSTALL_LEGACY,message:"Retrying with legacy peer dependencies"},{command:eM.PNPM_INSTALL_FORCE,message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,8,9,10]);i=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,7];o=s.value,c=o.command,a=o.message;d.label=3;case 3:d.trys.push([3,5,,6]);return[4,to("".concat(a," using: ").concat(c),c)];case 4:d.sent();return[2];case 5:u=d.sent();K.warn("Installation attempt failed: ".concat(c)),K.error("Details: ".concat(u.message));return[3,6];case 6:t=true;return[3,2];case 7:return[3,10];case 8:l=d.sent();n=true;r=l;return[3,10];case 9:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 10:throw new Error("All dependency installation strategies failed.")}})});return tN.apply(this,arguments)}function tT(e,t){return tD.apply(this,arguments)}function tD(){tD=i(function(e,t){var n,r,i,s,o,c,a,u,l,d,p,f;return m(this,function(g){switch(g.label){case 0:if(!B(ek.PACKAGE_JSON)){K.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,14,,15]);return[4,eB(e,{update:t===null||t===void 0?void 0:t.update})];case 2:n=g.sent(),r=n.isUpToDate;i=r;if(i)return[3,5];return[4,tw()];case 3:g.sent();return[4,tx()];case 4:i=g.sent();g.label=5;case 5:i;o=true,c=false,a=undefined;g.label=6;case 6:g.trys.push([6,11,12,13]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();g.label=7;case 7:if(!!(o=(l=u.next()).done))return[3,10];d=l.value;return[4,d()];case 8:g.sent();g.label=9;case 9:o=true;return[3,7];case 10:return[3,13];case 11:p=g.sent();c=true;a=p;return[3,13];case 12:try{if(!o&&u.return!=null){u.return()}}finally{if(c){throw a}}return[7];case 13:K.success('"'.concat(e,'" setup completed.'));return[3,15];case 14:f=g.sent();throw K.error('Failed to setup "'.concat(e,'": ').concat(f.message)),f;case 15:return[2]}})});return tD.apply(this,arguments)}function tP(){return tC.apply(this,arguments)}function tC(){tC=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,tT(ee,{update:!0,postInstallActions:[tI]})];case 1:e.sent();return[2]}})});return tC.apply(this,arguments)}function tA(){return tL.apply(this,arguments)}function tL(){tL=i(function(){return m(this,function(e){switch(e.label){case 0:H(ek.NODE_MODULES,ek.PNPM_LOCK_YAML);return[4,tw()];case 1:e.sent();return[4,tI()];case 2:e.sent();return[2]}})});return tL.apply(this,arguments)}function tR(){return tk.apply(this,arguments)}function tk(){tk=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,to("Inspecting project dependencies",eM.NODE_MODULES_INSPECT)];case 1:e.sent();return[2]}})});return tk.apply(this,arguments)}function tq(){return tG.apply(this,arguments)}function tG(){tG=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,to("Running unit tests",eM.CYBERSKILL.TEST_UNIT)];case 1:e.sent();return[2]}})});return tG.apply(this,arguments)}function tM(){return tK.apply(this,arguments)}function tK(){tK=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,to("Running end-to-end tests",eM.CYBERSKILL.TEST_E2E)];case 1:e.sent();return[2]}})});return tK.apply(this,arguments)}i(function(){var e;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,N.default)((0,w.hideBin)(O.default.argv)).scriptName(ef).usage("$0 <command> [options]").command("lint",C.lint,tj).command("lint:fix",C["lint:fix"],tx).command("lint:inspect",C["lint:inspect"],tm).command("lint-staged",C["lint-staged"],th).command("commitlint",C.commitlint,t_).command("setup",C.setup,tP).command("reset",C.reset,tA).command("inspect",C.inspect,tR).command("test:unit",C["test:unit"],tq).command("test:e2e",C["test:e2e"],tM).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(P.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();K.error("Fatal: ".concat(e.message)),O.default.exit(1);return[3,3];case 3:return[2]}})})();
2
+ "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 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,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function p(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{d(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function f(e,n){return t(e)||c(e,n)||y(e,n)||a()}function g(e){return n(e)||o(e)||y(e)||u()}function h(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(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,o={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]};return s={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function c(e){return function(t){return a([e,t])}}function a(s){if(n)throw new TypeError("Generator is already executing.");while(o)try{if(n=1,r&&(i=s[0]&2?r["return"]:s[0]?r["throw"]||((i=r["return"])&&i.call(r),0):r.next)&&!(i=i.call(r,s[1])).done)return i;if(r=0,i)s=[s[0]&2,i.value];switch(s[0]){case 0:case 1:i=s;break;case 4:o.label++;return{value:s[1],done:false};case 5:o.label++;r=s[1];s=[0];continue;case 7:s=o.ops.pop();o.trys.pop();continue;default:if(!(i=o.trys,i=i.length>0&&i[i.length-1])&&(s[0]===6||s[0]===2)){o=0;continue}if(s[0]===3&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(s[0]===6&&o.label<i[1]){o.label=i[1];i=s;break}if(i&&o.label<i[2]){o.label=i[2];o.ops.push(s);break}if(i[2])o.ops.pop();o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e];r=0}finally{n=i=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var v=Object.create;var j=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var x=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty;var S=function(e,t,n,r){var i=true,s=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":h(t))=="object"||typeof t=="function")try{var c=function(){var i=u.value;!_.call(e,i)&&i!==n&&j(e,i,{get:function(){return t[i]},enumerable:!(r=b(t,i))||r.enumerable})};for(var a=x(t)[Symbol.iterator](),u;!(i=(u=a.next()).done);i=true)c()}catch(e){s=true;o=e}finally{try{if(!i&&a.return!=null){a.return()}}finally{if(s){throw o}}}return e};var I=function(e,t,n){return n=e!=null?v(E(e)):{},S(t||!e||!e.__esModule?j(n,"default",{value:e,enumerable:!0}):n,e)};var O=I(require("process"),1),w=require("yargs/helpers"),N=I(require("yargs/yargs"),1);var T=I(require("process"),1),D=T.default.env.DEBUG==="true";var P={name:"@cyberskill/shared",type:"module",version:"1.70.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"},"./configs/vitest/react/e2e":{types:"./dist/configs/vitest/react/e2e.d.ts",import:"./dist/configs/vitest/react/e2e.js",require:"./dist/configs/vitest/react/e2e.cjs"},"./configs/vitest/react/unit":{types:"./dist/configs/vitest/react/unit.d.ts",import:"./dist/configs/vitest/react/unit.js",require:"./dist/configs/vitest/react/unit.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/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/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"},"./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.11.0","@apollo/client":"3.13.6","@eslint-react/eslint-plugin":"1.42.1","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@graphql-codegen/typescript-react-apollo":"4.3.2","@microsoft/api-extractor":"7.52.3","@next/eslint-plugin-next":"15.2.5","@swc/core":"1.11.18","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.8.1","@vitest/browser":"3.1.1",chalk:"5.4.1",classnames:"2.5.1",consola:"3.4.2","crypto-js":"4.2.0","date-fns":"4.1.0","dotenv-cli":"8.0.0","eslint-config-next":"15.2.5","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.19",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"24.2.3",jsdom:"26.0.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.51.1","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.2.5",vitest:"3.1.1","vitest-browser-react":"0.1.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/crypto-js":"4.2.2","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.0","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/yargs":"17.0.33",eslint:"9.24.0","lint-staged":"15.5.0","node-modules-inspector":"0.6.3","simple-git-hooks":"2.12.1"}};var C={lint:"Check code for linting issues","lint:fix":"Fix linting issues automatically","lint:inspect":"View active ESLint configuration","lint-staged":"Run lint checks on staged files",commitlint:"Validate commit message format",setup:"Initialize project setup and dependencies",reset:"Reset the project and reinstall dependencies",inspect:"Analyze installed project dependencies","test:unit":"Run unit test suite","test:e2e":"Run end-to-end test suite"};var A=require("child_process"),L=I(require("process"),1),R=I(require("util"),1);var k=I(require("chalk"),1),q=I(require("consola"),1),G=require("graphql");D||(q.default.level=4);function M(e){var t=k.default[e];return typeof t=="function"?t:k.default.green}var K={silent:q.default.silent,level:q.default.level,fatal:q.default.fatal,error:q.default.error,warn:q.default.warn,log:q.default.log,info:q.default.info,success:q.default.success,ready:q.default.ready,start:q.default.start,box:q.default.box,debug:q.default.debug,trace:q.default.trace,verbose:q.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)){q.default.box(k.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,i=e.rule,s=e.message;q.default.log("".concat(k.default.gray("File:")," ").concat(k.default.blue("".concat(t).concat(r?":".concat(r):"")))),i&&q.default.log(" ".concat(M(n)("Rule:")," ").concat(i)),q.default.log(" ".concat(M(n)("Message:")," ").concat(s))}),q.default.box(M(n)("".concat(e," : ").concat(t.length))),q.default.log(k.default.gray("─".repeat(40)))}};var F={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var U=I(require("node-fetch"),1);var Y=I(require("fs"),1);function B(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return Y.existsSync(e)})}function J(e,t){var n=Y.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":h(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}function W(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":h(t))=="object"?JSON.stringify(t,null,4):String(t);Y.writeFileSync(e,s,"utf-8")}function X(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":h(t))=="object"?JSON.stringify(t,null,4):String(t);Y.appendFileSync(e,s,"utf-8")}function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){B(e)&&Y.rmSync(e,{recursive:!0,force:!0})})}var V=I(require("process"),1);var $=I(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=$).resolve.apply(r,[Z].concat(g(t)))}function Q(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=$).join.apply(r,g(t))}var Z=V.default.env.INIT_CWD||V.default.cwd(),ee="@cyberskill/shared",et=".cyberskill-storage",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=Q(Z,en,ee,er),ef="cyberskill",eg="src/nodejs/cli/index.ts",eh="eslint",ey="eslint",em="vitest",ev="playwright",ej="vitest",eb="@commitlint/cli",ex="commitlint",eE="lint-staged",e_="lint-staged",eS="typescript",eI="tsc",eO="tsx",ew="git",eN="pnpm",eT="pnpm exec",eD="simple-git-hooks",eP="simple-git-hooks",eC="@eslint/config-inspector",eA="eslint-config-inspector",eL="node-modules-inspector",eR="node-modules-inspector",ek={CYBERSKILL_DIRECTORY:ep,WORKING_DIRECTORY:Z,TS_CONFIG:z(eo),GIT_IGNORE:z(ec),GIT_HOOK:z(el),GIT_COMMIT_MSG:z(ed),SIMPLE_GIT_HOOKS_JSON:z(ea),PACKAGE_JSON:z(ei),PACKAGE_LOCK_JSON:z(es),PNPM_LOCK_YAML:z(eu),NODE_MODULES:z(en),CYBERSKILL:{LINT_STAGED_CONFIG:z("".concat(ep,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:z("".concat(ep,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:z("".concat(ep,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:z("".concat(ep,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:z("".concat(ep,"/react/vitest/vitest.e2e.js"))}};function eq(e){var t=e.isCurrentProject;return l({"pre-commit":e_,"commit-msg":ex},t&&{"pre-push":tt("".concat(ew," pull"))})}function eG(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}var i=f(n,2),s=i[0],o=i[1],c=e==="RAW"?!0:B.apply(void 0,g(s.split(" ").map(function(e){return Q(ek.NODE_MODULES,e)})));switch(e){case"PNPM_ADD_AND_EXEC":return tr(tt("".concat(c?"":"".concat(eN," add ").concat(s," && ")).concat(eT," ").concat(o)));case"PNPM_ADD_DEV_AND_EXEC":return tr(tt("".concat(c?"":"".concat(eN," add -D ").concat(s," && ")).concat(eT," ").concat(o)));case"RAW":return tr(tt(s))}}var eM={SIMPLE_GIT_HOOKS:eG("PNPM_ADD_DEV_AND_EXEC",eD,eP),ESLINT_INSPECT:eG("PNPM_ADD_DEV_AND_EXEC",eC,eA),NODE_MODULES_INSPECT:eG("PNPM_ADD_DEV_AND_EXEC",eL,eR),ESLINT_CHECK:eG("PNPM_ADD_DEV_AND_EXEC",eh,"".concat(ey," ").concat(ek.WORKING_DIRECTORY)),ESLINT_FIX:eG("PNPM_ADD_DEV_AND_EXEC",eh,"".concat(ey," ").concat(ek.WORKING_DIRECTORY," --fix")),TYPESCRIPT_CHECK:eG("PNPM_ADD_AND_EXEC",eS,"".concat(eI," -p ").concat(ek.TS_CONFIG," --noEmit")),CONFIGURE_GIT_HOOK:eG("RAW","".concat(ew," config core.hooksPath ").concat(ek.GIT_HOOK)),BUILD:eG("RAW","".concat(eN," run build")),STAGE_BUILD_DIRECTORY:eG("RAW","".concat(ew," add ").concat(er)),PNPM_INSTALL_STANDARD:eG("RAW","".concat(eN," install")),PNPM_INSTALL_LEGACY:eG("RAW","".concat(eN," install --legacy-peer-deps")),PNPM_INSTALL_FORCE:eG("RAW","".concat(eN," install --force")),CYBERSKILL:{TEST_UNIT:eG("PNPM_ADD_AND_EXEC",em,"".concat(ej," --config ").concat(ek.CYBERSKILL.UNIT_TEST_CONFIG)),TEST_E2E:eG("PNPM_ADD_AND_EXEC","".concat(em," ").concat(ev),"".concat(ej," --config ").concat(ek.CYBERSKILL.E2E_TEST_CONFIG)),COMMIT_LINT:eG("PNPM_ADD_DEV_AND_EXEC",eb,"".concat(ex," --edit ").concat(ek.GIT_COMMIT_MSG," --config ").concat(ek.CYBERSKILL.COMMITLINT_CONFIG)),LINT_STAGED:eG("PNPM_ADD_DEV_AND_EXEC",eE,"".concat(e_," --config ").concat(ek.CYBERSKILL.LINT_STAGED_CONFIG))}};var eK={};function eF(e){if(e in eK)return eK[e];var t=Q(Z,ei);if(!B(t))return eK[e]=!1;try{var n,r;var i=J(t,{asJson:!0}),s=i.name===e,o=!!((n=i.dependencies)===null||n===void 0?void 0:n[e]),c=!!((r=i.devDependencies)===null||r===void 0?void 0:r[e]);return s||o||c?eK[e]={path:t,file:i,isCurrentProject:s,isDepend:o,isDevDepend:c}:eK[e]=!1}catch(t){return K.warn("Failed to read package.json: ".concat(t.message)),eK[e]=!1}}function eU(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,(0,U.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 K.error('Failed to fetch version for "'.concat(e,'": ').concat(i.message)),i;case 4:return[2]}})});return eY.apply(this,arguments)}function eB(e,t){return eJ.apply(this,arguments)}function eJ(){eJ=i(function(e,t){var n,r,i,o,c,a,u,d,f,g,h,y,v,j,b;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);c=eF(e);if(!c)return[2,l({},F)];a=c.path,u=c.file,d=c.isCurrentProject,f=c.isDepend,g=c.isDevDepend,h="0.0.0";d&&u.version?h=u.version:f&&((n=u.dependencies)===null||n===void 0?void 0:n[e])?h=(r=u.dependencies)===null||r===void 0?void 0:r[e]:g&&((i=u.devDependencies)===null||i===void 0?void 0:i[e])&&(h=(o=u.devDependencies)===null||o===void 0?void 0:o[e]);if(!d)return[3,1];j=h;return[3,3];case 1:return[4,eU(e)];case 2:j=m.sent();m.label=3;case 3:y=j,v=d||h===y;return[2,(!v&&(t===null||t===void 0?void 0:t.update)&&(f?u.dependencies=p(l({},u.dependencies||{}),s({},e,y)):g&&(u.devDependencies=p(l({},u.devDependencies||{}),s({},e,y))),K.info('Updating package "'.concat(e,'" to version ').concat(y)),W(a,u,{isJson:!0})),{isCurrentProject:d,installedPath:a,file:u,isUpToDate:v})];case 4:b=m.sent();return[2,(K.error('Error checking package "'.concat(e,'": ').concat(b.message)),l({},F))];case 5:return[2]}})});return eJ.apply(this,arguments)}var eW=I(require("node-persist"),1),eX=I(require("os"),1),eH=I(require("process"),1);function eV(){return eH.default.env.CYBERSKILL_STORAGE_DIR||Q(eX.default.homedir(),et)}function e$(){return ez.apply(this,arguments)}function ez(){ez=i(function(){var e;return m(this,function(t){switch(t.label){case 0:e=eW.default.defaultInstance;if(e)return[3,2];return[4,eW.default.init({dir:eV(),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 ez.apply(this,arguments)}var eQ={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,e$()];case 1:r.sent();return[4,eW.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(K.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return i(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,eW.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();K.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return i(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,eW.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();K.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return i(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,eW.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(K.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(K.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return i(function(){return m(this,function(t){try{return[2,"".concat(eV()," (key: ").concat(e,")")]}catch(e){return[2,(K.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eZ=R.promisify(A.exec);function e0(e){return"error_list:".concat(e)}function e1(e){return e2.apply(this,arguments)}function e2(){e2=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=e0(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,eQ.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,eQ.getLogLink(n)];case 1:e=t.sent();e&&K.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=s.sent();K.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return e2.apply(this,arguments)}function e4(){return e3.apply(this,arguments)}function e3(){e3=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eQ.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,eQ.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,(K.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})});return e3.apply(this,arguments)}function e5(){return e6.apply(this,arguments)}function e6(){e6=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eQ.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 eQ.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();K.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})});return e6.apply(this,arguments)}function e8(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=i.exec(e)||[],a=s.exec(e)||[],u=o.exec(e)||[];c.length&&r?t.push({file:r,position:"".concat(c[1],":").concat(c[2]),type:c[3]==="error"?"error":"warning",message:c[4].trim(),rule:c[5].trim()}):a.length?t.push({file:a[1],position:"".concat(a[2],":").concat(a[3]),type:a[4]==="error"?"error":"warning",message:a[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):n.push(e.trim())}}),t.length&&e1(t),D&&n.length&&(K.warn("Unmatched lines:"),n.forEach(function(e){return K.info(" ".concat(e))}))}function e7(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?"error":"warning",file:t,position:"".concat(i,":").concat(s),rule:o,message:c})})}),n.length&&e1(n)}catch(t){e8(e)}}function e9(e){return te.apply(this,arguments)}function te(){te=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]:e7;n=new AbortController;L.default.on("SIGINT",function(){K.warn("Process interrupted. Terminating..."),n.abort(),L.default.exit()});d.label=1;case 1:d.trys.push([1,3,,4]);return[4,eZ(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&&K.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return te.apply(this,arguments)}function tt(e){return{raw:!0,cmd:e}}function tn(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eT," ").concat(ee," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eT," ").concat(eO," ").concat(eg," ").concat(e):"".concat(eT," ").concat(ef," ").concat(e)}function tr(e,t){return typeof e=="function"?tn(e(t),t):(typeof e==="undefined"?"undefined":h(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tn(e,t):e}function ti(e){return ts.apply(this,arguments)}function ts(){ts=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,eB(ee)];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=f(e,2),n=t[0],r=t[1];return[n,tr(r,s)]}))]}})});return ts.apply(this,arguments)}function to(e,t){return tc.apply(this,arguments)}function tc(){tc=i(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);K.start("".concat(e)),D&&K.info("→ ".concat(t));return[4,e9(t)];case 1:r.sent(),K.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw K.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return tc.apply(this,arguments)}function ta(){return tu.apply(this,arguments)}function tu(){tu=i(function(){var e;return m(this,function(t){switch(t.label){case 0:if(!B(ek.TS_CONFIG))return[3,2];return[4,to("Performing TypeScript validation",eM.TYPESCRIPT_CHECK)];case 1:e=t.sent();return[3,3];case 2:e=K.warn("No TypeScript configuration found. Skipping type check.");t.label=3;case 3:e;return[2]}})});return tu.apply(this,arguments)}function tl(){return td.apply(this,arguments)}function td(){td=i(function(){var e,t;var n=arguments;return m(this,function(r){switch(r.label){case 0:e=n.length>0&&n[0]!==void 0?n[0]:!1;if(!e)return[3,2];return[4,to("Running ESLint with auto-fix",eM.ESLINT_FIX)];case 1:t=r.sent();return[3,4];case 2:return[4,to("Running ESLint check",eM.ESLINT_CHECK)];case 3:t=r.sent();r.label=4;case 4:t;return[2]}})});return td.apply(this,arguments)}function tp(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";K.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}function tf(){return tg.apply(this,arguments)}function tg(){tg=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:return[4,e4()];case 1:e=r.sent(),t=e.filter(function(e){return e.type==="error"}),n=e.filter(function(e){return e.type==="warning"});!t.length&&!n.length?K.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(tp("Warnings",n),tp("Errors",t));return[2]}})});return tg.apply(this,arguments)}function th(){return ty.apply(this,arguments)}function ty(){ty=i(function(){var e,t,n;return m(this,function(r){switch(r.label){case 0:return[4,e5()];case 1:r.sent();return[4,eB(ee)];case 2:e=r.sent(),t=e.isCurrentProject;if(!t)return[3,7];r.label=3;case 3:r.trys.push([3,6,,7]);return[4,to("Building package: ".concat(ee),eM.BUILD)];case 4:r.sent();return[4,to("Staging build artifacts",eM.STAGE_BUILD_DIRECTORY)];case 5:r.sent();return[3,7];case 6:n=r.sent();throw K.error("Error building and staging ".concat(ee,": ").concat(n.message)),n;case 7:return[4,to("Executing lint-staged",eM.CYBERSKILL.LINT_STAGED)];case 8:r.sent(),tf();return[2]}})});return ty.apply(this,arguments)}function tm(){return tv.apply(this,arguments)}function tv(){tv=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,to("Inspecting ESLint configuration",eM.ESLINT_INSPECT)];case 1:e.sent();return[2]}})});return tv.apply(this,arguments)}function tj(){return tb.apply(this,arguments)}function tb(){tb=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,e5()];case 1:e.sent();return[4,Promise.all([ta(),tl()])];case 2:e.sent(),tf();return[2]}})});return tb.apply(this,arguments)}function tx(){return tE.apply(this,arguments)}function tE(){tE=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,e5()];case 1:e.sent();return[4,Promise.all([ta(),tl(!0)])];case 2:e.sent(),tf();return[2]}})});return tE.apply(this,arguments)}function t_(){return tS.apply(this,arguments)}function tS(){tS=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,e5()];case 1:e.sent();return[4,to("Validating commit message",eM.CYBERSKILL.COMMIT_LINT)];case 2:e.sent(),tf();return[2]}})});return tS.apply(this,arguments)}function tI(){return tO.apply(this,arguments)}function tO(){tO=i(function(){var e,t;return m(this,function(n){switch(n.label){case 0:return[4,to("Configuring Git hooks",eM.CONFIGURE_GIT_HOOK)];case 1:n.sent(),H(ek.GIT_HOOK);return[4,ti(eq)];case 2:e=n.sent();W(ek.SIMPLE_GIT_HOOKS_JSON,e,{isJson:!0});t="\n".concat(ea,"\n");B(ek.GIT_IGNORE)?J(ek.GIT_IGNORE).split("\n").includes(ea)||X(ek.GIT_IGNORE,t):W(ek.GIT_IGNORE,t);return[4,to("Setting up simple-git-hooks",eM.SIMPLE_GIT_HOOKS)];case 3:n.sent();return[2]}})});return tO.apply(this,arguments)}function tw(){return tN.apply(this,arguments)}function tN(){tN=i(function(){var e,t,n,r,i,s,o,c,a,u,l;return m(this,function(d){switch(d.label){case 0:e=[{command:eM.PNPM_INSTALL_STANDARD,message:"Installing dependencies (standard)"},{command:eM.PNPM_INSTALL_LEGACY,message:"Retrying with legacy peer dependencies"},{command:eM.PNPM_INSTALL_FORCE,message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,8,9,10]);i=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(s=i.next()).done))return[3,7];o=s.value,c=o.command,a=o.message;d.label=3;case 3:d.trys.push([3,5,,6]);return[4,to("".concat(a," using: ").concat(c),c)];case 4:d.sent();return[2];case 5:u=d.sent();K.warn("Installation attempt failed: ".concat(c)),K.error("Details: ".concat(u.message));return[3,6];case 6:t=true;return[3,2];case 7:return[3,10];case 8:l=d.sent();n=true;r=l;return[3,10];case 9:try{if(!t&&i.return!=null){i.return()}}finally{if(n){throw r}}return[7];case 10:throw new Error("All dependency installation strategies failed.")}})});return tN.apply(this,arguments)}function tT(e,t){return tD.apply(this,arguments)}function tD(){tD=i(function(e,t){var n,r,i,s,o,c,a,u,l,d,p,f;return m(this,function(g){switch(g.label){case 0:if(!B(ek.PACKAGE_JSON)){K.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,14,,15]);return[4,eB(e,{update:t===null||t===void 0?void 0:t.update})];case 2:n=g.sent(),r=n.isUpToDate;i=r;if(i)return[3,5];return[4,tw()];case 3:g.sent();return[4,tx()];case 4:i=g.sent();g.label=5;case 5:i;o=true,c=false,a=undefined;g.label=6;case 6:g.trys.push([6,11,12,13]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();g.label=7;case 7:if(!!(o=(l=u.next()).done))return[3,10];d=l.value;return[4,d()];case 8:g.sent();g.label=9;case 9:o=true;return[3,7];case 10:return[3,13];case 11:p=g.sent();c=true;a=p;return[3,13];case 12:try{if(!o&&u.return!=null){u.return()}}finally{if(c){throw a}}return[7];case 13:K.success('"'.concat(e,'" setup completed.'));return[3,15];case 14:f=g.sent();throw K.error('Failed to setup "'.concat(e,'": ').concat(f.message)),f;case 15:return[2]}})});return tD.apply(this,arguments)}function tP(){return tC.apply(this,arguments)}function tC(){tC=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,tT(ee,{update:!0,postInstallActions:[tI]})];case 1:e.sent();return[2]}})});return tC.apply(this,arguments)}function tA(){return tL.apply(this,arguments)}function tL(){tL=i(function(){return m(this,function(e){switch(e.label){case 0:H(ek.NODE_MODULES,ek.PNPM_LOCK_YAML);return[4,tw()];case 1:e.sent();return[4,tI()];case 2:e.sent();return[2]}})});return tL.apply(this,arguments)}function tR(){return tk.apply(this,arguments)}function tk(){tk=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,to("Inspecting project dependencies",eM.NODE_MODULES_INSPECT)];case 1:e.sent();return[2]}})});return tk.apply(this,arguments)}function tq(){return tG.apply(this,arguments)}function tG(){tG=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,to("Running unit tests",eM.CYBERSKILL.TEST_UNIT)];case 1:e.sent();return[2]}})});return tG.apply(this,arguments)}function tM(){return tK.apply(this,arguments)}function tK(){tK=i(function(){return m(this,function(e){switch(e.label){case 0:return[4,to("Running end-to-end tests",eM.CYBERSKILL.TEST_E2E)];case 1:e.sent();return[2]}})});return tK.apply(this,arguments)}i(function(){var e;return m(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,(0,N.default)((0,w.hideBin)(O.default.argv)).scriptName(ef).usage("$0 <command> [options]").command("lint",C.lint,tj).command("lint:fix",C["lint:fix"],tx).command("lint:inspect",C["lint:inspect"],tm).command("lint-staged",C["lint-staged"],th).command("commitlint",C.commitlint,t_).command("setup",C.setup,tP).command("reset",C.reset,tA).command("inspect",C.inspect,tR).command("test:unit",C["test:unit"],tq).command("test:e2e",C["test:e2e"],tM).demandCommand(1,"Please specify a valid command.").strict().help().alias("h","help").alias("v","version").version(P.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();K.error("Fatal: ".concat(e.message)),O.default.exit(1);return[3,3];case 3:return[2]}})})();
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- 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,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function p(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{d(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function f(e,n){return t(e)||c(e,n)||m(e,n)||a()}function g(e){return n(e)||o(e)||m(e)||u()}function h(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(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,o={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]};return i={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function c(e){return function(t){return a([e,t])}}function a(i){if(n)throw new TypeError("Generator is already executing.");while(o)try{if(n=1,r&&(s=i[0]&2?r["return"]:i[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,i[1])).done)return s;if(r=0,s)i=[i[0]&2,s.value];switch(i[0]){case 0:case 1:s=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(s=o.trys,s=s.length>0&&s[s.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!s||i[1]>s[0]&&i[1]<s[3])){o.label=i[1];break}if(i[0]===6&&o.label<s[1]){o.label=s[1];s=i;break}if(s&&o.label<s[2]){o.label=s[2];o.ops.push(i);break}if(s[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=s=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}import v from"node:process";import{hideBin as j}from"yargs/helpers";import x from"yargs/yargs";import E from"node:process";var _=E.env.DEBUG==="true";var b={name:"@cyberskill/shared",type:"module",version:"1.69.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/lint-staged":{types:"./dist/configs/lint-staged/index.d.ts",import:"./dist/configs/lint-staged/index.js",require:"./dist/configs/lint-staged/index.cjs"},"./configs/vitest/react/e2e":{types:"./dist/configs/vitest/react/e2e.d.ts",import:"./dist/configs/vitest/react/e2e.js",require:"./dist/configs/vitest/react/e2e.cjs"},"./configs/vitest/react/unit":{types:"./dist/configs/vitest/react/unit.d.ts",import:"./dist/configs/vitest/react/unit.js",require:"./dist/configs/vitest/react/unit.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/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/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"},"./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/graphql-codegen":{types:"./dist/react/graphql-codegen/index.d.ts",import:"./dist/react/graphql-codegen/index.js",require:"./dist/react/graphql-codegen/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.11.0","@apollo/client":"3.13.6","@eslint-react/eslint-plugin":"1.42.1","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@graphql-codegen/typescript-react-apollo":"4.3.2","@microsoft/api-extractor":"7.52.3","@next/eslint-plugin-next":"15.2.5","@swc/core":"1.11.18","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.8.1","@vitest/browser":"3.1.1",chalk:"5.4.1",classnames:"2.5.1",consola:"3.4.2","crypto-js":"4.2.0","date-fns":"4.1.0","dotenv-cli":"8.0.0","eslint-config-next":"15.2.5","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.19",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"24.2.3",jsdom:"26.0.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.51.1","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.2.5",vitest:"3.1.1","vitest-browser-react":"0.1.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/crypto-js":"4.2.2","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.0","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/yargs":"17.0.33",eslint:"9.24.0","lint-staged":"15.5.0","node-modules-inspector":"0.6.3","simple-git-hooks":"2.12.1"}};var S={lint:"Check code for linting issues","lint:fix":"Fix linting issues automatically","lint:inspect":"View active ESLint configuration","lint-staged":"Run lint checks on staged files",commitlint:"Validate commit message format",setup:"Initialize project setup and dependencies",reset:"Reset the project and reinstall dependencies",inspect:"Analyze installed project dependencies","test:unit":"Run unit test suite","test:e2e":"Run end-to-end test suite"};import{exec as I}from"node:child_process";import w from"node:process";import*as O from"node:util";import T from"chalk";import N from"consola";import{GraphQLError as D}from"graphql";_||(N.level=4);function C(e){var t=T[e];return typeof t=="function"?t:T.green}var P={silent:N.silent,level:N.level,fatal:N.fatal,error:N.error,warn:N.warn,log:N.log,info:N.info,success:N.success,ready:N.ready,start:N.start,box:N.box,debug:N.debug,trace:N.trace,verbose:N.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)){N.box(T.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,i=e.message;N.log("".concat(T.gray("File:")," ").concat(T.blue("".concat(t).concat(r?":".concat(r):"")))),s&&N.log(" ".concat(C(n)("Rule:")," ").concat(s)),N.log(" ".concat(C(n)("Message:")," ").concat(i))}),N.box(C(n)("".concat(e," : ").concat(t.length))),N.log(T.gray("─".repeat(40)))}};var A={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import L from"node-fetch";import*as R from"node:fs";function k(){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)})}function G(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":h(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}function 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":h(t))=="object"?JSON.stringify(t,null,4):String(t);R.writeFileSync(e,i,"utf-8")}function q(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":h(t))=="object"?JSON.stringify(t,null,4):String(t);R.appendFileSync(e,i,"utf-8")}function K(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){k(e)&&R.rmSync(e,{recursive:!0,force:!0})})}import F from"node:process";import*as U from"node:path";function Y(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=U).resolve.apply(r,[J].concat(g(t)))}function B(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=U).join.apply(r,g(t))}var J=F.env.INIT_CWD||F.cwd(),W="@cyberskill/shared",X=".cyberskill-storage",H="node_modules",V="dist",$="package.json",z="package-lock.json",Q="tsconfig.json",Z=".gitignore",ee=".simple-git-hooks.json",et="pnpm-lock.yaml",en=".git/hooks/",er=".git/COMMIT_EDITMSG",es=B(J,H,W,V),ei="cyberskill",eo="src/nodejs/cli/index.ts",ec="eslint",ea="eslint",eu="vitest",el="playwright",ed="vitest",ep="@commitlint/cli",ef="commitlint",eg="lint-staged",eh="lint-staged",em="typescript",ey="tsc",ev="tsx",ej="git",ex="pnpm",eE="pnpm exec",e_="simple-git-hooks",eb="simple-git-hooks",eS="@eslint/config-inspector",eI="eslint-config-inspector",ew="node-modules-inspector",eO="node-modules-inspector",eT={CYBERSKILL_DIRECTORY:es,WORKING_DIRECTORY:J,TS_CONFIG:Y(Q),GIT_IGNORE:Y(Z),GIT_HOOK:Y(en),GIT_COMMIT_MSG:Y(er),SIMPLE_GIT_HOOKS_JSON:Y(ee),PACKAGE_JSON:Y($),PACKAGE_LOCK_JSON:Y(z),PNPM_LOCK_YAML:Y(et),NODE_MODULES:Y(H),CYBERSKILL:{LINT_STAGED_CONFIG:Y("".concat(es,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:Y("".concat(es,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:Y("".concat(es,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:Y("".concat(es,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:Y("".concat(es,"/react/vitest/vitest.e2e.js"))}};function eN(e){var t=e.isCurrentProject;return l({"pre-commit":eh,"commit-msg":ef},t&&{"pre-push":e4("".concat(ej," pull"))})}function eD(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}var s=f(n,2),i=s[0],o=s[1],c=e==="RAW"?!0:k.apply(void 0,g(i.split(" ").map(function(e){return B(eT.NODE_MODULES,e)})));switch(e){case"PNPM_ADD_AND_EXEC":return e5(e4("".concat(c?"":"".concat(ex," add ").concat(i," && ")).concat(eE," ").concat(o)));case"PNPM_ADD_DEV_AND_EXEC":return e5(e4("".concat(c?"":"".concat(ex," add -D ").concat(i," && ")).concat(eE," ").concat(o)));case"RAW":return e5(e4(i))}}var eC={SIMPLE_GIT_HOOKS:eD("PNPM_ADD_DEV_AND_EXEC",e_,eb),ESLINT_INSPECT:eD("PNPM_ADD_DEV_AND_EXEC",eS,eI),NODE_MODULES_INSPECT:eD("PNPM_ADD_DEV_AND_EXEC",ew,eO),ESLINT_CHECK:eD("PNPM_ADD_DEV_AND_EXEC",ec,"".concat(ea," ").concat(eT.WORKING_DIRECTORY)),ESLINT_FIX:eD("PNPM_ADD_DEV_AND_EXEC",ec,"".concat(ea," ").concat(eT.WORKING_DIRECTORY," --fix")),TYPESCRIPT_CHECK:eD("PNPM_ADD_AND_EXEC",em,"".concat(ey," -p ").concat(eT.TS_CONFIG," --noEmit")),CONFIGURE_GIT_HOOK:eD("RAW","".concat(ej," config core.hooksPath ").concat(eT.GIT_HOOK)),BUILD:eD("RAW","".concat(ex," run build")),STAGE_BUILD_DIRECTORY:eD("RAW","".concat(ej," add ").concat(V)),PNPM_INSTALL_STANDARD:eD("RAW","".concat(ex," install")),PNPM_INSTALL_LEGACY:eD("RAW","".concat(ex," install --legacy-peer-deps")),PNPM_INSTALL_FORCE:eD("RAW","".concat(ex," install --force")),CYBERSKILL:{TEST_UNIT:eD("PNPM_ADD_AND_EXEC",eu,"".concat(ed," --config ").concat(eT.CYBERSKILL.UNIT_TEST_CONFIG)),TEST_E2E:eD("PNPM_ADD_AND_EXEC","".concat(eu," ").concat(el),"".concat(ed," --config ").concat(eT.CYBERSKILL.E2E_TEST_CONFIG)),COMMIT_LINT:eD("PNPM_ADD_DEV_AND_EXEC",ep,"".concat(ef," --edit ").concat(eT.GIT_COMMIT_MSG," --config ").concat(eT.CYBERSKILL.COMMITLINT_CONFIG)),LINT_STAGED:eD("PNPM_ADD_DEV_AND_EXEC",eg,"".concat(eh," --config ").concat(eT.CYBERSKILL.LINT_STAGED_CONFIG))}};var eP={};function eA(e){if(e in eP)return eP[e];var t=B(J,$);if(!k(t))return eP[e]=!1;try{var n,r;var s=G(t,{asJson:!0}),i=s.name===e,o=!!((n=s.dependencies)===null||n===void 0?void 0:n[e]),c=!!((r=s.devDependencies)===null||r===void 0?void 0:r[e]);return i||o||c?eP[e]={path:t,file:s,isCurrentProject:i,isDepend:o,isDevDepend:c}:eP[e]=!1}catch(t){return P.warn("Failed to read package.json: ".concat(t.message)),eP[e]=!1}}function eL(e){return eR.apply(this,arguments)}function eR(){eR=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,L("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 P.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})});return eR.apply(this,arguments)}function ek(e,t){return eG.apply(this,arguments)}function eG(){eG=s(function(e,t){var n,r,s,o,c,a,u,d,f,g,h,m,v,j,x;return y(this,function(y){switch(y.label){case 0:y.trys.push([0,4,,5]);c=eA(e);if(!c)return[2,l({},A)];a=c.path,u=c.file,d=c.isCurrentProject,f=c.isDepend,g=c.isDevDepend,h="0.0.0";d&&u.version?h=u.version:f&&((n=u.dependencies)===null||n===void 0?void 0:n[e])?h=(r=u.dependencies)===null||r===void 0?void 0:r[e]:g&&((s=u.devDependencies)===null||s===void 0?void 0:s[e])&&(h=(o=u.devDependencies)===null||o===void 0?void 0:o[e]);if(!d)return[3,1];j=h;return[3,3];case 1:return[4,eL(e)];case 2:j=y.sent();y.label=3;case 3:m=j,v=d||h===m;return[2,(!v&&(t===null||t===void 0?void 0:t.update)&&(f?u.dependencies=p(l({},u.dependencies||{}),i({},e,m)):g&&(u.devDependencies=p(l({},u.devDependencies||{}),i({},e,m))),P.info('Updating package "'.concat(e,'" to version ').concat(m)),M(a,u,{isJson:!0})),{isCurrentProject:d,installedPath:a,file:u,isUpToDate:v})];case 4:x=y.sent();return[2,(P.error('Error checking package "'.concat(e,'": ').concat(x.message)),l({},A))];case 5:return[2]}})});return eG.apply(this,arguments)}import eM from"node-persist";import eq from"node:os";import eK from"node:process";function eF(){return eK.env.CYBERSKILL_STORAGE_DIR||B(eq.homedir(),X)}function eU(){return eY.apply(this,arguments)}function eY(){eY=s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=eM.defaultInstance;if(e)return[3,2];return[4,eM.init({dir:eF(),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 eY.apply(this,arguments)}var eB={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,eU()];case 1:r.sent();return[4,eM.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(P.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,eU()];case 1:r.sent();return[4,eM.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();P.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,eU()];case 1:n.sent();return[4,eM.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();P.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,eU()];case 1:n.sent();return[4,eM.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(P.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(P.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(eF()," (key: ").concat(e,")")]}catch(e){return[2,(P.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eJ=O.promisify(I);function eW(e){return"error_list:".concat(e)}function eX(e){return eH.apply(this,arguments)}function eH(){eH=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=eW(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,eB.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,eB.getLogLink(n)];case 1:e=t.sent();e&&P.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=i.sent();P.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return eH.apply(this,arguments)}function eV(){return e$.apply(this,arguments)}function e$(){e$=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eB.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,eB.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,(P.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})});return e$.apply(this,arguments)}function ez(){return eQ.apply(this,arguments)}function eQ(){eQ=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eB.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 eB.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();P.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})});return eQ.apply(this,arguments)}function eZ(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=s.exec(e)||[],a=i.exec(e)||[],u=o.exec(e)||[];c.length&&r?t.push({file:r,position:"".concat(c[1],":").concat(c[2]),type:c[3]==="error"?"error":"warning",message:c[4].trim(),rule:c[5].trim()}):a.length?t.push({file:a[1],position:"".concat(a[2],":").concat(a[3]),type:a[4]==="error"?"error":"warning",message:a[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):n.push(e.trim())}}),t.length&&eX(t),_&&n.length&&(P.warn("Unmatched lines:"),n.forEach(function(e){return P.info(" ".concat(e))}))}function e0(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?"error":"warning",file:t,position:"".concat(s,":").concat(i),rule:o,message:c})})}),n.length&&eX(n)}catch(t){eZ(e)}}function e1(e){return e2.apply(this,arguments)}function e2(){e2=s(function(e){var t,n,r,s,i,o,c,a,u;var l=arguments;return y(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e0;n=new AbortController;w.on("SIGINT",function(){P.warn("Process interrupted. Terminating..."),n.abort(),w.exit()});d.label=1;case 1:d.trys.push([1,3,,4]);return[4,eJ(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&&P.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return e2.apply(this,arguments)}function e4(e){return{raw:!0,cmd:e}}function e3(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eE," ").concat(W," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eE," ").concat(ev," ").concat(eo," ").concat(e):"".concat(eE," ").concat(ei," ").concat(e)}function e5(e,t){return typeof e=="function"?e3(e(t),t):(typeof e==="undefined"?"undefined":h(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e3(e,t):e}function e6(e){return e8.apply(this,arguments)}function e8(){e8=s(function(e){var t,n,r,s,i,o,c;var a=arguments;return y(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,ek(W)];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=f(e,2),n=t[0],r=t[1];return[n,e5(r,i)]}))]}})});return e8.apply(this,arguments)}function e7(e,t){return e9.apply(this,arguments)}function e9(){e9=s(function(e,t){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);P.start("".concat(e)),_&&P.info("→ ".concat(t));return[4,e1(t)];case 1:r.sent(),P.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw P.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return e9.apply(this,arguments)}function te(){return tt.apply(this,arguments)}function tt(){tt=s(function(){var e;return y(this,function(t){switch(t.label){case 0:if(!k(eT.TS_CONFIG))return[3,2];return[4,e7("Performing TypeScript validation",eC.TYPESCRIPT_CHECK)];case 1:e=t.sent();return[3,3];case 2:e=P.warn("No TypeScript configuration found. Skipping type check.");t.label=3;case 3:e;return[2]}})});return tt.apply(this,arguments)}function tn(){return tr.apply(this,arguments)}function tr(){tr=s(function(){var e,t;var n=arguments;return y(this,function(r){switch(r.label){case 0:e=n.length>0&&n[0]!==void 0?n[0]:!1;if(!e)return[3,2];return[4,e7("Running ESLint with auto-fix",eC.ESLINT_FIX)];case 1:t=r.sent();return[3,4];case 2:return[4,e7("Running ESLint check",eC.ESLINT_CHECK)];case 3:t=r.sent();r.label=4;case 4:t;return[2]}})});return tr.apply(this,arguments)}function ts(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";P.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}function ti(){return to.apply(this,arguments)}function to(){to=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:return[4,eV()];case 1:e=r.sent(),t=e.filter(function(e){return e.type==="error"}),n=e.filter(function(e){return e.type==="warning"});!t.length&&!n.length?P.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(ts("Warnings",n),ts("Errors",t));return[2]}})});return to.apply(this,arguments)}function tc(){return ta.apply(this,arguments)}function ta(){ta=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:return[4,ez()];case 1:r.sent();return[4,ek(W)];case 2:e=r.sent(),t=e.isCurrentProject;if(!t)return[3,7];r.label=3;case 3:r.trys.push([3,6,,7]);return[4,e7("Building package: ".concat(W),eC.BUILD)];case 4:r.sent();return[4,e7("Staging build artifacts",eC.STAGE_BUILD_DIRECTORY)];case 5:r.sent();return[3,7];case 6:n=r.sent();throw P.error("Error building and staging ".concat(W,": ").concat(n.message)),n;case 7:return[4,e7("Executing lint-staged",eC.CYBERSKILL.LINT_STAGED)];case 8:r.sent(),ti();return[2]}})});return ta.apply(this,arguments)}function tu(){return tl.apply(this,arguments)}function tl(){tl=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,e7("Inspecting ESLint configuration",eC.ESLINT_INSPECT)];case 1:e.sent();return[2]}})});return tl.apply(this,arguments)}function td(){return tp.apply(this,arguments)}function tp(){tp=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,ez()];case 1:e.sent();return[4,Promise.all([te(),tn()])];case 2:e.sent(),ti();return[2]}})});return tp.apply(this,arguments)}function tf(){return tg.apply(this,arguments)}function tg(){tg=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,ez()];case 1:e.sent();return[4,Promise.all([te(),tn(!0)])];case 2:e.sent(),ti();return[2]}})});return tg.apply(this,arguments)}function th(){return tm.apply(this,arguments)}function tm(){tm=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,ez()];case 1:e.sent();return[4,e7("Validating commit message",eC.CYBERSKILL.COMMIT_LINT)];case 2:e.sent(),ti();return[2]}})});return tm.apply(this,arguments)}function ty(){return tv.apply(this,arguments)}function tv(){tv=s(function(){var e,t;return y(this,function(n){switch(n.label){case 0:return[4,e7("Configuring Git hooks",eC.CONFIGURE_GIT_HOOK)];case 1:n.sent(),K(eT.GIT_HOOK);return[4,e6(eN)];case 2:e=n.sent();M(eT.SIMPLE_GIT_HOOKS_JSON,e,{isJson:!0});t="\n".concat(ee,"\n");k(eT.GIT_IGNORE)?G(eT.GIT_IGNORE).split("\n").includes(ee)||q(eT.GIT_IGNORE,t):M(eT.GIT_IGNORE,t);return[4,e7("Setting up simple-git-hooks",eC.SIMPLE_GIT_HOOKS)];case 3:n.sent();return[2]}})});return tv.apply(this,arguments)}function tj(){return tx.apply(this,arguments)}function tx(){tx=s(function(){var e,t,n,r,s,i,o,c,a,u,l;return y(this,function(d){switch(d.label){case 0:e=[{command:eC.PNPM_INSTALL_STANDARD,message:"Installing dependencies (standard)"},{command:eC.PNPM_INSTALL_LEGACY,message:"Retrying with legacy peer dependencies"},{command:eC.PNPM_INSTALL_FORCE,message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,8,9,10]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(i=s.next()).done))return[3,7];o=i.value,c=o.command,a=o.message;d.label=3;case 3:d.trys.push([3,5,,6]);return[4,e7("".concat(a," using: ").concat(c),c)];case 4:d.sent();return[2];case 5:u=d.sent();P.warn("Installation attempt failed: ".concat(c)),P.error("Details: ".concat(u.message));return[3,6];case 6:t=true;return[3,2];case 7:return[3,10];case 8:l=d.sent();n=true;r=l;return[3,10];case 9:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 10:throw new Error("All dependency installation strategies failed.")}})});return tx.apply(this,arguments)}function tE(e,t){return t_.apply(this,arguments)}function t_(){t_=s(function(e,t){var n,r,s,i,o,c,a,u,l,d,p,f;return y(this,function(g){switch(g.label){case 0:if(!k(eT.PACKAGE_JSON)){P.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,14,,15]);return[4,ek(e,{update:t===null||t===void 0?void 0:t.update})];case 2:n=g.sent(),r=n.isUpToDate;s=r;if(s)return[3,5];return[4,tj()];case 3:g.sent();return[4,tf()];case 4:s=g.sent();g.label=5;case 5:s;o=true,c=false,a=undefined;g.label=6;case 6:g.trys.push([6,11,12,13]);u=((i=t===null||t===void 0?void 0:t.postInstallActions)!==null&&i!==void 0?i:[])[Symbol.iterator]();g.label=7;case 7:if(!!(o=(l=u.next()).done))return[3,10];d=l.value;return[4,d()];case 8:g.sent();g.label=9;case 9:o=true;return[3,7];case 10:return[3,13];case 11:p=g.sent();c=true;a=p;return[3,13];case 12:try{if(!o&&u.return!=null){u.return()}}finally{if(c){throw a}}return[7];case 13:P.success('"'.concat(e,'" setup completed.'));return[3,15];case 14:f=g.sent();throw P.error('Failed to setup "'.concat(e,'": ').concat(f.message)),f;case 15:return[2]}})});return t_.apply(this,arguments)}function tb(){return tS.apply(this,arguments)}function tS(){tS=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,tE(W,{update:!0,postInstallActions:[ty]})];case 1:e.sent();return[2]}})});return tS.apply(this,arguments)}function tI(){return tw.apply(this,arguments)}function tw(){tw=s(function(){return y(this,function(e){switch(e.label){case 0:K(eT.NODE_MODULES,eT.PNPM_LOCK_YAML);return[4,tj()];case 1:e.sent();return[4,ty()];case 2:e.sent();return[2]}})});return tw.apply(this,arguments)}function tO(){return tT.apply(this,arguments)}function tT(){tT=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,e7("Inspecting project dependencies",eC.NODE_MODULES_INSPECT)];case 1:e.sent();return[2]}})});return tT.apply(this,arguments)}function tN(){return tD.apply(this,arguments)}function tD(){tD=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,e7("Running unit tests",eC.CYBERSKILL.TEST_UNIT)];case 1:e.sent();return[2]}})});return tD.apply(this,arguments)}function tC(){return tP.apply(this,arguments)}function tP(){tP=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,e7("Running end-to-end tests",eC.CYBERSKILL.TEST_E2E)];case 1:e.sent();return[2]}})});return tP.apply(this,arguments)}s(function(){var e;return y(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,x(j(v.argv)).scriptName(ei).usage("$0 <command> [options]").command("lint",S.lint,td).command("lint:fix",S["lint:fix"],tf).command("lint:inspect",S["lint:inspect"],tu).command("lint-staged",S["lint-staged"],tc).command("commitlint",S.commitlint,th).command("setup",S.setup,tb).command("reset",S.reset,tI).command("inspect",S.inspect,tO).command("test:unit",S["test:unit"],tN).command("test:e2e",S["test:e2e"],tC).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();P.error("Fatal: ".concat(e.message)),v.exit(1);return[3,3];case 3:return[2]}})})();
2
+ 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,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function p(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{d(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function f(e,n){return t(e)||c(e,n)||m(e,n)||a()}function g(e){return n(e)||o(e)||m(e)||u()}function h(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(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,o={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]};return i={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function c(e){return function(t){return a([e,t])}}function a(i){if(n)throw new TypeError("Generator is already executing.");while(o)try{if(n=1,r&&(s=i[0]&2?r["return"]:i[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,i[1])).done)return s;if(r=0,s)i=[i[0]&2,s.value];switch(i[0]){case 0:case 1:s=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(s=o.trys,s=s.length>0&&s[s.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!s||i[1]>s[0]&&i[1]<s[3])){o.label=i[1];break}if(i[0]===6&&o.label<s[1]){o.label=s[1];s=i;break}if(s&&o.label<s[2]){o.label=s[2];o.ops.push(i);break}if(s[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=s=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}import v from"node:process";import{hideBin as j}from"yargs/helpers";import x from"yargs/yargs";import E from"node:process";var _=E.env.DEBUG==="true";var b={name:"@cyberskill/shared",type:"module",version:"1.70.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"},"./configs/vitest/react/e2e":{types:"./dist/configs/vitest/react/e2e.d.ts",import:"./dist/configs/vitest/react/e2e.js",require:"./dist/configs/vitest/react/e2e.cjs"},"./configs/vitest/react/unit":{types:"./dist/configs/vitest/react/unit.d.ts",import:"./dist/configs/vitest/react/unit.js",require:"./dist/configs/vitest/react/unit.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/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/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"},"./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.11.0","@apollo/client":"3.13.6","@eslint-react/eslint-plugin":"1.42.1","@graphql-codegen/cli":"5.0.5","@graphql-codegen/client-preset":"4.8.0","@graphql-codegen/typescript-react-apollo":"4.3.2","@microsoft/api-extractor":"7.52.3","@next/eslint-plugin-next":"15.2.5","@swc/core":"1.11.18","@testing-library/jest-dom":"6.6.3","@testing-library/react":"16.3.0","@vitejs/plugin-react-swc":"3.8.1","@vitest/browser":"3.1.1",chalk:"5.4.1",classnames:"2.5.1",consola:"3.4.2","crypto-js":"4.2.0","date-fns":"4.1.0","dotenv-cli":"8.0.0","eslint-config-next":"15.2.5","eslint-plugin-format":"1.0.1","eslint-plugin-react-hooks":"5.2.0","eslint-plugin-react-refresh":"0.4.19",globals:"16.0.0",graphql:"16.10.0","graphql-ws":"6.0.4",i18next:"24.2.3",jsdom:"26.0.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.51.1","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.2.5",vitest:"3.1.1","vitest-browser-react":"0.1.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/crypto-js":"4.2.2","@types/mongoose-aggregate-paginate-v2":"1.0.12","@types/node-persist":"3.1.8","@types/react":"19.1.0","@types/react-dom":"19.1.2","@types/unorm":"1.3.31","@types/uuid":"10.0.0","@types/yargs":"17.0.33",eslint:"9.24.0","lint-staged":"15.5.0","node-modules-inspector":"0.6.3","simple-git-hooks":"2.12.1"}};var S={lint:"Check code for linting issues","lint:fix":"Fix linting issues automatically","lint:inspect":"View active ESLint configuration","lint-staged":"Run lint checks on staged files",commitlint:"Validate commit message format",setup:"Initialize project setup and dependencies",reset:"Reset the project and reinstall dependencies",inspect:"Analyze installed project dependencies","test:unit":"Run unit test suite","test:e2e":"Run end-to-end test suite"};import{exec as I}from"node:child_process";import w from"node:process";import*as O from"node:util";import T from"chalk";import N from"consola";import{GraphQLError as D}from"graphql";_||(N.level=4);function C(e){var t=T[e];return typeof t=="function"?t:T.green}var P={silent:N.silent,level:N.level,fatal:N.fatal,error:N.error,warn:N.warn,log:N.log,info:N.info,success:N.success,ready:N.ready,start:N.start,box:N.box,debug:N.debug,trace:N.trace,verbose:N.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)){N.box(T.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,i=e.message;N.log("".concat(T.gray("File:")," ").concat(T.blue("".concat(t).concat(r?":".concat(r):"")))),s&&N.log(" ".concat(C(n)("Rule:")," ").concat(s)),N.log(" ".concat(C(n)("Message:")," ").concat(i))}),N.box(C(n)("".concat(e," : ").concat(t.length))),N.log(T.gray("─".repeat(40)))}};var A={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import L from"node-fetch";import*as R from"node:fs";function k(){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)})}function G(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":h(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}function 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":h(t))=="object"?JSON.stringify(t,null,4):String(t);R.writeFileSync(e,i,"utf-8")}function q(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":h(t))=="object"?JSON.stringify(t,null,4):String(t);R.appendFileSync(e,i,"utf-8")}function K(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}t.forEach(function(e){k(e)&&R.rmSync(e,{recursive:!0,force:!0})})}import F from"node:process";import*as U from"node:path";function Y(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=U).resolve.apply(r,[J].concat(g(t)))}function B(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=U).join.apply(r,g(t))}var J=F.env.INIT_CWD||F.cwd(),W="@cyberskill/shared",X=".cyberskill-storage",H="node_modules",V="dist",$="package.json",z="package-lock.json",Q="tsconfig.json",Z=".gitignore",ee=".simple-git-hooks.json",et="pnpm-lock.yaml",en=".git/hooks/",er=".git/COMMIT_EDITMSG",es=B(J,H,W,V),ei="cyberskill",eo="src/nodejs/cli/index.ts",ec="eslint",ea="eslint",eu="vitest",el="playwright",ed="vitest",ep="@commitlint/cli",ef="commitlint",eg="lint-staged",eh="lint-staged",em="typescript",ey="tsc",ev="tsx",ej="git",ex="pnpm",eE="pnpm exec",e_="simple-git-hooks",eb="simple-git-hooks",eS="@eslint/config-inspector",eI="eslint-config-inspector",ew="node-modules-inspector",eO="node-modules-inspector",eT={CYBERSKILL_DIRECTORY:es,WORKING_DIRECTORY:J,TS_CONFIG:Y(Q),GIT_IGNORE:Y(Z),GIT_HOOK:Y(en),GIT_COMMIT_MSG:Y(er),SIMPLE_GIT_HOOKS_JSON:Y(ee),PACKAGE_JSON:Y($),PACKAGE_LOCK_JSON:Y(z),PNPM_LOCK_YAML:Y(et),NODE_MODULES:Y(H),CYBERSKILL:{LINT_STAGED_CONFIG:Y("".concat(es,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:Y("".concat(es,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:Y("".concat(es,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:Y("".concat(es,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:Y("".concat(es,"/react/vitest/vitest.e2e.js"))}};function eN(e){var t=e.isCurrentProject;return l({"pre-commit":eh,"commit-msg":ef},t&&{"pre-push":e4("".concat(ej," pull"))})}function eD(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}var s=f(n,2),i=s[0],o=s[1],c=e==="RAW"?!0:k.apply(void 0,g(i.split(" ").map(function(e){return B(eT.NODE_MODULES,e)})));switch(e){case"PNPM_ADD_AND_EXEC":return e5(e4("".concat(c?"":"".concat(ex," add ").concat(i," && ")).concat(eE," ").concat(o)));case"PNPM_ADD_DEV_AND_EXEC":return e5(e4("".concat(c?"":"".concat(ex," add -D ").concat(i," && ")).concat(eE," ").concat(o)));case"RAW":return e5(e4(i))}}var eC={SIMPLE_GIT_HOOKS:eD("PNPM_ADD_DEV_AND_EXEC",e_,eb),ESLINT_INSPECT:eD("PNPM_ADD_DEV_AND_EXEC",eS,eI),NODE_MODULES_INSPECT:eD("PNPM_ADD_DEV_AND_EXEC",ew,eO),ESLINT_CHECK:eD("PNPM_ADD_DEV_AND_EXEC",ec,"".concat(ea," ").concat(eT.WORKING_DIRECTORY)),ESLINT_FIX:eD("PNPM_ADD_DEV_AND_EXEC",ec,"".concat(ea," ").concat(eT.WORKING_DIRECTORY," --fix")),TYPESCRIPT_CHECK:eD("PNPM_ADD_AND_EXEC",em,"".concat(ey," -p ").concat(eT.TS_CONFIG," --noEmit")),CONFIGURE_GIT_HOOK:eD("RAW","".concat(ej," config core.hooksPath ").concat(eT.GIT_HOOK)),BUILD:eD("RAW","".concat(ex," run build")),STAGE_BUILD_DIRECTORY:eD("RAW","".concat(ej," add ").concat(V)),PNPM_INSTALL_STANDARD:eD("RAW","".concat(ex," install")),PNPM_INSTALL_LEGACY:eD("RAW","".concat(ex," install --legacy-peer-deps")),PNPM_INSTALL_FORCE:eD("RAW","".concat(ex," install --force")),CYBERSKILL:{TEST_UNIT:eD("PNPM_ADD_AND_EXEC",eu,"".concat(ed," --config ").concat(eT.CYBERSKILL.UNIT_TEST_CONFIG)),TEST_E2E:eD("PNPM_ADD_AND_EXEC","".concat(eu," ").concat(el),"".concat(ed," --config ").concat(eT.CYBERSKILL.E2E_TEST_CONFIG)),COMMIT_LINT:eD("PNPM_ADD_DEV_AND_EXEC",ep,"".concat(ef," --edit ").concat(eT.GIT_COMMIT_MSG," --config ").concat(eT.CYBERSKILL.COMMITLINT_CONFIG)),LINT_STAGED:eD("PNPM_ADD_DEV_AND_EXEC",eg,"".concat(eh," --config ").concat(eT.CYBERSKILL.LINT_STAGED_CONFIG))}};var eP={};function eA(e){if(e in eP)return eP[e];var t=B(J,$);if(!k(t))return eP[e]=!1;try{var n,r;var s=G(t,{asJson:!0}),i=s.name===e,o=!!((n=s.dependencies)===null||n===void 0?void 0:n[e]),c=!!((r=s.devDependencies)===null||r===void 0?void 0:r[e]);return i||o||c?eP[e]={path:t,file:s,isCurrentProject:i,isDepend:o,isDevDepend:c}:eP[e]=!1}catch(t){return P.warn("Failed to read package.json: ".concat(t.message)),eP[e]=!1}}function eL(e){return eR.apply(this,arguments)}function eR(){eR=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,L("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 P.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})});return eR.apply(this,arguments)}function ek(e,t){return eG.apply(this,arguments)}function eG(){eG=s(function(e,t){var n,r,s,o,c,a,u,d,f,g,h,m,v,j,x;return y(this,function(y){switch(y.label){case 0:y.trys.push([0,4,,5]);c=eA(e);if(!c)return[2,l({},A)];a=c.path,u=c.file,d=c.isCurrentProject,f=c.isDepend,g=c.isDevDepend,h="0.0.0";d&&u.version?h=u.version:f&&((n=u.dependencies)===null||n===void 0?void 0:n[e])?h=(r=u.dependencies)===null||r===void 0?void 0:r[e]:g&&((s=u.devDependencies)===null||s===void 0?void 0:s[e])&&(h=(o=u.devDependencies)===null||o===void 0?void 0:o[e]);if(!d)return[3,1];j=h;return[3,3];case 1:return[4,eL(e)];case 2:j=y.sent();y.label=3;case 3:m=j,v=d||h===m;return[2,(!v&&(t===null||t===void 0?void 0:t.update)&&(f?u.dependencies=p(l({},u.dependencies||{}),i({},e,m)):g&&(u.devDependencies=p(l({},u.devDependencies||{}),i({},e,m))),P.info('Updating package "'.concat(e,'" to version ').concat(m)),M(a,u,{isJson:!0})),{isCurrentProject:d,installedPath:a,file:u,isUpToDate:v})];case 4:x=y.sent();return[2,(P.error('Error checking package "'.concat(e,'": ').concat(x.message)),l({},A))];case 5:return[2]}})});return eG.apply(this,arguments)}import eM from"node-persist";import eq from"node:os";import eK from"node:process";function eF(){return eK.env.CYBERSKILL_STORAGE_DIR||B(eq.homedir(),X)}function eU(){return eY.apply(this,arguments)}function eY(){eY=s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=eM.defaultInstance;if(e)return[3,2];return[4,eM.init({dir:eF(),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 eY.apply(this,arguments)}var eB={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,eU()];case 1:r.sent();return[4,eM.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(P.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,eU()];case 1:r.sent();return[4,eM.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();P.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,eU()];case 1:n.sent();return[4,eM.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();P.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,eU()];case 1:n.sent();return[4,eM.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(P.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(P.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(eF()," (key: ").concat(e,")")]}catch(e){return[2,(P.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eJ=O.promisify(I);function eW(e){return"error_list:".concat(e)}function eX(e){return eH.apply(this,arguments)}function eH(){eH=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=eW(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,eB.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,eB.getLogLink(n)];case 1:e=t.sent();e&&P.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=i.sent();P.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return eH.apply(this,arguments)}function eV(){return e$.apply(this,arguments)}function e$(){e$=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eB.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,eB.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,(P.error("Failed to retrieve stored errors: ".concat(n.message)),[])];case 4:return[2]}})});return e$.apply(this,arguments)}function ez(){return eQ.apply(this,arguments)}function eQ(){eQ=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eB.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 eB.remove(e)}))];case 2:r.sent();return[3,4];case 3:n=r.sent();P.error("Failed to clear error lists: ".concat(n.message));return[3,4];case 4:return[2]}})});return eQ.apply(this,arguments)}function eZ(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=s.exec(e)||[],a=i.exec(e)||[],u=o.exec(e)||[];c.length&&r?t.push({file:r,position:"".concat(c[1],":").concat(c[2]),type:c[3]==="error"?"error":"warning",message:c[4].trim(),rule:c[5].trim()}):a.length?t.push({file:a[1],position:"".concat(a[2],":").concat(a[3]),type:a[4]==="error"?"error":"warning",message:a[5].trim()}):u.length?t.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):n.push(e.trim())}}),t.length&&eX(t),_&&n.length&&(P.warn("Unmatched lines:"),n.forEach(function(e){return P.info(" ".concat(e))}))}function e0(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?"error":"warning",file:t,position:"".concat(s,":").concat(i),rule:o,message:c})})}),n.length&&eX(n)}catch(t){eZ(e)}}function e1(e){return e2.apply(this,arguments)}function e2(){e2=s(function(e){var t,n,r,s,i,o,c,a,u;var l=arguments;return y(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e0;n=new AbortController;w.on("SIGINT",function(){P.warn("Process interrupted. Terminating..."),n.abort(),w.exit()});d.label=1;case 1:d.trys.push([1,3,,4]);return[4,eJ(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&&P.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return e2.apply(this,arguments)}function e4(e){return{raw:!0,cmd:e}}function e3(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eE," ").concat(W," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eE," ").concat(ev," ").concat(eo," ").concat(e):"".concat(eE," ").concat(ei," ").concat(e)}function e5(e,t){return typeof e=="function"?e3(e(t),t):(typeof e==="undefined"?"undefined":h(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e3(e,t):e}function e6(e){return e8.apply(this,arguments)}function e8(){e8=s(function(e){var t,n,r,s,i,o,c;var a=arguments;return y(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,ek(W)];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=f(e,2),n=t[0],r=t[1];return[n,e5(r,i)]}))]}})});return e8.apply(this,arguments)}function e7(e,t){return e9.apply(this,arguments)}function e9(){e9=s(function(e,t){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);P.start("".concat(e)),_&&P.info("→ ".concat(t));return[4,e1(t)];case 1:r.sent(),P.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw P.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return e9.apply(this,arguments)}function te(){return tt.apply(this,arguments)}function tt(){tt=s(function(){var e;return y(this,function(t){switch(t.label){case 0:if(!k(eT.TS_CONFIG))return[3,2];return[4,e7("Performing TypeScript validation",eC.TYPESCRIPT_CHECK)];case 1:e=t.sent();return[3,3];case 2:e=P.warn("No TypeScript configuration found. Skipping type check.");t.label=3;case 3:e;return[2]}})});return tt.apply(this,arguments)}function tn(){return tr.apply(this,arguments)}function tr(){tr=s(function(){var e,t;var n=arguments;return y(this,function(r){switch(r.label){case 0:e=n.length>0&&n[0]!==void 0?n[0]:!1;if(!e)return[3,2];return[4,e7("Running ESLint with auto-fix",eC.ESLINT_FIX)];case 1:t=r.sent();return[3,4];case 2:return[4,e7("Running ESLint check",eC.ESLINT_CHECK)];case 3:t=r.sent();r.label=4;case 4:t;return[2]}})});return tr.apply(this,arguments)}function ts(e,t){if(!t.length)return;var n=e==="Errors"?"red":"yellow";P.printBoxedLog(e==="Errors"?"✖ Errors":"⚠ Warnings",t,n)}function ti(){return to.apply(this,arguments)}function to(){to=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:return[4,eV()];case 1:e=r.sent(),t=e.filter(function(e){return e.type==="error"}),n=e.filter(function(e){return e.type==="warning"});!t.length&&!n.length?P.printBoxedLog("✔ NO ISSUES FOUND",[],"green"):(ts("Warnings",n),ts("Errors",t));return[2]}})});return to.apply(this,arguments)}function tc(){return ta.apply(this,arguments)}function ta(){ta=s(function(){var e,t,n;return y(this,function(r){switch(r.label){case 0:return[4,ez()];case 1:r.sent();return[4,ek(W)];case 2:e=r.sent(),t=e.isCurrentProject;if(!t)return[3,7];r.label=3;case 3:r.trys.push([3,6,,7]);return[4,e7("Building package: ".concat(W),eC.BUILD)];case 4:r.sent();return[4,e7("Staging build artifacts",eC.STAGE_BUILD_DIRECTORY)];case 5:r.sent();return[3,7];case 6:n=r.sent();throw P.error("Error building and staging ".concat(W,": ").concat(n.message)),n;case 7:return[4,e7("Executing lint-staged",eC.CYBERSKILL.LINT_STAGED)];case 8:r.sent(),ti();return[2]}})});return ta.apply(this,arguments)}function tu(){return tl.apply(this,arguments)}function tl(){tl=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,e7("Inspecting ESLint configuration",eC.ESLINT_INSPECT)];case 1:e.sent();return[2]}})});return tl.apply(this,arguments)}function td(){return tp.apply(this,arguments)}function tp(){tp=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,ez()];case 1:e.sent();return[4,Promise.all([te(),tn()])];case 2:e.sent(),ti();return[2]}})});return tp.apply(this,arguments)}function tf(){return tg.apply(this,arguments)}function tg(){tg=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,ez()];case 1:e.sent();return[4,Promise.all([te(),tn(!0)])];case 2:e.sent(),ti();return[2]}})});return tg.apply(this,arguments)}function th(){return tm.apply(this,arguments)}function tm(){tm=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,ez()];case 1:e.sent();return[4,e7("Validating commit message",eC.CYBERSKILL.COMMIT_LINT)];case 2:e.sent(),ti();return[2]}})});return tm.apply(this,arguments)}function ty(){return tv.apply(this,arguments)}function tv(){tv=s(function(){var e,t;return y(this,function(n){switch(n.label){case 0:return[4,e7("Configuring Git hooks",eC.CONFIGURE_GIT_HOOK)];case 1:n.sent(),K(eT.GIT_HOOK);return[4,e6(eN)];case 2:e=n.sent();M(eT.SIMPLE_GIT_HOOKS_JSON,e,{isJson:!0});t="\n".concat(ee,"\n");k(eT.GIT_IGNORE)?G(eT.GIT_IGNORE).split("\n").includes(ee)||q(eT.GIT_IGNORE,t):M(eT.GIT_IGNORE,t);return[4,e7("Setting up simple-git-hooks",eC.SIMPLE_GIT_HOOKS)];case 3:n.sent();return[2]}})});return tv.apply(this,arguments)}function tj(){return tx.apply(this,arguments)}function tx(){tx=s(function(){var e,t,n,r,s,i,o,c,a,u,l;return y(this,function(d){switch(d.label){case 0:e=[{command:eC.PNPM_INSTALL_STANDARD,message:"Installing dependencies (standard)"},{command:eC.PNPM_INSTALL_LEGACY,message:"Retrying with legacy peer dependencies"},{command:eC.PNPM_INSTALL_FORCE,message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,8,9,10]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(i=s.next()).done))return[3,7];o=i.value,c=o.command,a=o.message;d.label=3;case 3:d.trys.push([3,5,,6]);return[4,e7("".concat(a," using: ").concat(c),c)];case 4:d.sent();return[2];case 5:u=d.sent();P.warn("Installation attempt failed: ".concat(c)),P.error("Details: ".concat(u.message));return[3,6];case 6:t=true;return[3,2];case 7:return[3,10];case 8:l=d.sent();n=true;r=l;return[3,10];case 9:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 10:throw new Error("All dependency installation strategies failed.")}})});return tx.apply(this,arguments)}function tE(e,t){return t_.apply(this,arguments)}function t_(){t_=s(function(e,t){var n,r,s,i,o,c,a,u,l,d,p,f;return y(this,function(g){switch(g.label){case 0:if(!k(eT.PACKAGE_JSON)){P.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,14,,15]);return[4,ek(e,{update:t===null||t===void 0?void 0:t.update})];case 2:n=g.sent(),r=n.isUpToDate;s=r;if(s)return[3,5];return[4,tj()];case 3:g.sent();return[4,tf()];case 4:s=g.sent();g.label=5;case 5:s;o=true,c=false,a=undefined;g.label=6;case 6:g.trys.push([6,11,12,13]);u=((i=t===null||t===void 0?void 0:t.postInstallActions)!==null&&i!==void 0?i:[])[Symbol.iterator]();g.label=7;case 7:if(!!(o=(l=u.next()).done))return[3,10];d=l.value;return[4,d()];case 8:g.sent();g.label=9;case 9:o=true;return[3,7];case 10:return[3,13];case 11:p=g.sent();c=true;a=p;return[3,13];case 12:try{if(!o&&u.return!=null){u.return()}}finally{if(c){throw a}}return[7];case 13:P.success('"'.concat(e,'" setup completed.'));return[3,15];case 14:f=g.sent();throw P.error('Failed to setup "'.concat(e,'": ').concat(f.message)),f;case 15:return[2]}})});return t_.apply(this,arguments)}function tb(){return tS.apply(this,arguments)}function tS(){tS=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,tE(W,{update:!0,postInstallActions:[ty]})];case 1:e.sent();return[2]}})});return tS.apply(this,arguments)}function tI(){return tw.apply(this,arguments)}function tw(){tw=s(function(){return y(this,function(e){switch(e.label){case 0:K(eT.NODE_MODULES,eT.PNPM_LOCK_YAML);return[4,tj()];case 1:e.sent();return[4,ty()];case 2:e.sent();return[2]}})});return tw.apply(this,arguments)}function tO(){return tT.apply(this,arguments)}function tT(){tT=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,e7("Inspecting project dependencies",eC.NODE_MODULES_INSPECT)];case 1:e.sent();return[2]}})});return tT.apply(this,arguments)}function tN(){return tD.apply(this,arguments)}function tD(){tD=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,e7("Running unit tests",eC.CYBERSKILL.TEST_UNIT)];case 1:e.sent();return[2]}})});return tD.apply(this,arguments)}function tC(){return tP.apply(this,arguments)}function tP(){tP=s(function(){return y(this,function(e){switch(e.label){case 0:return[4,e7("Running end-to-end tests",eC.CYBERSKILL.TEST_E2E)];case 1:e.sent();return[2]}})});return tP.apply(this,arguments)}s(function(){var e;return y(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,x(j(v.argv)).scriptName(ei).usage("$0 <command> [options]").command("lint",S.lint,td).command("lint:fix",S["lint:fix"],tf).command("lint:inspect",S["lint:inspect"],tu).command("lint-staged",S["lint-staged"],tc).command("commitlint",S.commitlint,th).command("setup",S.setup,tb).command("reset",S.reset,tI).command("inspect",S.inspect,tO).command("test:unit",S["test:unit"],tN).command("test:e2e",S["test:e2e"],tC).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();P.error("Fatal: ".concat(e.message)),v.exit(1);return[3,3];case 3:return[2]}})})();