@cyberskill/shared 1.102.0 → 1.104.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 (49) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +50 -51
  2. package/dist/_tsup-dts-rollup.d.ts +50 -51
  3. package/dist/configs/config.util.cjs +1 -1
  4. package/dist/configs/config.util.js +1 -1
  5. package/dist/configs/index.cjs +1 -1
  6. package/dist/configs/index.js +1 -1
  7. package/dist/index.cjs +1 -1
  8. package/dist/index.d.cts +2 -2
  9. package/dist/index.d.ts +2 -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/command/command.util.cjs +1 -1
  16. package/dist/nodejs/command/command.util.js +1 -1
  17. package/dist/nodejs/command/index.cjs +1 -1
  18. package/dist/nodejs/command/index.js +1 -1
  19. package/dist/nodejs/index.cjs +1 -1
  20. package/dist/nodejs/index.d.cts +2 -2
  21. package/dist/nodejs/index.d.ts +2 -2
  22. package/dist/nodejs/index.js +1 -1
  23. package/dist/nodejs/mongo/index.cjs +1 -1
  24. package/dist/nodejs/mongo/index.d.cts +0 -1
  25. package/dist/nodejs/mongo/index.d.ts +0 -1
  26. package/dist/nodejs/mongo/index.js +1 -1
  27. package/dist/nodejs/mongo/mongo.type.d.cts +0 -1
  28. package/dist/nodejs/mongo/mongo.type.d.ts +0 -1
  29. package/dist/nodejs/mongo/mongo.util.cjs +1 -1
  30. package/dist/nodejs/mongo/mongo.util.js +1 -1
  31. package/dist/nodejs/package/index.cjs +1 -1
  32. package/dist/nodejs/package/index.js +1 -1
  33. package/dist/nodejs/package/package.util.cjs +1 -1
  34. package/dist/nodejs/package/package.util.js +1 -1
  35. package/dist/nodejs/path/index.cjs +1 -1
  36. package/dist/nodejs/path/index.d.cts +2 -1
  37. package/dist/nodejs/path/index.d.ts +2 -1
  38. package/dist/nodejs/path/index.js +1 -1
  39. package/dist/nodejs/path/path.constant.cjs +1 -1
  40. package/dist/nodejs/path/path.constant.d.cts +2 -1
  41. package/dist/nodejs/path/path.constant.d.ts +2 -1
  42. package/dist/nodejs/path/path.constant.js +1 -1
  43. package/dist/react/index.cjs +1 -1
  44. package/dist/react/index.js +1 -1
  45. package/dist/react/vitest/index.cjs +1 -1
  46. package/dist/react/vitest/index.js +1 -1
  47. package/dist/react/vitest/vitest.unit.cjs +1 -1
  48. package/dist/react/vitest/vitest.unit.js +1 -1
  49. package/package.json +7 -8
@@ -1 +1 @@
1
- function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,i,a){try{var c=e[i](a);var s=c.value}catch(e){n(e);return}if(c.done){t(s)}else{Promise.resolve(s).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,i){var a=e.apply(t,r);function c(e){n(a,o,i,c,s,"next",e)}function s(e){n(a,o,i,c,s,"throw",e)}c(undefined)})}}function o(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 i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){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 s(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){o(e,t,n[t])})}return e}function u(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 l(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{u(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function f(e){return t(e)||a(e)||d(e)||c()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,o,i={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=c(0),a["throw"]=c(1),a["return"]=c(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(e){return function(t){return s([e,t])}}function s(c){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,c[0]&&(i=0)),i)try{if(n=1,r&&(o=c[0]&2?r["return"]:c[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;if(r=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:i.label++;return{value:c[1],done:false};case 5:i.label++;r=c[1];c=[0];continue;case 7:c=i.ops.pop();i.trys.pop();continue;default:if(!(o=i.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){i=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(c[0]===6&&i.label<o[1]){i.label=o[1];o=c;break}if(o&&i.label<o[2]){i.label=o[2];i.ops.push(c);break}if(o[2])i.ops.pop();i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e];r=0}finally{n=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var g=Object.defineProperty;var h=function(e,t){return g(e,"name",{value:t,configurable:!0})};import v from"node-fetch";var y=".cyberskill-storage";import b from"dotenv";import{bool as w,cleanEnv as E,str as _}from"envalid";import I from"node:os";import S from"node:path";import O from"node:process";b.config();function C(){var e={DEBUG:O.env.DEBUG||!1,CWD:O.env.CWD||O.cwd(),CYBERSKILL_STORAGE_DIRECTORY:O.env.CYBERSKILL_STORAGE_DIRECTORY||S.join(I.homedir(),y)};return E(e,{DEBUG:w(),CWD:_(),CYBERSKILL_STORAGE_DIRECTORY:_()})}h(C,"getEnv");var T=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as R}from"node:child_process";import P from"node:process";import*as D from"node:util";var G=function(e){return e.Error="error",e.Warning="warning",e}({});import N from"chalk";import k from"consola";import{GraphQLError as L}from"graphql";var j=C();j.DEBUG||(k.level=4);function A(e){var t=N[e];return typeof t=="function"?t:N.green}h(A,"chalkKeyword");var U={silent:k.silent,level:k.level,fatal:k.fatal,error:k.error,warn:k.warn,log:k.log,info:k.info,success:k.success,ready:k.ready,start:k.start,box:k.box,debug:k.debug,trace:k.trace,verbose:k.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){k.box(N.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,i=e.message;k.log("".concat(N.gray("File:")," ").concat(N.blue("".concat(t).concat(r?":".concat(r):"")))),o&&k.log(" ".concat(A(n)("Rule:")," ").concat(o)),k.log(" ".concat(A(n)("Message:")," ").concat(i))}),k.box(A(n)("".concat(e," : ").concat(t.length))),k.log(N.gray("─".repeat(40)))}};var x={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var M="MONGO_MIGRATE_OPTIONS";import{Collection as F,Db as K}from"mongodb";import{Document as B,Model as Y}from"mongoose";import{format as W}from"date-fns";import J from"migrate-mongo";import{Document as H}from"mongoose";import $ from"mongoose-aggregate-paginate-v2";import q from"mongoose-paginate-v2";import{v4 as Q}from"uuid";import V from"node-persist";var z=C();function X(){return Z.apply(this,arguments)}function Z(){Z=r(function(){var e;return m(this,function(t){switch(t.label){case 0:e=V.defaultInstance;if(e)return[3,2];return[4,V.init({dir:z.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return Z.apply(this,arguments)}h(X,"initNodePersist");var ee={get:function e(e){return r(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,X()];case 1:r.sent();return[4,V.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(U.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,X()];case 1:r.sent();return[4,V.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();U.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,X()];case 1:n.sent();return[4,V.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();U.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,X()];case 1:n.sent();return[4,V.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(U.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(U.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return m(this,function(t){try{return[2,"".concat(z.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(U.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};import et from"crypto-js";import en from"slugify";var er=en.default||en;var eo={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":p(e))=="object"?i(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var ei={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return W(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?ei.getDateTime():new Date;return{id:Q(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,o=t.post;n&&r&&e.pre(n,r),n&&o&&e.post(n,o)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:Q,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,o=r===void 0?[]:r,i=e.standalone,a=i===void 0?!1:i;var c=new t.Schema(n,{strict:!0});return o.forEach(function(e){var t=e.name,n=e.options,r=e.get;var o=c.virtual(t,n);r&&o.get(r)}),a||c.add(ei.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,o=e.pagination,i=o===void 0?!1:o,a=e.aggregate,c=a===void 0?!1:a,s=e.virtuals,u=s===void 0?[]:s,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var p=ei.createSchema({mongoose:t,schema:r,virtuals:u});return ei.applyPlugins(p,[i&&q,c&&$]),ei.applyMiddlewares(p,f),t.model(n,p)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return l(s({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=r(function(e){return m(this,function(t){return[2,!eo.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=r(function(t){var n;return m(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=r(function(t){return m(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!i(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:{withConfig:h(/*#__PURE__*/function(){var e=r(function(e,t){var n,r,o,i;return m(this,function(a){switch(a.label){case 0:return[4,ee.get(M)];case 1:n=a.sent();if(!n)throw new Error("Missing migrate config");if(J.config.set(n),!t)return[2,e(void 0)];return[4,J.database.connect()];case 2:r=a.sent(),o=r.db,i=r.client;a.label=3;case 3:a.trys.push([3,,5,7]);return[4,e({db:o,client:i})];case 4:return[2,a.sent()];case 5:return[4,i.close()];case 6:a.sent();return[7];case 7:return[2]}})});return function(t,n){return e.apply(this,arguments)}}(),"withConfig"),init:h(/*#__PURE__*/r(function(){return m(this,function(e){switch(e.label){case 0:return[4,J.init()];case 1:e.sent();return[2]}})}),"init"),create:h(/*#__PURE__*/function(){var e=r(function(e){return m(this,function(t){switch(t.label){case 0:return[4,ei.migrate.withConfig(function(){return J.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:h(/*#__PURE__*/r(function(){return m(this,function(e){switch(e.label){case 0:return[4,import("ts-node").then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,ei.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return m(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,J.up(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:h(/*#__PURE__*/r(function(){return m(this,function(e){switch(e.label){case 0:return[4,import("ts-node").then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,ei.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return m(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,J.down(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:h(/*#__PURE__*/r(function(){return m(this,function(e){switch(e.label){case 0:return[4,ei.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t;return m(this,function(n){switch(n.label){case 0:t=e.db;return[4,J.status(t)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:h(function(e){ee.set(M,e)},"config")}};import{join as ea,resolve as ec}from"node:path";var es=C();function eu(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return ec.apply(void 0,[es.CWD].concat(f(t)))}h(eu,"resolveWorkingPath");function el(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return ea.apply(void 0,f(t))}h(el,"join");var ef=C(),ep=ef.CWD,ed="@cyberskill/shared",em="node_modules",eg="dist",eh="package.json",ev="package-lock.json",ey="tsconfig.json",eb=".gitignore",ew=".simple-git-hooks.json",eE="pnpm-lock.yaml",e_=".git/hooks/",eI=".git/COMMIT_EDITMSG",eS=el(ep,em,ed,eg),eO="cyberskill",eC="src/nodejs/cli/index.ts",eT="eslint",eR="eslint",eP="vitest",eD="playwright",eG="vitest",eN="@commitlint/cli",ek="commitlint",eL="lint-staged",ej="lint-staged",eA="typescript",eU="tsc",ex="tsx",eM="git",eF="pnpm",eK="pnpm exec",eB="simple-git-hooks",eY="simple-git-hooks",eW="@eslint/config-inspector",eJ="eslint-config-inspector",eH="node-modules-inspector",e$="node-modules-inspector",eq="migrate-mongo";var eQ={CYBERSKILL_DIRECTORY:eS,WORKING_DIRECTORY:ep,TS_CONFIG:eu(ey),GIT_IGNORE:eu(eb),GIT_HOOK:eu(e_),GIT_COMMIT_MSG:eu(eI),SIMPLE_GIT_HOOKS_JSON:eu(ew),PACKAGE_JSON:eu(eh),PACKAGE_LOCK_JSON:eu(ev),PNPM_LOCK_YAML:eu(eE),NODE_MODULES:eu(em),LINT_STAGED_CONFIG:eu("".concat(eS,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eu("".concat(eS,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eu("".concat(eS,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eu("".concat(eS,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eu("".concat(eS,"/react/vitest/vitest.e2e.js"))};function eV(e,t,n){return ez.apply(this,arguments)}function ez(){ez=r(function(e,t,n){return m(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case T.CLI:return[3,1];case T.STRING:return[3,3];case T.FUNCTION:return[3,4]}return[3,6];case 1:return[4,tI(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),tt(e9("".concat(eK," ").concat(n))))];case 3:return[2,tt(e9(t))];case 4:return[4,tI(t.split(" "),{update:!0})];case 5:if(r.sent(),typeof n=="function")return[2,n()];throw new Error("'second' argument is not a callable function");case 6:throw new Error("Unsupported command type");case 7:return[2]}})});return ez.apply(this,arguments)}h(eV,"buildCommand");function eX(e,t,n){return /*#__PURE__*/r(function(){return m(this,function(r){return[2,eV(e,t,n)]})})}h(eX,"commandFactory");var eZ={simpleGitHooks:eX(T.CLI,eB,eY),eslintInspect:eX(T.CLI,eW,eJ),nodeModulesInspect:eX(T.CLI,eH,e$),eslintCheck:eX(T.CLI,eT,"".concat(eR," ").concat(eQ.WORKING_DIRECTORY)),eslintFix:eX(T.CLI,eT,"".concat(eR," ").concat(eQ.WORKING_DIRECTORY," --fix")),typescriptCheck:eX(T.CLI,eA,"".concat(eU," -p ").concat(eQ.TS_CONFIG," --noEmit")),configureGitHook:eX(T.STRING,"".concat(eM," config core.hooksPath ").concat(eQ.GIT_HOOK)),testUnit:eX(T.CLI,eP,"".concat(eG," --config ").concat(eQ.UNIT_TEST_CONFIG)),testE2e:eX(T.CLI,"".concat(eP," ").concat(eD),"".concat(eG," --config ").concat(eQ.E2E_TEST_CONFIG)),mongoMigrateCreate:h(function(e){return eX(T.FUNCTION,"".concat(eq),function(){return ei.migrate.create(e)})()},"mongoMigrateCreate"),mongoMigrateUp:eX(T.FUNCTION,"".concat(eq),ei.migrate.up),mongoMigrateDown:eX(T.FUNCTION,"".concat(eq),ei.migrate.down),commitLint:eX(T.CLI,eN,"".concat(ek," --edit ").concat(eQ.GIT_COMMIT_MSG," --config ").concat(eQ.COMMITLINT_CONFIG)),lintStaged:eX(T.CLI,eL,"".concat(ej," --config ").concat(eQ.LINT_STAGED_CONFIG)),stageBuildDirectory:eX(T.STRING,"".concat(eM," add ").concat(eg)),build:eX(T.STRING,"".concat(eF," run build")),pnpmInstallStandard:eX(T.STRING,"".concat(eF," install")),pnpmInstallLegacy:eX(T.STRING,"".concat(eF," install --legacy-peer-deps")),pnpmInstallForce:eX(T.STRING,"".concat(eF," install --force"))};var e0=C(),e1=D.promisify(R);function e2(e){return"error_list:".concat(e)}h(e2,"getErrorListKey");function e4(e){return e3.apply(this,arguments)}function e3(){e3=r(function(e){var t,n,o;return m(this,function(i){switch(i.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e2(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,ee.set(n,{errors:e,timestamp:t})];case 2:i.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,ee.getLogLink(n)];case 1:e=t.sent();e&&U.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=i.sent();U.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return e3.apply(this,arguments)}h(e4,"saveErrorListToStorage");function e5(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,i=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,s,u,l,f;var p=o.exec(e)||[],d=i.exec(e)||[],m=a.exec(e)||[];var g,h,v,y,b,w;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===G.Error?G.Error:G.Warning,message:(g=p===null||p===void 0?void 0:(c=p[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(h=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&h!==void 0?h:""}):d.length?t.push({file:(v=d===null||d===void 0?void 0:d[1])!==null&&v!==void 0?v:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===G.Error?G.Error:G.Warning,message:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:"commitlint",type:G.Error,message:(b=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&b!==void 0?b:"",rule:(w=m===null||m===void 0?void 0:(f=m[2])===null||f===void 0?void 0:f.trim())!==null&&w!==void 0?w:""}):n.push(e.trim())}}),t.length&&e4(t),e0.DEBUG&&n.length&&(U.warn("Unmatched lines:"),n.forEach(function(e){return U.info(" ".concat(e))}))}h(e5,"parseTextErrors");function e6(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,i=e.column,a=e.ruleId,c=e.message;n.push({type:r===2?G.Error:G.Warning,file:t,position:"".concat(o,":").concat(i),rule:a,message:c})})}),n.length&&e4(n)}catch(t){e5(e)}}h(e6,"parseCommandOutput");function e7(e){return e8.apply(this,arguments)}function e8(){e8=r(function(e){var t,n,r,o,i,a,c,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e6;n=new AbortController;P.on("SIGINT",function(){U.warn("Process interrupted. Terminating..."),n.abort(),P.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e1(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,i=r.stderr;[o,i].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:a=f.sent();c=a.stdout,s=a.stderr,u=a.message;[c,s].forEach(function(e){return e&&t(e)}),!s&&!c&&U.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return e8.apply(this,arguments)}h(e7,"executeCommand");function e9(e){return{raw:!0,cmd:e}}h(e9,"rawCommand");function te(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eK," ").concat(ed," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eK," ").concat(ex," ").concat(eC," ").concat(e):"".concat(eK," ").concat(eO," ").concat(e)}h(te,"formatCLI");function tt(e,t){return typeof e=="function"?te(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?te(e,t):e}h(tt,"formatCommand");function tn(e,t){return tr.apply(this,arguments)}function tr(){tr=r(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);U.start("".concat(e)),e0.DEBUG&&U.info("→ ".concat(t));return[4,e7(t)];case 1:r.sent(),U.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw U.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return tr.apply(this,arguments)}h(tn,"runCommand");import to from"fs-extra";var ti=to.readFileSync,ta=to.writeFileSync,tc=to.pathExistsSync,ts=to.appendFileSync,tu=to.copySync,tl=to.removeSync,tf=to.statSync,tp=to.readJsonSync,td=to.writeJsonSync;function tm(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return tc(e)})}h(tm,"existsSync");var tg=C();function th(e){var t=el(tg.CWD,eh);if(!tm(t))return!1;try{var n=tp(t),r=n.name,o=n.dependencies,i=o===void 0?{}:o,a=n.devDependencies,c=a===void 0?{}:a,s=r===e,u=e in i,l=e in c;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return U.warn("Failed to read package.json: ".concat(e.message)),!1}}h(th,"getPackage");function tv(e){return ty.apply(this,arguments)}function ty(){ty=r(function(e){var t,n,r,o;return m(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,v("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:o=i.sent();throw U.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return ty.apply(this,arguments)}h(tv,"getLatestPackageVersion");function tb(e,t){return tw.apply(this,arguments)}function tw(){tw=r(function(e,t){var n,r,o,i,a,c,u,l,f,p,d,g,h,v,y,b,w,E,_,I,S;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=th(e);if(!n)return[2,s({},x)];u=n.path,l=n.file,f=n.isCurrentProject,p=n.isDepend,d=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},h=(o=l.devDependencies)!==null&&o!==void 0?o:{},v=f?(i=l.version)!==null&&i!==void 0?i:"0.0.0":p?(a=g[e])!==null&&a!==void 0?a:"0.0.0":d?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];w=v;return[3,3];case 1:return[4,tv(e)];case 2:w=m.sent();m.label=3;case 3:y=w,b=f||v===y;if(!b&&(t===null||t===void 0?void 0:t.update)){;_=p?"dependencies":d?"devDependencies":null;_&&((E=l[_])===null||E===void 0?void 0:E[e])!==y&&(l[_]=(I=l[_])!==null&&I!==void 0?I:{},l[_][e]=y,td(u,l),U.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:f,installedPath:u,file:l,isUpToDate:b}];case 4:S=m.sent();return[2,(U.error('Error checking package "'.concat(e,'": ').concat(S.message)),s({},x))];case 5:return[2]}})});return tw.apply(this,arguments)}h(tb,"checkPackage");function tE(){return t_.apply(this,arguments)}function t_(){t_=r(function(){var e,t,n,r,o,i,a,c,s,u,l,f;return m(this,function(p){switch(p.label){case 0:e=[{command:h(function(){return eZ.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return eZ.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return eZ.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);o=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(i=o.next()).done))return[3,8];a=i.value,c=a.command,s=a.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,c()];case 4:u=p.sent();return[4,tn("".concat(s," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();U.warn("Installation attempt failed: ".concat(s)),U.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=p.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return t_.apply(this,arguments)}h(tE,"installDependencies");function tI(e,t){return tS.apply(this,arguments)}function tS(){tS=r(function(e,t){var n,r,o,i,a,c,u,l,p,d,g;return m(this,function(m){switch(m.label){case 0:if(!tm(eQ.PACKAGE_JSON)){U.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,13,,14]);n=f(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return tb(e,s({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=m.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,tE()];case 3:r=m.sent();m.label=4;case 4:r;i=true,a=false,c=undefined;m.label=5;case 5:m.trys.push([5,10,11,12]);u=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=6;case 6:if(!!(i=(l=u.next()).done))return[3,9];p=l.value;return[4,p()];case 7:m.sent();m.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:d=m.sent();a=true;c=d;return[3,12];case 11:try{if(!i&&u.return!=null){u.return()}}finally{if(a){throw c}}return[7];case 12:return[3,14];case 13:g=m.sent();throw U.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return tS.apply(this,arguments)}h(tI,"setupPackages");export{tb as checkPackage,tv as getLatestPackageVersion,th as getPackage,tE as installDependencies,tI as setupPackages};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,c){try{var i=e[a](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var c=e.apply(t,r);function i(e){n(c,o,a,i,s,"next",e)}function s(e){n(c,o,a,i,s,"throw",e)}i(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){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 i(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){o(e,t,n[t])})}return e}function s(e){return t(e)||a(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(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 f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(a=0)),a)try{if(n=1,r&&(o=i[0]&2?r["return"]:i[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;if(r=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:a.label++;return{value:i[1],done:false};case 5:a.label++;r=i[1];i=[0];continue;case 7:i=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){a=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(i[0]===6&&a.label<o[1]){a.label=o[1];o=i;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(i);break}if(o[2])a.ops.pop();a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e];r=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.defineProperty;var d=function(e,t){return p(e,"name",{value:t,configurable:!0})};import g from"node-fetch";var m=".cyberskill-storage";import v from"dotenv";import{bool as h,cleanEnv as y,str as I}from"envalid";import b from"node:os";import E from"node:path";import C from"node:process";v.config();function O(){var e={DEBUG:C.env.DEBUG||!1,CWD:C.env.CWD||C.cwd(),CYBERSKILL_STORAGE_DIRECTORY:C.env.CYBERSKILL_STORAGE_DIRECTORY||E.join(b.homedir(),m)};return y(e,{DEBUG:h(),CWD:I(),CYBERSKILL_STORAGE_DIRECTORY:I()})}d(O,"getEnv");var S=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as T}from"node:child_process";import w from"node:process";import*as _ from"node:util";var G=function(e){return e.Error="error",e.Warning="warning",e}({});import N from"chalk";import L from"consola";import{GraphQLError as k}from"graphql";var R=O();R.DEBUG||(L.level=4);function D(e){var t=N[e];return typeof t=="function"?t:N.green}d(D,"chalkKeyword");var P={silent:L.silent,level:L.level,fatal:L.fatal,error:L.error,warn:L.warn,log:L.log,info:L.info,success:L.success,ready:L.ready,start:L.start,box:L.box,debug:L.debug,trace:L.trace,verbose:L.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)){L.box(N.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;L.log("".concat(N.gray("File:")," ").concat(N.blue("".concat(t).concat(r?":".concat(r):"")))),o&&L.log(" ".concat(D(n)("Rule:")," ").concat(o)),L.log(" ".concat(D(n)("Message:")," ").concat(a))}),L.box(D(n)("".concat(e," : ").concat(t.length))),L.log(N.gray("─".repeat(40)))}};var j={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import{join as A,resolve as M}from"node:path";var F=O();function x(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return M.apply(void 0,[F.CWD].concat(s(t)))}d(x,"resolveWorkingPath");function U(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return A.apply(void 0,s(t))}d(U,"join");var K=O(),Y=K.CWD,B="@cyberskill/shared",W="node_modules",J="dist",H="package.json",$="package-lock.json",V="tsconfig.json",q=".gitignore",Q=".simple-git-hooks.json",z="pnpm-lock.yaml",X=".git/hooks/",Z=".git/COMMIT_EDITMSG",ee=".migrate-mongo.config.js",et=U(Y,W,B,J),en="cyberskill",er="src/nodejs/cli/index.ts",eo="eslint",ea="eslint",ec="vitest",ei="playwright",es="vitest",eu="@commitlint/cli",el="commitlint",ef="lint-staged",ep="lint-staged",ed="typescript",eg="tsc",em="tsx",ev="git",eh="pnpm",ey="pnpm exec",eI="simple-git-hooks",eb="simple-git-hooks",eE="@eslint/config-inspector",eC="eslint-config-inspector",eO="node-modules-inspector",eS="node-modules-inspector",eT="migrate-mongo",ew="./node_modules/migrate-mongo/bin/migrate-mongo",e_={CYBERSKILL_DIRECTORY:et,WORKING_DIRECTORY:Y,TS_CONFIG:x(V),GIT_IGNORE:x(q),GIT_HOOK:x(X),GIT_COMMIT_MSG:x(Z),SIMPLE_GIT_HOOKS_JSON:x(Q),PACKAGE_JSON:x(H),PACKAGE_LOCK_JSON:x($),PNPM_LOCK_YAML:x(z),NODE_MODULES:x(W),MIGRATE_MONGO_CONFIG:x(ee),LINT_STAGED_CONFIG:x("".concat(et,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:x("".concat(et,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:x("".concat(et,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:x("".concat(et,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:x("".concat(et,"/react/vitest/vitest.e2e.js"))};function eG(e,t,n){return eN.apply(this,arguments)}function eN(){eN=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case S.CLI:return[3,1];case S.STRING:return[3,3]}return[3,4];case 1:return[4,tc(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eV(eH("".concat(ey," ").concat(n))))];case 3:return[2,eV(eH(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eN.apply(this,arguments)}d(eG,"buildCommand");function eL(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,eG(e,t,n)]})})}d(eL,"commandFactory");var ek={simpleGitHooks:eL(S.CLI,eI,eb),eslintInspect:eL(S.CLI,eE,eC),nodeModulesInspect:eL(S.CLI,eO,eS),eslintCheck:eL(S.CLI,eo,"".concat(ea," ").concat(e_.WORKING_DIRECTORY)),eslintFix:eL(S.CLI,eo,"".concat(ea," ").concat(e_.WORKING_DIRECTORY," --fix")),typescriptCheck:eL(S.CLI,ed,"".concat(eg," -p ").concat(e_.TS_CONFIG," --noEmit")),configureGitHook:eL(S.STRING,"".concat(ev," config core.hooksPath ").concat(e_.GIT_HOOK)),testUnit:eL(S.CLI,ec,"".concat(es," --config ").concat(e_.UNIT_TEST_CONFIG)),testE2e:eL(S.CLI,"".concat(ec," ").concat(ei),"".concat(es," --config ").concat(e_.E2E_TEST_CONFIG)),mongoMigrateCreate:d(function(e){return eL(S.CLI,eT,"".concat(em," ").concat(ew," create ").concat(e," -f ").concat(e_.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:eL(S.CLI,eT,"".concat(em," ").concat(ew," up -f ").concat(e_.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:eL(S.CLI,eT,"".concat(em," ").concat(ew," down -f ").concat(e_.MIGRATE_MONGO_CONFIG)),mongoMigrateStatus:eL(S.CLI,eT,"".concat(em," ").concat(ew," status -f ").concat(e_.MIGRATE_MONGO_CONFIG)),commitLint:eL(S.CLI,eu,"".concat(el," --edit ").concat(e_.GIT_COMMIT_MSG," --config ").concat(e_.COMMITLINT_CONFIG)),lintStaged:eL(S.CLI,ef,"".concat(ep," --config ").concat(e_.LINT_STAGED_CONFIG)),stageBuildDirectory:eL(S.STRING,"".concat(ev," add ").concat(J)),build:eL(S.STRING,"".concat(eh," run build")),pnpmInstallStandard:eL(S.STRING,"".concat(eh," install")),pnpmInstallLegacy:eL(S.STRING,"".concat(eh," install --legacy-peer-deps")),pnpmInstallForce:eL(S.STRING,"".concat(eh," install --force"))};import eR from"node-persist";var eD=O();function eP(){return ej.apply(this,arguments)}function ej(){ej=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=eR.defaultInstance;if(e)return[3,2];return[4,eR.init({dir:eD.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return ej.apply(this,arguments)}d(eP,"initNodePersist");var eA={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eP()];case 1:r.sent();return[4,eR.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 r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eP()];case 1:r.sent();return[4,eR.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 r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eP()];case 1:n.sent();return[4,eR.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 r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eP()];case 1:n.sent();return[4,eR.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 r(function(){return f(this,function(t){try{return[2,"".concat(eD.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(P.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eM=O(),eF=_.promisify(T);function ex(e){return"error_list:".concat(e)}d(ex,"getErrorListKey");function eU(e){return eK.apply(this,arguments)}function eK(){eK=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=ex(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eA.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eA.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:o=a.sent();P.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return eK.apply(this,arguments)}d(eU,"saveErrorListToStorage");function eY(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var p=o.exec(e)||[],d=a.exec(e)||[],g=c.exec(e)||[];var m,v,h,y,I,b;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===G.Error?G.Error:G.Warning,message:(m=p===null||p===void 0?void 0:(i=p[4])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:"",rule:(v=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&v!==void 0?v:""}):d.length?t.push({file:(h=d===null||d===void 0?void 0:d[1])!==null&&h!==void 0?h:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===G.Error?G.Error:G.Warning,message:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):g.length?t.push({file:"commitlint",type:G.Error,message:(I=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",rule:(b=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&b!==void 0?b:""}):n.push(e.trim())}}),t.length&&eU(t),eM.DEBUG&&n.length&&(P.warn("Unmatched lines:"),n.forEach(function(e){return P.info(" ".concat(e))}))}d(eY,"parseTextErrors");function eB(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?G.Error:G.Warning,file:t,position:"".concat(o,":").concat(a),rule:c,message:i})})}),n.length&&eU(n)}catch(t){eY(e)}}d(eB,"parseCommandOutput");function eW(e){return eJ.apply(this,arguments)}function eJ(){eJ=r(function(e){var t,n,r,o,a,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eB;n=new AbortController;w.on("SIGINT",function(){P.warn("Process interrupted. Terminating..."),n.abort(),w.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eF(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&P.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eJ.apply(this,arguments)}d(eW,"executeCommand");function eH(e){return{raw:!0,cmd:e}}d(eH,"rawCommand");function e$(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(ey," ").concat(B," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(ey," ").concat(em," ").concat(er," ").concat(e):"".concat(ey," ").concat(en," ").concat(e)}d(e$,"formatCLI");function eV(e,t){return typeof e=="function"?e$(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e$(e,t):e}d(eV,"formatCommand");function eq(e,t){return eQ.apply(this,arguments)}function eQ(){eQ=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);P.start("".concat(e)),eM.DEBUG&&P.info("→ ".concat(t));return[4,eW(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 eQ.apply(this,arguments)}d(eq,"runCommand");import ez from"fs-extra";var eX=ez.readFileSync,eZ=ez.writeFileSync,e0=ez.pathExistsSync,e1=ez.appendFileSync,e2=ez.copySync,e3=ez.removeSync,e4=ez.statSync,e5=ez.readJsonSync,e6=ez.writeJsonSync;function e7(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return e0(e)})}d(e7,"existsSync");var e8=O();function e9(e){var t=U(e8.CWD,H);if(!e7(t))return!1;try{var n=e5(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in a,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return P.warn("Failed to read package.json: ".concat(e.message)),!1}}d(e9,"getPackage");function te(e){return tt.apply(this,arguments)}function tt(){tt=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,g("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw P.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return tt.apply(this,arguments)}d(te,"getLatestPackageVersion");function tn(e,t){return tr.apply(this,arguments)}function tr(){tr=r(function(e,t){var n,r,o,a,c,s,u,l,p,d,g,m,v,h,y,I,b,E,C,O,S;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=e9(e);if(!n)return[2,i({},j)];u=n.path,l=n.file,p=n.isCurrentProject,d=n.isDepend,g=n.isDevDepend,m=(r=l.dependencies)!==null&&r!==void 0?r:{},v=(o=l.devDependencies)!==null&&o!==void 0?o:{},h=p?(a=l.version)!==null&&a!==void 0?a:"0.0.0":d?(c=m[e])!==null&&c!==void 0?c:"0.0.0":g?(s=v[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!p)return[3,1];b=h;return[3,3];case 1:return[4,te(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=p||h===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;C=d?"dependencies":g?"devDependencies":null;C&&((E=l[C])===null||E===void 0?void 0:E[e])!==y&&(l[C]=(O=l[C])!==null&&O!==void 0?O:{},l[C][e]=y,e6(u,l),P.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:p,installedPath:u,file:l,isUpToDate:I}];case 4:S=f.sent();return[2,(P.error('Error checking package "'.concat(e,'": ').concat(S.message)),i({},j))];case 5:return[2]}})});return tr.apply(this,arguments)}d(tn,"checkPackage");function to(){return ta.apply(this,arguments)}function ta(){ta=r(function(){var e,t,n,r,o,a,c,i,s,u,l,p;return f(this,function(f){switch(f.label){case 0:e=[{command:d(function(){return ek.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:d(function(){return ek.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:d(function(){return ek.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,eq("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();P.warn("Installation attempt failed: ".concat(s)),P.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:p=f.sent();n=true;r=p;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ta.apply(this,arguments)}d(to,"installDependencies");function tc(e,t){return ti.apply(this,arguments)}function ti(){ti=r(function(e,t){var n,r,o,a,c,u,l,p,d,g,m;return f(this,function(f){switch(f.label){case 0:if(!e7(e_.PACKAGE_JSON)){P.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return tn(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,to()];case 3:r=f.sent();f.label=4;case 4:r;a=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(p=l.next()).done))return[3,9];d=p.value;return[4,d()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:g=f.sent();c=true;u=g;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:m=f.sent();throw P.error('Failed to setup "'.concat(e.join(", "),'": ').concat(m.message)),m;case 14:return[2]}})});return ti.apply(this,arguments)}d(tc,"setupPackages");export{tn as checkPackage,te as getLatestPackageVersion,e9 as getPackage,to as installDependencies,tc as setupPackages};
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,i,a){try{var u=e[i](a);var c=u.value}catch(e){n(e);return}if(u.done){t(c)}else{Promise.resolve(c).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,i){var a=e.apply(t,r);function u(e){n(a,o,i,u,c,"next",e)}function c(e){n(a,o,i,u,c,"throw",e)}u(undefined)})}}function o(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 i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function a(e){if(typeof WeakMap!=="function")return null;var t=new WeakMap;var n=new WeakMap;return(a=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule){return e}if(e===null||typeof e!=="object"&&typeof e!=="function"){return{default:e}}var n=a(t);if(n&&n.has(e)){return n.get(e)}var r={__proto__:null};var o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e){if(i!=="default"&&Object.prototype.hasOwnProperty.call(e,i)){var u=o?Object.getOwnPropertyDescriptor(e,i):null;if(u&&(u.get||u.set)){Object.defineProperty(r,i,u)}else{r[i]=e[i]}}}r.default=e;if(n){n.set(e,r)}return r}function c(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function s(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(e){for(var t=1;t<arguments.length;t++){var 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){o(e,t,n[t])})}return e}function f(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 d(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{f(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function _(e){return t(e)||c(e)||E(e)||s()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function E(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 I(e,t){var n,r,o,i={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=u(0),a["throw"]=u(1),a["return"]=u(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function u(e){return function(t){return c([e,t])}}function c(u){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,u[0]&&(i=0)),i)try{if(n=1,r&&(o=u[0]&2?r["return"]:u[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;if(r=0,o)u=[u[0]&2,o.value];switch(u[0]){case 0:case 1:o=u;break;case 4:i.label++;return{value:u[1],done:false};case 5:i.label++;r=u[1];u=[0];continue;case 7:u=i.ops.pop();i.trys.pop();continue;default:if(!(o=i.trys,o=o.length>0&&o[o.length-1])&&(u[0]===6||u[0]===2)){i=0;continue}if(u[0]===3&&(!o||u[1]>o[0]&&u[1]<o[3])){i.label=u[1];break}if(u[0]===6&&i.label<o[1]){i.label=o[1];o=u;break}if(o&&i.label<o[2]){i.label=o[2];i.ops.push(u);break}if(o[2])i.ops.pop();i.trys.pop();continue}u=t.call(e,i)}catch(e){u=[6,e];r=0}finally{n=o=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}}var v=Object.create;var g=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var C=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var O=function(e,t){return g(e,"name",{value:t,configurable:!0})};var T=function(e,t){for(var n in t)g(e,n,{get:t[n],enumerable:!0})},S=function(e,t,n,r){var o=true,i=false,a=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var u=function(){var o=s.value;!m.call(e,o)&&o!==n&&g(e,o,{get:function(){return t[o]},enumerable:!(r=h(t,o))||r.enumerable})};for(var c=y(t)[Symbol.iterator](),s;!(o=(s=c.next()).done);o=true)u()}catch(e){i=true;a=e}finally{try{if(!o&&c.return!=null){c.return()}}finally{if(i){throw a}}}return e};var A=function(e,t,n){return n=e!=null?v(C(e)):{},S(t||!e||!e.__esModule?g(n,"default",{value:e,enumerable:!0}):n,e)},L=function(e){return S(g({},"__esModule",{value:!0}),e)};var N={};T(N,{BUILD_DIRECTORY:function(){return e6},COMMIT_LINT_CLI:function(){return tp},COMMIT_LINT_PACKAGE_NAME:function(){return t_},CYBERSKILL_CLI:function(){return ta},CYBERSKILL_CLI_PATH:function(){return tu},CYBERSKILL_DIRECTORY:function(){return ti},CYBERSKILL_PACKAGE_NAME:function(){return e3},ESLINT_CLI:function(){return ts},ESLINT_INSPECT_CLI:function(){return tA},ESLINT_INSPECT_PACKAGE_NAME:function(){return tS},ESLINT_PACKAGE_NAME:function(){return tc},GIT_CLI:function(){return ty},GIT_COMMIT_EDITMSG:function(){return to},GIT_HOOK:function(){return tr},GIT_IGNORE:function(){return te},HOOK:function(){return tM},LINT_STAGED_CLI:function(){return tI},LINT_STAGED_PACKAGE_NAME:function(){return tE},MIGRATE_MONGO_CLI:function(){return tG},MIGRATE_MONGO_PACKAGE_NAME:function(){return tP},NODE_MODULES:function(){return e5},NODE_MODULES_INSPECT_CLI:function(){return tN},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return tL},PACKAGE_JSON:function(){return e7},PACKAGE_LOCK_JSON:function(){return e8},PATH:function(){return tb},PLAYWRIGHT_PACKAGE_NAME:function(){return tf},PNPM_CLI:function(){return tC},PNPM_EXEC_CLI:function(){return tm},PNPM_LOCK_YAML:function(){return tn},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return tO},SIMPLE_GIT_HOOK_CLI:function(){return tT},SIMPLE_GIT_HOOK_JSON:function(){return tt},TSCONFIG_JSON:function(){return e9},TSC_CLI:function(){return tg},TSC_PACKAGE_NAME:function(){return tv},TSX_CLI:function(){return th},VITEST_CLI:function(){return td},VITEST_PACKAGE_NAME:function(){return tl},WORKING_DIRECTORY:function(){return e4},command:function(){return tK},join:function(){return e1},resolve:function(){return e0},resolveWorkingPath:function(){return eZ}});module.exports=L(N);var P=".cyberskill-storage";var G=A(require("dotenv"),1),b=require("envalid"),M=A(require("os"),1),w=A(require("path"),1),R=A(require("process"),1);G.default.config();function D(){var e={DEBUG:R.default.env.DEBUG||!1,CWD:R.default.env.CWD||R.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:R.default.env.CYBERSKILL_STORAGE_DIRECTORY||w.default.join(M.default.homedir(),P)};return(0,b.cleanEnv)(e,{DEBUG:(0,b.bool)(),CWD:(0,b.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,b.str)()})}O(D,"getEnv");var K="MONGO_MIGRATE_OPTIONS";var j=require("mongodb"),k=require("mongoose");var U=require("date-fns"),Y=A(require("migrate-mongo"),1),x=require("mongoose"),F=A(require("mongoose-aggregate-paginate-v2"),1),q=A(require("mongoose-paginate-v2"),1),H=require("uuid");var B=A(require("node-persist"),1);var W=function(e){return e.Error="error",e.Warning="warning",e}({});var J=A(require("chalk"),1),V=A(require("consola"),1),$=require("graphql");var X=D();X.DEBUG||(V.default.level=4);function Q(e){var t=J.default[e];return typeof t=="function"?t:J.default.green}O(Q,"chalkKeyword");var z={silent:V.default.silent,level:V.default.level,fatal:V.default.fatal,error:V.default.error,warn:V.default.warn,log:V.default.log,info:V.default.info,success:V.default.success,ready:V.default.ready,start:V.default.start,box:V.default.box,debug:V.default.debug,trace:V.default.trace,verbose:V.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)){V.default.box(J.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,i=e.message;V.default.log("".concat(J.default.gray("File:")," ").concat(J.default.blue("".concat(t).concat(r?":".concat(r):"")))),o&&V.default.log(" ".concat(Q(n)("Rule:")," ").concat(o)),V.default.log(" ".concat(Q(n)("Message:")," ").concat(i))}),V.default.box(Q(n)("".concat(e," : ").concat(t.length))),V.default.log(J.default.gray("─".repeat(40)))}};var Z=D();function ee(){return et.apply(this,arguments)}function et(){et=r(function(){var e;return I(this,function(t){switch(t.label){case 0:e=B.default.defaultInstance;if(e)return[3,2];return[4,B.default.init({dir:Z.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return et.apply(this,arguments)}O(ee,"initNodePersist");var en={get:function e(e){return r(function(){var t,n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ee()];case 1:r.sent();return[4,B.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(z.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ee()];case 1:r.sent();return[4,B.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();z.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return I(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ee()];case 1:n.sent();return[4,B.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();z.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return I(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ee()];case 1:n.sent();return[4,B.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(z.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(z.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return I(this,function(t){try{return[2,"".concat(Z.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(z.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var er=A(require("crypto-js"),1),eo=A(require("slugify"),1);var ei=eo.default.default||eo.default;var ea={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":p(e))=="object"?i(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var eu={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,U.format)(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?eu.getDateTime():new Date;return{id:(0,H.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,o=t.post;n&&r&&e.pre(n,r),n&&o&&e.post(n,o)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:H.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,o=r===void 0?[]:r,i=e.standalone,a=i===void 0?!1:i;var u=new t.Schema(n,{strict:!0});return o.forEach(function(e){var t=e.name,n=e.options,r=e.get;var o=u.virtual(t,n);r&&o.get(r)}),a||u.add(eu.createGenericSchema(t)),u},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,o=e.pagination,i=o===void 0?!1:o,a=e.aggregate,u=a===void 0?!1:a,c=e.virtuals,s=c===void 0?[]:c,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=eu.createSchema({mongoose:t,schema:r,virtuals:s});return eu.applyPlugins(d,[i&&q.default,u&&F.default]),eu.applyMiddlewares(d,f),t.model(n,d)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return d(l({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=r(function(e){return I(this,function(t){return[2,!ea.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=r(function(t){var n;return I(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=r(function(t){return I(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!i(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:{withConfig:O(/*#__PURE__*/function(){var e=r(function(e,t){var n,r,o,i;return I(this,function(a){switch(a.label){case 0:return[4,en.get(K)];case 1:n=a.sent();if(!n)throw new Error("Missing migrate config");if(Y.default.config.set(n),!t)return[2,e(void 0)];return[4,Y.default.database.connect()];case 2:r=a.sent(),o=r.db,i=r.client;a.label=3;case 3:a.trys.push([3,,5,7]);return[4,e({db:o,client:i})];case 4:return[2,a.sent()];case 5:return[4,i.close()];case 6:a.sent();return[7];case 7:return[2]}})});return function(t,n){return e.apply(this,arguments)}}(),"withConfig"),init:O(/*#__PURE__*/r(function(){return I(this,function(e){switch(e.label){case 0:return[4,Y.default.init()];case 1:e.sent();return[2]}})}),"init"),create:O(/*#__PURE__*/function(){var e=r(function(e){return I(this,function(t){switch(t.label){case 0:return[4,eu.migrate.withConfig(function(){return Y.default.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:O(/*#__PURE__*/r(function(){return I(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/u(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,eu.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return I(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,Y.default.up(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:O(/*#__PURE__*/r(function(){return I(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/u(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,eu.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return I(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,Y.default.down(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:O(/*#__PURE__*/r(function(){return I(this,function(e){switch(e.label){case 0:return[4,eu.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t;return I(this,function(n){switch(n.label){case 0:t=e.db;return[4,Y.default.status(t)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:O(function(e){en.set(K,e)},"config")}};var ec=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var es=require("child_process"),el=A(require("process"),1),ef=A(require("util"),1);var ed={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var e_=A(require("node-fetch"),1);var ep=A(require("fs-extra"),1),eE=require("path");var eI=ep.default,ev=eI.readFileSync,eg=eI.writeFileSync,eh=eI.pathExistsSync,ey=eI.appendFileSync,eC=eI.copySync,em=eI.removeSync,eO=eI.statSync,eT=ep.default.readJsonSync,eS=ep.default.writeJsonSync;function eA(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eh(e)})}O(eA,"existsSync");var eL=D();function eN(e){var t=e1(eL.CWD,e7);if(!eA(t))return!1;try{var n=eT(t),r=n.name,o=n.dependencies,i=o===void 0?{}:o,a=n.devDependencies,u=a===void 0?{}:a,c=r===e,s=e in i,l=e in u;return c||s||l?{path:t,file:n,isCurrentProject:c,isDepend:s,isDevDepend:l}:!1}catch(e){return z.warn("Failed to read package.json: ".concat(e.message)),!1}}O(eN,"getPackage");function eP(e){return eG.apply(this,arguments)}function eG(){eG=r(function(e){var t,n,r,o;return I(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,(0,e_.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=i.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=i.sent(),r=n.version;return[2,r];case 3:o=i.sent();throw z.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return eG.apply(this,arguments)}O(eP,"getLatestPackageVersion");function eb(e,t){return eM.apply(this,arguments)}function eM(){eM=r(function(e,t){var n,r,o,i,a,u,c,s,f,d,_,p,E,v,g,h,y,C,m,O,T;return I(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=eN(e);if(!n)return[2,l({},ed)];c=n.path,s=n.file,f=n.isCurrentProject,d=n.isDepend,_=n.isDevDepend,p=(r=s.dependencies)!==null&&r!==void 0?r:{},E=(o=s.devDependencies)!==null&&o!==void 0?o:{},v=f?(i=s.version)!==null&&i!==void 0?i:"0.0.0":d?(a=p[e])!==null&&a!==void 0?a:"0.0.0":_?(u=E[e])!==null&&u!==void 0?u:"0.0.0":"0.0.0";if(!f)return[3,1];y=v;return[3,3];case 1:return[4,eP(e)];case 2:y=I.sent();I.label=3;case 3:g=y,h=f||v===g;if(!h&&(t===null||t===void 0?void 0:t.update)){;m=d?"dependencies":_?"devDependencies":null;m&&((C=s[m])===null||C===void 0?void 0:C[e])!==g&&(s[m]=(O=s[m])!==null&&O!==void 0?O:{},s[m][e]=g,eS(c,s),z.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:f,installedPath:c,file:s,isUpToDate:h}];case 4:T=I.sent();return[2,(z.error('Error checking package "'.concat(e,'": ').concat(T.message)),l({},ed))];case 5:return[2]}})});return eM.apply(this,arguments)}O(eb,"checkPackage");function ew(){return eR.apply(this,arguments)}function eR(){eR=r(function(){var e,t,n,r,o,i,a,u,c,s,l,f;return I(this,function(d){switch(d.label){case 0:e=[{command:O(function(){return tK.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:O(function(){return tK.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:O(function(){return tK.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);o=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(i=o.next()).done))return[3,8];a=i.value,u=a.command,c=a.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,u()];case 4:s=d.sent();return[4,e$("".concat(c," using: ").concat(s),s)];case 5:d.sent();return[2];case 6:l=d.sent();z.warn("Installation attempt failed: ".concat(c)),z.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eR.apply(this,arguments)}O(ew,"installDependencies");function eD(e,t){return eK.apply(this,arguments)}function eK(){eK=r(function(e,t){var n,r,o,i,a,u,c,s,f,d,p;return I(this,function(E){switch(E.label){case 0:if(!eA(tb.PACKAGE_JSON)){z.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=_(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eb(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ew()];case 3:r=E.sent();E.label=4;case 4:r;i=true,a=false,u=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);c=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();E.label=6;case 6:if(!!(i=(s=c.next()).done))return[3,9];f=s.value;return[4,f()];case 7:E.sent();E.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:d=E.sent();a=true;u=d;return[3,12];case 11:try{if(!i&&c.return!=null){c.return()}}finally{if(a){throw u}}return[7];case 12:return[3,14];case 13:p=E.sent();throw z.error('Failed to setup "'.concat(e.join(", "),'": ').concat(p.message)),p;case 14:return[2]}})});return eK.apply(this,arguments)}O(eD,"setupPackages");var ej=D(),ek=ef.promisify(es.exec);function eU(e){return"error_list:".concat(e)}O(eU,"getErrorListKey");function eY(e){return ex.apply(this,arguments)}function ex(){ex=r(function(e){var t,n,o;return I(this,function(i){switch(i.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eU(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,en.set(n,{errors:e,timestamp:t})];case 2:i.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return I(this,function(t){switch(t.label){case 0:return[4,en.getLogLink(n)];case 1:e=t.sent();e&&z.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=i.sent();z.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return ex.apply(this,arguments)}O(eY,"saveErrorListToStorage");function eF(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,i=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var u,c,s,l,f;var d=o.exec(e)||[],_=i.exec(e)||[],p=a.exec(e)||[];var E,I,v,g,h,y;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===W.Error?W.Error:W.Warning,message:(E=d===null||d===void 0?void 0:(u=d[4])===null||u===void 0?void 0:u.trim())!==null&&E!==void 0?E:"",rule:(I=d===null||d===void 0?void 0:(c=d[5])===null||c===void 0?void 0:c.trim())!==null&&I!==void 0?I:""}):_.length?t.push({file:(v=_===null||_===void 0?void 0:_[1])!==null&&v!==void 0?v:"",position:"".concat(_[2],":").concat(_[3]),type:_[4]===W.Error?W.Error:W.Warning,message:(g=_===null||_===void 0?void 0:(s=_[5])===null||s===void 0?void 0:s.trim())!==null&&g!==void 0?g:""}):p.length?t.push({file:"commitlint",type:W.Error,message:(h=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&h!==void 0?h:"",rule:(y=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&y!==void 0?y:""}):n.push(e.trim())}}),t.length&&eY(t),ej.DEBUG&&n.length&&(z.warn("Unmatched lines:"),n.forEach(function(e){return z.info(" ".concat(e))}))}O(eF,"parseTextErrors");function eq(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,i=e.column,a=e.ruleId,u=e.message;n.push({type:r===2?W.Error:W.Warning,file:t,position:"".concat(o,":").concat(i),rule:a,message:u})})}),n.length&&eY(n)}catch(t){eF(e)}}O(eq,"parseCommandOutput");function eH(e){return eB.apply(this,arguments)}function eB(){eB=r(function(e){var t,n,r,o,i,a,u,c,s;var l=arguments;return I(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eq;n=new AbortController;el.default.on("SIGINT",function(){z.warn("Process interrupted. Terminating..."),n.abort(),el.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,ek(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,i=r.stderr;[o,i].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:a=f.sent();u=a.stdout,c=a.stderr,s=a.message;[u,c].forEach(function(e){return e&&t(e)}),!c&&!u&&z.error("Command failed: ".concat(s));return[3,5];case 5:return[2]}})});return eB.apply(this,arguments)}O(eH,"executeCommand");function eW(e){return{raw:!0,cmd:e}}O(eW,"rawCommand");function eJ(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tm," ").concat(e3," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tm," ").concat(th," ").concat(tu," ").concat(e):"".concat(tm," ").concat(ta," ").concat(e)}O(eJ,"formatCLI");function eV(e,t){return typeof e=="function"?eJ(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eJ(e,t):e}O(eV,"formatCommand");function e$(e,t){return eX.apply(this,arguments)}function eX(){eX=r(function(e,t){var n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);z.start("".concat(e)),ej.DEBUG&&z.info("→ ".concat(t));return[4,eH(t)];case 1:r.sent(),z.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw z.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eX.apply(this,arguments)}O(e$,"runCommand");var eQ=require("path");var ez=D();function eZ(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eQ.resolve).apply(this,[ez.CWD].concat(_(t)))}O(eZ,"resolveWorkingPath");function e0(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eQ.resolve).apply(this,_(t))}O(e0,"resolve");function e1(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eQ.join).apply(this,_(t))}O(e1,"join");var e2=D(),e4=e2.CWD,e3="@cyberskill/shared",e5="node_modules",e6="dist",e7="package.json",e8="package-lock.json",e9="tsconfig.json",te=".gitignore",tt=".simple-git-hooks.json",tn="pnpm-lock.yaml",tr=".git/hooks/",to=".git/COMMIT_EDITMSG",ti=e1(e4,e5,e3,e6),ta="cyberskill",tu="src/nodejs/cli/index.ts",tc="eslint",ts="eslint",tl="vitest",tf="playwright",td="vitest",t_="@commitlint/cli",tp="commitlint",tE="lint-staged",tI="lint-staged",tv="typescript",tg="tsc",th="tsx",ty="git",tC="pnpm",tm="pnpm exec",tO="simple-git-hooks",tT="simple-git-hooks",tS="@eslint/config-inspector",tA="eslint-config-inspector",tL="node-modules-inspector",tN="node-modules-inspector",tP="migrate-mongo",tG="migrate-mongo",tb={CYBERSKILL_DIRECTORY:ti,WORKING_DIRECTORY:e4,TS_CONFIG:eZ(e9),GIT_IGNORE:eZ(te),GIT_HOOK:eZ(tr),GIT_COMMIT_MSG:eZ(to),SIMPLE_GIT_HOOKS_JSON:eZ(tt),PACKAGE_JSON:eZ(e7),PACKAGE_LOCK_JSON:eZ(e8),PNPM_LOCK_YAML:eZ(tn),NODE_MODULES:eZ(e5),LINT_STAGED_CONFIG:eZ("".concat(ti,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eZ("".concat(ti,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eZ("".concat(ti,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eZ("".concat(ti,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eZ("".concat(ti,"/react/vitest/vitest.e2e.js"))};function tM(e){var t=e.isCurrentProject;return l({"pre-commit":tI,"commit-msg":tp},t&&{"pre-push":eW("".concat(ty," pull"))})}O(tM,"HOOK");function tw(e,t,n){return tR.apply(this,arguments)}function tR(){tR=r(function(e,t,n){return I(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ec.CLI:return[3,1];case ec.STRING:return[3,3];case ec.FUNCTION:return[3,4]}return[3,6];case 1:return[4,eD(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eV(eW("".concat(tm," ").concat(n))))];case 3:return[2,eV(eW(t))];case 4:return[4,eD(t.split(" "),{update:!0})];case 5:if(r.sent(),typeof n=="function")return[2,n()];throw new Error("'second' argument is not a callable function");case 6:throw new Error("Unsupported command type");case 7:return[2]}})});return tR.apply(this,arguments)}O(tw,"buildCommand");function tD(e,t,n){return /*#__PURE__*/r(function(){return I(this,function(r){return[2,tw(e,t,n)]})})}O(tD,"commandFactory");var tK={simpleGitHooks:tD(ec.CLI,tO,tT),eslintInspect:tD(ec.CLI,tS,tA),nodeModulesInspect:tD(ec.CLI,tL,tN),eslintCheck:tD(ec.CLI,tc,"".concat(ts," ").concat(tb.WORKING_DIRECTORY)),eslintFix:tD(ec.CLI,tc,"".concat(ts," ").concat(tb.WORKING_DIRECTORY," --fix")),typescriptCheck:tD(ec.CLI,tv,"".concat(tg," -p ").concat(tb.TS_CONFIG," --noEmit")),configureGitHook:tD(ec.STRING,"".concat(ty," config core.hooksPath ").concat(tb.GIT_HOOK)),testUnit:tD(ec.CLI,tl,"".concat(td," --config ").concat(tb.UNIT_TEST_CONFIG)),testE2e:tD(ec.CLI,"".concat(tl," ").concat(tf),"".concat(td," --config ").concat(tb.E2E_TEST_CONFIG)),mongoMigrateCreate:O(function(e){return tD(ec.FUNCTION,"".concat(tP),function(){return eu.migrate.create(e)})()},"mongoMigrateCreate"),mongoMigrateUp:tD(ec.FUNCTION,"".concat(tP),eu.migrate.up),mongoMigrateDown:tD(ec.FUNCTION,"".concat(tP),eu.migrate.down),commitLint:tD(ec.CLI,t_,"".concat(tp," --edit ").concat(tb.GIT_COMMIT_MSG," --config ").concat(tb.COMMITLINT_CONFIG)),lintStaged:tD(ec.CLI,tE,"".concat(tI," --config ").concat(tb.LINT_STAGED_CONFIG)),stageBuildDirectory:tD(ec.STRING,"".concat(ty," add ").concat(e6)),build:tD(ec.STRING,"".concat(tC," run build")),pnpmInstallStandard:tD(ec.STRING,"".concat(tC," install")),pnpmInstallLegacy:tD(ec.STRING,"".concat(tC," install --legacy-peer-deps")),pnpmInstallForce:tD(ec.STRING,"".concat(tC," install --force"))};0&&(module.exports={BUILD_DIRECTORY:BUILD_DIRECTORY,COMMIT_LINT_CLI:COMMIT_LINT_CLI,COMMIT_LINT_PACKAGE_NAME:COMMIT_LINT_PACKAGE_NAME,CYBERSKILL_CLI:CYBERSKILL_CLI,CYBERSKILL_CLI_PATH:CYBERSKILL_CLI_PATH,CYBERSKILL_DIRECTORY:CYBERSKILL_DIRECTORY,CYBERSKILL_PACKAGE_NAME:CYBERSKILL_PACKAGE_NAME,ESLINT_CLI:ESLINT_CLI,ESLINT_INSPECT_CLI:ESLINT_INSPECT_CLI,ESLINT_INSPECT_PACKAGE_NAME:ESLINT_INSPECT_PACKAGE_NAME,ESLINT_PACKAGE_NAME:ESLINT_PACKAGE_NAME,GIT_CLI:GIT_CLI,GIT_COMMIT_EDITMSG:GIT_COMMIT_EDITMSG,GIT_HOOK:GIT_HOOK,GIT_IGNORE:GIT_IGNORE,HOOK:HOOK,LINT_STAGED_CLI:LINT_STAGED_CLI,LINT_STAGED_PACKAGE_NAME:LINT_STAGED_PACKAGE_NAME,MIGRATE_MONGO_CLI:MIGRATE_MONGO_CLI,MIGRATE_MONGO_PACKAGE_NAME:MIGRATE_MONGO_PACKAGE_NAME,NODE_MODULES:NODE_MODULES,NODE_MODULES_INSPECT_CLI:NODE_MODULES_INSPECT_CLI,NODE_MODULES_INSPECT_PACKAGE_NAME:NODE_MODULES_INSPECT_PACKAGE_NAME,PACKAGE_JSON:PACKAGE_JSON,PACKAGE_LOCK_JSON:PACKAGE_LOCK_JSON,PATH:PATH,PLAYWRIGHT_PACKAGE_NAME:PLAYWRIGHT_PACKAGE_NAME,PNPM_CLI:PNPM_CLI,PNPM_EXEC_CLI:PNPM_EXEC_CLI,PNPM_LOCK_YAML:PNPM_LOCK_YAML,SIMPLE_GIT_HOOKS_PACKAGE_NAME:SIMPLE_GIT_HOOKS_PACKAGE_NAME,SIMPLE_GIT_HOOK_CLI:SIMPLE_GIT_HOOK_CLI,SIMPLE_GIT_HOOK_JSON:SIMPLE_GIT_HOOK_JSON,TSCONFIG_JSON:TSCONFIG_JSON,TSC_CLI:TSC_CLI,TSC_PACKAGE_NAME:TSC_PACKAGE_NAME,TSX_CLI:TSX_CLI,VITEST_CLI:VITEST_CLI,VITEST_PACKAGE_NAME:VITEST_PACKAGE_NAME,WORKING_DIRECTORY:WORKING_DIRECTORY,command:command,join:join,resolve:resolve,resolveWorkingPath:resolveWorkingPath});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,c){try{var i=e[a](c);var u=i.value}catch(e){n(e);return}if(i.done){t(u)}else{Promise.resolve(u).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var c=e.apply(t,r);function i(e){n(c,o,a,i,u,"next",e)}function u(e){n(c,o,a,i,u,"throw",e)}i(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){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 i(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){o(e,t,n[t])})}return e}function u(e){return t(e)||a(e)||l(e)||c()}function s(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(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 f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return u([e,t])}}function u(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(a=0)),a)try{if(n=1,r&&(o=i[0]&2?r["return"]:i[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;if(r=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:a.label++;return{value:i[1],done:false};case 5:a.label++;r=i[1];i=[0];continue;case 7:i=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){a=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(i[0]===6&&a.label<o[1]){a.label=o[1];o=i;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(i);break}if(o[2])a.ops.pop();a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e];r=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var _=Object.create;var I=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var C=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var T=function(e,t){return I(e,"name",{value:t,configurable:!0})};var v=function(e,t){for(var n in t)I(e,n,{get:t[n],enumerable:!0})},O=function(e,t,n,r){var o=true,a=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":s(t))=="object"||typeof t=="function")try{var i=function(){var o=l.value;!p.call(e,o)&&o!==n&&I(e,o,{get:function(){return t[o]},enumerable:!(r=d(t,o))||r.enumerable})};for(var u=E(t)[Symbol.iterator](),l;!(o=(l=u.next()).done);o=true)i()}catch(e){a=true;c=e}finally{try{if(!o&&u.return!=null){u.return()}}finally{if(a){throw c}}}return e};var g=function(e,t,n){return n=e!=null?_(C(e)):{},O(t||!e||!e.__esModule?I(n,"default",{value:e,enumerable:!0}):n,e)},S=function(e){return O(I({},"__esModule",{value:!0}),e)};var L={};v(L,{BUILD_DIRECTORY:function(){return eU},COMMIT_LINT_CLI:function(){return e6},COMMIT_LINT_PACKAGE_NAME:function(){return e5},CYBERSKILL_CLI:function(){return eQ},CYBERSKILL_CLI_PATH:function(){return eZ},CYBERSKILL_DIRECTORY:function(){return ez},CYBERSKILL_PACKAGE_NAME:function(){return eY},ESLINT_CLI:function(){return e1},ESLINT_INSPECT_CLI:function(){return tu},ESLINT_INSPECT_PACKAGE_NAME:function(){return ti},ESLINT_PACKAGE_NAME:function(){return e0},GIT_CLI:function(){return tn},GIT_COMMIT_EDITMSG:function(){return eX},GIT_HOOK:function(){return eV},GIT_IGNORE:function(){return eW},LINT_STAGED_CLI:function(){return e8},LINT_STAGED_PACKAGE_NAME:function(){return e7},MIGRATE_MONGO_CLI:function(){return t_},MIGRATE_MONGO_CONFIG:function(){return e$},MIGRATE_MONGO_PACKAGE_NAME:function(){return tf},NODE_MODULES:function(){return eF},NODE_MODULES_INSPECT_CLI:function(){return tl},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return ts},PACKAGE_JSON:function(){return ex},PACKAGE_LOCK_JSON:function(){return eB},PATH:function(){return tI},PLAYWRIGHT_PACKAGE_NAME:function(){return e3},PNPM_CLI:function(){return tr},PNPM_EXEC_CLI:function(){return to},PNPM_LOCK_YAML:function(){return eq},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return ta},SIMPLE_GIT_HOOK_CLI:function(){return tc},SIMPLE_GIT_HOOK_JSON:function(){return eJ},TSCONFIG_JSON:function(){return eH},TSC_CLI:function(){return te},TSC_PACKAGE_NAME:function(){return e9},TSX_CLI:function(){return tt},VITEST_CLI:function(){return e4},VITEST_PACKAGE_NAME:function(){return e2},WORKING_DIRECTORY:function(){return ej},command:function(){return tT},createGitHooksConfig:function(){return td},join:function(){return ew},resolve:function(){return eD},resolveWorkingPath:function(){return eK}});module.exports=S(L);var N=".cyberskill-storage";var A=g(require("dotenv"),1),G=require("envalid"),m=g(require("os"),1),h=g(require("path"),1),y=g(require("process"),1);A.default.config();function M(){var e={DEBUG:y.default.env.DEBUG||!1,CWD:y.default.env.CWD||y.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:y.default.env.CYBERSKILL_STORAGE_DIRECTORY||h.default.join(m.default.homedir(),N)};return(0,G.cleanEnv)(e,{DEBUG:(0,G.bool)(),CWD:(0,G.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,G.str)()})}T(M,"getEnv");var P=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var b=require("child_process"),R=g(require("process"),1),K=g(require("util"),1);var D=function(e){return e.Error="error",e.Warning="warning",e}({});var w=g(require("chalk"),1),k=g(require("consola"),1),j=require("graphql");var Y=M();Y.DEBUG||(k.default.level=4);function F(e){var t=w.default[e];return typeof t=="function"?t:w.default.green}T(F,"chalkKeyword");var U={silent:k.default.silent,level:k.default.level,fatal:k.default.fatal,error:k.default.error,warn:k.default.warn,log:k.default.log,info:k.default.info,success:k.default.success,ready:k.default.ready,start:k.default.start,box:k.default.box,debug:k.default.debug,trace:k.default.trace,verbose:k.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){k.default.box(w.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;k.default.log("".concat(w.default.gray("File:")," ").concat(w.default.blue("".concat(t).concat(r?":".concat(r):"")))),o&&k.default.log(" ".concat(F(n)("Rule:")," ").concat(o)),k.default.log(" ".concat(F(n)("Message:")," ").concat(a))}),k.default.box(F(n)("".concat(e," : ").concat(t.length))),k.default.log(w.default.gray("─".repeat(40)))}};var x={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var B=g(require("node-fetch"),1);var H=g(require("fs-extra"),1),W=require("path");var J=H.default,q=J.readFileSync,V=J.writeFileSync,X=J.pathExistsSync,$=J.appendFileSync,z=J.copySync,Q=J.removeSync,Z=J.statSync,ee=H.default.readJsonSync,et=H.default.writeJsonSync;function en(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return X(e)})}T(en,"existsSync");var er=M();function eo(e){var t=ew(er.CWD,ex);if(!en(t))return!1;try{var n=ee(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,i=c===void 0?{}:c,u=r===e,s=e in a,l=e in i;return u||s||l?{path:t,file:n,isCurrentProject:u,isDepend:s,isDevDepend:l}:!1}catch(e){return U.warn("Failed to read package.json: ".concat(e.message)),!1}}T(eo,"getPackage");function ea(e){return ec.apply(this,arguments)}function ec(){ec=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,B.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw U.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return ec.apply(this,arguments)}T(ea,"getLatestPackageVersion");function ei(e,t){return eu.apply(this,arguments)}function eu(){eu=r(function(e,t){var n,r,o,a,c,u,s,l,_,I,d,E,C,p,T,v,O,g,S,L,N;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=eo(e);if(!n)return[2,i({},x)];s=n.path,l=n.file,_=n.isCurrentProject,I=n.isDepend,d=n.isDevDepend,E=(r=l.dependencies)!==null&&r!==void 0?r:{},C=(o=l.devDependencies)!==null&&o!==void 0?o:{},p=_?(a=l.version)!==null&&a!==void 0?a:"0.0.0":I?(c=E[e])!==null&&c!==void 0?c:"0.0.0":d?(u=C[e])!==null&&u!==void 0?u:"0.0.0":"0.0.0";if(!_)return[3,1];O=p;return[3,3];case 1:return[4,ea(e)];case 2:O=f.sent();f.label=3;case 3:T=O,v=_||p===T;if(!v&&(t===null||t===void 0?void 0:t.update)){;S=I?"dependencies":d?"devDependencies":null;S&&((g=l[S])===null||g===void 0?void 0:g[e])!==T&&(l[S]=(L=l[S])!==null&&L!==void 0?L:{},l[S][e]=T,et(s,l),U.info('Updated "'.concat(e,'" to version ').concat(T)))}return[2,{isCurrentProject:_,installedPath:s,file:l,isUpToDate:v}];case 4:N=f.sent();return[2,(U.error('Error checking package "'.concat(e,'": ').concat(N.message)),i({},x))];case 5:return[2]}})});return eu.apply(this,arguments)}T(ei,"checkPackage");function es(){return el.apply(this,arguments)}function el(){el=r(function(){var e,t,n,r,o,a,c,i,u,s,l,_;return f(this,function(f){switch(f.label){case 0:e=[{command:T(function(){return tT.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:T(function(){return tT.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:T(function(){return tT.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,i=c.command,u=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:s=f.sent();return[4,eM("".concat(u," using: ").concat(s),s)];case 5:f.sent();return[2];case 6:l=f.sent();U.warn("Installation attempt failed: ".concat(u)),U.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:_=f.sent();n=true;r=_;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return el.apply(this,arguments)}T(es,"installDependencies");function ef(e,t){return e_.apply(this,arguments)}function e_(){e_=r(function(e,t){var n,r,o,a,c,s,l,_,I,d,E;return f(this,function(f){switch(f.label){case 0:if(!en(tI.PACKAGE_JSON)){U.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=u(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ei(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,es()];case 3:r=f.sent();f.label=4;case 4:r;a=true,c=false,s=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(_=l.next()).done))return[3,9];I=_.value;return[4,I()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:d=f.sent();c=true;s=d;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(c){throw s}}return[7];case 12:return[3,14];case 13:E=f.sent();throw U.error('Failed to setup "'.concat(e.join(", "),'": ').concat(E.message)),E;case 14:return[2]}})});return e_.apply(this,arguments)}T(ef,"setupPackages");var eI=g(require("node-persist"),1);var ed=M();function eE(){return eC.apply(this,arguments)}function eC(){eC=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=eI.default.defaultInstance;if(e)return[3,2];return[4,eI.default.init({dir:ed.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return eC.apply(this,arguments)}T(eE,"initNodePersist");var ep={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eE()];case 1:r.sent();return[4,eI.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(U.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eE()];case 1:r.sent();return[4,eI.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();U.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eE()];case 1:n.sent();return[4,eI.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();U.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eE()];case 1:n.sent();return[4,eI.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(U.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(U.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(ed.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(U.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eT=M(),ev=K.promisify(b.exec);function eO(e){return"error_list:".concat(e)}T(eO,"getErrorListKey");function eg(e){return eS.apply(this,arguments)}function eS(){eS=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eO(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,ep.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,ep.getLogLink(n)];case 1:e=t.sent();e&&U.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();U.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return eS.apply(this,arguments)}T(eg,"saveErrorListToStorage");function eL(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,u,s,l,f;var _=o.exec(e)||[],I=a.exec(e)||[],d=c.exec(e)||[];var E,C,p,T,v,O;_.length&&r?t.push({file:r,position:"".concat(_[1],":").concat(_[2]),type:_[3]===D.Error?D.Error:D.Warning,message:(E=_===null||_===void 0?void 0:(i=_[4])===null||i===void 0?void 0:i.trim())!==null&&E!==void 0?E:"",rule:(C=_===null||_===void 0?void 0:(u=_[5])===null||u===void 0?void 0:u.trim())!==null&&C!==void 0?C:""}):I.length?t.push({file:(p=I===null||I===void 0?void 0:I[1])!==null&&p!==void 0?p:"",position:"".concat(I[2],":").concat(I[3]),type:I[4]===D.Error?D.Error:D.Warning,message:(T=I===null||I===void 0?void 0:(s=I[5])===null||s===void 0?void 0:s.trim())!==null&&T!==void 0?T:""}):d.length?t.push({file:"commitlint",type:D.Error,message:(v=d===null||d===void 0?void 0:(l=d[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(O=d===null||d===void 0?void 0:(f=d[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&eg(t),eT.DEBUG&&n.length&&(U.warn("Unmatched lines:"),n.forEach(function(e){return U.info(" ".concat(e))}))}T(eL,"parseTextErrors");function eN(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?D.Error:D.Warning,file:t,position:"".concat(o,":").concat(a),rule:c,message:i})})}),n.length&&eg(n)}catch(t){eL(e)}}T(eN,"parseCommandOutput");function eA(e){return eG.apply(this,arguments)}function eG(){eG=r(function(e){var t,n,r,o,a,c,i,u,s;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eN;n=new AbortController;R.default.on("SIGINT",function(){U.warn("Process interrupted. Terminating..."),n.abort(),R.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,ev(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,u=c.stderr,s=c.message;[i,u].forEach(function(e){return e&&t(e)}),!u&&!i&&U.error("Command failed: ".concat(s));return[3,5];case 5:return[2]}})});return eG.apply(this,arguments)}T(eA,"executeCommand");function em(e){return{raw:!0,cmd:e}}T(em,"rawCommand");function eh(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(to," ").concat(eY," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(to," ").concat(tt," ").concat(eZ," ").concat(e):"".concat(to," ").concat(eQ," ").concat(e)}T(eh,"formatCLI");function ey(e,t){return typeof e=="function"?eh(e(t),t):(typeof e==="undefined"?"undefined":s(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eh(e,t):e}T(ey,"formatCommand");function eM(e,t){return eP.apply(this,arguments)}function eP(){eP=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);U.start("".concat(e)),eT.DEBUG&&U.info("→ ".concat(t));return[4,eA(t)];case 1:r.sent(),U.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw U.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eP.apply(this,arguments)}T(eM,"runCommand");var eb=require("path");var eR=M();function eK(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eb.resolve).apply(this,[eR.CWD].concat(u(t)))}T(eK,"resolveWorkingPath");function eD(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eb.resolve).apply(this,u(t))}T(eD,"resolve");function ew(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eb.join).apply(this,u(t))}T(ew,"join");var ek=M(),ej=ek.CWD,eY="@cyberskill/shared",eF="node_modules",eU="dist",ex="package.json",eB="package-lock.json",eH="tsconfig.json",eW=".gitignore",eJ=".simple-git-hooks.json",eq="pnpm-lock.yaml",eV=".git/hooks/",eX=".git/COMMIT_EDITMSG",e$=".migrate-mongo.config.js",ez=ew(ej,eF,eY,eU),eQ="cyberskill",eZ="src/nodejs/cli/index.ts",e0="eslint",e1="eslint",e2="vitest",e3="playwright",e4="vitest",e5="@commitlint/cli",e6="commitlint",e7="lint-staged",e8="lint-staged",e9="typescript",te="tsc",tt="tsx",tn="git",tr="pnpm",to="pnpm exec",ta="simple-git-hooks",tc="simple-git-hooks",ti="@eslint/config-inspector",tu="eslint-config-inspector",ts="node-modules-inspector",tl="node-modules-inspector",tf="migrate-mongo",t_="./node_modules/migrate-mongo/bin/migrate-mongo",tI={CYBERSKILL_DIRECTORY:ez,WORKING_DIRECTORY:ej,TS_CONFIG:eK(eH),GIT_IGNORE:eK(eW),GIT_HOOK:eK(eV),GIT_COMMIT_MSG:eK(eX),SIMPLE_GIT_HOOKS_JSON:eK(eJ),PACKAGE_JSON:eK(ex),PACKAGE_LOCK_JSON:eK(eB),PNPM_LOCK_YAML:eK(eq),NODE_MODULES:eK(eF),MIGRATE_MONGO_CONFIG:eK(e$),LINT_STAGED_CONFIG:eK("".concat(ez,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eK("".concat(ez,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eK("".concat(ez,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eK("".concat(ez,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eK("".concat(ez,"/react/vitest/vitest.e2e.js"))};function td(e){var t=e.isCurrentProject;return i({"pre-commit":e8,"commit-msg":e6},t&&{"pre-push":em("".concat(tn," pull"))})}T(td,"createGitHooksConfig");function tE(e,t,n){return tC.apply(this,arguments)}function tC(){tC=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case P.CLI:return[3,1];case P.STRING:return[3,3]}return[3,4];case 1:return[4,ef(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ey(em("".concat(to," ").concat(n))))];case 3:return[2,ey(em(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tC.apply(this,arguments)}T(tE,"buildCommand");function tp(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,tE(e,t,n)]})})}T(tp,"commandFactory");var tT={simpleGitHooks:tp(P.CLI,ta,tc),eslintInspect:tp(P.CLI,ti,tu),nodeModulesInspect:tp(P.CLI,ts,tl),eslintCheck:tp(P.CLI,e0,"".concat(e1," ").concat(tI.WORKING_DIRECTORY)),eslintFix:tp(P.CLI,e0,"".concat(e1," ").concat(tI.WORKING_DIRECTORY," --fix")),typescriptCheck:tp(P.CLI,e9,"".concat(te," -p ").concat(tI.TS_CONFIG," --noEmit")),configureGitHook:tp(P.STRING,"".concat(tn," config core.hooksPath ").concat(tI.GIT_HOOK)),testUnit:tp(P.CLI,e2,"".concat(e4," --config ").concat(tI.UNIT_TEST_CONFIG)),testE2e:tp(P.CLI,"".concat(e2," ").concat(e3),"".concat(e4," --config ").concat(tI.E2E_TEST_CONFIG)),mongoMigrateCreate:T(function(e){return tp(P.CLI,tf,"".concat(tt," ").concat(t_," create ").concat(e," -f ").concat(tI.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tp(P.CLI,tf,"".concat(tt," ").concat(t_," up -f ").concat(tI.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tp(P.CLI,tf,"".concat(tt," ").concat(t_," down -f ").concat(tI.MIGRATE_MONGO_CONFIG)),mongoMigrateStatus:tp(P.CLI,tf,"".concat(tt," ").concat(t_," status -f ").concat(tI.MIGRATE_MONGO_CONFIG)),commitLint:tp(P.CLI,e5,"".concat(e6," --edit ").concat(tI.GIT_COMMIT_MSG," --config ").concat(tI.COMMITLINT_CONFIG)),lintStaged:tp(P.CLI,e7,"".concat(e8," --config ").concat(tI.LINT_STAGED_CONFIG)),stageBuildDirectory:tp(P.STRING,"".concat(tn," add ").concat(eU)),build:tp(P.STRING,"".concat(tr," run build")),pnpmInstallStandard:tp(P.STRING,"".concat(tr," install")),pnpmInstallLegacy:tp(P.STRING,"".concat(tr," install --legacy-peer-deps")),pnpmInstallForce:tp(P.STRING,"".concat(tr," install --force"))};0&&(module.exports={BUILD_DIRECTORY:BUILD_DIRECTORY,COMMIT_LINT_CLI:COMMIT_LINT_CLI,COMMIT_LINT_PACKAGE_NAME:COMMIT_LINT_PACKAGE_NAME,CYBERSKILL_CLI:CYBERSKILL_CLI,CYBERSKILL_CLI_PATH:CYBERSKILL_CLI_PATH,CYBERSKILL_DIRECTORY:CYBERSKILL_DIRECTORY,CYBERSKILL_PACKAGE_NAME:CYBERSKILL_PACKAGE_NAME,ESLINT_CLI:ESLINT_CLI,ESLINT_INSPECT_CLI:ESLINT_INSPECT_CLI,ESLINT_INSPECT_PACKAGE_NAME:ESLINT_INSPECT_PACKAGE_NAME,ESLINT_PACKAGE_NAME:ESLINT_PACKAGE_NAME,GIT_CLI:GIT_CLI,GIT_COMMIT_EDITMSG:GIT_COMMIT_EDITMSG,GIT_HOOK:GIT_HOOK,GIT_IGNORE:GIT_IGNORE,LINT_STAGED_CLI:LINT_STAGED_CLI,LINT_STAGED_PACKAGE_NAME:LINT_STAGED_PACKAGE_NAME,MIGRATE_MONGO_CLI:MIGRATE_MONGO_CLI,MIGRATE_MONGO_CONFIG:MIGRATE_MONGO_CONFIG,MIGRATE_MONGO_PACKAGE_NAME:MIGRATE_MONGO_PACKAGE_NAME,NODE_MODULES:NODE_MODULES,NODE_MODULES_INSPECT_CLI:NODE_MODULES_INSPECT_CLI,NODE_MODULES_INSPECT_PACKAGE_NAME:NODE_MODULES_INSPECT_PACKAGE_NAME,PACKAGE_JSON:PACKAGE_JSON,PACKAGE_LOCK_JSON:PACKAGE_LOCK_JSON,PATH:PATH,PLAYWRIGHT_PACKAGE_NAME:PLAYWRIGHT_PACKAGE_NAME,PNPM_CLI:PNPM_CLI,PNPM_EXEC_CLI:PNPM_EXEC_CLI,PNPM_LOCK_YAML:PNPM_LOCK_YAML,SIMPLE_GIT_HOOKS_PACKAGE_NAME:SIMPLE_GIT_HOOKS_PACKAGE_NAME,SIMPLE_GIT_HOOK_CLI:SIMPLE_GIT_HOOK_CLI,SIMPLE_GIT_HOOK_JSON:SIMPLE_GIT_HOOK_JSON,TSCONFIG_JSON:TSCONFIG_JSON,TSC_CLI:TSC_CLI,TSC_PACKAGE_NAME:TSC_PACKAGE_NAME,TSX_CLI:TSX_CLI,VITEST_CLI:VITEST_CLI,VITEST_PACKAGE_NAME:VITEST_PACKAGE_NAME,WORKING_DIRECTORY:WORKING_DIRECTORY,command:command,createGitHooksConfig:createGitHooksConfig,join:join,resolve:resolve,resolveWorkingPath:resolveWorkingPath});
@@ -1,4 +1,4 @@
1
- export { HOOK_alias_2 as HOOK } from '../../_tsup-dts-rollup.cjs';
1
+ export { createGitHooksConfig_alias_2 as createGitHooksConfig } from '../../_tsup-dts-rollup.cjs';
2
2
  export { WORKING_DIRECTORY_alias_2 as WORKING_DIRECTORY } from '../../_tsup-dts-rollup.cjs';
3
3
  export { CYBERSKILL_PACKAGE_NAME_alias_2 as CYBERSKILL_PACKAGE_NAME } from '../../_tsup-dts-rollup.cjs';
4
4
  export { NODE_MODULES_alias_2 as NODE_MODULES } from '../../_tsup-dts-rollup.cjs';
@@ -11,6 +11,7 @@ export { SIMPLE_GIT_HOOK_JSON_alias_2 as SIMPLE_GIT_HOOK_JSON } from '../../_tsu
11
11
  export { PNPM_LOCK_YAML_alias_2 as PNPM_LOCK_YAML } from '../../_tsup-dts-rollup.cjs';
12
12
  export { GIT_HOOK_alias_2 as GIT_HOOK } from '../../_tsup-dts-rollup.cjs';
13
13
  export { GIT_COMMIT_EDITMSG_alias_2 as GIT_COMMIT_EDITMSG } from '../../_tsup-dts-rollup.cjs';
14
+ export { MIGRATE_MONGO_CONFIG_alias_2 as MIGRATE_MONGO_CONFIG } from '../../_tsup-dts-rollup.cjs';
14
15
  export { CYBERSKILL_DIRECTORY_alias_2 as CYBERSKILL_DIRECTORY } from '../../_tsup-dts-rollup.cjs';
15
16
  export { CYBERSKILL_CLI_alias_2 as CYBERSKILL_CLI } from '../../_tsup-dts-rollup.cjs';
16
17
  export { CYBERSKILL_CLI_PATH_alias_2 as CYBERSKILL_CLI_PATH } from '../../_tsup-dts-rollup.cjs';
@@ -1,4 +1,4 @@
1
- export { HOOK_alias_2 as HOOK } from '../../_tsup-dts-rollup.js';
1
+ export { createGitHooksConfig_alias_2 as createGitHooksConfig } from '../../_tsup-dts-rollup.js';
2
2
  export { WORKING_DIRECTORY_alias_2 as WORKING_DIRECTORY } from '../../_tsup-dts-rollup.js';
3
3
  export { CYBERSKILL_PACKAGE_NAME_alias_2 as CYBERSKILL_PACKAGE_NAME } from '../../_tsup-dts-rollup.js';
4
4
  export { NODE_MODULES_alias_2 as NODE_MODULES } from '../../_tsup-dts-rollup.js';
@@ -11,6 +11,7 @@ export { SIMPLE_GIT_HOOK_JSON_alias_2 as SIMPLE_GIT_HOOK_JSON } from '../../_tsu
11
11
  export { PNPM_LOCK_YAML_alias_2 as PNPM_LOCK_YAML } from '../../_tsup-dts-rollup.js';
12
12
  export { GIT_HOOK_alias_2 as GIT_HOOK } from '../../_tsup-dts-rollup.js';
13
13
  export { GIT_COMMIT_EDITMSG_alias_2 as GIT_COMMIT_EDITMSG } from '../../_tsup-dts-rollup.js';
14
+ export { MIGRATE_MONGO_CONFIG_alias_2 as MIGRATE_MONGO_CONFIG } from '../../_tsup-dts-rollup.js';
14
15
  export { CYBERSKILL_DIRECTORY_alias_2 as CYBERSKILL_DIRECTORY } from '../../_tsup-dts-rollup.js';
15
16
  export { CYBERSKILL_CLI_alias_2 as CYBERSKILL_CLI } from '../../_tsup-dts-rollup.js';
16
17
  export { CYBERSKILL_CLI_PATH_alias_2 as CYBERSKILL_CLI_PATH } from '../../_tsup-dts-rollup.js';
@@ -1 +1 @@
1
- function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,i){try{var c=e[a](i);var s=c.value}catch(e){n(e);return}if(c.done){t(s)}else{Promise.resolve(s).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var i=e.apply(t,r);function c(e){n(i,o,a,c,s,"next",e)}function s(e){n(i,o,a,c,s,"throw",e)}c(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){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 s(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){o(e,t,n[t])})}return e}function u(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 l(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{u(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function f(e){return t(e)||i(e)||d(e)||c()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function m(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},i=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return i.next=c(0),i["throw"]=c(1),i["return"]=c(2),typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function c(e){return function(t){return s([e,t])}}function s(c){if(n)throw new TypeError("Generator is already executing.");while(i&&(i=0,c[0]&&(a=0)),a)try{if(n=1,r&&(o=c[0]&2?r["return"]:c[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;if(r=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(c[0]===6&&a.label<o[1]){a.label=o[1];o=c;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(c);break}if(o[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var g=Object.defineProperty;var h=function(e,t){return g(e,"name",{value:t,configurable:!0})};var v=".cyberskill-storage";import y from"dotenv";import{bool as _,cleanEnv as E,str as I}from"envalid";import C from"node:os";import O from"node:path";import b from"node:process";y.config();function S(){var e={DEBUG:b.env.DEBUG||!1,CWD:b.env.CWD||b.cwd(),CYBERSKILL_STORAGE_DIRECTORY:b.env.CYBERSKILL_STORAGE_DIRECTORY||O.join(C.homedir(),v)};return E(e,{DEBUG:_(),CWD:I(),CYBERSKILL_STORAGE_DIRECTORY:I()})}h(S,"getEnv");var T="MONGO_MIGRATE_OPTIONS";import{Collection as w,Db as N}from"mongodb";import{Document as G,Model as L}from"mongoose";import{format as P}from"date-fns";import A from"migrate-mongo";import{Document as R}from"mongoose";import D from"mongoose-aggregate-paginate-v2";import M from"mongoose-paginate-v2";import{v4 as j}from"uuid";import k from"node-persist";var U=function(e){return e.Error="error",e.Warning="warning",e}({});import K from"chalk";import x from"consola";import{GraphQLError as F}from"graphql";var Y=S();Y.DEBUG||(x.level=4);function B(e){var t=K[e];return typeof t=="function"?t:K.green}h(B,"chalkKeyword");var W={silent:x.silent,level:x.level,fatal:x.fatal,error:x.error,warn:x.warn,log:x.log,info:x.info,success:x.success,ready:x.ready,start:x.start,box:x.box,debug:x.debug,trace:x.trace,verbose:x.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){x.box(K.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;x.log("".concat(K.gray("File:")," ").concat(K.blue("".concat(t).concat(r?":".concat(r):"")))),o&&x.log(" ".concat(B(n)("Rule:")," ").concat(o)),x.log(" ".concat(B(n)("Message:")," ").concat(a))}),x.box(B(n)("".concat(e," : ").concat(t.length))),x.log(K.gray("─".repeat(40)))}};var H=S();function J(){return $.apply(this,arguments)}function $(){$=r(function(){var e;return m(this,function(t){switch(t.label){case 0:e=k.defaultInstance;if(e)return[3,2];return[4,k.init({dir:H.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return $.apply(this,arguments)}h(J,"initNodePersist");var q={get:function e(e){return r(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,J()];case 1:r.sent();return[4,k.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(W.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,J()];case 1:r.sent();return[4,k.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();W.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,J()];case 1:n.sent();return[4,k.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();W.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,J()];case 1:n.sent();return[4,k.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(W.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(W.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return m(this,function(t){try{return[2,"".concat(H.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(W.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};import V from"crypto-js";import X from"slugify";var z=X.default||X;var Q={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":p(e))=="object"?a(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var Z={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return P(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?Z.getDateTime():new Date;return{id:j(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,o=t.post;n&&r&&e.pre(n,r),n&&o&&e.post(n,o)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:j,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,o=r===void 0?[]:r,a=e.standalone,i=a===void 0?!1:a;var c=new t.Schema(n,{strict:!0});return o.forEach(function(e){var t=e.name,n=e.options,r=e.get;var o=c.virtual(t,n);r&&o.get(r)}),i||c.add(Z.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,o=e.pagination,a=o===void 0?!1:o,i=e.aggregate,c=i===void 0?!1:i,s=e.virtuals,u=s===void 0?[]:s,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var p=Z.createSchema({mongoose:t,schema:r,virtuals:u});return Z.applyPlugins(p,[a&&M,c&&D]),Z.applyMiddlewares(p,f),t.model(n,p)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return l(s({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=r(function(e){return m(this,function(t){return[2,!Q.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=r(function(t){var n;return m(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=r(function(t){return m(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!a(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:{withConfig:h(/*#__PURE__*/function(){var e=r(function(e,t){var n,r,o,a;return m(this,function(i){switch(i.label){case 0:return[4,q.get(T)];case 1:n=i.sent();if(!n)throw new Error("Missing migrate config");if(A.config.set(n),!t)return[2,e(void 0)];return[4,A.database.connect()];case 2:r=i.sent(),o=r.db,a=r.client;i.label=3;case 3:i.trys.push([3,,5,7]);return[4,e({db:o,client:a})];case 4:return[2,i.sent()];case 5:return[4,a.close()];case 6:i.sent();return[7];case 7:return[2]}})});return function(t,n){return e.apply(this,arguments)}}(),"withConfig"),init:h(/*#__PURE__*/r(function(){return m(this,function(e){switch(e.label){case 0:return[4,A.init()];case 1:e.sent();return[2]}})}),"init"),create:h(/*#__PURE__*/function(){var e=r(function(e){return m(this,function(t){switch(t.label){case 0:return[4,Z.migrate.withConfig(function(){return A.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:h(/*#__PURE__*/r(function(){return m(this,function(e){switch(e.label){case 0:return[4,import("ts-node").then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,Z.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return m(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,A.up(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:h(/*#__PURE__*/r(function(){return m(this,function(e){switch(e.label){case 0:return[4,import("ts-node").then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,Z.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return m(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,A.down(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:h(/*#__PURE__*/r(function(){return m(this,function(e){switch(e.label){case 0:return[4,Z.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t;return m(this,function(n){switch(n.label){case 0:t=e.db;return[4,A.status(t)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:h(function(e){q.set(T,e)},"config")}};var ee=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as et}from"node:child_process";import en from"node:process";import*as er from"node:util";var eo={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import ea from"node-fetch";import ei from"fs-extra";var ec=ei.readFileSync,es=ei.writeFileSync,eu=ei.pathExistsSync,el=ei.appendFileSync,ef=ei.copySync,ep=ei.removeSync,ed=ei.statSync,em=ei.readJsonSync,eg=ei.writeJsonSync;function eh(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eu(e)})}h(eh,"existsSync");var ev=S();function ey(e){var t=eJ(ev.CWD,eQ);if(!eh(t))return!1;try{var n=em(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,i=n.devDependencies,c=i===void 0?{}:i,s=r===e,u=e in a,l=e in c;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return W.warn("Failed to read package.json: ".concat(e.message)),!1}}h(ey,"getPackage");function e_(e){return eE.apply(this,arguments)}function eE(){eE=r(function(e){var t,n,r,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,ea("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw W.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return eE.apply(this,arguments)}h(e_,"getLatestPackageVersion");function eI(e,t){return eC.apply(this,arguments)}function eC(){eC=r(function(e,t){var n,r,o,a,i,c,u,l,f,p,d,g,h,v,y,_,E,I,C,O,b;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=ey(e);if(!n)return[2,s({},eo)];u=n.path,l=n.file,f=n.isCurrentProject,p=n.isDepend,d=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},h=(o=l.devDependencies)!==null&&o!==void 0?o:{},v=f?(a=l.version)!==null&&a!==void 0?a:"0.0.0":p?(i=g[e])!==null&&i!==void 0?i:"0.0.0":d?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];E=v;return[3,3];case 1:return[4,e_(e)];case 2:E=m.sent();m.label=3;case 3:y=E,_=f||v===y;if(!_&&(t===null||t===void 0?void 0:t.update)){;C=p?"dependencies":d?"devDependencies":null;C&&((I=l[C])===null||I===void 0?void 0:I[e])!==y&&(l[C]=(O=l[C])!==null&&O!==void 0?O:{},l[C][e]=y,eg(u,l),W.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:f,installedPath:u,file:l,isUpToDate:_}];case 4:b=m.sent();return[2,(W.error('Error checking package "'.concat(e,'": ').concat(b.message)),s({},eo))];case 5:return[2]}})});return eC.apply(this,arguments)}h(eI,"checkPackage");function eO(){return eb.apply(this,arguments)}function eb(){eb=r(function(){var e,t,n,r,o,a,i,c,s,u,l,f;return m(this,function(p){switch(p.label){case 0:e=[{command:h(function(){return tw.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return tw.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return tw.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;p.label=1;case 1:p.trys.push([1,9,10,11]);o=e[Symbol.iterator]();p.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];i=a.value,c=i.command,s=i.message;p.label=3;case 3:p.trys.push([3,6,,7]);return[4,c()];case 4:u=p.sent();return[4,eK("".concat(s," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();W.warn("Installation attempt failed: ".concat(s)),W.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=p.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eb.apply(this,arguments)}h(eO,"installDependencies");function eS(e,t){return eT.apply(this,arguments)}function eT(){eT=r(function(e,t){var n,r,o,a,i,c,u,l,p,d,g;return m(this,function(m){switch(m.label){case 0:if(!eh(tC.PACKAGE_JSON)){W.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,13,,14]);n=f(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eI(e,s({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=m.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eO()];case 3:r=m.sent();m.label=4;case 4:r;a=true,i=false,c=undefined;m.label=5;case 5:m.trys.push([5,10,11,12]);u=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=6;case 6:if(!!(a=(l=u.next()).done))return[3,9];p=l.value;return[4,p()];case 7:m.sent();m.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:d=m.sent();i=true;c=d;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(i){throw c}}return[7];case 12:return[3,14];case 13:g=m.sent();throw W.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return eT.apply(this,arguments)}h(eS,"setupPackages");var ew=S(),eN=er.promisify(et);function eG(e){return"error_list:".concat(e)}h(eG,"getErrorListKey");function eL(e){return eP.apply(this,arguments)}function eP(){eP=r(function(e){var t,n,o;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eG(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,q.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,q.getLogLink(n)];case 1:e=t.sent();e&&W.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();W.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return eP.apply(this,arguments)}h(eL,"saveErrorListToStorage");function eA(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,s,u,l,f;var p=o.exec(e)||[],d=a.exec(e)||[],m=i.exec(e)||[];var g,h,v,y,_,E;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===U.Error?U.Error:U.Warning,message:(g=p===null||p===void 0?void 0:(c=p[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(h=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&h!==void 0?h:""}):d.length?t.push({file:(v=d===null||d===void 0?void 0:d[1])!==null&&v!==void 0?v:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===U.Error?U.Error:U.Warning,message:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:"commitlint",type:U.Error,message:(_=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&_!==void 0?_:"",rule:(E=m===null||m===void 0?void 0:(f=m[2])===null||f===void 0?void 0:f.trim())!==null&&E!==void 0?E:""}):n.push(e.trim())}}),t.length&&eL(t),ew.DEBUG&&n.length&&(W.warn("Unmatched lines:"),n.forEach(function(e){return W.info(" ".concat(e))}))}h(eA,"parseTextErrors");function eR(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,i=e.ruleId,c=e.message;n.push({type:r===2?U.Error:U.Warning,file:t,position:"".concat(o,":").concat(a),rule:i,message:c})})}),n.length&&eL(n)}catch(t){eA(e)}}h(eR,"parseCommandOutput");function eD(e){return eM.apply(this,arguments)}function eM(){eM=r(function(e){var t,n,r,o,a,i,c,s,u;var l=arguments;return m(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eR;n=new AbortController;en.on("SIGINT",function(){W.warn("Process interrupted. Terminating..."),n.abort(),en.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eN(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:i=f.sent();c=i.stdout,s=i.stderr,u=i.message;[c,s].forEach(function(e){return e&&t(e)}),!s&&!c&&W.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eM.apply(this,arguments)}h(eD,"executeCommand");function ej(e){return{raw:!0,cmd:e}}h(ej,"rawCommand");function ek(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(td," ").concat(eV," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(td," ").concat(tl," ").concat(e8," ").concat(e):"".concat(td," ").concat(e7," ").concat(e)}h(ek,"formatCLI");function eU(e,t){return typeof e=="function"?ek(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ek(e,t):e}h(eU,"formatCommand");function eK(e,t){return ex.apply(this,arguments)}function ex(){ex=r(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);W.start("".concat(e)),ew.DEBUG&&W.info("→ ".concat(t));return[4,eD(t)];case 1:r.sent(),W.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw W.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ex.apply(this,arguments)}h(eK,"runCommand");import{join as eF,resolve as eY}from"node:path";var eB=S();function eW(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eY.apply(void 0,[eB.CWD].concat(f(t)))}h(eW,"resolveWorkingPath");function eH(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eY.apply(void 0,f(t))}h(eH,"resolve");function eJ(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eF.apply(void 0,f(t))}h(eJ,"join");var e$=S(),eq=e$.CWD,eV="@cyberskill/shared",eX="node_modules",ez="dist",eQ="package.json",eZ="package-lock.json",e0="tsconfig.json",e1=".gitignore",e2=".simple-git-hooks.json",e4="pnpm-lock.yaml",e3=".git/hooks/",e5=".git/COMMIT_EDITMSG",e6=eJ(eq,eX,eV,ez),e7="cyberskill",e8="src/nodejs/cli/index.ts",e9="eslint",te="eslint",tt="vitest",tn="playwright",tr="vitest",to="@commitlint/cli",ta="commitlint",ti="lint-staged",tc="lint-staged",ts="typescript",tu="tsc",tl="tsx",tf="git",tp="pnpm",td="pnpm exec",tm="simple-git-hooks",tg="simple-git-hooks",th="@eslint/config-inspector",tv="eslint-config-inspector",ty="node-modules-inspector",t_="node-modules-inspector",tE="migrate-mongo",tI="migrate-mongo",tC={CYBERSKILL_DIRECTORY:e6,WORKING_DIRECTORY:eq,TS_CONFIG:eW(e0),GIT_IGNORE:eW(e1),GIT_HOOK:eW(e3),GIT_COMMIT_MSG:eW(e5),SIMPLE_GIT_HOOKS_JSON:eW(e2),PACKAGE_JSON:eW(eQ),PACKAGE_LOCK_JSON:eW(eZ),PNPM_LOCK_YAML:eW(e4),NODE_MODULES:eW(eX),LINT_STAGED_CONFIG:eW("".concat(e6,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eW("".concat(e6,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eW("".concat(e6,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eW("".concat(e6,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eW("".concat(e6,"/react/vitest/vitest.e2e.js"))};function tO(e){var t=e.isCurrentProject;return s({"pre-commit":tc,"commit-msg":ta},t&&{"pre-push":ej("".concat(tf," pull"))})}h(tO,"HOOK");function tb(e,t,n){return tS.apply(this,arguments)}function tS(){tS=r(function(e,t,n){return m(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ee.CLI:return[3,1];case ee.STRING:return[3,3];case ee.FUNCTION:return[3,4]}return[3,6];case 1:return[4,eS(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eU(ej("".concat(td," ").concat(n))))];case 3:return[2,eU(ej(t))];case 4:return[4,eS(t.split(" "),{update:!0})];case 5:if(r.sent(),typeof n=="function")return[2,n()];throw new Error("'second' argument is not a callable function");case 6:throw new Error("Unsupported command type");case 7:return[2]}})});return tS.apply(this,arguments)}h(tb,"buildCommand");function tT(e,t,n){return /*#__PURE__*/r(function(){return m(this,function(r){return[2,tb(e,t,n)]})})}h(tT,"commandFactory");var tw={simpleGitHooks:tT(ee.CLI,tm,tg),eslintInspect:tT(ee.CLI,th,tv),nodeModulesInspect:tT(ee.CLI,ty,t_),eslintCheck:tT(ee.CLI,e9,"".concat(te," ").concat(tC.WORKING_DIRECTORY)),eslintFix:tT(ee.CLI,e9,"".concat(te," ").concat(tC.WORKING_DIRECTORY," --fix")),typescriptCheck:tT(ee.CLI,ts,"".concat(tu," -p ").concat(tC.TS_CONFIG," --noEmit")),configureGitHook:tT(ee.STRING,"".concat(tf," config core.hooksPath ").concat(tC.GIT_HOOK)),testUnit:tT(ee.CLI,tt,"".concat(tr," --config ").concat(tC.UNIT_TEST_CONFIG)),testE2e:tT(ee.CLI,"".concat(tt," ").concat(tn),"".concat(tr," --config ").concat(tC.E2E_TEST_CONFIG)),mongoMigrateCreate:h(function(e){return tT(ee.FUNCTION,"".concat(tE),function(){return Z.migrate.create(e)})()},"mongoMigrateCreate"),mongoMigrateUp:tT(ee.FUNCTION,"".concat(tE),Z.migrate.up),mongoMigrateDown:tT(ee.FUNCTION,"".concat(tE),Z.migrate.down),commitLint:tT(ee.CLI,to,"".concat(ta," --edit ").concat(tC.GIT_COMMIT_MSG," --config ").concat(tC.COMMITLINT_CONFIG)),lintStaged:tT(ee.CLI,ti,"".concat(tc," --config ").concat(tC.LINT_STAGED_CONFIG)),stageBuildDirectory:tT(ee.STRING,"".concat(tf," add ").concat(ez)),build:tT(ee.STRING,"".concat(tp," run build")),pnpmInstallStandard:tT(ee.STRING,"".concat(tp," install")),pnpmInstallLegacy:tT(ee.STRING,"".concat(tp," install --legacy-peer-deps")),pnpmInstallForce:tT(ee.STRING,"".concat(tp," install --force"))};export{ez as BUILD_DIRECTORY,ta as COMMIT_LINT_CLI,to as COMMIT_LINT_PACKAGE_NAME,e7 as CYBERSKILL_CLI,e8 as CYBERSKILL_CLI_PATH,e6 as CYBERSKILL_DIRECTORY,eV as CYBERSKILL_PACKAGE_NAME,te as ESLINT_CLI,tv as ESLINT_INSPECT_CLI,th as ESLINT_INSPECT_PACKAGE_NAME,e9 as ESLINT_PACKAGE_NAME,tf as GIT_CLI,e5 as GIT_COMMIT_EDITMSG,e3 as GIT_HOOK,e1 as GIT_IGNORE,tO as HOOK,tc as LINT_STAGED_CLI,ti as LINT_STAGED_PACKAGE_NAME,tI as MIGRATE_MONGO_CLI,tE as MIGRATE_MONGO_PACKAGE_NAME,eX as NODE_MODULES,t_ as NODE_MODULES_INSPECT_CLI,ty as NODE_MODULES_INSPECT_PACKAGE_NAME,eQ as PACKAGE_JSON,eZ as PACKAGE_LOCK_JSON,tC as PATH,tn as PLAYWRIGHT_PACKAGE_NAME,tp as PNPM_CLI,td as PNPM_EXEC_CLI,e4 as PNPM_LOCK_YAML,tm as SIMPLE_GIT_HOOKS_PACKAGE_NAME,tg as SIMPLE_GIT_HOOK_CLI,e2 as SIMPLE_GIT_HOOK_JSON,e0 as TSCONFIG_JSON,tu as TSC_CLI,ts as TSC_PACKAGE_NAME,tl as TSX_CLI,tr as VITEST_CLI,tt as VITEST_PACKAGE_NAME,eq as WORKING_DIRECTORY,tw as command,eJ as join,eH as resolve,eW as resolveWorkingPath};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,c){try{var s=e[a](c);var i=s.value}catch(e){n(e);return}if(s.done){t(i)}else{Promise.resolve(i).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var c=e.apply(t,r);function s(e){n(c,o,a,s,i,"next",e)}function i(e){n(c,o,a,s,i,"throw",e)}s(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){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 s(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){o(e,t,n[t])})}return e}function i(e){return t(e)||a(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(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 f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=s(0),c["throw"]=s(1),c["return"]=s(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function s(e){return function(t){return i([e,t])}}function i(s){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,s[0]&&(a=0)),a)try{if(n=1,r&&(o=s[0]&2?r["return"]:s[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;if(r=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:a.label++;return{value:s[1],done:false};case 5:a.label++;r=s[1];s=[0];continue;case 7:s=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){a=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(s[0]===6&&a.label<o[1]){a.label=o[1];o=s;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(s);break}if(o[2])a.ops.pop();a.trys.pop();continue}s=t.call(e,a)}catch(e){s=[6,e];r=0}finally{n=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var p=Object.defineProperty;var d=function(e,t){return p(e,"name",{value:t,configurable:!0})};var m=".cyberskill-storage";import g from"dotenv";import{bool as v,cleanEnv as I,str as h}from"envalid";import y from"node:os";import E from"node:path";import _ from"node:process";g.config();function C(){var e={DEBUG:_.env.DEBUG||!1,CWD:_.env.CWD||_.cwd(),CYBERSKILL_STORAGE_DIRECTORY:_.env.CYBERSKILL_STORAGE_DIRECTORY||E.join(y.homedir(),m)};return I(e,{DEBUG:v(),CWD:h(),CYBERSKILL_STORAGE_DIRECTORY:h()})}d(C,"getEnv");var O=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as T}from"node:child_process";import S from"node:process";import*as G from"node:util";var N=function(e){return e.Error="error",e.Warning="warning",e}({});import b from"chalk";import L from"consola";import{GraphQLError as A}from"graphql";var w=C();w.DEBUG||(L.level=4);function M(e){var t=b[e];return typeof t=="function"?t:b.green}d(M,"chalkKeyword");var R={silent:L.silent,level:L.level,fatal:L.fatal,error:L.error,warn:L.warn,log:L.log,info:L.info,success:L.success,ready:L.ready,start:L.start,box:L.box,debug:L.debug,trace:L.trace,verbose:L.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)){L.box(b.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;L.log("".concat(b.gray("File:")," ").concat(b.blue("".concat(t).concat(r?":".concat(r):"")))),o&&L.log(" ".concat(M(n)("Rule:")," ").concat(o)),L.log(" ".concat(M(n)("Message:")," ").concat(a))}),L.box(M(n)("".concat(e," : ").concat(t.length))),L.log(b.gray("─".repeat(40)))}};var P={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import D from"node-fetch";import k from"fs-extra";var K=k.readFileSync,j=k.writeFileSync,F=k.pathExistsSync,x=k.appendFileSync,U=k.copySync,Y=k.removeSync,B=k.statSync,W=k.readJsonSync,H=k.writeJsonSync;function J(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return F(e)})}d(J,"existsSync");var $=C();function V(e){var t=eN($.CWD,eR);if(!J(t))return!1;try{var n=W(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,s=c===void 0?{}:c,i=r===e,u=e in a,l=e in s;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return R.warn("Failed to read package.json: ".concat(e.message)),!1}}d(V,"getPackage");function q(e){return X.apply(this,arguments)}function X(){X=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,D("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw R.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return X.apply(this,arguments)}d(q,"getLatestPackageVersion");function Q(e,t){return z.apply(this,arguments)}function z(){z=r(function(e,t){var n,r,o,a,c,i,u,l,p,d,m,g,v,I,h,y,E,_,C,O,T;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=V(e);if(!n)return[2,s({},P)];u=n.path,l=n.file,p=n.isCurrentProject,d=n.isDepend,m=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},v=(o=l.devDependencies)!==null&&o!==void 0?o:{},I=p?(a=l.version)!==null&&a!==void 0?a:"0.0.0":d?(c=g[e])!==null&&c!==void 0?c:"0.0.0":m?(i=v[e])!==null&&i!==void 0?i:"0.0.0":"0.0.0";if(!p)return[3,1];E=I;return[3,3];case 1:return[4,q(e)];case 2:E=f.sent();f.label=3;case 3:h=E,y=p||I===h;if(!y&&(t===null||t===void 0?void 0:t.update)){;C=d?"dependencies":m?"devDependencies":null;C&&((_=l[C])===null||_===void 0?void 0:_[e])!==h&&(l[C]=(O=l[C])!==null&&O!==void 0?O:{},l[C][e]=h,H(u,l),R.info('Updated "'.concat(e,'" to version ').concat(h)))}return[2,{isCurrentProject:p,installedPath:u,file:l,isUpToDate:y}];case 4:T=f.sent();return[2,(R.error('Error checking package "'.concat(e,'": ').concat(T.message)),s({},P))];case 5:return[2]}})});return z.apply(this,arguments)}d(Q,"checkPackage");function Z(){return ee.apply(this,arguments)}function ee(){ee=r(function(){var e,t,n,r,o,a,c,s,i,u,l,p;return f(this,function(f){switch(f.label){case 0:e=[{command:d(function(){return tu.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:d(function(){return tu.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:d(function(){return tu.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,s=c.command,i=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,s()];case 4:u=f.sent();return[4,eE("".concat(i," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();R.warn("Installation attempt failed: ".concat(i)),R.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:p=f.sent();n=true;r=p;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ee.apply(this,arguments)}d(Z,"installDependencies");function et(e,t){return en.apply(this,arguments)}function en(){en=r(function(e,t){var n,r,o,a,c,u,l,p,d,m,g;return f(this,function(f){switch(f.label){case 0:if(!J(to.PACKAGE_JSON)){R.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=i(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return Q(e,s({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,Z()];case 3:r=f.sent();f.label=4;case 4:r;a=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(p=l.next()).done))return[3,9];d=p.value;return[4,d()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:m=f.sent();c=true;u=m;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw R.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return en.apply(this,arguments)}d(et,"setupPackages");import er from"node-persist";var eo=C();function ea(){return ec.apply(this,arguments)}function ec(){ec=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=er.defaultInstance;if(e)return[3,2];return[4,er.init({dir:eo.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return ec.apply(this,arguments)}d(ea,"initNodePersist");var es={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ea()];case 1:r.sent();return[4,er.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(R.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ea()];case 1:r.sent();return[4,er.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();R.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ea()];case 1:n.sent();return[4,er.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();R.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ea()];case 1:n.sent();return[4,er.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(R.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(R.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eo.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(R.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ei=C(),eu=G.promisify(T);function el(e){return"error_list:".concat(e)}d(el,"getErrorListKey");function ef(e){return ep.apply(this,arguments)}function ep(){ep=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=el(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,es.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,es.getLogLink(n)];case 1:e=t.sent();e&&R.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();R.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return ep.apply(this,arguments)}d(ef,"saveErrorListToStorage");function ed(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var s,i,u,l,f;var p=o.exec(e)||[],d=a.exec(e)||[],m=c.exec(e)||[];var g,v,I,h,y,E;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===N.Error?N.Error:N.Warning,message:(g=p===null||p===void 0?void 0:(s=p[4])===null||s===void 0?void 0:s.trim())!==null&&g!==void 0?g:"",rule:(v=p===null||p===void 0?void 0:(i=p[5])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:""}):d.length?t.push({file:(I=d===null||d===void 0?void 0:d[1])!==null&&I!==void 0?I:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===N.Error?N.Error:N.Warning,message:(h=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):m.length?t.push({file:"commitlint",type:N.Error,message:(y=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&y!==void 0?y:"",rule:(E=m===null||m===void 0?void 0:(f=m[2])===null||f===void 0?void 0:f.trim())!==null&&E!==void 0?E:""}):n.push(e.trim())}}),t.length&&ef(t),ei.DEBUG&&n.length&&(R.warn("Unmatched lines:"),n.forEach(function(e){return R.info(" ".concat(e))}))}d(ed,"parseTextErrors");function em(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,c=e.ruleId,s=e.message;n.push({type:r===2?N.Error:N.Warning,file:t,position:"".concat(o,":").concat(a),rule:c,message:s})})}),n.length&&ef(n)}catch(t){ed(e)}}d(em,"parseCommandOutput");function eg(e){return ev.apply(this,arguments)}function ev(){ev=r(function(e){var t,n,r,o,a,c,s,i,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:em;n=new AbortController;S.on("SIGINT",function(){R.warn("Process interrupted. Terminating..."),n.abort(),S.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eu(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();s=c.stdout,i=c.stderr,u=c.message;[s,i].forEach(function(e){return e&&t(e)}),!i&&!s&&R.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return ev.apply(this,arguments)}d(eg,"executeCommand");function eI(e){return{raw:!0,cmd:e}}d(eI,"rawCommand");function eh(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e5," ").concat(eA," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e5," ").concat(e2," ").concat(eW," ").concat(e):"".concat(e5," ").concat(eB," ").concat(e)}d(eh,"formatCLI");function ey(e,t){return typeof e=="function"?eh(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eh(e,t):e}d(ey,"formatCommand");function eE(e,t){return e_.apply(this,arguments)}function e_(){e_=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);R.start("".concat(e)),ei.DEBUG&&R.info("→ ".concat(t));return[4,eg(t)];case 1:r.sent(),R.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw R.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return e_.apply(this,arguments)}d(eE,"runCommand");import{join as eC,resolve as eO}from"node:path";var eT=C();function eS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eO.apply(void 0,[eT.CWD].concat(i(t)))}d(eS,"resolveWorkingPath");function eG(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eO.apply(void 0,i(t))}d(eG,"resolve");function eN(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eC.apply(void 0,i(t))}d(eN,"join");var eb=C(),eL=eb.CWD,eA="@cyberskill/shared",ew="node_modules",eM="dist",eR="package.json",eP="package-lock.json",eD="tsconfig.json",ek=".gitignore",eK=".simple-git-hooks.json",ej="pnpm-lock.yaml",eF=".git/hooks/",ex=".git/COMMIT_EDITMSG",eU=".migrate-mongo.config.js",eY=eN(eL,ew,eA,eM),eB="cyberskill",eW="src/nodejs/cli/index.ts",eH="eslint",eJ="eslint",e$="vitest",eV="playwright",eq="vitest",eX="@commitlint/cli",eQ="commitlint",ez="lint-staged",eZ="lint-staged",e0="typescript",e1="tsc",e2="tsx",e3="git",e4="pnpm",e5="pnpm exec",e6="simple-git-hooks",e7="simple-git-hooks",e8="@eslint/config-inspector",e9="eslint-config-inspector",te="node-modules-inspector",tt="node-modules-inspector",tn="migrate-mongo",tr="./node_modules/migrate-mongo/bin/migrate-mongo",to={CYBERSKILL_DIRECTORY:eY,WORKING_DIRECTORY:eL,TS_CONFIG:eS(eD),GIT_IGNORE:eS(ek),GIT_HOOK:eS(eF),GIT_COMMIT_MSG:eS(ex),SIMPLE_GIT_HOOKS_JSON:eS(eK),PACKAGE_JSON:eS(eR),PACKAGE_LOCK_JSON:eS(eP),PNPM_LOCK_YAML:eS(ej),NODE_MODULES:eS(ew),MIGRATE_MONGO_CONFIG:eS(eU),LINT_STAGED_CONFIG:eS("".concat(eY,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eS("".concat(eY,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eS("".concat(eY,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eS("".concat(eY,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eS("".concat(eY,"/react/vitest/vitest.e2e.js"))};function ta(e){var t=e.isCurrentProject;return s({"pre-commit":eZ,"commit-msg":eQ},t&&{"pre-push":eI("".concat(e3," pull"))})}d(ta,"createGitHooksConfig");function tc(e,t,n){return ts.apply(this,arguments)}function ts(){ts=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case O.CLI:return[3,1];case O.STRING:return[3,3]}return[3,4];case 1:return[4,et(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ey(eI("".concat(e5," ").concat(n))))];case 3:return[2,ey(eI(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return ts.apply(this,arguments)}d(tc,"buildCommand");function ti(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,tc(e,t,n)]})})}d(ti,"commandFactory");var tu={simpleGitHooks:ti(O.CLI,e6,e7),eslintInspect:ti(O.CLI,e8,e9),nodeModulesInspect:ti(O.CLI,te,tt),eslintCheck:ti(O.CLI,eH,"".concat(eJ," ").concat(to.WORKING_DIRECTORY)),eslintFix:ti(O.CLI,eH,"".concat(eJ," ").concat(to.WORKING_DIRECTORY," --fix")),typescriptCheck:ti(O.CLI,e0,"".concat(e1," -p ").concat(to.TS_CONFIG," --noEmit")),configureGitHook:ti(O.STRING,"".concat(e3," config core.hooksPath ").concat(to.GIT_HOOK)),testUnit:ti(O.CLI,e$,"".concat(eq," --config ").concat(to.UNIT_TEST_CONFIG)),testE2e:ti(O.CLI,"".concat(e$," ").concat(eV),"".concat(eq," --config ").concat(to.E2E_TEST_CONFIG)),mongoMigrateCreate:d(function(e){return ti(O.CLI,tn,"".concat(e2," ").concat(tr," create ").concat(e," -f ").concat(to.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:ti(O.CLI,tn,"".concat(e2," ").concat(tr," up -f ").concat(to.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:ti(O.CLI,tn,"".concat(e2," ").concat(tr," down -f ").concat(to.MIGRATE_MONGO_CONFIG)),mongoMigrateStatus:ti(O.CLI,tn,"".concat(e2," ").concat(tr," status -f ").concat(to.MIGRATE_MONGO_CONFIG)),commitLint:ti(O.CLI,eX,"".concat(eQ," --edit ").concat(to.GIT_COMMIT_MSG," --config ").concat(to.COMMITLINT_CONFIG)),lintStaged:ti(O.CLI,ez,"".concat(eZ," --config ").concat(to.LINT_STAGED_CONFIG)),stageBuildDirectory:ti(O.STRING,"".concat(e3," add ").concat(eM)),build:ti(O.STRING,"".concat(e4," run build")),pnpmInstallStandard:ti(O.STRING,"".concat(e4," install")),pnpmInstallLegacy:ti(O.STRING,"".concat(e4," install --legacy-peer-deps")),pnpmInstallForce:ti(O.STRING,"".concat(e4," install --force"))};export{eM as BUILD_DIRECTORY,eQ as COMMIT_LINT_CLI,eX as COMMIT_LINT_PACKAGE_NAME,eB as CYBERSKILL_CLI,eW as CYBERSKILL_CLI_PATH,eY as CYBERSKILL_DIRECTORY,eA as CYBERSKILL_PACKAGE_NAME,eJ as ESLINT_CLI,e9 as ESLINT_INSPECT_CLI,e8 as ESLINT_INSPECT_PACKAGE_NAME,eH as ESLINT_PACKAGE_NAME,e3 as GIT_CLI,ex as GIT_COMMIT_EDITMSG,eF as GIT_HOOK,ek as GIT_IGNORE,eZ as LINT_STAGED_CLI,ez as LINT_STAGED_PACKAGE_NAME,tr as MIGRATE_MONGO_CLI,eU as MIGRATE_MONGO_CONFIG,tn as MIGRATE_MONGO_PACKAGE_NAME,ew as NODE_MODULES,tt as NODE_MODULES_INSPECT_CLI,te as NODE_MODULES_INSPECT_PACKAGE_NAME,eR as PACKAGE_JSON,eP as PACKAGE_LOCK_JSON,to as PATH,eV as PLAYWRIGHT_PACKAGE_NAME,e4 as PNPM_CLI,e5 as PNPM_EXEC_CLI,ej as PNPM_LOCK_YAML,e6 as SIMPLE_GIT_HOOKS_PACKAGE_NAME,e7 as SIMPLE_GIT_HOOK_CLI,eK as SIMPLE_GIT_HOOK_JSON,eD as TSCONFIG_JSON,e1 as TSC_CLI,e0 as TSC_PACKAGE_NAME,e2 as TSX_CLI,eq as VITEST_CLI,e$ as VITEST_PACKAGE_NAME,eL as WORKING_DIRECTORY,tu as command,ta as createGitHooksConfig,eN as join,eG as resolve,eS as resolveWorkingPath};
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,i,a){try{var u=e[i](a);var c=u.value}catch(e){n(e);return}if(u.done){t(c)}else{Promise.resolve(c).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,i){var a=e.apply(t,r);function u(e){n(a,o,i,u,c,"next",e)}function c(e){n(a,o,i,u,c,"throw",e)}u(undefined)})}}function o(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 i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function a(e){if(typeof WeakMap!=="function")return null;var t=new WeakMap;var n=new WeakMap;return(a=function(e){return e?n:t})(e)}function u(e,t){if(!t&&e&&e.__esModule){return e}if(e===null||typeof e!=="object"&&typeof e!=="function"){return{default:e}}var n=a(t);if(n&&n.has(e)){return n.get(e)}var r={__proto__:null};var o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e){if(i!=="default"&&Object.prototype.hasOwnProperty.call(e,i)){var u=o?Object.getOwnPropertyDescriptor(e,i):null;if(u&&(u.get||u.set)){Object.defineProperty(r,i,u)}else{r[i]=e[i]}}}r.default=e;if(n){n.set(e,r)}return r}function c(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function s(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(e){for(var t=1;t<arguments.length;t++){var 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){o(e,t,n[t])})}return e}function f(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 d(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{f(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function _(e){return t(e)||c(e)||E(e)||s()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function E(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 I(e,t){var n,r,o,i={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=u(0),a["throw"]=u(1),a["return"]=u(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function u(e){return function(t){return c([e,t])}}function c(u){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,u[0]&&(i=0)),i)try{if(n=1,r&&(o=u[0]&2?r["return"]:u[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;if(r=0,o)u=[u[0]&2,o.value];switch(u[0]){case 0:case 1:o=u;break;case 4:i.label++;return{value:u[1],done:false};case 5:i.label++;r=u[1];u=[0];continue;case 7:u=i.ops.pop();i.trys.pop();continue;default:if(!(o=i.trys,o=o.length>0&&o[o.length-1])&&(u[0]===6||u[0]===2)){i=0;continue}if(u[0]===3&&(!o||u[1]>o[0]&&u[1]<o[3])){i.label=u[1];break}if(u[0]===6&&i.label<o[1]){i.label=o[1];o=u;break}if(o&&i.label<o[2]){i.label=o[2];i.ops.push(u);break}if(o[2])i.ops.pop();i.trys.pop();continue}u=t.call(e,i)}catch(e){u=[6,e];r=0}finally{n=o=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}}var g=Object.create;var v=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var C=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var O=function(e,t){return v(e,"name",{value:t,configurable:!0})};var T=function(e,t){for(var n in t)v(e,n,{get:t[n],enumerable:!0})},S=function(e,t,n,r){var o=true,i=false,a=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var u=function(){var o=s.value;!m.call(e,o)&&o!==n&&v(e,o,{get:function(){return t[o]},enumerable:!(r=h(t,o))||r.enumerable})};for(var c=y(t)[Symbol.iterator](),s;!(o=(s=c.next()).done);o=true)u()}catch(e){i=true;a=e}finally{try{if(!o&&c.return!=null){c.return()}}finally{if(i){throw a}}}return e};var A=function(e,t,n){return n=e!=null?g(C(e)):{},S(t||!e||!e.__esModule?v(n,"default",{value:e,enumerable:!0}):n,e)},L=function(e){return S(v({},"__esModule",{value:!0}),e)};var N={};T(N,{BUILD_DIRECTORY:function(){return e5},COMMIT_LINT_CLI:function(){return t_},COMMIT_LINT_PACKAGE_NAME:function(){return td},CYBERSKILL_CLI:function(){return ti},CYBERSKILL_CLI_PATH:function(){return ta},CYBERSKILL_DIRECTORY:function(){return to},CYBERSKILL_PACKAGE_NAME:function(){return e4},ESLINT_CLI:function(){return tc},ESLINT_INSPECT_CLI:function(){return tS},ESLINT_INSPECT_PACKAGE_NAME:function(){return tT},ESLINT_PACKAGE_NAME:function(){return tu},GIT_CLI:function(){return th},GIT_COMMIT_EDITMSG:function(){return tr},GIT_HOOK:function(){return tn},GIT_IGNORE:function(){return e9},HOOK:function(){return tb},LINT_STAGED_CLI:function(){return tE},LINT_STAGED_PACKAGE_NAME:function(){return tp},MIGRATE_MONGO_CLI:function(){return tP},MIGRATE_MONGO_PACKAGE_NAME:function(){return tN},NODE_MODULES:function(){return e3},NODE_MODULES_INSPECT_CLI:function(){return tL},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return tA},PACKAGE_JSON:function(){return e6},PACKAGE_LOCK_JSON:function(){return e7},PATH:function(){return tG},PLAYWRIGHT_PACKAGE_NAME:function(){return tl},PNPM_CLI:function(){return ty},PNPM_EXEC_CLI:function(){return tC},PNPM_LOCK_YAML:function(){return tt},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return tm},SIMPLE_GIT_HOOK_CLI:function(){return tO},SIMPLE_GIT_HOOK_JSON:function(){return te},TSCONFIG_JSON:function(){return e8},TSC_CLI:function(){return tg},TSC_PACKAGE_NAME:function(){return tI},TSX_CLI:function(){return tv},VITEST_CLI:function(){return tf},VITEST_PACKAGE_NAME:function(){return ts},WORKING_DIRECTORY:function(){return e2},command:function(){return tD}});module.exports=L(N);var P=".cyberskill-storage";var G=A(require("dotenv"),1),b=require("envalid"),M=A(require("os"),1),w=A(require("path"),1),R=A(require("process"),1);G.default.config();function D(){var e={DEBUG:R.default.env.DEBUG||!1,CWD:R.default.env.CWD||R.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:R.default.env.CYBERSKILL_STORAGE_DIRECTORY||w.default.join(M.default.homedir(),P)};return(0,b.cleanEnv)(e,{DEBUG:(0,b.bool)(),CWD:(0,b.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,b.str)()})}O(D,"getEnv");var K="MONGO_MIGRATE_OPTIONS";var j=require("mongodb"),U=require("mongoose");var k=require("date-fns"),Y=A(require("migrate-mongo"),1),x=require("mongoose"),F=A(require("mongoose-aggregate-paginate-v2"),1),q=A(require("mongoose-paginate-v2"),1),H=require("uuid");var B=A(require("node-persist"),1);var W=function(e){return e.Error="error",e.Warning="warning",e}({});var J=A(require("chalk"),1),V=A(require("consola"),1),$=require("graphql");var X=D();X.DEBUG||(V.default.level=4);function Q(e){var t=J.default[e];return typeof t=="function"?t:J.default.green}O(Q,"chalkKeyword");var z={silent:V.default.silent,level:V.default.level,fatal:V.default.fatal,error:V.default.error,warn:V.default.warn,log:V.default.log,info:V.default.info,success:V.default.success,ready:V.default.ready,start:V.default.start,box:V.default.box,debug:V.default.debug,trace:V.default.trace,verbose:V.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)){V.default.box(J.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,i=e.message;V.default.log("".concat(J.default.gray("File:")," ").concat(J.default.blue("".concat(t).concat(r?":".concat(r):"")))),o&&V.default.log(" ".concat(Q(n)("Rule:")," ").concat(o)),V.default.log(" ".concat(Q(n)("Message:")," ").concat(i))}),V.default.box(Q(n)("".concat(e," : ").concat(t.length))),V.default.log(J.default.gray("─".repeat(40)))}};var Z=D();function ee(){return et.apply(this,arguments)}function et(){et=r(function(){var e;return I(this,function(t){switch(t.label){case 0:e=B.default.defaultInstance;if(e)return[3,2];return[4,B.default.init({dir:Z.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return et.apply(this,arguments)}O(ee,"initNodePersist");var en={get:function e(e){return r(function(){var t,n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ee()];case 1:r.sent();return[4,B.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(z.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ee()];case 1:r.sent();return[4,B.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();z.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return I(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ee()];case 1:n.sent();return[4,B.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();z.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return I(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ee()];case 1:n.sent();return[4,B.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(z.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(z.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return I(this,function(t){try{return[2,"".concat(Z.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(z.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var er=A(require("crypto-js"),1),eo=A(require("slugify"),1);var ei=eo.default.default||eo.default;var ea={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":p(e))=="object"?i(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var eu={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,k.format)(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?eu.getDateTime():new Date;return{id:(0,H.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,o=t.post;n&&r&&e.pre(n,r),n&&o&&e.post(n,o)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:H.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,o=r===void 0?[]:r,i=e.standalone,a=i===void 0?!1:i;var u=new t.Schema(n,{strict:!0});return o.forEach(function(e){var t=e.name,n=e.options,r=e.get;var o=u.virtual(t,n);r&&o.get(r)}),a||u.add(eu.createGenericSchema(t)),u},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,o=e.pagination,i=o===void 0?!1:o,a=e.aggregate,u=a===void 0?!1:a,c=e.virtuals,s=c===void 0?[]:c,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=eu.createSchema({mongoose:t,schema:r,virtuals:s});return eu.applyPlugins(d,[i&&q.default,u&&F.default]),eu.applyMiddlewares(d,f),t.model(n,d)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return d(l({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=r(function(e){return I(this,function(t){return[2,!ea.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=r(function(t){var n;return I(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=r(function(t){return I(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!i(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:{withConfig:O(/*#__PURE__*/function(){var e=r(function(e,t){var n,r,o,i;return I(this,function(a){switch(a.label){case 0:return[4,en.get(K)];case 1:n=a.sent();if(!n)throw new Error("Missing migrate config");if(Y.default.config.set(n),!t)return[2,e(void 0)];return[4,Y.default.database.connect()];case 2:r=a.sent(),o=r.db,i=r.client;a.label=3;case 3:a.trys.push([3,,5,7]);return[4,e({db:o,client:i})];case 4:return[2,a.sent()];case 5:return[4,i.close()];case 6:a.sent();return[7];case 7:return[2]}})});return function(t,n){return e.apply(this,arguments)}}(),"withConfig"),init:O(/*#__PURE__*/r(function(){return I(this,function(e){switch(e.label){case 0:return[4,Y.default.init()];case 1:e.sent();return[2]}})}),"init"),create:O(/*#__PURE__*/function(){var e=r(function(e){return I(this,function(t){switch(t.label){case 0:return[4,eu.migrate.withConfig(function(){return Y.default.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:O(/*#__PURE__*/r(function(){return I(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/u(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,eu.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return I(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,Y.default.up(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:O(/*#__PURE__*/r(function(){return I(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/u(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,eu.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return I(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,Y.default.down(t,n)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:O(/*#__PURE__*/r(function(){return I(this,function(e){switch(e.label){case 0:return[4,eu.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t;return I(this,function(n){switch(n.label){case 0:t=e.db;return[4,Y.default.status(t)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:O(function(e){en.set(K,e)},"config")}};var ec=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var es=require("child_process"),el=A(require("process"),1),ef=A(require("util"),1);var ed={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var e_=A(require("node-fetch"),1);var ep=A(require("fs-extra"),1),eE=require("path");var eI=ep.default,eg=eI.readFileSync,ev=eI.writeFileSync,eh=eI.pathExistsSync,ey=eI.appendFileSync,eC=eI.copySync,em=eI.removeSync,eO=eI.statSync,eT=ep.default.readJsonSync,eS=ep.default.writeJsonSync;function eA(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eh(e)})}O(eA,"existsSync");var eL=require("path");var eN=D();function eP(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eL.resolve).apply(this,[eN.CWD].concat(_(t)))}O(eP,"resolveWorkingPath");function eG(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eL.join).apply(this,_(t))}O(eG,"join");var eb=D();function eM(e){var t=eG(eb.CWD,e6);if(!eA(t))return!1;try{var n=eT(t),r=n.name,o=n.dependencies,i=o===void 0?{}:o,a=n.devDependencies,u=a===void 0?{}:a,c=r===e,s=e in i,l=e in u;return c||s||l?{path:t,file:n,isCurrentProject:c,isDepend:s,isDevDepend:l}:!1}catch(e){return z.warn("Failed to read package.json: ".concat(e.message)),!1}}O(eM,"getPackage");function ew(e){return eR.apply(this,arguments)}function eR(){eR=r(function(e){var t,n,r,o;return I(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,(0,e_.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=i.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=i.sent(),r=n.version;return[2,r];case 3:o=i.sent();throw z.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return eR.apply(this,arguments)}O(ew,"getLatestPackageVersion");function eD(e,t){return eK.apply(this,arguments)}function eK(){eK=r(function(e,t){var n,r,o,i,a,u,c,s,f,d,_,p,E,g,v,h,y,C,m,O,T;return I(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=eM(e);if(!n)return[2,l({},ed)];c=n.path,s=n.file,f=n.isCurrentProject,d=n.isDepend,_=n.isDevDepend,p=(r=s.dependencies)!==null&&r!==void 0?r:{},E=(o=s.devDependencies)!==null&&o!==void 0?o:{},g=f?(i=s.version)!==null&&i!==void 0?i:"0.0.0":d?(a=p[e])!==null&&a!==void 0?a:"0.0.0":_?(u=E[e])!==null&&u!==void 0?u:"0.0.0":"0.0.0";if(!f)return[3,1];y=g;return[3,3];case 1:return[4,ew(e)];case 2:y=I.sent();I.label=3;case 3:v=y,h=f||g===v;if(!h&&(t===null||t===void 0?void 0:t.update)){;m=d?"dependencies":_?"devDependencies":null;m&&((C=s[m])===null||C===void 0?void 0:C[e])!==v&&(s[m]=(O=s[m])!==null&&O!==void 0?O:{},s[m][e]=v,eS(c,s),z.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:f,installedPath:c,file:s,isUpToDate:h}];case 4:T=I.sent();return[2,(z.error('Error checking package "'.concat(e,'": ').concat(T.message)),l({},ed))];case 5:return[2]}})});return eK.apply(this,arguments)}O(eD,"checkPackage");function ej(){return eU.apply(this,arguments)}function eU(){eU=r(function(){var e,t,n,r,o,i,a,u,c,s,l,f;return I(this,function(d){switch(d.label){case 0:e=[{command:O(function(){return tD.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:O(function(){return tD.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:O(function(){return tD.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);o=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(i=o.next()).done))return[3,8];a=i.value,u=a.command,c=a.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,u()];case 4:s=d.sent();return[4,eZ("".concat(c," using: ").concat(s),s)];case 5:d.sent();return[2];case 6:l=d.sent();z.warn("Installation attempt failed: ".concat(c)),z.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eU.apply(this,arguments)}O(ej,"installDependencies");function ek(e,t){return eY.apply(this,arguments)}function eY(){eY=r(function(e,t){var n,r,o,i,a,u,c,s,f,d,p;return I(this,function(E){switch(E.label){case 0:if(!eA(tG.PACKAGE_JSON)){z.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=_(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eD(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ej()];case 3:r=E.sent();E.label=4;case 4:r;i=true,a=false,u=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);c=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();E.label=6;case 6:if(!!(i=(s=c.next()).done))return[3,9];f=s.value;return[4,f()];case 7:E.sent();E.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:d=E.sent();a=true;u=d;return[3,12];case 11:try{if(!i&&c.return!=null){c.return()}}finally{if(a){throw u}}return[7];case 12:return[3,14];case 13:p=E.sent();throw z.error('Failed to setup "'.concat(e.join(", "),'": ').concat(p.message)),p;case 14:return[2]}})});return eY.apply(this,arguments)}O(ek,"setupPackages");var ex=D(),eF=ef.promisify(es.exec);function eq(e){return"error_list:".concat(e)}O(eq,"getErrorListKey");function eH(e){return eB.apply(this,arguments)}function eB(){eB=r(function(e){var t,n,o;return I(this,function(i){switch(i.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eq(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,en.set(n,{errors:e,timestamp:t})];case 2:i.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return I(this,function(t){switch(t.label){case 0:return[4,en.getLogLink(n)];case 1:e=t.sent();e&&z.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=i.sent();z.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return eB.apply(this,arguments)}O(eH,"saveErrorListToStorage");function eW(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,i=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var u,c,s,l,f;var d=o.exec(e)||[],_=i.exec(e)||[],p=a.exec(e)||[];var E,I,g,v,h,y;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===W.Error?W.Error:W.Warning,message:(E=d===null||d===void 0?void 0:(u=d[4])===null||u===void 0?void 0:u.trim())!==null&&E!==void 0?E:"",rule:(I=d===null||d===void 0?void 0:(c=d[5])===null||c===void 0?void 0:c.trim())!==null&&I!==void 0?I:""}):_.length?t.push({file:(g=_===null||_===void 0?void 0:_[1])!==null&&g!==void 0?g:"",position:"".concat(_[2],":").concat(_[3]),type:_[4]===W.Error?W.Error:W.Warning,message:(v=_===null||_===void 0?void 0:(s=_[5])===null||s===void 0?void 0:s.trim())!==null&&v!==void 0?v:""}):p.length?t.push({file:"commitlint",type:W.Error,message:(h=p===null||p===void 0?void 0:(l=p[1])===null||l===void 0?void 0:l.trim())!==null&&h!==void 0?h:"",rule:(y=p===null||p===void 0?void 0:(f=p[2])===null||f===void 0?void 0:f.trim())!==null&&y!==void 0?y:""}):n.push(e.trim())}}),t.length&&eH(t),ex.DEBUG&&n.length&&(z.warn("Unmatched lines:"),n.forEach(function(e){return z.info(" ".concat(e))}))}O(eW,"parseTextErrors");function eJ(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,i=e.column,a=e.ruleId,u=e.message;n.push({type:r===2?W.Error:W.Warning,file:t,position:"".concat(o,":").concat(i),rule:a,message:u})})}),n.length&&eH(n)}catch(t){eW(e)}}O(eJ,"parseCommandOutput");function eV(e){return e$.apply(this,arguments)}function e$(){e$=r(function(e){var t,n,r,o,i,a,u,c,s;var l=arguments;return I(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eJ;n=new AbortController;el.default.on("SIGINT",function(){z.warn("Process interrupted. Terminating..."),n.abort(),el.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eF(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,i=r.stderr;[o,i].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:a=f.sent();u=a.stdout,c=a.stderr,s=a.message;[u,c].forEach(function(e){return e&&t(e)}),!c&&!u&&z.error("Command failed: ".concat(s));return[3,5];case 5:return[2]}})});return e$.apply(this,arguments)}O(eV,"executeCommand");function eX(e){return{raw:!0,cmd:e}}O(eX,"rawCommand");function eQ(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tC," ").concat(e4," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tC," ").concat(tv," ").concat(ta," ").concat(e):"".concat(tC," ").concat(ti," ").concat(e)}O(eQ,"formatCLI");function ez(e,t){return typeof e=="function"?eQ(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eQ(e,t):e}O(ez,"formatCommand");function eZ(e,t){return e0.apply(this,arguments)}function e0(){e0=r(function(e,t){var n;return I(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);z.start("".concat(e)),ex.DEBUG&&z.info("→ ".concat(t));return[4,eV(t)];case 1:r.sent(),z.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw z.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return e0.apply(this,arguments)}O(eZ,"runCommand");var e1=D(),e2=e1.CWD,e4="@cyberskill/shared",e3="node_modules",e5="dist",e6="package.json",e7="package-lock.json",e8="tsconfig.json",e9=".gitignore",te=".simple-git-hooks.json",tt="pnpm-lock.yaml",tn=".git/hooks/",tr=".git/COMMIT_EDITMSG",to=eG(e2,e3,e4,e5),ti="cyberskill",ta="src/nodejs/cli/index.ts",tu="eslint",tc="eslint",ts="vitest",tl="playwright",tf="vitest",td="@commitlint/cli",t_="commitlint",tp="lint-staged",tE="lint-staged",tI="typescript",tg="tsc",tv="tsx",th="git",ty="pnpm",tC="pnpm exec",tm="simple-git-hooks",tO="simple-git-hooks",tT="@eslint/config-inspector",tS="eslint-config-inspector",tA="node-modules-inspector",tL="node-modules-inspector",tN="migrate-mongo",tP="migrate-mongo",tG={CYBERSKILL_DIRECTORY:to,WORKING_DIRECTORY:e2,TS_CONFIG:eP(e8),GIT_IGNORE:eP(e9),GIT_HOOK:eP(tn),GIT_COMMIT_MSG:eP(tr),SIMPLE_GIT_HOOKS_JSON:eP(te),PACKAGE_JSON:eP(e6),PACKAGE_LOCK_JSON:eP(e7),PNPM_LOCK_YAML:eP(tt),NODE_MODULES:eP(e3),LINT_STAGED_CONFIG:eP("".concat(to,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eP("".concat(to,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eP("".concat(to,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eP("".concat(to,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eP("".concat(to,"/react/vitest/vitest.e2e.js"))};function tb(e){var t=e.isCurrentProject;return l({"pre-commit":tE,"commit-msg":t_},t&&{"pre-push":eX("".concat(th," pull"))})}O(tb,"HOOK");function tM(e,t,n){return tw.apply(this,arguments)}function tw(){tw=r(function(e,t,n){return I(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ec.CLI:return[3,1];case ec.STRING:return[3,3];case ec.FUNCTION:return[3,4]}return[3,6];case 1:return[4,ek(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ez(eX("".concat(tC," ").concat(n))))];case 3:return[2,ez(eX(t))];case 4:return[4,ek(t.split(" "),{update:!0})];case 5:if(r.sent(),typeof n=="function")return[2,n()];throw new Error("'second' argument is not a callable function");case 6:throw new Error("Unsupported command type");case 7:return[2]}})});return tw.apply(this,arguments)}O(tM,"buildCommand");function tR(e,t,n){return /*#__PURE__*/r(function(){return I(this,function(r){return[2,tM(e,t,n)]})})}O(tR,"commandFactory");var tD={simpleGitHooks:tR(ec.CLI,tm,tO),eslintInspect:tR(ec.CLI,tT,tS),nodeModulesInspect:tR(ec.CLI,tA,tL),eslintCheck:tR(ec.CLI,tu,"".concat(tc," ").concat(tG.WORKING_DIRECTORY)),eslintFix:tR(ec.CLI,tu,"".concat(tc," ").concat(tG.WORKING_DIRECTORY," --fix")),typescriptCheck:tR(ec.CLI,tI,"".concat(tg," -p ").concat(tG.TS_CONFIG," --noEmit")),configureGitHook:tR(ec.STRING,"".concat(th," config core.hooksPath ").concat(tG.GIT_HOOK)),testUnit:tR(ec.CLI,ts,"".concat(tf," --config ").concat(tG.UNIT_TEST_CONFIG)),testE2e:tR(ec.CLI,"".concat(ts," ").concat(tl),"".concat(tf," --config ").concat(tG.E2E_TEST_CONFIG)),mongoMigrateCreate:O(function(e){return tR(ec.FUNCTION,"".concat(tN),function(){return eu.migrate.create(e)})()},"mongoMigrateCreate"),mongoMigrateUp:tR(ec.FUNCTION,"".concat(tN),eu.migrate.up),mongoMigrateDown:tR(ec.FUNCTION,"".concat(tN),eu.migrate.down),commitLint:tR(ec.CLI,td,"".concat(t_," --edit ").concat(tG.GIT_COMMIT_MSG," --config ").concat(tG.COMMITLINT_CONFIG)),lintStaged:tR(ec.CLI,tp,"".concat(tE," --config ").concat(tG.LINT_STAGED_CONFIG)),stageBuildDirectory:tR(ec.STRING,"".concat(th," add ").concat(e5)),build:tR(ec.STRING,"".concat(ty," run build")),pnpmInstallStandard:tR(ec.STRING,"".concat(ty," install")),pnpmInstallLegacy:tR(ec.STRING,"".concat(ty," install --legacy-peer-deps")),pnpmInstallForce:tR(ec.STRING,"".concat(ty," install --force"))};0&&(module.exports={BUILD_DIRECTORY:BUILD_DIRECTORY,COMMIT_LINT_CLI:COMMIT_LINT_CLI,COMMIT_LINT_PACKAGE_NAME:COMMIT_LINT_PACKAGE_NAME,CYBERSKILL_CLI:CYBERSKILL_CLI,CYBERSKILL_CLI_PATH:CYBERSKILL_CLI_PATH,CYBERSKILL_DIRECTORY:CYBERSKILL_DIRECTORY,CYBERSKILL_PACKAGE_NAME:CYBERSKILL_PACKAGE_NAME,ESLINT_CLI:ESLINT_CLI,ESLINT_INSPECT_CLI:ESLINT_INSPECT_CLI,ESLINT_INSPECT_PACKAGE_NAME:ESLINT_INSPECT_PACKAGE_NAME,ESLINT_PACKAGE_NAME:ESLINT_PACKAGE_NAME,GIT_CLI:GIT_CLI,GIT_COMMIT_EDITMSG:GIT_COMMIT_EDITMSG,GIT_HOOK:GIT_HOOK,GIT_IGNORE:GIT_IGNORE,HOOK:HOOK,LINT_STAGED_CLI:LINT_STAGED_CLI,LINT_STAGED_PACKAGE_NAME:LINT_STAGED_PACKAGE_NAME,MIGRATE_MONGO_CLI:MIGRATE_MONGO_CLI,MIGRATE_MONGO_PACKAGE_NAME:MIGRATE_MONGO_PACKAGE_NAME,NODE_MODULES:NODE_MODULES,NODE_MODULES_INSPECT_CLI:NODE_MODULES_INSPECT_CLI,NODE_MODULES_INSPECT_PACKAGE_NAME:NODE_MODULES_INSPECT_PACKAGE_NAME,PACKAGE_JSON:PACKAGE_JSON,PACKAGE_LOCK_JSON:PACKAGE_LOCK_JSON,PATH:PATH,PLAYWRIGHT_PACKAGE_NAME:PLAYWRIGHT_PACKAGE_NAME,PNPM_CLI:PNPM_CLI,PNPM_EXEC_CLI:PNPM_EXEC_CLI,PNPM_LOCK_YAML:PNPM_LOCK_YAML,SIMPLE_GIT_HOOKS_PACKAGE_NAME:SIMPLE_GIT_HOOKS_PACKAGE_NAME,SIMPLE_GIT_HOOK_CLI:SIMPLE_GIT_HOOK_CLI,SIMPLE_GIT_HOOK_JSON:SIMPLE_GIT_HOOK_JSON,TSCONFIG_JSON:TSCONFIG_JSON,TSC_CLI:TSC_CLI,TSC_PACKAGE_NAME:TSC_PACKAGE_NAME,TSX_CLI:TSX_CLI,VITEST_CLI:VITEST_CLI,VITEST_PACKAGE_NAME:VITEST_PACKAGE_NAME,WORKING_DIRECTORY:WORKING_DIRECTORY,command:command});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,c){try{var i=e[a](c);var u=i.value}catch(e){n(e);return}if(i.done){t(u)}else{Promise.resolve(u).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var c=e.apply(t,r);function i(e){n(c,o,a,i,u,"next",e)}function u(e){n(c,o,a,i,u,"throw",e)}i(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){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 i(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){o(e,t,n[t])})}return e}function u(e){return t(e)||a(e)||l(e)||c()}function s(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(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 f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return u([e,t])}}function u(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(a=0)),a)try{if(n=1,r&&(o=i[0]&2?r["return"]:i[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;if(r=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:a.label++;return{value:i[1],done:false};case 5:a.label++;r=i[1];i=[0];continue;case 7:i=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){a=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(i[0]===6&&a.label<o[1]){a.label=o[1];o=i;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(i);break}if(o[2])a.ops.pop();a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e];r=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var _=Object.create;var I=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var C=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var T=function(e,t){return I(e,"name",{value:t,configurable:!0})};var O=function(e,t){for(var n in t)I(e,n,{get:t[n],enumerable:!0})},v=function(e,t,n,r){var o=true,a=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":s(t))=="object"||typeof t=="function")try{var i=function(){var o=l.value;!p.call(e,o)&&o!==n&&I(e,o,{get:function(){return t[o]},enumerable:!(r=d(t,o))||r.enumerable})};for(var u=E(t)[Symbol.iterator](),l;!(o=(l=u.next()).done);o=true)i()}catch(e){a=true;c=e}finally{try{if(!o&&u.return!=null){u.return()}}finally{if(a){throw c}}}return e};var g=function(e,t,n){return n=e!=null?_(C(e)):{},v(t||!e||!e.__esModule?I(n,"default",{value:e,enumerable:!0}):n,e)},S=function(e){return v(I({},"__esModule",{value:!0}),e)};var L={};O(L,{BUILD_DIRECTORY:function(){return eF},COMMIT_LINT_CLI:function(){return e5},COMMIT_LINT_PACKAGE_NAME:function(){return e4},CYBERSKILL_CLI:function(){return ez},CYBERSKILL_CLI_PATH:function(){return eQ},CYBERSKILL_DIRECTORY:function(){return e$},CYBERSKILL_PACKAGE_NAME:function(){return ej},ESLINT_CLI:function(){return e0},ESLINT_INSPECT_CLI:function(){return ti},ESLINT_INSPECT_PACKAGE_NAME:function(){return tc},ESLINT_PACKAGE_NAME:function(){return eZ},GIT_CLI:function(){return tt},GIT_COMMIT_EDITMSG:function(){return eV},GIT_HOOK:function(){return eq},GIT_IGNORE:function(){return eH},LINT_STAGED_CLI:function(){return e7},LINT_STAGED_PACKAGE_NAME:function(){return e6},MIGRATE_MONGO_CLI:function(){return tf},MIGRATE_MONGO_CONFIG:function(){return eX},MIGRATE_MONGO_PACKAGE_NAME:function(){return tl},NODE_MODULES:function(){return eY},NODE_MODULES_INSPECT_CLI:function(){return ts},NODE_MODULES_INSPECT_PACKAGE_NAME:function(){return tu},PACKAGE_JSON:function(){return eU},PACKAGE_LOCK_JSON:function(){return ex},PATH:function(){return t_},PLAYWRIGHT_PACKAGE_NAME:function(){return e2},PNPM_CLI:function(){return tn},PNPM_EXEC_CLI:function(){return tr},PNPM_LOCK_YAML:function(){return eW},SIMPLE_GIT_HOOKS_PACKAGE_NAME:function(){return to},SIMPLE_GIT_HOOK_CLI:function(){return ta},SIMPLE_GIT_HOOK_JSON:function(){return eJ},TSCONFIG_JSON:function(){return eB},TSC_CLI:function(){return e9},TSC_PACKAGE_NAME:function(){return e8},TSX_CLI:function(){return te},VITEST_CLI:function(){return e3},VITEST_PACKAGE_NAME:function(){return e1},WORKING_DIRECTORY:function(){return ek},command:function(){return tp},createGitHooksConfig:function(){return tI}});module.exports=S(L);var N=".cyberskill-storage";var G=g(require("dotenv"),1),m=require("envalid"),A=g(require("os"),1),h=g(require("path"),1),y=g(require("process"),1);G.default.config();function M(){var e={DEBUG:y.default.env.DEBUG||!1,CWD:y.default.env.CWD||y.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:y.default.env.CYBERSKILL_STORAGE_DIRECTORY||h.default.join(A.default.homedir(),N)};return(0,m.cleanEnv)(e,{DEBUG:(0,m.bool)(),CWD:(0,m.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,m.str)()})}T(M,"getEnv");var P=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var b=require("child_process"),R=g(require("process"),1),K=g(require("util"),1);var D=function(e){return e.Error="error",e.Warning="warning",e}({});var w=g(require("chalk"),1),k=g(require("consola"),1),j=require("graphql");var Y=M();Y.DEBUG||(k.default.level=4);function F(e){var t=w.default[e];return typeof t=="function"?t:w.default.green}T(F,"chalkKeyword");var U={silent:k.default.silent,level:k.default.level,fatal:k.default.fatal,error:k.default.error,warn:k.default.warn,log:k.default.log,info:k.default.info,success:k.default.success,ready:k.default.ready,start:k.default.start,box:k.default.box,debug:k.default.debug,trace:k.default.trace,verbose:k.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){k.default.box(w.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;k.default.log("".concat(w.default.gray("File:")," ").concat(w.default.blue("".concat(t).concat(r?":".concat(r):"")))),o&&k.default.log(" ".concat(F(n)("Rule:")," ").concat(o)),k.default.log(" ".concat(F(n)("Message:")," ").concat(a))}),k.default.box(F(n)("".concat(e," : ").concat(t.length))),k.default.log(w.default.gray("─".repeat(40)))}};var x={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var B=g(require("node-fetch"),1);var H=g(require("fs-extra"),1),J=require("path");var W=H.default,q=W.readFileSync,V=W.writeFileSync,X=W.pathExistsSync,$=W.appendFileSync,z=W.copySync,Q=W.removeSync,Z=W.statSync,ee=H.default.readJsonSync,et=H.default.writeJsonSync;function en(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return X(e)})}T(en,"existsSync");var er=require("path");var eo=M();function ea(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,er.resolve).apply(this,[eo.CWD].concat(u(t)))}T(ea,"resolveWorkingPath");function ec(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,er.join).apply(this,u(t))}T(ec,"join");var ei=M();function eu(e){var t=ec(ei.CWD,eU);if(!en(t))return!1;try{var n=ee(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,i=c===void 0?{}:c,u=r===e,s=e in a,l=e in i;return u||s||l?{path:t,file:n,isCurrentProject:u,isDepend:s,isDevDepend:l}:!1}catch(e){return U.warn("Failed to read package.json: ".concat(e.message)),!1}}T(eu,"getPackage");function es(e){return el.apply(this,arguments)}function el(){el=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,B.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw U.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return el.apply(this,arguments)}T(es,"getLatestPackageVersion");function ef(e,t){return e_.apply(this,arguments)}function e_(){e_=r(function(e,t){var n,r,o,a,c,u,s,l,_,I,d,E,C,p,T,O,v,g,S,L,N;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=eu(e);if(!n)return[2,i({},x)];s=n.path,l=n.file,_=n.isCurrentProject,I=n.isDepend,d=n.isDevDepend,E=(r=l.dependencies)!==null&&r!==void 0?r:{},C=(o=l.devDependencies)!==null&&o!==void 0?o:{},p=_?(a=l.version)!==null&&a!==void 0?a:"0.0.0":I?(c=E[e])!==null&&c!==void 0?c:"0.0.0":d?(u=C[e])!==null&&u!==void 0?u:"0.0.0":"0.0.0";if(!_)return[3,1];v=p;return[3,3];case 1:return[4,es(e)];case 2:v=f.sent();f.label=3;case 3:T=v,O=_||p===T;if(!O&&(t===null||t===void 0?void 0:t.update)){;S=I?"dependencies":d?"devDependencies":null;S&&((g=l[S])===null||g===void 0?void 0:g[e])!==T&&(l[S]=(L=l[S])!==null&&L!==void 0?L:{},l[S][e]=T,et(s,l),U.info('Updated "'.concat(e,'" to version ').concat(T)))}return[2,{isCurrentProject:_,installedPath:s,file:l,isUpToDate:O}];case 4:N=f.sent();return[2,(U.error('Error checking package "'.concat(e,'": ').concat(N.message)),i({},x))];case 5:return[2]}})});return e_.apply(this,arguments)}T(ef,"checkPackage");function eI(){return ed.apply(this,arguments)}function ed(){ed=r(function(){var e,t,n,r,o,a,c,i,u,s,l,_;return f(this,function(f){switch(f.label){case 0:e=[{command:T(function(){return tp.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:T(function(){return tp.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:T(function(){return tp.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,i=c.command,u=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:s=f.sent();return[4,eK("".concat(u," using: ").concat(s),s)];case 5:f.sent();return[2];case 6:l=f.sent();U.warn("Installation attempt failed: ".concat(u)),U.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:_=f.sent();n=true;r=_;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ed.apply(this,arguments)}T(eI,"installDependencies");function eE(e,t){return eC.apply(this,arguments)}function eC(){eC=r(function(e,t){var n,r,o,a,c,s,l,_,I,d,E;return f(this,function(f){switch(f.label){case 0:if(!en(t_.PACKAGE_JSON)){U.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=u(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ef(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eI()];case 3:r=f.sent();f.label=4;case 4:r;a=true,c=false,s=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(_=l.next()).done))return[3,9];I=_.value;return[4,I()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:d=f.sent();c=true;s=d;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(c){throw s}}return[7];case 12:return[3,14];case 13:E=f.sent();throw U.error('Failed to setup "'.concat(e.join(", "),'": ').concat(E.message)),E;case 14:return[2]}})});return eC.apply(this,arguments)}T(eE,"setupPackages");var ep=g(require("node-persist"),1);var eT=M();function eO(){return ev.apply(this,arguments)}function ev(){ev=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=ep.default.defaultInstance;if(e)return[3,2];return[4,ep.default.init({dir:eT.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return ev.apply(this,arguments)}T(eO,"initNodePersist");var eg={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eO()];case 1:r.sent();return[4,ep.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(U.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eO()];case 1:r.sent();return[4,ep.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();U.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eO()];case 1:n.sent();return[4,ep.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();U.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eO()];case 1:n.sent();return[4,ep.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(U.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(U.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eT.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(U.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eS=M(),eL=K.promisify(b.exec);function eN(e){return"error_list:".concat(e)}T(eN,"getErrorListKey");function eG(e){return em.apply(this,arguments)}function em(){em=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eN(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eg.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eg.getLogLink(n)];case 1:e=t.sent();e&&U.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();U.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return em.apply(this,arguments)}T(eG,"saveErrorListToStorage");function eA(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,u,s,l,f;var _=o.exec(e)||[],I=a.exec(e)||[],d=c.exec(e)||[];var E,C,p,T,O,v;_.length&&r?t.push({file:r,position:"".concat(_[1],":").concat(_[2]),type:_[3]===D.Error?D.Error:D.Warning,message:(E=_===null||_===void 0?void 0:(i=_[4])===null||i===void 0?void 0:i.trim())!==null&&E!==void 0?E:"",rule:(C=_===null||_===void 0?void 0:(u=_[5])===null||u===void 0?void 0:u.trim())!==null&&C!==void 0?C:""}):I.length?t.push({file:(p=I===null||I===void 0?void 0:I[1])!==null&&p!==void 0?p:"",position:"".concat(I[2],":").concat(I[3]),type:I[4]===D.Error?D.Error:D.Warning,message:(T=I===null||I===void 0?void 0:(s=I[5])===null||s===void 0?void 0:s.trim())!==null&&T!==void 0?T:""}):d.length?t.push({file:"commitlint",type:D.Error,message:(O=d===null||d===void 0?void 0:(l=d[1])===null||l===void 0?void 0:l.trim())!==null&&O!==void 0?O:"",rule:(v=d===null||d===void 0?void 0:(f=d[2])===null||f===void 0?void 0:f.trim())!==null&&v!==void 0?v:""}):n.push(e.trim())}}),t.length&&eG(t),eS.DEBUG&&n.length&&(U.warn("Unmatched lines:"),n.forEach(function(e){return U.info(" ".concat(e))}))}T(eA,"parseTextErrors");function eh(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?D.Error:D.Warning,file:t,position:"".concat(o,":").concat(a),rule:c,message:i})})}),n.length&&eG(n)}catch(t){eA(e)}}T(eh,"parseCommandOutput");function ey(e){return eM.apply(this,arguments)}function eM(){eM=r(function(e){var t,n,r,o,a,c,i,u,s;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eh;n=new AbortController;R.default.on("SIGINT",function(){U.warn("Process interrupted. Terminating..."),n.abort(),R.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eL(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,u=c.stderr,s=c.message;[i,u].forEach(function(e){return e&&t(e)}),!u&&!i&&U.error("Command failed: ".concat(s));return[3,5];case 5:return[2]}})});return eM.apply(this,arguments)}T(ey,"executeCommand");function eP(e){return{raw:!0,cmd:e}}T(eP,"rawCommand");function eb(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tr," ").concat(ej," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tr," ").concat(te," ").concat(eQ," ").concat(e):"".concat(tr," ").concat(ez," ").concat(e)}T(eb,"formatCLI");function eR(e,t){return typeof e=="function"?eb(e(t),t):(typeof e==="undefined"?"undefined":s(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eb(e,t):e}T(eR,"formatCommand");function eK(e,t){return eD.apply(this,arguments)}function eD(){eD=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);U.start("".concat(e)),eS.DEBUG&&U.info("→ ".concat(t));return[4,ey(t)];case 1:r.sent(),U.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw U.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eD.apply(this,arguments)}T(eK,"runCommand");var ew=M(),ek=ew.CWD,ej="@cyberskill/shared",eY="node_modules",eF="dist",eU="package.json",ex="package-lock.json",eB="tsconfig.json",eH=".gitignore",eJ=".simple-git-hooks.json",eW="pnpm-lock.yaml",eq=".git/hooks/",eV=".git/COMMIT_EDITMSG",eX=".migrate-mongo.config.js",e$=ec(ek,eY,ej,eF),ez="cyberskill",eQ="src/nodejs/cli/index.ts",eZ="eslint",e0="eslint",e1="vitest",e2="playwright",e3="vitest",e4="@commitlint/cli",e5="commitlint",e6="lint-staged",e7="lint-staged",e8="typescript",e9="tsc",te="tsx",tt="git",tn="pnpm",tr="pnpm exec",to="simple-git-hooks",ta="simple-git-hooks",tc="@eslint/config-inspector",ti="eslint-config-inspector",tu="node-modules-inspector",ts="node-modules-inspector",tl="migrate-mongo",tf="./node_modules/migrate-mongo/bin/migrate-mongo",t_={CYBERSKILL_DIRECTORY:e$,WORKING_DIRECTORY:ek,TS_CONFIG:ea(eB),GIT_IGNORE:ea(eH),GIT_HOOK:ea(eq),GIT_COMMIT_MSG:ea(eV),SIMPLE_GIT_HOOKS_JSON:ea(eJ),PACKAGE_JSON:ea(eU),PACKAGE_LOCK_JSON:ea(ex),PNPM_LOCK_YAML:ea(eW),NODE_MODULES:ea(eY),MIGRATE_MONGO_CONFIG:ea(eX),LINT_STAGED_CONFIG:ea("".concat(e$,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ea("".concat(e$,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ea("".concat(e$,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ea("".concat(e$,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ea("".concat(e$,"/react/vitest/vitest.e2e.js"))};function tI(e){var t=e.isCurrentProject;return i({"pre-commit":e7,"commit-msg":e5},t&&{"pre-push":eP("".concat(tt," pull"))})}T(tI,"createGitHooksConfig");function td(e,t,n){return tE.apply(this,arguments)}function tE(){tE=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case P.CLI:return[3,1];case P.STRING:return[3,3]}return[3,4];case 1:return[4,eE(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eR(eP("".concat(tr," ").concat(n))))];case 3:return[2,eR(eP(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tE.apply(this,arguments)}T(td,"buildCommand");function tC(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,td(e,t,n)]})})}T(tC,"commandFactory");var tp={simpleGitHooks:tC(P.CLI,to,ta),eslintInspect:tC(P.CLI,tc,ti),nodeModulesInspect:tC(P.CLI,tu,ts),eslintCheck:tC(P.CLI,eZ,"".concat(e0," ").concat(t_.WORKING_DIRECTORY)),eslintFix:tC(P.CLI,eZ,"".concat(e0," ").concat(t_.WORKING_DIRECTORY," --fix")),typescriptCheck:tC(P.CLI,e8,"".concat(e9," -p ").concat(t_.TS_CONFIG," --noEmit")),configureGitHook:tC(P.STRING,"".concat(tt," config core.hooksPath ").concat(t_.GIT_HOOK)),testUnit:tC(P.CLI,e1,"".concat(e3," --config ").concat(t_.UNIT_TEST_CONFIG)),testE2e:tC(P.CLI,"".concat(e1," ").concat(e2),"".concat(e3," --config ").concat(t_.E2E_TEST_CONFIG)),mongoMigrateCreate:T(function(e){return tC(P.CLI,tl,"".concat(te," ").concat(tf," create ").concat(e," -f ").concat(t_.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tC(P.CLI,tl,"".concat(te," ").concat(tf," up -f ").concat(t_.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tC(P.CLI,tl,"".concat(te," ").concat(tf," down -f ").concat(t_.MIGRATE_MONGO_CONFIG)),mongoMigrateStatus:tC(P.CLI,tl,"".concat(te," ").concat(tf," status -f ").concat(t_.MIGRATE_MONGO_CONFIG)),commitLint:tC(P.CLI,e4,"".concat(e5," --edit ").concat(t_.GIT_COMMIT_MSG," --config ").concat(t_.COMMITLINT_CONFIG)),lintStaged:tC(P.CLI,e6,"".concat(e7," --config ").concat(t_.LINT_STAGED_CONFIG)),stageBuildDirectory:tC(P.STRING,"".concat(tt," add ").concat(eF)),build:tC(P.STRING,"".concat(tn," run build")),pnpmInstallStandard:tC(P.STRING,"".concat(tn," install")),pnpmInstallLegacy:tC(P.STRING,"".concat(tn," install --legacy-peer-deps")),pnpmInstallForce:tC(P.STRING,"".concat(tn," install --force"))};0&&(module.exports={BUILD_DIRECTORY:BUILD_DIRECTORY,COMMIT_LINT_CLI:COMMIT_LINT_CLI,COMMIT_LINT_PACKAGE_NAME:COMMIT_LINT_PACKAGE_NAME,CYBERSKILL_CLI:CYBERSKILL_CLI,CYBERSKILL_CLI_PATH:CYBERSKILL_CLI_PATH,CYBERSKILL_DIRECTORY:CYBERSKILL_DIRECTORY,CYBERSKILL_PACKAGE_NAME:CYBERSKILL_PACKAGE_NAME,ESLINT_CLI:ESLINT_CLI,ESLINT_INSPECT_CLI:ESLINT_INSPECT_CLI,ESLINT_INSPECT_PACKAGE_NAME:ESLINT_INSPECT_PACKAGE_NAME,ESLINT_PACKAGE_NAME:ESLINT_PACKAGE_NAME,GIT_CLI:GIT_CLI,GIT_COMMIT_EDITMSG:GIT_COMMIT_EDITMSG,GIT_HOOK:GIT_HOOK,GIT_IGNORE:GIT_IGNORE,LINT_STAGED_CLI:LINT_STAGED_CLI,LINT_STAGED_PACKAGE_NAME:LINT_STAGED_PACKAGE_NAME,MIGRATE_MONGO_CLI:MIGRATE_MONGO_CLI,MIGRATE_MONGO_CONFIG:MIGRATE_MONGO_CONFIG,MIGRATE_MONGO_PACKAGE_NAME:MIGRATE_MONGO_PACKAGE_NAME,NODE_MODULES:NODE_MODULES,NODE_MODULES_INSPECT_CLI:NODE_MODULES_INSPECT_CLI,NODE_MODULES_INSPECT_PACKAGE_NAME:NODE_MODULES_INSPECT_PACKAGE_NAME,PACKAGE_JSON:PACKAGE_JSON,PACKAGE_LOCK_JSON:PACKAGE_LOCK_JSON,PATH:PATH,PLAYWRIGHT_PACKAGE_NAME:PLAYWRIGHT_PACKAGE_NAME,PNPM_CLI:PNPM_CLI,PNPM_EXEC_CLI:PNPM_EXEC_CLI,PNPM_LOCK_YAML:PNPM_LOCK_YAML,SIMPLE_GIT_HOOKS_PACKAGE_NAME:SIMPLE_GIT_HOOKS_PACKAGE_NAME,SIMPLE_GIT_HOOK_CLI:SIMPLE_GIT_HOOK_CLI,SIMPLE_GIT_HOOK_JSON:SIMPLE_GIT_HOOK_JSON,TSCONFIG_JSON:TSCONFIG_JSON,TSC_CLI:TSC_CLI,TSC_PACKAGE_NAME:TSC_PACKAGE_NAME,TSX_CLI:TSX_CLI,VITEST_CLI:VITEST_CLI,VITEST_PACKAGE_NAME:VITEST_PACKAGE_NAME,WORKING_DIRECTORY:WORKING_DIRECTORY,command:command,createGitHooksConfig:createGitHooksConfig});