@cyberskill/shared 1.101.0 → 1.102.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_tsup-dts-rollup.d.cts +110 -47
- package/dist/_tsup-dts-rollup.d.ts +110 -47
- package/dist/configs/config.util.cjs +1 -1
- package/dist/configs/config.util.js +1 -1
- package/dist/configs/index.cjs +1 -1
- package/dist/configs/index.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +16 -7
- package/dist/index.d.ts +16 -7
- package/dist/index.js +1 -1
- package/dist/nodejs/cli/cli.util.cjs +1 -1
- package/dist/nodejs/cli/cli.util.js +1 -1
- package/dist/nodejs/cli/index.cjs +1 -1
- package/dist/nodejs/cli/index.js +1 -1
- package/dist/nodejs/command/command.type.cjs +1 -1
- package/dist/nodejs/command/command.type.js +1 -1
- package/dist/nodejs/command/command.util.cjs +1 -1
- package/dist/nodejs/command/command.util.js +1 -1
- package/dist/nodejs/command/index.cjs +1 -1
- package/dist/nodejs/command/index.js +1 -1
- package/dist/nodejs/fs/fs.type.cjs +1 -0
- package/dist/nodejs/fs/fs.type.d.cts +1 -0
- package/dist/nodejs/fs/fs.type.d.ts +1 -0
- package/dist/nodejs/fs/fs.type.js +0 -0
- package/dist/nodejs/fs/fs.util.cjs +1 -1
- package/dist/nodejs/fs/fs.util.d.cts +8 -1
- package/dist/nodejs/fs/fs.util.d.ts +8 -1
- package/dist/nodejs/fs/fs.util.js +1 -1
- package/dist/nodejs/fs/index.cjs +1 -1
- package/dist/nodejs/fs/index.d.cts +9 -1
- package/dist/nodejs/fs/index.d.ts +9 -1
- package/dist/nodejs/fs/index.js +1 -1
- package/dist/nodejs/index.cjs +1 -1
- package/dist/nodejs/index.d.cts +16 -7
- package/dist/nodejs/index.d.ts +16 -7
- package/dist/nodejs/index.js +1 -1
- package/dist/nodejs/mongo/index.cjs +1 -1
- package/dist/nodejs/mongo/index.d.cts +7 -6
- package/dist/nodejs/mongo/index.d.ts +7 -6
- package/dist/nodejs/mongo/index.js +1 -1
- package/dist/nodejs/mongo/mongo.constant.cjs +1 -0
- package/dist/nodejs/mongo/mongo.constant.d.cts +1 -0
- package/dist/nodejs/mongo/mongo.constant.d.ts +1 -0
- package/dist/nodejs/mongo/mongo.constant.js +1 -0
- package/dist/nodejs/mongo/mongo.type.d.cts +1 -0
- package/dist/nodejs/mongo/mongo.type.d.ts +1 -0
- package/dist/nodejs/mongo/mongo.util.cjs +1 -0
- package/dist/nodejs/mongo/mongo.util.js +1 -0
- package/dist/nodejs/package/index.cjs +1 -1
- package/dist/nodejs/package/index.js +1 -1
- package/dist/nodejs/package/package.util.cjs +1 -1
- package/dist/nodejs/package/package.util.js +1 -1
- package/dist/nodejs/path/index.cjs +1 -1
- package/dist/nodejs/path/index.js +1 -1
- package/dist/nodejs/path/path.constant.cjs +1 -1
- package/dist/nodejs/path/path.constant.js +1 -1
- package/dist/nodejs/path/path.util.cjs +1 -1
- package/dist/nodejs/path/path.util.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.js +1 -1
- package/dist/react/vitest/index.cjs +1 -1
- package/dist/react/vitest/index.js +1 -1
- package/dist/react/vitest/vitest.unit.cjs +1 -1
- package/dist/react/vitest/vitest.unit.js +1 -1
- package/package.json +7 -4
- package/dist/nodejs/mongo/migrate.util.cjs +0 -1
- package/dist/nodejs/mongo/migrate.util.d.cts +0 -1
- package/dist/nodejs/mongo/migrate.util.d.ts +0 -1
- package/dist/nodejs/mongo/migrate.util.js +0 -1
- package/dist/nodejs/mongo/mongo.cjs +0 -1
- package/dist/nodejs/mongo/mongo.js +0 -1
- /package/dist/nodejs/mongo/{mongo.d.cts → mongo.util.d.cts} +0 -0
- /package/dist/nodejs/mongo/{mongo.d.ts → mongo.util.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,o,a,i){try{var c=e[a](i);var u=c.value}catch(e){n(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(r,o)}}function o(e){return function(){var t=this,n=arguments;return new Promise(function(o,a){var i=e.apply(t,n);function c(e){r(i,o,a,c,u,"next",e)}function u(e){r(i,o,a,c,u,"throw",e)}c(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var o=true;var a=false;var i,c;try{for(n=n.call(e);!(o=(i=n.next()).done);o=true){r.push(i.value);if(t&&r.length===t)break}}catch(e){a=true;c=e}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(a)throw c}}return r}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function s(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function f(e,n){return t(e)||c(e,n)||v(e,n)||u()}function d(e){return n(e)||i(e)||v(e)||s()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(t,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 g(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 u([e,t])}}function u(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 y=Object.create;var h=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var I=function(e,t){return h(e,"name",{value:t,configurable:!0})};var C=function(e,t){for(var n in t)h(e,n,{get:t[n],enumerable:!0})},O=function(e,t,n,r){var o=true,a=false,i=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var c=function(){var o=s.value;!w.call(e,o)&&o!==n&&h(e,o,{get:function(){return t[o]},enumerable:!(r=m(t,o))||r.enumerable})};for(var u=b(t)[Symbol.iterator](),s;!(o=(s=u.next()).done);o=true)c()}catch(e){a=true;i=e}finally{try{if(!o&&u.return!=null){u.return()}}finally{if(a){throw i}}}return e};var S=function(e,t,n){return n=e!=null?y(E(e)):{},O(t||!e||!e.__esModule?h(n,"default",{value:e,enumerable:!0}):n,e)},_=function(e){return O(h({},"__esModule",{value:!0}),e)};var T={};C(T,{vitestE2E:function(){return k},vitestUnit:function(){return ty}});module.exports=_(T);var L=S(require("@vitejs/plugin-react-swc"),1),j=require("vitest/config");function k(e){return(0,j.defineConfig)(l({plugins:[(0,L.default)()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}I(k,"vitestE2E");var R=S(require("@vitejs/plugin-react-swc"),1),D=require("vitest/config");var G=".cyberskill-storage";var A=S(require("dotenv"),1),N=require("envalid"),P=S(require("os"),1),x=S(require("path"),1),F=S(require("process"),1);A.default.config();function U(){var e={DEBUG:F.default.env.DEBUG||!1,CWD:F.default.env.CWD||F.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:F.default.env.CYBERSKILL_STORAGE_DIRECTORY||x.default.join(P.default.homedir(),G)};return(0,N.cleanEnv)(e,{DEBUG:(0,N.bool)(),CWD:(0,N.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,N.str)()})}I(U,"getEnv");var M=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});var W=require("child_process"),q=S(require("process"),1),K=S(require("util"),1);var Y=function(e){return e.Error="error",e.Warning="warning",e}({});var B=S(require("chalk"),1),J=S(require("consola"),1),H=require("graphql");var $=U();$.DEBUG||(J.default.level=4);function V(e){var t=B.default[e];return typeof t=="function"?t:B.default.green}I(V,"chalkKeyword");var z={silent:J.default.silent,level:J.default.level,fatal:J.default.fatal,error:J.default.error,warn:J.default.warn,log:J.default.log,info:J.default.info,success:J.default.success,ready:J.default.ready,start:J.default.start,box:J.default.box,debug:J.default.debug,trace:J.default.trace,verbose:J.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){J.default.box(B.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;J.default.log("".concat(B.default.gray("File:")," ").concat(B.default.blue("".concat(t).concat(r?":".concat(r):"")))),o&&J.default.log(" ".concat(V(n)("Rule:")," ").concat(o)),J.default.log(" ".concat(V(n)("Message:")," ").concat(a))}),J.default.box(V(n)("".concat(e," : ").concat(t.length))),J.default.log(B.default.gray("─".repeat(40)))}};var Q={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var X=S(require("node-fetch"),1);var Z=S(require("fs"),1);function ee(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return Z.existsSync(e)})}I(ee,"existsSync");function et(e,t){var n=Z.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":p(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}I(et,"readFileSync");function en(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,o=r===void 0?!1:r,a=o&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);Z.writeFileSync(e,a,"utf-8")}I(en,"writeFileSync");var er=U();function eo(e){var t=eN(er.CWD,eW);if(!ee(t))return!1;try{var n=et(t,{asJson:!0}),r=n.name,o=n.dependencies,a=o===void 0?{}:o,i=n.devDependencies,c=i===void 0?{}:i,u=r===e,s=e in a,l=e in c;return u||s||l?{path:t,file:n,isCurrentProject:u,isDepend:s,isDevDepend:l}:!1}catch(e){return z.warn("Failed to read package.json: ".concat(e.message)),!1}}I(eo,"getPackage");function ea(e){return ei.apply(this,arguments)}function ei(){ei=o(function(e){var t,n,r,o;return g(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,X.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 z.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return ei.apply(this,arguments)}I(ea,"getLatestPackageVersion");function ec(e,t){return eu.apply(this,arguments)}function eu(){eu=o(function(e,t){var n,r,o,a,i,c,u,s,f,d,p,v,y,h,m,b,E,w,I,C,O;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,4,,5]);n=eo(e);if(!n)return[2,l({},Q)];u=n.path,s=n.file,f=n.isCurrentProject,d=n.isDepend,p=n.isDevDepend,v=(r=s.dependencies)!==null&&r!==void 0?r:{},y=(o=s.devDependencies)!==null&&o!==void 0?o:{},h=f?(a=s.version)!==null&&a!==void 0?a:"0.0.0":d?(i=v[e])!==null&&i!==void 0?i:"0.0.0":p?(c=y[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];E=h;return[3,3];case 1:return[4,ea(e)];case 2:E=g.sent();g.label=3;case 3:m=E,b=f||h===m;if(!b&&(t===null||t===void 0?void 0:t.update)){;I=d?"dependencies":p?"devDependencies":null;I&&((w=s[I])===null||w===void 0?void 0:w[e])!==m&&(s[I]=(C=s[I])!==null&&C!==void 0?C:{},s[I][e]=m,en(u,s,{isJson:!0}),z.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:f,installedPath:u,file:s,isUpToDate:b}];case 4:O=g.sent();return[2,(z.error('Error checking package "'.concat(e,'": ').concat(O.message)),l({},Q))];case 5:return[2]}})});return eu.apply(this,arguments)}I(ec,"checkPackage");function es(){return el.apply(this,arguments)}function el(){el=o(function(){var e,t,n,r,o,a,i,c,u,s,l,f;return g(this,function(d){switch(d.label){case 0:e=[{command:I(function(){return tg.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:I(function(){return tg.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:I(function(){return tg.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=(a=o.next()).done))return[3,8];i=a.value,c=i.command,u=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:s=d.sent();return[4,ek("".concat(u," using: ").concat(s),s)];case 5:d.sent();return[2];case 6:l=d.sent();z.warn("Installation attempt failed: ".concat(u)),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 el.apply(this,arguments)}I(es,"installDependencies");function ef(e,t){return ed.apply(this,arguments)}function ed(){ed=o(function(e,t){var n,r,o,a,i,c,u,s,f,p,v;return g(this,function(g){switch(g.label){case 0:if(!ee(tf.PACKAGE_JSON)){z.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,13,,14]);n=d(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ec(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=g.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,es()];case 3:r=g.sent();g.label=4;case 4:r;a=true,i=false,c=undefined;g.label=5;case 5:g.trys.push([5,10,11,12]);u=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();g.label=6;case 6:if(!!(a=(s=u.next()).done))return[3,9];f=s.value;return[4,f()];case 7:g.sent();g.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:p=g.sent();i=true;c=p;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(i){throw c}}return[7];case 12:return[3,14];case 13:v=g.sent();throw z.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})});return ed.apply(this,arguments)}I(ef,"setupPackages");var ep=S(require("node-persist"),1);var ev=U();function eg(){return ey.apply(this,arguments)}function ey(){ey=o(function(){var e;return g(this,function(t){switch(t.label){case 0:e=ep.default.defaultInstance;if(e)return[3,2];return[4,ep.default.init({dir:ev.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 ey.apply(this,arguments)}I(eg,"initNodePersist");var eh={get:function e(e){return o(function(){var t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eg()];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,(z.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return o(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eg()];case 1:r.sent();return[4,ep.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 o(function(){var t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eg()];case 1:n.sent();return[4,ep.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 o(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eg()];case 1:n.sent();return[4,ep.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 o(function(){return g(this,function(t){try{return[2,"".concat(ev.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(z.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var em=U(),eb=K.promisify(W.exec);function eE(e){return"error_list:".concat(e)}I(eE,"getErrorListKey");function ew(e){return eI.apply(this,arguments)}function eI(){eI=o(function(e){var t,n,r;return g(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eE(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eh.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/o(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,eh.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:r=a.sent();z.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return eI.apply(this,arguments)}I(ew,"saveErrorListToStorage");function eC(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,u,s,l,f;var d=o.exec(e)||[],p=a.exec(e)||[],v=i.exec(e)||[];var g,y,h,m,b,E;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===Y.Error?Y.Error:Y.Warning,message:(g=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):p.length?t.push({file:(h=p===null||p===void 0?void 0:p[1])!==null&&h!==void 0?h:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===Y.Error?Y.Error:Y.Warning,message:(m=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&m!==void 0?m:""}):v.length?t.push({file:"commitlint",type:Y.Error,message:(b=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&b!==void 0?b:"",rule:(E=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&E!==void 0?E:""}):n.push(e.trim())}}),t.length&&ew(t),em.DEBUG&&n.length&&(z.warn("Unmatched lines:"),n.forEach(function(e){return z.info(" ".concat(e))}))}I(eC,"parseTextErrors");function eO(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?Y.Error:Y.Warning,file:t,position:"".concat(o,":").concat(a),rule:i,message:c})})}),n.length&&ew(n)}catch(t){eC(e)}}I(eO,"parseCommandOutput");function eS(e){return e_.apply(this,arguments)}function e_(){e_=o(function(e){var t,n,r,o,a,i,c,u,s;var l=arguments;return g(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eO;n=new AbortController;q.default.on("SIGINT",function(){z.warn("Process interrupted. Terminating..."),n.abort(),q.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,eb(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});return[3,4];case 3:i=f.sent();c=i.stdout,u=i.stderr,s=i.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&z.error("Command failed: ".concat(s));return[3,4];case 4:return[2]}})});return e_.apply(this,arguments)}I(eS,"executeCommand");function eT(e){return{raw:!0,cmd:e}}I(eT,"rawCommand");function eL(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tn," ").concat(eF," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tn," ").concat(e9," ").concat(eQ," ").concat(e):"".concat(tn," ").concat(ez," ").concat(e)}I(eL,"formatCLI");function ej(e,t){return typeof e=="function"?eL(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"?eL(e,t):e}I(ej,"formatCommand");function ek(e,t){return eR.apply(this,arguments)}function eR(){eR=o(function(e,t){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);z.start("".concat(e)),em.DEBUG&&z.info("→ ".concat(t));return[4,eS(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 eR.apply(this,arguments)}I(ek,"runCommand");var eD=S(require("path"),1);var eG=U();function eA(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eD).resolve.apply(r,[eG.CWD].concat(d(t)))}I(eA,"resolveWorkingPath");function eN(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eD).join.apply(r,d(t))}I(eN,"join");var eP=U(),ex=eP.CWD,eF="@cyberskill/shared",eU="node_modules",eM="dist",eW="package.json",eq="package-lock.json",eK="tsconfig.json",eY=".gitignore",eB=".simple-git-hooks.json",eJ="pnpm-lock.yaml",eH=".git/hooks/",e$=".git/COMMIT_EDITMSG",eV=eN(ex,eU,eF,eM),ez="cyberskill",eQ="src/nodejs/cli/index.ts",eX="eslint",eZ="eslint",e0="vitest",e1="playwright",e2="vitest",e4="@commitlint/cli",e3="commitlint",e5="lint-staged",e6="lint-staged",e8="typescript",e7="tsc",e9="tsx",te="git",tt="pnpm",tn="pnpm exec",tr="simple-git-hooks",to="simple-git-hooks",ta="@eslint/config-inspector",ti="eslint-config-inspector",tc="node-modules-inspector",tu="node-modules-inspector",ts="migrate-mongo",tl="migrate-mongo",tf={CYBERSKILL_DIRECTORY:eV,WORKING_DIRECTORY:ex,TS_CONFIG:eA(eK),GIT_IGNORE:eA(eY),GIT_HOOK:eA(eH),GIT_COMMIT_MSG:eA(e$),SIMPLE_GIT_HOOKS_JSON:eA(eB),PACKAGE_JSON:eA(eW),PACKAGE_LOCK_JSON:eA(eq),PNPM_LOCK_YAML:eA(eJ),NODE_MODULES:eA(eU),LINT_STAGED_CONFIG:eA("".concat(eV,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eA("".concat(eV,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eA("".concat(eV,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eA("".concat(eV,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eA("".concat(eV,"/react/vitest/vitest.e2e.js"))};function td(e){return tp.apply(this,arguments)}function tp(){tp=o(function(e){var t,n,r,o,a,i;var c=arguments;return g(this,function(u){switch(u.label){case 0:for(t=c.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=c[r]}o=f(n,2),a=o[0],i=o[1];if(!a)throw new Error("'first' argument is undefined");switch(e){case M.CLI:return[3,1];case M.RAW:return[3,3]}return[3,4];case 1:return[4,ef(a.split(" "),{update:!0})];case 2:return[2,(u.sent(),ej(eT("".concat(tn," ").concat(i))))];case 3:return[2,ej(eT(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tp.apply(this,arguments)}I(td,"buildCommand");function tv(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}return /*#__PURE__*/o(function(){return g(this,function(t){return[2,td.apply(void 0,[e].concat(d(n)))]})})}I(tv,"commandFactory");var tg={simpleGitHooks:tv(M.CLI,tr,to),eslintInspect:tv(M.CLI,ta,ti),nodeModulesInspect:tv(M.CLI,tc,tu),eslintCheck:tv(M.CLI,eX,"".concat(eZ," ").concat(tf.WORKING_DIRECTORY)),eslintFix:tv(M.CLI,eX,"".concat(eZ," ").concat(tf.WORKING_DIRECTORY," --fix")),typescriptCheck:tv(M.CLI,e8,"".concat(e7," -p ").concat(tf.TS_CONFIG," --noEmit")),configureGitHook:tv(M.RAW,"".concat(te," config core.hooksPath ").concat(tf.GIT_HOOK)),testUnit:tv(M.CLI,e0,"".concat(e2," --config ").concat(tf.UNIT_TEST_CONFIG)),testE2e:tv(M.CLI,"".concat(e0," ").concat(e1),"".concat(e2," --config ").concat(tf.E2E_TEST_CONFIG)),mongoMigrateCreate:I(function(e){return tv(M.CLI,"".concat(ts),"".concat(tl," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:tv(M.CLI,"".concat(ts),"".concat(tl," up")),mongoMigrateDown:tv(M.CLI,"".concat(ts),"".concat(tl," down")),commitLint:tv(M.CLI,e4,"".concat(e3," --edit ").concat(tf.GIT_COMMIT_MSG," --config ").concat(tf.COMMITLINT_CONFIG)),lintStaged:tv(M.CLI,e5,"".concat(e6," --config ").concat(tf.LINT_STAGED_CONFIG)),stageBuildDirectory:tv(M.RAW,"".concat(te," add ").concat(eM)),build:tv(M.RAW,"".concat(tt," run build")),pnpmInstallStandard:tv(M.RAW,"".concat(tt," install")),pnpmInstallLegacy:tv(M.RAW,"".concat(tt," install --legacy-peer-deps")),pnpmInstallForce:tv(M.RAW,"".concat(tt," install --force"))};function ty(e){return(0,D.defineConfig)(l({plugins:[(0,R.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tf.UNIT_TEST_SETUP_CONFIG]}},e))}I(ty,"vitestUnit");0&&(module.exports={vitestE2E:vitestE2E,vitestUnit:vitestUnit});
|
|
1
|
+
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function t(t){if(Array.isArray(t))return e(t)}function r(e,t,r,n,a,i,o){try{var c=e[i](o);var u=c.value}catch(e){r(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(n,a)}}function n(e){return function(){var t=this,n=arguments;return new Promise(function(a,i){var o=e.apply(t,n);function c(e){r(o,a,i,c,u,"next",e)}function u(e){r(o,a,i,c,u,"throw",e)}c(undefined)})}}function a(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function o(e){if(typeof WeakMap!=="function")return null;var t=new WeakMap;var r=new WeakMap;return(o=function(e){return e?r:t})(e)}function c(e,t){if(!t&&e&&e.__esModule){return e}if(e===null||typeof e!=="object"&&typeof e!=="function"){return{default:e}}var r=o(t);if(r&&r.has(e)){return r.get(e)}var n={__proto__:null};var a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e){if(i!=="default"&&Object.prototype.hasOwnProperty.call(e,i)){var c=a?Object.getOwnPropertyDescriptor(e,i):null;if(c&&(c.get||c.set)){Object.defineProperty(n,i,c)}else{n[i]=e[i]}}}n.default=e;if(r){r.set(e,n)}return n}function u(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 r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){a(e,t,r[t])})}return e}function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(t){n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,n)}return r}function d(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{f(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function p(e){return t(e)||u(e)||g(e)||s()}function v(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function g(t,r){if(!t)return;if(typeof t==="string")return e(t,r);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor)n=t.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(t,r)}function h(e,t){var r,n,a,i={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return u([e,t])}}function u(c){if(r)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(i=0)),i)try{if(r=1,n&&(a=c[0]&2?n["return"]:c[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,c[1])).done)return a;if(n=0,a)c=[c[0]&2,a.value];switch(c[0]){case 0:case 1:a=c;break;case 4:i.label++;return{value:c[1],done:false};case 5:i.label++;n=c[1];c=[0];continue;case 7:c=i.ops.pop();i.trys.pop();continue;default:if(!(a=i.trys,a=a.length>0&&a[a.length-1])&&(c[0]===6||c[0]===2)){i=0;continue}if(c[0]===3&&(!a||c[1]>a[0]&&c[1]<a[3])){i.label=c[1];break}if(c[0]===6&&i.label<a[1]){i.label=a[1];a=c;break}if(a&&i.label<a[2]){i.label=a[2];i.ops.push(c);break}if(a[2])i.ops.pop();i.trys.pop();continue}c=t.call(e,i)}catch(e){c=[6,e];n=0}finally{r=a=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var y=Object.create;var m=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var w=Object.getOwnPropertyNames;var _=Object.getPrototypeOf,E=Object.prototype.hasOwnProperty;var O=function(e,t){return m(e,"name",{value:t,configurable:!0})};var I=function(e,t){for(var r in t)m(e,r,{get:t[r],enumerable:!0})},S=function(e,t,r,n){var a=true,i=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":v(t))=="object"||typeof t=="function")try{var c=function(){var a=s.value;!E.call(e,a)&&a!==r&&m(e,a,{get:function(){return t[a]},enumerable:!(n=b(t,a))||n.enumerable})};for(var u=w(t)[Symbol.iterator](),s;!(a=(s=u.next()).done);a=true)c()}catch(e){i=true;o=e}finally{try{if(!a&&u.return!=null){u.return()}}finally{if(i){throw o}}}return e};var C=function(e,t,r){return r=e!=null?y(_(e)):{},S(t||!e||!e.__esModule?m(r,"default",{value:e,enumerable:!0}):r,e)},T=function(e){return S(m({},"__esModule",{value:!0}),e)};var P={};I(P,{vitestE2E:function(){return D},vitestUnit:function(){return tM}});module.exports=T(P);var j=C(require("@vitejs/plugin-react-swc"),1),R=require("vitest/config");function D(e){return(0,R.defineConfig)(l({plugins:[(0,j.default)()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}O(D,"vitestE2E");var G=C(require("@vitejs/plugin-react-swc"),1),N=require("vitest/config");var k=".cyberskill-storage";var U=C(require("dotenv"),1),L=require("envalid"),A=C(require("os"),1),x=C(require("path"),1),M=C(require("process"),1);U.default.config();function q(){var e={DEBUG:M.default.env.DEBUG||!1,CWD:M.default.env.CWD||M.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:M.default.env.CYBERSKILL_STORAGE_DIRECTORY||x.default.join(A.default.homedir(),k)};return(0,L.cleanEnv)(e,{DEBUG:(0,L.bool)(),CWD:(0,L.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,L.str)()})}O(q,"getEnv");var F="MONGO_MIGRATE_OPTIONS";var K=require("mongodb"),W=require("mongoose");var B=require("date-fns"),Y=C(require("migrate-mongo"),1),J=require("mongoose"),H=C(require("mongoose-aggregate-paginate-v2"),1),$=C(require("mongoose-paginate-v2"),1),Q=require("uuid");var V=C(require("node-persist"),1);var z=function(e){return e.Error="error",e.Warning="warning",e}({});var X=C(require("chalk"),1),Z=C(require("consola"),1),ee=require("graphql");var et=q();et.DEBUG||(Z.default.level=4);function er(e){var t=X.default[e];return typeof t=="function"?t:X.default.green}O(er,"chalkKeyword");var en={silent:Z.default.silent,level:Z.default.level,fatal:Z.default.fatal,error:Z.default.error,warn:Z.default.warn,log:Z.default.log,info:Z.default.info,success:Z.default.success,ready:Z.default.ready,start:Z.default.start,box:Z.default.box,debug:Z.default.debug,trace:Z.default.trace,verbose:Z.default.verbose,printBoxedLog:function e(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){Z.default.box(X.default.green(e));return}t.forEach(function(e){var t=e.file,n=e.position,a=e.rule,i=e.message;Z.default.log("".concat(X.default.gray("File:")," ").concat(X.default.blue("".concat(t).concat(n?":".concat(n):"")))),a&&Z.default.log(" ".concat(er(r)("Rule:")," ").concat(a)),Z.default.log(" ".concat(er(r)("Message:")," ").concat(i))}),Z.default.box(er(r)("".concat(e," : ").concat(t.length))),Z.default.log(X.default.gray("─".repeat(40)))}};var ea=q();function ei(){return eo.apply(this,arguments)}function eo(){eo=n(function(){var e;return h(this,function(t){switch(t.label){case 0:e=V.default.defaultInstance;if(e)return[3,2];return[4,V.default.init({dir:ea.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 eo.apply(this,arguments)}O(ei,"initNodePersist");var ec={get:function e(e){return n(function(){var t,r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ei()];case 1:n.sent();return[4,V.default.getItem(e)];case 2:return[2,(t=n.sent())!==null&&t!==void 0?t:null];case 3:r=n.sent();return[2,(en.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 4:return[2]}})})()},set:function e(e,t){return n(function(){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ei()];case 1:n.sent();return[4,V.default.setItem(e,t)];case 2:n.sent();return[3,4];case 3:r=n.sent();en.error('[Storage:set] Error setting key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},remove:function e(e){return n(function(){var t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ei()];case 1:r.sent();return[4,V.default.removeItem(e)];case 2:r.sent();return[3,4];case 3:t=r.sent();en.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return n(function(){var e,t;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ei()];case 1:r.sent();return[4,V.default.keys()];case 2:e=r.sent();return[2,Array.isArray(e)?e:(en.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=r.sent();return[2,(en.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return n(function(){return h(this,function(t){try{return[2,"".concat(ea.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(en.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eu=C(require("crypto-js"),1),es=C(require("slugify"),1);var el=es.default.default||es.default;var ef={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":v(e))=="object"?i(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var ed={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,B.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,r=t===void 0?"string":t;var n=r==="string"?ed.getDateTime():new Date;return{id:(0,Q.v4)(),isDel:!1,createdAt:n,updatedAt:n}},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 r=t.method,n=t.pre,a=t.post;r&&n&&e.pre(r,n),r&&a&&e.post(r,a)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:Q.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,r=e.schema,n=e.virtuals,a=n===void 0?[]:n,i=e.standalone,o=i===void 0?!1:i;var c=new t.Schema(r,{strict:!0});return a.forEach(function(e){var t=e.name,r=e.options,n=e.get;var a=c.virtual(t,r);n&&a.get(n)}),o||c.add(ed.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,r=e.name,n=e.schema,a=e.pagination,i=a===void 0?!1:a,o=e.aggregate,c=o===void 0?!1:o,u=e.virtuals,s=u===void 0?[]:u,l=e.middlewares,f=l===void 0?[]:l;if(!r)throw new Error("Model name is required.");if(t.models[r])return t.models[r];var d=ed.createSchema({mongoose:t,schema:n,virtuals:s});return ed.applyPlugins(d,[i&&$.default,c&&H.default]),ed.applyMiddlewares(d,f),t.model(r,d)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0;return d(l({},t,r&&{id:{$ne:r}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=n(function(e){return h(this,function(t){return[2,!ef.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=n(function(t){var r;return h(this,function(n){switch(n.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");r={$or:e.map(function(e){return a({},e,t)})};return[4,this.constructor.findOne(r)];case 1:return[2,!n.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=n(function(t){return h(this,function(r){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=n(function(e,t){var r,n,a,i;return h(this,function(o){switch(o.label){case 0:return[4,ec.get(F)];case 1:r=o.sent();if(!r)throw new Error("Missing migrate config");if(Y.default.config.set(r),!t)return[2,e(void 0)];return[4,Y.default.database.connect()];case 2:n=o.sent(),a=n.db,i=n.client;o.label=3;case 3:o.trys.push([3,,5,7]);return[4,e({db:a,client:i})];case 4:return[2,o.sent()];case 5:return[4,i.close()];case 6:o.sent();return[7];case 7:return[2]}})});return function(t,r){return e.apply(this,arguments)}}(),"withConfig"),init:O(/*#__PURE__*/n(function(){return h(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=n(function(e){return h(this,function(t){switch(t.label){case 0:return[4,ed.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__*/n(function(){return h(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/c(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,ed.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t,r;return h(this,function(n){switch(n.label){case 0:t=e.db,r=e.client;return[4,Y.default.up(t,r)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"up"),down:O(/*#__PURE__*/n(function(){return h(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/c(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,ed.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t,r;return h(this,function(n){switch(n.label){case 0:t=e.db,r=e.client;return[4,Y.default.down(t,r)];case 1:n.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 2:e.sent();return[2]}})}),"down"),status:O(/*#__PURE__*/n(function(){return h(this,function(e){switch(e.label){case 0:return[4,ed.migrate.withConfig(/*#__PURE__*/function(){var e=n(function(e){var t;return h(this,function(r){switch(r.label){case 0:t=e.db;return[4,Y.default.status(t)];case 1:r.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),!0)];case 1:e.sent();return[2]}})}),"status"),config:O(function(e){ec.set(F,e)},"config")}};var ep=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var ev=require("child_process"),eg=C(require("process"),1),eh=C(require("util"),1);var ey={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var em=C(require("node-fetch"),1);var eb=C(require("fs-extra"),1),ew=require("path");var e_=eb.default,eE=e_.readFileSync,eO=e_.writeFileSync,eI=e_.pathExistsSync,eS=e_.appendFileSync,eC=e_.copySync,eT=e_.removeSync,eP=e_.statSync,ej=eb.default.readJsonSync,eR=eb.default.writeJsonSync;function eD(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return t.every(function(e){return eI(e)})}O(eD,"existsSync");var eG=q();function eN(e){var t=e5(eG.CWD,tt);if(!eD(t))return!1;try{var r=ej(t),n=r.name,a=r.dependencies,i=a===void 0?{}:a,o=r.devDependencies,c=o===void 0?{}:o,u=n===e,s=e in i,l=e in c;return u||s||l?{path:t,file:r,isCurrentProject:u,isDepend:s,isDevDepend:l}:!1}catch(e){return en.warn("Failed to read package.json: ".concat(e.message)),!1}}O(eN,"getPackage");function ek(e){return eU.apply(this,arguments)}function eU(){eU=n(function(e){var t,r,n,a;return h(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);return[4,(0,em.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:r=i.sent(),n=r.version;return[2,n];case 3:a=i.sent();throw en.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return eU.apply(this,arguments)}O(ek,"getLatestPackageVersion");function eL(e,t){return eA.apply(this,arguments)}function eA(){eA=n(function(e,t){var r,n,a,i,o,c,u,s,f,d,p,v,g,y,m,b,w,_,E,O,I;return h(this,function(h){switch(h.label){case 0:h.trys.push([0,4,,5]);r=eN(e);if(!r)return[2,l({},ey)];u=r.path,s=r.file,f=r.isCurrentProject,d=r.isDepend,p=r.isDevDepend,v=(n=s.dependencies)!==null&&n!==void 0?n:{},g=(a=s.devDependencies)!==null&&a!==void 0?a:{},y=f?(i=s.version)!==null&&i!==void 0?i:"0.0.0":d?(o=v[e])!==null&&o!==void 0?o:"0.0.0":p?(c=g[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];w=y;return[3,3];case 1:return[4,ek(e)];case 2:w=h.sent();h.label=3;case 3:m=w,b=f||y===m;if(!b&&(t===null||t===void 0?void 0:t.update)){;E=d?"dependencies":p?"devDependencies":null;E&&((_=s[E])===null||_===void 0?void 0:_[e])!==m&&(s[E]=(O=s[E])!==null&&O!==void 0?O:{},s[E][e]=m,eR(u,s),en.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:f,installedPath:u,file:s,isUpToDate:b}];case 4:I=h.sent();return[2,(en.error('Error checking package "'.concat(e,'": ').concat(I.message)),l({},ey))];case 5:return[2]}})});return eA.apply(this,arguments)}O(eL,"checkPackage");function ex(){return eM.apply(this,arguments)}function eM(){eM=n(function(){var e,t,r,n,a,i,o,c,u,s,l,f;return h(this,function(d){switch(d.label){case 0:e=[{command:O(function(){return tx.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:O(function(){return tx.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:O(function(){return tx.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,r=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);a=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(i=a.next()).done))return[3,8];o=i.value,c=o.command,u=o.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:s=d.sent();return[4,e0("".concat(u," using: ").concat(s),s)];case 5:d.sent();return[2];case 6:l=d.sent();en.warn("Installation attempt failed: ".concat(u)),en.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();r=true;n=f;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(r){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eM.apply(this,arguments)}O(ex,"installDependencies");function eq(e,t){return eF.apply(this,arguments)}function eF(){eF=n(function(e,t){var r,n,a,i,o,c,u,s,f,d,v;return h(this,function(g){switch(g.label){case 0:if(!eD(tk.PACKAGE_JSON)){en.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,13,,14]);r=p(new Set(e)).sort();return[4,Promise.all(r.map(function(e){return eL(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:n=g.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,ex()];case 3:n=g.sent();g.label=4;case 4:n;i=true,o=false,c=undefined;g.label=5;case 5:g.trys.push([5,10,11,12]);u=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();g.label=6;case 6:if(!!(i=(s=u.next()).done))return[3,9];f=s.value;return[4,f()];case 7:g.sent();g.label=8;case 8:i=true;return[3,6];case 9:return[3,12];case 10:d=g.sent();o=true;c=d;return[3,12];case 11:try{if(!i&&u.return!=null){u.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:v=g.sent();throw en.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})});return eF.apply(this,arguments)}O(eq,"setupPackages");var eK=q(),eW=eh.promisify(ev.exec);function eB(e){return"error_list:".concat(e)}O(eB,"getErrorListKey");function eY(e){return eJ.apply(this,arguments)}function eJ(){eJ=n(function(e){var t,r,a;return h(this,function(i){switch(i.label){case 0:if(e.length===0)return[2];t=Date.now(),r=eB(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,ec.set(r,{errors:e,timestamp:t})];case 2:i.sent(),setTimeout(/*#__PURE__*/n(function(){var e;return h(this,function(t){switch(t.label){case 0:return[4,ec.getLogLink(r)];case 1:e=t.sent();e&&en.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:a=i.sent();en.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})});return eJ.apply(this,arguments)}O(eY,"saveErrorListToStorage");function eH(e){var t=[],r=[],n="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,i=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))n=e.trim();else{var c,u,s,l,f;var d=a.exec(e)||[],p=i.exec(e)||[],v=o.exec(e)||[];var g,h,y,m,b,w;d.length&&n?t.push({file:n,position:"".concat(d[1],":").concat(d[2]),type:d[3]===z.Error?z.Error:z.Warning,message:(g=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(h=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(y=p===null||p===void 0?void 0:p[1])!==null&&y!==void 0?y:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===z.Error?z.Error:z.Warning,message:(m=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&m!==void 0?m:""}):v.length?t.push({file:"commitlint",type:z.Error,message:(b=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&b!==void 0?b:"",rule:(w=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&w!==void 0?w:""}):r.push(e.trim())}}),t.length&&eY(t),eK.DEBUG&&r.length&&(en.warn("Unmatched lines:"),r.forEach(function(e){return en.info(" ".concat(e))}))}O(eH,"parseTextErrors");function e$(e){try{var t=JSON.parse(e),r=[];t.forEach(function(e){var t=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,a=e.line,i=e.column,o=e.ruleId,c=e.message;r.push({type:n===2?z.Error:z.Warning,file:t,position:"".concat(a,":").concat(i),rule:o,message:c})})}),r.length&&eY(r)}catch(t){eH(e)}}O(e$,"parseCommandOutput");function eQ(e){return eV.apply(this,arguments)}function eV(){eV=n(function(e){var t,r,n,a,i,o,c,u,s;var l=arguments;return h(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e$;r=new AbortController;eg.default.on("SIGINT",function(){en.warn("Process interrupted. Terminating..."),r.abort(),eg.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eW(e,{maxBuffer:0x6400000,signal:r.signal})];case 2:n=f.sent(),a=n.stdout,i=n.stderr;[a,i].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:o=f.sent();c=o.stdout,u=o.stderr,s=o.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&en.error("Command failed: ".concat(s));return[3,5];case 5:return[2]}})});return eV.apply(this,arguments)}O(eQ,"executeCommand");function ez(e){return{raw:!0,cmd:e}}O(ez,"rawCommand");function eX(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tC," ").concat(e8," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tC," ").concat(tO," ").concat(tf," ").concat(e):"".concat(tC," ").concat(tl," ").concat(e)}O(eX,"formatCLI");function eZ(e,t){return typeof e=="function"?eX(e(t),t):(typeof e==="undefined"?"undefined":v(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eX(e,t):e}O(eZ,"formatCommand");function e0(e,t){return e1.apply(this,arguments)}function e1(){e1=n(function(e,t){var r;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);en.start("".concat(e)),eK.DEBUG&&en.info("→ ".concat(t));return[4,eQ(t)];case 1:n.sent(),en.success("".concat(e," done."));return[3,3];case 2:r=n.sent();throw en.error("".concat(e," failed: ").concat(r.message)),r;case 3:return[2]}})});return e1.apply(this,arguments)}O(e0,"runCommand");var e2=require("path");var e4=q();function e3(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return(0,e2.resolve).apply(this,[e4.CWD].concat(p(t)))}O(e3,"resolveWorkingPath");function e5(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return(0,e2.join).apply(this,p(t))}O(e5,"join");var e6=q(),e7=e6.CWD,e8="@cyberskill/shared",e9="node_modules",te="dist",tt="package.json",tr="package-lock.json",tn="tsconfig.json",ta=".gitignore",ti=".simple-git-hooks.json",to="pnpm-lock.yaml",tc=".git/hooks/",tu=".git/COMMIT_EDITMSG",ts=e5(e7,e9,e8,te),tl="cyberskill",tf="src/nodejs/cli/index.ts",td="eslint",tp="eslint",tv="vitest",tg="playwright",th="vitest",ty="@commitlint/cli",tm="commitlint",tb="lint-staged",tw="lint-staged",t_="typescript",tE="tsc",tO="tsx",tI="git",tS="pnpm",tC="pnpm exec",tT="simple-git-hooks",tP="simple-git-hooks",tj="@eslint/config-inspector",tR="eslint-config-inspector",tD="node-modules-inspector",tG="node-modules-inspector",tN="migrate-mongo";var tk={CYBERSKILL_DIRECTORY:ts,WORKING_DIRECTORY:e7,TS_CONFIG:e3(tn),GIT_IGNORE:e3(ta),GIT_HOOK:e3(tc),GIT_COMMIT_MSG:e3(tu),SIMPLE_GIT_HOOKS_JSON:e3(ti),PACKAGE_JSON:e3(tt),PACKAGE_LOCK_JSON:e3(tr),PNPM_LOCK_YAML:e3(to),NODE_MODULES:e3(e9),LINT_STAGED_CONFIG:e3("".concat(ts,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e3("".concat(ts,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e3("".concat(ts,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e3("".concat(ts,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e3("".concat(ts,"/react/vitest/vitest.e2e.js"))};function tU(e,t,r){return tL.apply(this,arguments)}function tL(){tL=n(function(e,t,r){return h(this,function(n){switch(n.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ep.CLI:return[3,1];case ep.STRING:return[3,3];case ep.FUNCTION:return[3,4]}return[3,6];case 1:return[4,eq(t.split(" "),{update:!0})];case 2:return[2,(n.sent(),eZ(ez("".concat(tC," ").concat(r))))];case 3:return[2,eZ(ez(t))];case 4:return[4,eq(t.split(" "),{update:!0})];case 5:if(n.sent(),typeof r=="function")return[2,r()];throw new Error("'second' argument is not a callable function");case 6:throw new Error("Unsupported command type");case 7:return[2]}})});return tL.apply(this,arguments)}O(tU,"buildCommand");function tA(e,t,r){return /*#__PURE__*/n(function(){return h(this,function(n){return[2,tU(e,t,r)]})})}O(tA,"commandFactory");var tx={simpleGitHooks:tA(ep.CLI,tT,tP),eslintInspect:tA(ep.CLI,tj,tR),nodeModulesInspect:tA(ep.CLI,tD,tG),eslintCheck:tA(ep.CLI,td,"".concat(tp," ").concat(tk.WORKING_DIRECTORY)),eslintFix:tA(ep.CLI,td,"".concat(tp," ").concat(tk.WORKING_DIRECTORY," --fix")),typescriptCheck:tA(ep.CLI,t_,"".concat(tE," -p ").concat(tk.TS_CONFIG," --noEmit")),configureGitHook:tA(ep.STRING,"".concat(tI," config core.hooksPath ").concat(tk.GIT_HOOK)),testUnit:tA(ep.CLI,tv,"".concat(th," --config ").concat(tk.UNIT_TEST_CONFIG)),testE2e:tA(ep.CLI,"".concat(tv," ").concat(tg),"".concat(th," --config ").concat(tk.E2E_TEST_CONFIG)),mongoMigrateCreate:O(function(e){return tA(ep.FUNCTION,"".concat(tN),function(){return ed.migrate.create(e)})()},"mongoMigrateCreate"),mongoMigrateUp:tA(ep.FUNCTION,"".concat(tN),ed.migrate.up),mongoMigrateDown:tA(ep.FUNCTION,"".concat(tN),ed.migrate.down),commitLint:tA(ep.CLI,ty,"".concat(tm," --edit ").concat(tk.GIT_COMMIT_MSG," --config ").concat(tk.COMMITLINT_CONFIG)),lintStaged:tA(ep.CLI,tb,"".concat(tw," --config ").concat(tk.LINT_STAGED_CONFIG)),stageBuildDirectory:tA(ep.STRING,"".concat(tI," add ").concat(te)),build:tA(ep.STRING,"".concat(tS," run build")),pnpmInstallStandard:tA(ep.STRING,"".concat(tS," install")),pnpmInstallLegacy:tA(ep.STRING,"".concat(tS," install --legacy-peer-deps")),pnpmInstallForce:tA(ep.STRING,"".concat(tS," install --force"))};function tM(e){return(0,N.defineConfig)(l({plugins:[(0,G.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tk.UNIT_TEST_SETUP_CONFIG]}},e))}O(tM,"vitestUnit");0&&(module.exports={vitestE2E:vitestE2E,vitestUnit:vitestUnit});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,o,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 o(e){return function(){var t=this,n=arguments;return new Promise(function(o,a){var i=e.apply(t,n);function c(e){r(i,o,a,c,s,"next",e)}function s(e){r(i,o,a,c,s,"throw",e)}c(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var o=true;var a=false;var i,c;try{for(n=n.call(e);!(o=(i=n.next()).done);o=true){r.push(i.value);if(t&&r.length===t)break}}catch(e){a=true;c=e}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(a)throw c}}return r}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function f(e,n){return t(e)||c(e,n)||m(e,n)||s()}function d(e){return n(e)||i(e)||m(e)||u()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function v(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})};import y from"@vitejs/plugin-react-swc";import{defineConfig as b}from"vitest/config";function I(e){return b(l({plugins:[y()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}h(I,"vitestE2E");import E from"@vitejs/plugin-react-swc";import{defineConfig as w}from"vitest/config";var C=".cyberskill-storage";import S from"dotenv";import{bool as O,cleanEnv as T,str as _}from"envalid";import L from"node:os";import k from"node:path";import R from"node:process";S.config();function G(){var e={DEBUG:R.env.DEBUG||!1,CWD:R.env.CWD||R.cwd(),CYBERSKILL_STORAGE_DIRECTORY:R.env.CYBERSKILL_STORAGE_DIRECTORY||k.join(L.homedir(),C)};return T(e,{DEBUG:O(),CWD:_(),CYBERSKILL_STORAGE_DIRECTORY:_()})}h(G,"getEnv");var j=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});import{exec as D}from"node:child_process";import A from"node:process";import*as N from"node:util";var P=function(e){return e.Error="error",e.Warning="warning",e}({});import x from"chalk";import F from"consola";import{GraphQLError as U}from"graphql";var M=G();M.DEBUG||(F.level=4);function W(e){var t=x[e];return typeof t=="function"?t:x.green}h(W,"chalkKeyword");var K={silent:F.silent,level:F.level,fatal:F.fatal,error:F.error,warn:F.warn,log:F.log,info:F.info,success:F.success,ready:F.ready,start:F.start,box:F.box,debug:F.debug,trace:F.trace,verbose:F.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){F.box(x.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;F.log("".concat(x.gray("File:")," ").concat(x.blue("".concat(t).concat(r?":".concat(r):"")))),o&&F.log(" ".concat(W(n)("Rule:")," ").concat(o)),F.log(" ".concat(W(n)("Message:")," ").concat(a))}),F.box(W(n)("".concat(e," : ").concat(t.length))),F.log(x.gray("─".repeat(40)))}};var Y={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import B from"node-fetch";import*as J from"node:fs";function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return J.existsSync(e)})}h(H,"existsSync");function $(e,t){var n=J.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":p(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}h($,"readFileSync");function q(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,o=r===void 0?!1:r,a=o&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);J.writeFileSync(e,a,"utf-8")}h(q,"writeFileSync");var Q=G();function V(e){var t=e_(Q.CWD,eD);if(!H(t))return!1;try{var n=$(t,{asJson:!0}),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 K.warn("Failed to read package.json: ".concat(e.message)),!1}}h(V,"getPackage");function z(e){return X.apply(this,arguments)}function X(){X=o(function(e){var t,n,r,o;return v(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,B("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw K.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return X.apply(this,arguments)}h(z,"getLatestPackageVersion");function Z(e,t){return ee.apply(this,arguments)}function ee(){ee=o(function(e,t){var n,r,o,a,i,c,s,u,f,d,p,m,g,h,y,b,I,E,w,C,S;return v(this,function(v){switch(v.label){case 0:v.trys.push([0,4,,5]);n=V(e);if(!n)return[2,l({},Y)];s=n.path,u=n.file,f=n.isCurrentProject,d=n.isDepend,p=n.isDevDepend,m=(r=u.dependencies)!==null&&r!==void 0?r:{},g=(o=u.devDependencies)!==null&&o!==void 0?o:{},h=f?(a=u.version)!==null&&a!==void 0?a:"0.0.0":d?(i=m[e])!==null&&i!==void 0?i:"0.0.0":p?(c=g[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];I=h;return[3,3];case 1:return[4,z(e)];case 2:I=v.sent();v.label=3;case 3:y=I,b=f||h===y;if(!b&&(t===null||t===void 0?void 0:t.update)){;w=d?"dependencies":p?"devDependencies":null;w&&((E=u[w])===null||E===void 0?void 0:E[e])!==y&&(u[w]=(C=u[w])!==null&&C!==void 0?C:{},u[w][e]=y,q(s,u,{isJson:!0}),K.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:S=v.sent();return[2,(K.error('Error checking package "'.concat(e,'": ').concat(S.message)),l({},Y))];case 5:return[2]}})});return ee.apply(this,arguments)}h(Z,"checkPackage");function et(){return en.apply(this,arguments)}function en(){en=o(function(){var e,t,n,r,o,a,i,c,s,u,l,f;return v(this,function(d){switch(d.label){case 0:e=[{command:h(function(){return tc.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return tc.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return tc.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=(a=o.next()).done))return[3,8];i=a.value,c=i.command,s=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:u=d.sent();return[4,ew("".concat(s," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();K.warn("Installation attempt failed: ".concat(s)),K.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=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 en.apply(this,arguments)}h(et,"installDependencies");function er(e,t){return eo.apply(this,arguments)}function eo(){eo=o(function(e,t){var n,r,o,a,i,c,s,u,f,p,m;return v(this,function(v){switch(v.label){case 0:if(!H(tr.PACKAGE_JSON)){K.error("package.json not found. Aborting setup.");return[2]}v.label=1;case 1:v.trys.push([1,13,,14]);n=d(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return Z(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=v.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,et()];case 3:r=v.sent();v.label=4;case 4:r;a=true,i=false,c=undefined;v.label=5;case 5:v.trys.push([5,10,11,12]);s=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();v.label=6;case 6:if(!!(a=(u=s.next()).done))return[3,9];f=u.value;return[4,f()];case 7:v.sent();v.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:p=v.sent();i=true;c=p;return[3,12];case 11:try{if(!a&&s.return!=null){s.return()}}finally{if(i){throw c}}return[7];case 12:return[3,14];case 13:m=v.sent();throw K.error('Failed to setup "'.concat(e.join(", "),'": ').concat(m.message)),m;case 14:return[2]}})});return eo.apply(this,arguments)}h(er,"setupPackages");import ea from"node-persist";var ei=G();function ec(){return es.apply(this,arguments)}function es(){es=o(function(){var e;return v(this,function(t){switch(t.label){case 0:e=ea.defaultInstance;if(e)return[3,2];return[4,ea.init({dir:ei.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 es.apply(this,arguments)}h(ec,"initNodePersist");var eu={get:function e(e){return o(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ec()];case 1:r.sent();return[4,ea.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(K.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return o(function(){var n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ec()];case 1:r.sent();return[4,ea.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();K.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return o(function(){var t;return v(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ec()];case 1:n.sent();return[4,ea.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();K.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return o(function(){var e,t;return v(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ec()];case 1:n.sent();return[4,ea.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(K.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(K.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return o(function(){return v(this,function(t){try{return[2,"".concat(ei.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(K.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var el=G(),ef=N.promisify(D);function ed(e){return"error_list:".concat(e)}h(ed,"getErrorListKey");function ep(e){return em.apply(this,arguments)}function em(){em=o(function(e){var t,n,r;return v(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=ed(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eu.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/o(function(){var e;return v(this,function(t){switch(t.label){case 0:return[4,eu.getLogLink(n)];case 1:e=t.sent();e&&K.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=a.sent();K.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return em.apply(this,arguments)}h(ep,"saveErrorListToStorage");function ev(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 d=o.exec(e)||[],p=a.exec(e)||[],m=i.exec(e)||[];var v,g,h,y,b,I;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===P.Error?P.Error:P.Warning,message:(v=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&v!==void 0?v:"",rule:(g=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&g!==void 0?g:""}):p.length?t.push({file:(h=p===null||p===void 0?void 0:p[1])!==null&&h!==void 0?h:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===P.Error?P.Error:P.Warning,message:(y=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:"commitlint",type:P.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:(I=m===null||m===void 0?void 0:(f=m[2])===null||f===void 0?void 0:f.trim())!==null&&I!==void 0?I:""}):n.push(e.trim())}}),t.length&&ep(t),el.DEBUG&&n.length&&(K.warn("Unmatched lines:"),n.forEach(function(e){return K.info(" ".concat(e))}))}h(ev,"parseTextErrors");function eg(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?P.Error:P.Warning,file:t,position:"".concat(o,":").concat(a),rule:i,message:c})})}),n.length&&ep(n)}catch(t){ev(e)}}h(eg,"parseCommandOutput");function eh(e){return ey.apply(this,arguments)}function ey(){ey=o(function(e){var t,n,r,o,a,i,c,s,u;var l=arguments;return v(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eg;n=new AbortController;A.on("SIGINT",function(){K.warn("Process interrupted. Terminating..."),n.abort(),A.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);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)});return[3,4];case 3:i=f.sent();c=i.stdout,s=i.stderr,u=i.message;[c,s].forEach(function(e){return e&&t(e)}),!s&&!c&&K.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return ey.apply(this,arguments)}h(eh,"executeCommand");function eb(e){return{raw:!0,cmd:e}}h(eb,"rawCommand");function eI(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e3," ").concat(eR," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e3," ").concat(e1," ").concat(eY," ").concat(e):"".concat(e3," ").concat(eK," ").concat(e)}h(eI,"formatCLI");function eE(e,t){return typeof e=="function"?eI(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"?eI(e,t):e}h(eE,"formatCommand");function ew(e,t){return eC.apply(this,arguments)}function eC(){eC=o(function(e,t){var n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);K.start("".concat(e)),el.DEBUG&&K.info("→ ".concat(t));return[4,eh(t)];case 1:r.sent(),K.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw K.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eC.apply(this,arguments)}h(ew,"runCommand");import*as eS from"node:path";var eO=G();function eT(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eS).resolve.apply(r,[eO.CWD].concat(d(t)))}h(eT,"resolveWorkingPath");function e_(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eS).join.apply(r,d(t))}h(e_,"join");var eL=G(),ek=eL.CWD,eR="@cyberskill/shared",eG="node_modules",ej="dist",eD="package.json",eA="package-lock.json",eN="tsconfig.json",eP=".gitignore",ex=".simple-git-hooks.json",eF="pnpm-lock.yaml",eU=".git/hooks/",eM=".git/COMMIT_EDITMSG",eW=e_(ek,eG,eR,ej),eK="cyberskill",eY="src/nodejs/cli/index.ts",eB="eslint",eJ="eslint",eH="vitest",e$="playwright",eq="vitest",eQ="@commitlint/cli",eV="commitlint",ez="lint-staged",eX="lint-staged",eZ="typescript",e0="tsc",e1="tsx",e2="git",e4="pnpm",e3="pnpm exec",e5="simple-git-hooks",e6="simple-git-hooks",e8="@eslint/config-inspector",e7="eslint-config-inspector",e9="node-modules-inspector",te="node-modules-inspector",tt="migrate-mongo",tn="migrate-mongo",tr={CYBERSKILL_DIRECTORY:eW,WORKING_DIRECTORY:ek,TS_CONFIG:eT(eN),GIT_IGNORE:eT(eP),GIT_HOOK:eT(eU),GIT_COMMIT_MSG:eT(eM),SIMPLE_GIT_HOOKS_JSON:eT(ex),PACKAGE_JSON:eT(eD),PACKAGE_LOCK_JSON:eT(eA),PNPM_LOCK_YAML:eT(eF),NODE_MODULES:eT(eG),LINT_STAGED_CONFIG:eT("".concat(eW,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eT("".concat(eW,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eT("".concat(eW,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eT("".concat(eW,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eT("".concat(eW,"/react/vitest/vitest.e2e.js"))};function to(e){return ta.apply(this,arguments)}function ta(){ta=o(function(e){var t,n,r,o,a,i;var c=arguments;return v(this,function(s){switch(s.label){case 0:for(t=c.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=c[r]}o=f(n,2),a=o[0],i=o[1];if(!a)throw new Error("'first' argument is undefined");switch(e){case j.CLI:return[3,1];case j.RAW:return[3,3]}return[3,4];case 1:return[4,er(a.split(" "),{update:!0})];case 2:return[2,(s.sent(),eE(eb("".concat(e3," ").concat(i))))];case 3:return[2,eE(eb(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return ta.apply(this,arguments)}h(to,"buildCommand");function ti(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}return /*#__PURE__*/o(function(){return v(this,function(t){return[2,to.apply(void 0,[e].concat(d(n)))]})})}h(ti,"commandFactory");var tc={simpleGitHooks:ti(j.CLI,e5,e6),eslintInspect:ti(j.CLI,e8,e7),nodeModulesInspect:ti(j.CLI,e9,te),eslintCheck:ti(j.CLI,eB,"".concat(eJ," ").concat(tr.WORKING_DIRECTORY)),eslintFix:ti(j.CLI,eB,"".concat(eJ," ").concat(tr.WORKING_DIRECTORY," --fix")),typescriptCheck:ti(j.CLI,eZ,"".concat(e0," -p ").concat(tr.TS_CONFIG," --noEmit")),configureGitHook:ti(j.RAW,"".concat(e2," config core.hooksPath ").concat(tr.GIT_HOOK)),testUnit:ti(j.CLI,eH,"".concat(eq," --config ").concat(tr.UNIT_TEST_CONFIG)),testE2e:ti(j.CLI,"".concat(eH," ").concat(e$),"".concat(eq," --config ").concat(tr.E2E_TEST_CONFIG)),mongoMigrateCreate:h(function(e){return ti(j.CLI,"".concat(tt),"".concat(tn," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:ti(j.CLI,"".concat(tt),"".concat(tn," up")),mongoMigrateDown:ti(j.CLI,"".concat(tt),"".concat(tn," down")),commitLint:ti(j.CLI,eQ,"".concat(eV," --edit ").concat(tr.GIT_COMMIT_MSG," --config ").concat(tr.COMMITLINT_CONFIG)),lintStaged:ti(j.CLI,ez,"".concat(eX," --config ").concat(tr.LINT_STAGED_CONFIG)),stageBuildDirectory:ti(j.RAW,"".concat(e2," add ").concat(ej)),build:ti(j.RAW,"".concat(e4," run build")),pnpmInstallStandard:ti(j.RAW,"".concat(e4," install")),pnpmInstallLegacy:ti(j.RAW,"".concat(e4," install --legacy-peer-deps")),pnpmInstallForce:ti(j.RAW,"".concat(e4," install --force"))};function ts(e){return w(l({plugins:[E()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tr.UNIT_TEST_SETUP_CONFIG]}},e))}h(ts,"vitestUnit");export{I as vitestE2E,ts as vitestUnit};
|
|
1
|
+
function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(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"@vitejs/plugin-react-swc";import{defineConfig as y}from"vitest/config";function b(e){return y(s({plugins:[v()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}h(b,"vitestE2E");import w from"@vitejs/plugin-react-swc";import{defineConfig as E}from"vitest/config";var _=".cyberskill-storage";import I from"dotenv";import{bool as S,cleanEnv as O,str as C}from"envalid";import T from"node:os";import R from"node:path";import G from"node:process";I.config();function D(){var e={DEBUG:G.env.DEBUG||!1,CWD:G.env.CWD||G.cwd(),CYBERSKILL_STORAGE_DIRECTORY:G.env.CYBERSKILL_STORAGE_DIRECTORY||R.join(T.homedir(),_)};return O(e,{DEBUG:S(),CWD:C(),CYBERSKILL_STORAGE_DIRECTORY:C()})}h(D,"getEnv");var N="MONGO_MIGRATE_OPTIONS";import{Collection as P,Db as j}from"mongodb";import{Document as k,Model as L}from"mongoose";import{format as U}from"date-fns";import A from"migrate-mongo";import{Document as x}from"mongoose";import F from"mongoose-aggregate-paginate-v2";import M from"mongoose-paginate-v2";import{v4 as K}from"uuid";import B from"node-persist";var Y=function(e){return e.Error="error",e.Warning="warning",e}({});import W from"chalk";import J from"consola";import{GraphQLError as H}from"graphql";var $=D();$.DEBUG||(J.level=4);function q(e){var t=W[e];return typeof t=="function"?t:W.green}h(q,"chalkKeyword");var Q={silent:J.silent,level:J.level,fatal:J.fatal,error:J.error,warn:J.warn,log:J.log,info:J.info,success:J.success,ready:J.ready,start:J.start,box:J.box,debug:J.debug,trace:J.trace,verbose:J.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){J.box(W.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,i=e.message;J.log("".concat(W.gray("File:")," ").concat(W.blue("".concat(t).concat(r?":".concat(r):"")))),o&&J.log(" ".concat(q(n)("Rule:")," ").concat(o)),J.log(" ".concat(q(n)("Message:")," ").concat(i))}),J.box(q(n)("".concat(e," : ").concat(t.length))),J.log(W.gray("─".repeat(40)))}};var V=D();function z(){return X.apply(this,arguments)}function X(){X=r(function(){var e;return m(this,function(t){switch(t.label){case 0:e=B.defaultInstance;if(e)return[3,2];return[4,B.init({dir:V.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 X.apply(this,arguments)}h(z,"initNodePersist");var Z={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,z()];case 1:r.sent();return[4,B.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(Q.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,z()];case 1:r.sent();return[4,B.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();Q.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,z()];case 1:n.sent();return[4,B.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();Q.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,z()];case 1:n.sent();return[4,B.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(Q.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(Q.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(V.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(Q.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};import ee from"crypto-js";import et from"slugify";var en=et.default||et;var er={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 eo={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return U(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"?eo.getDateTime():new Date;return{id:K(),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:K,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(eo.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=eo.createSchema({mongoose:t,schema:r,virtuals:u});return eo.applyPlugins(p,[i&&M,c&&F]),eo.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,!er.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,Z.get(N)];case 1:n=a.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=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,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,eo.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,eo.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,eo.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,eo.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){Z.set(N,e)},"config")}};var ei=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as ea}from"node:child_process";import ec from"node:process";import*as es from"node:util";var eu={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import el from"node-fetch";import ef from"fs-extra";var ep=ef.readFileSync,ed=ef.writeFileSync,em=ef.pathExistsSync,eg=ef.appendFileSync,eh=ef.copySync,ev=ef.removeSync,ey=ef.statSync,eb=ef.readJsonSync,ew=ef.writeJsonSync;function eE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return em(e)})}h(eE,"existsSync");var e_=D();function eI(e){var t=eV(e_.CWD,e2);if(!eE(t))return!1;try{var n=eb(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 Q.warn("Failed to read package.json: ".concat(e.message)),!1}}h(eI,"getPackage");function eS(e){return eO.apply(this,arguments)}function eO(){eO=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,el("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 Q.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return eO.apply(this,arguments)}h(eS,"getLatestPackageVersion");function eC(e,t){return eT.apply(this,arguments)}function eT(){eT=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=eI(e);if(!n)return[2,s({},eu)];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,eS(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,ew(u,l),Q.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,(Q.error('Error checking package "'.concat(e,'": ').concat(S.message)),s({},eu))];case 5:return[2]}})});return eT.apply(this,arguments)}h(eC,"checkPackage");function eR(){return eG.apply(this,arguments)}function eG(){eG=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 tG.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return tG.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return tG.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,eW("".concat(s," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();Q.warn("Installation attempt failed: ".concat(s)),Q.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 eG.apply(this,arguments)}h(eR,"installDependencies");function eD(e,t){return eN.apply(this,arguments)}function eN(){eN=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(!eE(tO.PACKAGE_JSON)){Q.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 eC(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,eR()];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 Q.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return eN.apply(this,arguments)}h(eD,"setupPackages");var eP=D(),ej=es.promisify(ea);function ek(e){return"error_list:".concat(e)}h(ek,"getErrorListKey");function eL(e){return eU.apply(this,arguments)}function eU(){eU=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=ek(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,Z.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,Z.getLogLink(n)];case 1:e=t.sent();e&&Q.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=i.sent();Q.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return eU.apply(this,arguments)}h(eL,"saveErrorListToStorage");function eA(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]===Y.Error?Y.Error:Y.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]===Y.Error?Y.Error:Y.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:Y.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&&eL(t),eP.DEBUG&&n.length&&(Q.warn("Unmatched lines:"),n.forEach(function(e){return Q.info(" ".concat(e))}))}h(eA,"parseTextErrors");function ex(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?Y.Error:Y.Warning,file:t,position:"".concat(o,":").concat(i),rule:a,message:c})})}),n.length&&eL(n)}catch(t){eA(e)}}h(ex,"parseCommandOutput");function eF(e){return eM.apply(this,arguments)}function eM(){eM=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]:ex;n=new AbortController;ec.on("SIGINT",function(){Q.warn("Process interrupted. Terminating..."),n.abort(),ec.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,ej(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&&Q.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eM.apply(this,arguments)}h(eF,"executeCommand");function eK(e){return{raw:!0,cmd:e}}h(eK,"rawCommand");function eB(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tv," ").concat(eZ," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tv," ").concat(tm," ").concat(tn," ").concat(e):"".concat(tv," ").concat(tt," ").concat(e)}h(eB,"formatCLI");function eY(e,t){return typeof e=="function"?eB(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"?eB(e,t):e}h(eY,"formatCommand");function eW(e,t){return eJ.apply(this,arguments)}function eJ(){eJ=r(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);Q.start("".concat(e)),eP.DEBUG&&Q.info("→ ".concat(t));return[4,eF(t)];case 1:r.sent(),Q.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw Q.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eJ.apply(this,arguments)}h(eW,"runCommand");import{join as eH,resolve as e$}from"node:path";var eq=D();function eQ(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return e$.apply(void 0,[eq.CWD].concat(f(t)))}h(eQ,"resolveWorkingPath");function eV(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eH.apply(void 0,f(t))}h(eV,"join");var ez=D(),eX=ez.CWD,eZ="@cyberskill/shared",e0="node_modules",e1="dist",e2="package.json",e4="package-lock.json",e3="tsconfig.json",e5=".gitignore",e6=".simple-git-hooks.json",e7="pnpm-lock.yaml",e8=".git/hooks/",e9=".git/COMMIT_EDITMSG",te=eV(eX,e0,eZ,e1),tt="cyberskill",tn="src/nodejs/cli/index.ts",tr="eslint",to="eslint",ti="vitest",ta="playwright",tc="vitest",ts="@commitlint/cli",tu="commitlint",tl="lint-staged",tf="lint-staged",tp="typescript",td="tsc",tm="tsx",tg="git",th="pnpm",tv="pnpm exec",ty="simple-git-hooks",tb="simple-git-hooks",tw="@eslint/config-inspector",tE="eslint-config-inspector",t_="node-modules-inspector",tI="node-modules-inspector",tS="migrate-mongo";var tO={CYBERSKILL_DIRECTORY:te,WORKING_DIRECTORY:eX,TS_CONFIG:eQ(e3),GIT_IGNORE:eQ(e5),GIT_HOOK:eQ(e8),GIT_COMMIT_MSG:eQ(e9),SIMPLE_GIT_HOOKS_JSON:eQ(e6),PACKAGE_JSON:eQ(e2),PACKAGE_LOCK_JSON:eQ(e4),PNPM_LOCK_YAML:eQ(e7),NODE_MODULES:eQ(e0),LINT_STAGED_CONFIG:eQ("".concat(te,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eQ("".concat(te,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eQ("".concat(te,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eQ("".concat(te,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eQ("".concat(te,"/react/vitest/vitest.e2e.js"))};function tC(e,t,n){return tT.apply(this,arguments)}function tT(){tT=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 ei.CLI:return[3,1];case ei.STRING:return[3,3];case ei.FUNCTION:return[3,4]}return[3,6];case 1:return[4,eD(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eY(eK("".concat(tv," ").concat(n))))];case 3:return[2,eY(eK(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 tT.apply(this,arguments)}h(tC,"buildCommand");function tR(e,t,n){return /*#__PURE__*/r(function(){return m(this,function(r){return[2,tC(e,t,n)]})})}h(tR,"commandFactory");var tG={simpleGitHooks:tR(ei.CLI,ty,tb),eslintInspect:tR(ei.CLI,tw,tE),nodeModulesInspect:tR(ei.CLI,t_,tI),eslintCheck:tR(ei.CLI,tr,"".concat(to," ").concat(tO.WORKING_DIRECTORY)),eslintFix:tR(ei.CLI,tr,"".concat(to," ").concat(tO.WORKING_DIRECTORY," --fix")),typescriptCheck:tR(ei.CLI,tp,"".concat(td," -p ").concat(tO.TS_CONFIG," --noEmit")),configureGitHook:tR(ei.STRING,"".concat(tg," config core.hooksPath ").concat(tO.GIT_HOOK)),testUnit:tR(ei.CLI,ti,"".concat(tc," --config ").concat(tO.UNIT_TEST_CONFIG)),testE2e:tR(ei.CLI,"".concat(ti," ").concat(ta),"".concat(tc," --config ").concat(tO.E2E_TEST_CONFIG)),mongoMigrateCreate:h(function(e){return tR(ei.FUNCTION,"".concat(tS),function(){return eo.migrate.create(e)})()},"mongoMigrateCreate"),mongoMigrateUp:tR(ei.FUNCTION,"".concat(tS),eo.migrate.up),mongoMigrateDown:tR(ei.FUNCTION,"".concat(tS),eo.migrate.down),commitLint:tR(ei.CLI,ts,"".concat(tu," --edit ").concat(tO.GIT_COMMIT_MSG," --config ").concat(tO.COMMITLINT_CONFIG)),lintStaged:tR(ei.CLI,tl,"".concat(tf," --config ").concat(tO.LINT_STAGED_CONFIG)),stageBuildDirectory:tR(ei.STRING,"".concat(tg," add ").concat(e1)),build:tR(ei.STRING,"".concat(th," run build")),pnpmInstallStandard:tR(ei.STRING,"".concat(th," install")),pnpmInstallLegacy:tR(ei.STRING,"".concat(th," install --legacy-peer-deps")),pnpmInstallForce:tR(ei.STRING,"".concat(th," install --force"))};function tD(e){return E(s({plugins:[w()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tO.UNIT_TEST_SETUP_CONFIG]}},e))}h(tD,"vitestUnit");export{b as vitestE2E,tD as vitestUnit};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,a,o,i){try{var c=e[o](i);var u=c.value}catch(e){n(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(r,a)}}function a(e){return function(){var t=this,n=arguments;return new Promise(function(a,o){var i=e.apply(t,n);function c(e){r(i,a,o,c,u,"next",e)}function u(e){r(i,a,o,c,u,"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){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var a=true;var o=false;var i,c;try{for(n=n.call(e);!(a=(i=n.next()).done);a=true){r.push(i.value);if(t&&r.length===t)break}}catch(e){o=true;c=e}finally{try{if(!a&&n["return"]!=null)n["return"]()}finally{if(o)throw c}}return r}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function s(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(e){for(var t=1;t<arguments.length;t++){var 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,n){return t(e)||c(e,n)||v(e,n)||u()}function d(e){return n(e)||i(e)||v(e)||s()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(t,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 g(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},i=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return i.next=c(0),i["throw"]=c(1),i["return"]=c(2),typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function c(e){return function(t){return u([e,t])}}function u(c){if(n)throw new TypeError("Generator is already executing.");while(i&&(i=0,c[0]&&(o=0)),o)try{if(n=1,r&&(a=c[0]&2?r["return"]:c[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,c[1])).done)return a;if(r=0,a)c=[c[0]&2,a.value];switch(c[0]){case 0:case 1:a=c;break;case 4:o.label++;return{value:c[1],done:false};case 5:o.label++;r=c[1];c=[0];continue;case 7:c=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(c[0]===6||c[0]===2)){o=0;continue}if(c[0]===3&&(!a||c[1]>a[0]&&c[1]<a[3])){o.label=c[1];break}if(c[0]===6&&o.label<a[1]){o.label=a[1];a=c;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(c);break}if(a[2])o.ops.pop();o.trys.pop();continue}c=t.call(e,o)}catch(e){c=[6,e];r=0}finally{n=a=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var y=Object.create;var h=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var I=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var E=function(e,t){return h(e,"name",{value:t,configurable:!0})};var O=function(e,t){for(var n in t)h(e,n,{get:t[n],enumerable:!0})},C=function(e,t,n,r){var a=true,o=false,i=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var c=function(){var a=s.value;!w.call(e,a)&&a!==n&&h(e,a,{get:function(){return t[a]},enumerable:!(r=m(t,a))||r.enumerable})};for(var u=b(t)[Symbol.iterator](),s;!(a=(s=u.next()).done);a=true)c()}catch(e){o=true;i=e}finally{try{if(!a&&u.return!=null){u.return()}}finally{if(o){throw i}}}return e};var S=function(e,t,n){return n=e!=null?y(I(e)):{},C(t||!e||!e.__esModule?h(n,"default",{value:e,enumerable:!0}):n,e)},_=function(e){return C(h({},"__esModule",{value:!0}),e)};var T={};O(T,{vitestUnit:function(){return tp}});module.exports=_(T);var L=S(require("@vitejs/plugin-react-swc"),1),k=require("vitest/config");var j=".cyberskill-storage";var R=S(require("dotenv"),1),D=require("envalid"),G=S(require("os"),1),A=S(require("path"),1),N=S(require("process"),1);R.default.config();function P(){var e={DEBUG:N.default.env.DEBUG||!1,CWD:N.default.env.CWD||N.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:N.default.env.CYBERSKILL_STORAGE_DIRECTORY||A.default.join(G.default.homedir(),j)};return(0,D.cleanEnv)(e,{DEBUG:(0,D.bool)(),CWD:(0,D.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,D.str)()})}E(P,"getEnv");var x=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});var F=require("child_process"),U=S(require("process"),1),M=S(require("util"),1);var W=function(e){return e.Error="error",e.Warning="warning",e}({});var K=S(require("chalk"),1),q=S(require("consola"),1),Y=require("graphql");var B=P();B.DEBUG||(q.default.level=4);function J(e){var t=K.default[e];return typeof t=="function"?t:K.default.green}E(J,"chalkKeyword");var H={silent:q.default.silent,level:q.default.level,fatal:q.default.fatal,error:q.default.error,warn:q.default.warn,log:q.default.log,info:q.default.info,success:q.default.success,ready:q.default.ready,start:q.default.start,box:q.default.box,debug:q.default.debug,trace:q.default.trace,verbose:q.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){q.default.box(K.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;q.default.log("".concat(K.default.gray("File:")," ").concat(K.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&q.default.log(" ".concat(J(n)("Rule:")," ").concat(a)),q.default.log(" ".concat(J(n)("Message:")," ").concat(o))}),q.default.box(J(n)("".concat(e," : ").concat(t.length))),q.default.log(K.default.gray("─".repeat(40)))}};var $={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var V=S(require("node-fetch"),1);var z=S(require("fs"),1);function Q(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return z.existsSync(e)})}E(Q,"existsSync");function X(e,t){var n=z.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":p(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}E(X,"readFileSync");function Z(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,a=r===void 0?!1:r,o=a&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);z.writeFileSync(e,o,"utf-8")}E(Z,"writeFileSync");var ee=P();function et(e){var t=eD(ee.CWD,eF);if(!Q(t))return!1;try{var n=X(t,{asJson:!0}),r=n.name,a=n.dependencies,o=a===void 0?{}:a,i=n.devDependencies,c=i===void 0?{}:i,u=r===e,s=e in o,l=e in c;return u||s||l?{path:t,file:n,isCurrentProject:u,isDepend:s,isDevDepend:l}:!1}catch(e){return H.warn("Failed to read package.json: ".concat(e.message)),!1}}E(et,"getPackage");function en(e){return er.apply(this,arguments)}function er(){er=a(function(e){var t,n,r,a;return g(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,V.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=o.sent(),r=n.version;return[2,r];case 3:a=o.sent();throw H.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return er.apply(this,arguments)}E(en,"getLatestPackageVersion");function ea(e,t){return eo.apply(this,arguments)}function eo(){eo=a(function(e,t){var n,r,a,o,i,c,u,s,f,d,p,v,y,h,m,b,I,w,E,O,C;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,4,,5]);n=et(e);if(!n)return[2,l({},$)];u=n.path,s=n.file,f=n.isCurrentProject,d=n.isDepend,p=n.isDevDepend,v=(r=s.dependencies)!==null&&r!==void 0?r:{},y=(a=s.devDependencies)!==null&&a!==void 0?a:{},h=f?(o=s.version)!==null&&o!==void 0?o:"0.0.0":d?(i=v[e])!==null&&i!==void 0?i:"0.0.0":p?(c=y[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];I=h;return[3,3];case 1:return[4,en(e)];case 2:I=g.sent();g.label=3;case 3:m=I,b=f||h===m;if(!b&&(t===null||t===void 0?void 0:t.update)){;E=d?"dependencies":p?"devDependencies":null;E&&((w=s[E])===null||w===void 0?void 0:w[e])!==m&&(s[E]=(O=s[E])!==null&&O!==void 0?O:{},s[E][e]=m,Z(u,s,{isJson:!0}),H.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:f,installedPath:u,file:s,isUpToDate:b}];case 4:C=g.sent();return[2,(H.error('Error checking package "'.concat(e,'": ').concat(C.message)),l({},$))];case 5:return[2]}})});return eo.apply(this,arguments)}E(ea,"checkPackage");function ei(){return ec.apply(this,arguments)}function ec(){ec=a(function(){var e,t,n,r,a,o,i,c,u,s,l,f;return g(this,function(d){switch(d.label){case 0:e=[{command:E(function(){return td.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:E(function(){return td.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:E(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]);a=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];i=o.value,c=i.command,u=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:s=d.sent();return[4,eT("".concat(u," using: ").concat(s),s)];case 5:d.sent();return[2];case 6:l=d.sent();H.warn("Installation attempt failed: ".concat(u)),H.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&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ec.apply(this,arguments)}E(ei,"installDependencies");function eu(e,t){return es.apply(this,arguments)}function es(){es=a(function(e,t){var n,r,a,o,i,c,u,s,f,p,v;return g(this,function(g){switch(g.label){case 0:if(!Q(tu.PACKAGE_JSON)){H.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,13,,14]);n=d(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ea(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=g.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ei()];case 3:r=g.sent();g.label=4;case 4:r;o=true,i=false,c=undefined;g.label=5;case 5:g.trys.push([5,10,11,12]);u=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();g.label=6;case 6:if(!!(o=(s=u.next()).done))return[3,9];f=s.value;return[4,f()];case 7:g.sent();g.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:p=g.sent();i=true;c=p;return[3,12];case 11:try{if(!o&&u.return!=null){u.return()}}finally{if(i){throw c}}return[7];case 12:return[3,14];case 13:v=g.sent();throw H.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})});return es.apply(this,arguments)}E(eu,"setupPackages");var el=S(require("node-persist"),1);var ef=P();function ed(){return ep.apply(this,arguments)}function ep(){ep=a(function(){var e;return g(this,function(t){switch(t.label){case 0:e=el.default.defaultInstance;if(e)return[3,2];return[4,el.default.init({dir:ef.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 ep.apply(this,arguments)}E(ed,"initNodePersist");var ev={get:function e(e){return a(function(){var t,n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ed()];case 1:r.sent();return[4,el.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(H.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return a(function(){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ed()];case 1:r.sent();return[4,el.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();H.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ed()];case 1:n.sent();return[4,el.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();H.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,t;return g(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ed()];case 1:n.sent();return[4,el.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(H.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(H.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return g(this,function(t){try{return[2,"".concat(ef.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(H.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eg=P(),ey=M.promisify(F.exec);function eh(e){return"error_list:".concat(e)}E(eh,"getErrorListKey");function em(e){return eb.apply(this,arguments)}function eb(){eb=a(function(e){var t,n,r;return g(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eh(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,ev.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/a(function(){var e;return g(this,function(t){switch(t.label){case 0:return[4,ev.getLogLink(n)];case 1:e=t.sent();e&&H.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=o.sent();H.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return eb.apply(this,arguments)}E(em,"saveErrorListToStorage");function eI(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,u,s,l,f;var d=a.exec(e)||[],p=o.exec(e)||[],v=i.exec(e)||[];var g,y,h,m,b,I;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===W.Error?W.Error:W.Warning,message:(g=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):p.length?t.push({file:(h=p===null||p===void 0?void 0:p[1])!==null&&h!==void 0?h:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===W.Error?W.Error:W.Warning,message:(m=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&m!==void 0?m:""}):v.length?t.push({file:"commitlint",type:W.Error,message:(b=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&b!==void 0?b:"",rule:(I=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&I!==void 0?I:""}):n.push(e.trim())}}),t.length&&em(t),eg.DEBUG&&n.length&&(H.warn("Unmatched lines:"),n.forEach(function(e){return H.info(" ".concat(e))}))}E(eI,"parseTextErrors");function ew(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,i=e.ruleId,c=e.message;n.push({type:r===2?W.Error:W.Warning,file:t,position:"".concat(a,":").concat(o),rule:i,message:c})})}),n.length&&em(n)}catch(t){eI(e)}}E(ew,"parseCommandOutput");function eE(e){return eO.apply(this,arguments)}function eO(){eO=a(function(e){var t,n,r,a,o,i,c,u,s;var l=arguments;return g(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ew;n=new AbortController;U.default.on("SIGINT",function(){H.warn("Process interrupted. Terminating..."),n.abort(),U.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,ey(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});return[3,4];case 3:i=f.sent();c=i.stdout,u=i.stderr,s=i.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&H.error("Command failed: ".concat(s));return[3,4];case 4:return[2]}})});return eO.apply(this,arguments)}E(eE,"executeCommand");function eC(e){return{raw:!0,cmd:e}}E(eC,"rawCommand");function eS(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e9," ").concat(eN," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e9," ").concat(e6," ").concat(e$," ").concat(e):"".concat(e9," ").concat(eH," ").concat(e)}E(eS,"formatCLI");function e_(e,t){return typeof e=="function"?eS(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"?eS(e,t):e}E(e_,"formatCommand");function eT(e,t){return eL.apply(this,arguments)}function eL(){eL=a(function(e,t){var n;return g(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);H.start("".concat(e)),eg.DEBUG&&H.info("→ ".concat(t));return[4,eE(t)];case 1:r.sent(),H.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw H.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eL.apply(this,arguments)}E(eT,"runCommand");var ek=S(require("path"),1);var ej=P();function eR(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ek).resolve.apply(r,[ej.CWD].concat(d(t)))}E(eR,"resolveWorkingPath");function eD(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=ek).join.apply(r,d(t))}E(eD,"join");var eG=P(),eA=eG.CWD,eN="@cyberskill/shared",eP="node_modules",ex="dist",eF="package.json",eU="package-lock.json",eM="tsconfig.json",eW=".gitignore",eK=".simple-git-hooks.json",eq="pnpm-lock.yaml",eY=".git/hooks/",eB=".git/COMMIT_EDITMSG",eJ=eD(eA,eP,eN,ex),eH="cyberskill",e$="src/nodejs/cli/index.ts",eV="eslint",ez="eslint",eQ="vitest",eX="playwright",eZ="vitest",e0="@commitlint/cli",e1="commitlint",e2="lint-staged",e4="lint-staged",e3="typescript",e5="tsc",e6="tsx",e8="git",e7="pnpm",e9="pnpm exec",te="simple-git-hooks",tt="simple-git-hooks",tn="@eslint/config-inspector",tr="eslint-config-inspector",ta="node-modules-inspector",to="node-modules-inspector",ti="migrate-mongo",tc="migrate-mongo",tu={CYBERSKILL_DIRECTORY:eJ,WORKING_DIRECTORY:eA,TS_CONFIG:eR(eM),GIT_IGNORE:eR(eW),GIT_HOOK:eR(eY),GIT_COMMIT_MSG:eR(eB),SIMPLE_GIT_HOOKS_JSON:eR(eK),PACKAGE_JSON:eR(eF),PACKAGE_LOCK_JSON:eR(eU),PNPM_LOCK_YAML:eR(eq),NODE_MODULES:eR(eP),LINT_STAGED_CONFIG:eR("".concat(eJ,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eR("".concat(eJ,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eR("".concat(eJ,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eR("".concat(eJ,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eR("".concat(eJ,"/react/vitest/vitest.e2e.js"))};function ts(e){return tl.apply(this,arguments)}function tl(){tl=a(function(e){var t,n,r,a,o,i;var c=arguments;return g(this,function(u){switch(u.label){case 0:for(t=c.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=c[r]}a=f(n,2),o=a[0],i=a[1];if(!o)throw new Error("'first' argument is undefined");switch(e){case x.CLI:return[3,1];case x.RAW:return[3,3]}return[3,4];case 1:return[4,eu(o.split(" "),{update:!0})];case 2:return[2,(u.sent(),e_(eC("".concat(e9," ").concat(i))))];case 3:return[2,e_(eC(o))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tl.apply(this,arguments)}E(ts,"buildCommand");function tf(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}return /*#__PURE__*/a(function(){return g(this,function(t){return[2,ts.apply(void 0,[e].concat(d(n)))]})})}E(tf,"commandFactory");var td={simpleGitHooks:tf(x.CLI,te,tt),eslintInspect:tf(x.CLI,tn,tr),nodeModulesInspect:tf(x.CLI,ta,to),eslintCheck:tf(x.CLI,eV,"".concat(ez," ").concat(tu.WORKING_DIRECTORY)),eslintFix:tf(x.CLI,eV,"".concat(ez," ").concat(tu.WORKING_DIRECTORY," --fix")),typescriptCheck:tf(x.CLI,e3,"".concat(e5," -p ").concat(tu.TS_CONFIG," --noEmit")),configureGitHook:tf(x.RAW,"".concat(e8," config core.hooksPath ").concat(tu.GIT_HOOK)),testUnit:tf(x.CLI,eQ,"".concat(eZ," --config ").concat(tu.UNIT_TEST_CONFIG)),testE2e:tf(x.CLI,"".concat(eQ," ").concat(eX),"".concat(eZ," --config ").concat(tu.E2E_TEST_CONFIG)),mongoMigrateCreate:E(function(e){return tf(x.CLI,"".concat(ti),"".concat(tc," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:tf(x.CLI,"".concat(ti),"".concat(tc," up")),mongoMigrateDown:tf(x.CLI,"".concat(ti),"".concat(tc," down")),commitLint:tf(x.CLI,e0,"".concat(e1," --edit ").concat(tu.GIT_COMMIT_MSG," --config ").concat(tu.COMMITLINT_CONFIG)),lintStaged:tf(x.CLI,e2,"".concat(e4," --config ").concat(tu.LINT_STAGED_CONFIG)),stageBuildDirectory:tf(x.RAW,"".concat(e8," add ").concat(ex)),build:tf(x.RAW,"".concat(e7," run build")),pnpmInstallStandard:tf(x.RAW,"".concat(e7," install")),pnpmInstallLegacy:tf(x.RAW,"".concat(e7," install --legacy-peer-deps")),pnpmInstallForce:tf(x.RAW,"".concat(e7," install --force"))};function tp(e){return(0,k.defineConfig)(l({plugins:[(0,L.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tu.UNIT_TEST_SETUP_CONFIG]}},e))}E(tp,"vitestUnit");0&&(module.exports={vitestUnit:vitestUnit});
|
|
1
|
+
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,a,o,i){try{var c=e[o](i);var u=c.value}catch(e){n(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(r,a)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(a,o){var i=e.apply(t,r);function c(e){n(i,a,o,c,u,"next",e)}function u(e){n(i,a,o,c,u,"throw",e)}c(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(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 WeakMap!=="function")return null;var t=new WeakMap;var n=new WeakMap;return(i=function(e){return e?n:t})(e)}function c(e,t){if(!t&&e&&e.__esModule){return e}if(e===null||typeof e!=="object"&&typeof e!=="function"){return{default:e}}var n=i(t);if(n&&n.has(e)){return n.get(e)}var r={__proto__:null};var a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e){if(o!=="default"&&Object.prototype.hasOwnProperty.call(e,o)){var c=a?Object.getOwnPropertyDescriptor(e,o):null;if(c&&(c.get||c.set)){Object.defineProperty(r,o,c)}else{r[o]=e[o]}}}r.default=e;if(n){n.set(e,r)}return r}function u(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){a(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 p(e){return t(e)||u(e)||g(e)||s()}function v(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function g(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function h(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},i=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return i.next=c(0),i["throw"]=c(1),i["return"]=c(2),typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function c(e){return function(t){return u([e,t])}}function u(c){if(n)throw new TypeError("Generator is already executing.");while(i&&(i=0,c[0]&&(o=0)),o)try{if(n=1,r&&(a=c[0]&2?r["return"]:c[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,c[1])).done)return a;if(r=0,a)c=[c[0]&2,a.value];switch(c[0]){case 0:case 1:a=c;break;case 4:o.label++;return{value:c[1],done:false};case 5:o.label++;r=c[1];c=[0];continue;case 7:c=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(c[0]===6||c[0]===2)){o=0;continue}if(c[0]===3&&(!a||c[1]>a[0]&&c[1]<a[3])){o.label=c[1];break}if(c[0]===6&&o.label<a[1]){o.label=a[1];a=c;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(c);break}if(a[2])o.ops.pop();o.trys.pop();continue}c=t.call(e,o)}catch(e){c=[6,e];r=0}finally{n=a=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var y=Object.create;var m=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var _=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,E=Object.prototype.hasOwnProperty;var O=function(e,t){return m(e,"name",{value:t,configurable:!0})};var I=function(e,t){for(var n in t)m(e,n,{get:t[n],enumerable:!0})},S=function(e,t,n,r){var a=true,o=false,i=undefined;if(t&&(typeof t==="undefined"?"undefined":v(t))=="object"||typeof t=="function")try{var c=function(){var a=s.value;!E.call(e,a)&&a!==n&&m(e,a,{get:function(){return t[a]},enumerable:!(r=b(t,a))||r.enumerable})};for(var u=_(t)[Symbol.iterator](),s;!(a=(s=u.next()).done);a=true)c()}catch(e){o=true;i=e}finally{try{if(!a&&u.return!=null){u.return()}}finally{if(o){throw i}}}return e};var C=function(e,t,n){return n=e!=null?y(w(e)):{},S(t||!e||!e.__esModule?m(n,"default",{value:e,enumerable:!0}):n,e)},T=function(e){return S(m({},"__esModule",{value:!0}),e)};var P={};I(P,{vitestUnit:function(){return tL}});module.exports=T(P);var R=C(require("@vitejs/plugin-react-swc"),1),j=require("vitest/config");var D=".cyberskill-storage";var G=C(require("dotenv"),1),N=require("envalid"),k=C(require("os"),1),U=C(require("path"),1),L=C(require("process"),1);G.default.config();function A(){var e={DEBUG:L.default.env.DEBUG||!1,CWD:L.default.env.CWD||L.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:L.default.env.CYBERSKILL_STORAGE_DIRECTORY||U.default.join(k.default.homedir(),D)};return(0,N.cleanEnv)(e,{DEBUG:(0,N.bool)(),CWD:(0,N.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,N.str)()})}O(A,"getEnv");var M="MONGO_MIGRATE_OPTIONS";var x=require("mongodb"),q=require("mongoose");var F=require("date-fns"),K=C(require("migrate-mongo"),1),W=require("mongoose"),B=C(require("mongoose-aggregate-paginate-v2"),1),Y=C(require("mongoose-paginate-v2"),1),J=require("uuid");var H=C(require("node-persist"),1);var $=function(e){return e.Error="error",e.Warning="warning",e}({});var Q=C(require("chalk"),1),V=C(require("consola"),1),z=require("graphql");var X=A();X.DEBUG||(V.default.level=4);function Z(e){var t=Q.default[e];return typeof t=="function"?t:Q.default.green}O(Z,"chalkKeyword");var ee={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(Q.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;V.default.log("".concat(Q.default.gray("File:")," ").concat(Q.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&V.default.log(" ".concat(Z(n)("Rule:")," ").concat(a)),V.default.log(" ".concat(Z(n)("Message:")," ").concat(o))}),V.default.box(Z(n)("".concat(e," : ").concat(t.length))),V.default.log(Q.default.gray("─".repeat(40)))}};var et=A();function en(){return er.apply(this,arguments)}function er(){er=r(function(){var e;return h(this,function(t){switch(t.label){case 0:e=H.default.defaultInstance;if(e)return[3,2];return[4,H.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 er.apply(this,arguments)}O(en,"initNodePersist");var ea={get:function e(e){return r(function(){var t,n;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,en()];case 1:r.sent();return[4,H.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ee.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 h(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,en()];case 1:r.sent();return[4,H.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ee.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 h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,en()];case 1:n.sent();return[4,H.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ee.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 h(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,en()];case 1:n.sent();return[4,H.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ee.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ee.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return h(this,function(t){try{return[2,"".concat(et.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ee.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eo=C(require("crypto-js"),1),ei=C(require("slugify"),1);var ec=ei.default.default||ei.default;var eu={isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":v(e))=="object"?o(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1}};var es={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,F.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"?es.getDateTime():new Date;return{id:(0,J.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,a=t.post;n&&r&&e.pre(n,r),n&&a&&e.post(n,a)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:J.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,a=r===void 0?[]:r,o=e.standalone,i=o===void 0?!1:o;var c=new t.Schema(n,{strict:!0});return a.forEach(function(e){var t=e.name,n=e.options,r=e.get;var a=c.virtual(t,n);r&&a.get(r)}),i||c.add(es.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,a=e.pagination,o=a===void 0?!1:a,i=e.aggregate,c=i===void 0?!1:i,u=e.virtuals,s=u===void 0?[]:u,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=es.createSchema({mongoose:t,schema:r,virtuals:s});return es.applyPlugins(d,[o&&Y.default,c&&B.default]),es.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 h(this,function(t){return[2,!eu.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 h(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 a({},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 h(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!o(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,a,o;return h(this,function(i){switch(i.label){case 0:return[4,ea.get(M)];case 1:n=i.sent();if(!n)throw new Error("Missing migrate config");if(K.default.config.set(n),!t)return[2,e(void 0)];return[4,K.default.database.connect()];case 2:r=i.sent(),a=r.db,o=r.client;i.label=3;case 3:i.trys.push([3,,5,7]);return[4,e({db:a,client:o})];case 4:return[2,i.sent()];case 5:return[4,o.close()];case 6:i.sent();return[7];case 7:return[2]}})});return function(t,n){return e.apply(this,arguments)}}(),"withConfig"),init:O(/*#__PURE__*/r(function(){return h(this,function(e){switch(e.label){case 0:return[4,K.default.init()];case 1:e.sent();return[2]}})}),"init"),create:O(/*#__PURE__*/function(){var e=r(function(e){return h(this,function(t){switch(t.label){case 0:return[4,es.migrate.withConfig(function(){return K.default.create(e)})];case 1:t.sent();return[2]}})});return function(t){return e.apply(this,arguments)}}(),"create"),up:O(/*#__PURE__*/r(function(){return h(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/c(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,es.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return h(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,K.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 h(this,function(e){switch(e.label){case 0:return[4,Promise.resolve().then(function(){return /*#__PURE__*/c(require("ts-node"))}).then(function(e){return e.register({transpileOnly:!0})})];case 1:e.sent();return[4,es.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t,n;return h(this,function(r){switch(r.label){case 0:t=e.db,n=e.client;return[4,K.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 h(this,function(e){switch(e.label){case 0:return[4,es.migrate.withConfig(/*#__PURE__*/function(){var e=r(function(e){var t;return h(this,function(n){switch(n.label){case 0:t=e.db;return[4,K.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){ea.set(M,e)},"config")}};var el=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var ef=require("child_process"),ed=C(require("process"),1),ep=C(require("util"),1);var ev={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eg=C(require("node-fetch"),1);var eh=C(require("fs-extra"),1),ey=require("path");var em=eh.default,eb=em.readFileSync,e_=em.writeFileSync,ew=em.pathExistsSync,eE=em.appendFileSync,eO=em.copySync,eI=em.removeSync,eS=em.statSync,eC=eh.default.readJsonSync,eT=eh.default.writeJsonSync;function eP(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ew(e)})}O(eP,"existsSync");var eR=A();function ej(e){var t=e2(eR.CWD,e8);if(!eP(t))return!1;try{var n=eC(t),r=n.name,a=n.dependencies,o=a===void 0?{}:a,i=n.devDependencies,c=i===void 0?{}:i,u=r===e,s=e in o,l=e in c;return u||s||l?{path:t,file:n,isCurrentProject:u,isDepend:s,isDevDepend:l}:!1}catch(e){return ee.warn("Failed to read package.json: ".concat(e.message)),!1}}O(ej,"getPackage");function eD(e){return eG.apply(this,arguments)}function eG(){eG=r(function(e){var t,n,r,a;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,eg.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=o.sent(),r=n.version;return[2,r];case 3:a=o.sent();throw ee.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return eG.apply(this,arguments)}O(eD,"getLatestPackageVersion");function eN(e,t){return ek.apply(this,arguments)}function ek(){ek=r(function(e,t){var n,r,a,o,i,c,u,s,f,d,p,v,g,y,m,b,_,w,E,O,I;return h(this,function(h){switch(h.label){case 0:h.trys.push([0,4,,5]);n=ej(e);if(!n)return[2,l({},ev)];u=n.path,s=n.file,f=n.isCurrentProject,d=n.isDepend,p=n.isDevDepend,v=(r=s.dependencies)!==null&&r!==void 0?r:{},g=(a=s.devDependencies)!==null&&a!==void 0?a:{},y=f?(o=s.version)!==null&&o!==void 0?o:"0.0.0":d?(i=v[e])!==null&&i!==void 0?i:"0.0.0":p?(c=g[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];_=y;return[3,3];case 1:return[4,eD(e)];case 2:_=h.sent();h.label=3;case 3:m=_,b=f||y===m;if(!b&&(t===null||t===void 0?void 0:t.update)){;E=d?"dependencies":p?"devDependencies":null;E&&((w=s[E])===null||w===void 0?void 0:w[e])!==m&&(s[E]=(O=s[E])!==null&&O!==void 0?O:{},s[E][e]=m,eT(u,s),ee.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:f,installedPath:u,file:s,isUpToDate:b}];case 4:I=h.sent();return[2,(ee.error('Error checking package "'.concat(e,'": ').concat(I.message)),l({},ev))];case 5:return[2]}})});return ek.apply(this,arguments)}O(eN,"checkPackage");function eU(){return eL.apply(this,arguments)}function eL(){eL=r(function(){var e,t,n,r,a,o,i,c,u,s,l,f;return h(this,function(d){switch(d.label){case 0:e=[{command:O(function(){return tU.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:O(function(){return tU.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:O(function(){return tU.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]);a=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];i=o.value,c=i.command,u=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:s=d.sent();return[4,ez("".concat(u," using: ").concat(s),s)];case 5:d.sent();return[2];case 6:l=d.sent();ee.warn("Installation attempt failed: ".concat(u)),ee.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&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eL.apply(this,arguments)}O(eU,"installDependencies");function eA(e,t){return eM.apply(this,arguments)}function eM(){eM=r(function(e,t){var n,r,a,o,i,c,u,s,f,d,v;return h(this,function(g){switch(g.label){case 0:if(!eP(tD.PACKAGE_JSON)){ee.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eN(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=g.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eU()];case 3:r=g.sent();g.label=4;case 4:r;o=true,i=false,c=undefined;g.label=5;case 5:g.trys.push([5,10,11,12]);u=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();g.label=6;case 6:if(!!(o=(s=u.next()).done))return[3,9];f=s.value;return[4,f()];case 7:g.sent();g.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:d=g.sent();i=true;c=d;return[3,12];case 11:try{if(!o&&u.return!=null){u.return()}}finally{if(i){throw c}}return[7];case 12:return[3,14];case 13:v=g.sent();throw ee.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})});return eM.apply(this,arguments)}O(eA,"setupPackages");var ex=A(),eq=ep.promisify(ef.exec);function eF(e){return"error_list:".concat(e)}O(eF,"getErrorListKey");function eK(e){return eW.apply(this,arguments)}function eW(){eW=r(function(e){var t,n,a;return h(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eF(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,ea.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return h(this,function(t){switch(t.label){case 0:return[4,ea.getLogLink(n)];case 1:e=t.sent();e&&ee.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:a=o.sent();ee.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})});return eW.apply(this,arguments)}O(eK,"saveErrorListToStorage");function eB(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,u,s,l,f;var d=a.exec(e)||[],p=o.exec(e)||[],v=i.exec(e)||[];var g,h,y,m,b,_;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===$.Error?$.Error:$.Warning,message:(g=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(h=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(y=p===null||p===void 0?void 0:p[1])!==null&&y!==void 0?y:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===$.Error?$.Error:$.Warning,message:(m=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&m!==void 0?m:""}):v.length?t.push({file:"commitlint",type:$.Error,message:(b=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&b!==void 0?b:"",rule:(_=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&_!==void 0?_:""}):n.push(e.trim())}}),t.length&&eK(t),ex.DEBUG&&n.length&&(ee.warn("Unmatched lines:"),n.forEach(function(e){return ee.info(" ".concat(e))}))}O(eB,"parseTextErrors");function eY(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,i=e.ruleId,c=e.message;n.push({type:r===2?$.Error:$.Warning,file:t,position:"".concat(a,":").concat(o),rule:i,message:c})})}),n.length&&eK(n)}catch(t){eB(e)}}O(eY,"parseCommandOutput");function eJ(e){return eH.apply(this,arguments)}function eH(){eH=r(function(e){var t,n,r,a,o,i,c,u,s;var l=arguments;return h(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eY;n=new AbortController;ed.default.on("SIGINT",function(){ee.warn("Process interrupted. Terminating..."),n.abort(),ed.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eq(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:i=f.sent();c=i.stdout,u=i.stderr,s=i.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&ee.error("Command failed: ".concat(s));return[3,5];case 5:return[2]}})});return eH.apply(this,arguments)}O(eJ,"executeCommand");function e$(e){return{raw:!0,cmd:e}}O(e$,"rawCommand");function eQ(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tO," ").concat(e5," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tO," ").concat(t_," ").concat(tu," ").concat(e):"".concat(tO," ").concat(tc," ").concat(e)}O(eQ,"formatCLI");function eV(e,t){return typeof e=="function"?eQ(e(t),t):(typeof e==="undefined"?"undefined":v(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eQ(e,t):e}O(eV,"formatCommand");function ez(e,t){return eX.apply(this,arguments)}function eX(){eX=r(function(e,t){var n;return h(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ee.start("".concat(e)),ex.DEBUG&&ee.info("→ ".concat(t));return[4,eJ(t)];case 1:r.sent(),ee.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ee.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eX.apply(this,arguments)}O(ez,"runCommand");var eZ=require("path");var e0=A();function e1(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eZ.resolve).apply(this,[e0.CWD].concat(p(t)))}O(e1,"resolveWorkingPath");function e2(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eZ.join).apply(this,p(t))}O(e2,"join");var e4=A(),e3=e4.CWD,e5="@cyberskill/shared",e6="node_modules",e7="dist",e8="package.json",e9="package-lock.json",te="tsconfig.json",tt=".gitignore",tn=".simple-git-hooks.json",tr="pnpm-lock.yaml",ta=".git/hooks/",to=".git/COMMIT_EDITMSG",ti=e2(e3,e6,e5,e7),tc="cyberskill",tu="src/nodejs/cli/index.ts",ts="eslint",tl="eslint",tf="vitest",td="playwright",tp="vitest",tv="@commitlint/cli",tg="commitlint",th="lint-staged",ty="lint-staged",tm="typescript",tb="tsc",t_="tsx",tw="git",tE="pnpm",tO="pnpm exec",tI="simple-git-hooks",tS="simple-git-hooks",tC="@eslint/config-inspector",tT="eslint-config-inspector",tP="node-modules-inspector",tR="node-modules-inspector",tj="migrate-mongo";var tD={CYBERSKILL_DIRECTORY:ti,WORKING_DIRECTORY:e3,TS_CONFIG:e1(te),GIT_IGNORE:e1(tt),GIT_HOOK:e1(ta),GIT_COMMIT_MSG:e1(to),SIMPLE_GIT_HOOKS_JSON:e1(tn),PACKAGE_JSON:e1(e8),PACKAGE_LOCK_JSON:e1(e9),PNPM_LOCK_YAML:e1(tr),NODE_MODULES:e1(e6),LINT_STAGED_CONFIG:e1("".concat(ti,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e1("".concat(ti,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e1("".concat(ti,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e1("".concat(ti,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e1("".concat(ti,"/react/vitest/vitest.e2e.js"))};function tG(e,t,n){return tN.apply(this,arguments)}function tN(){tN=r(function(e,t,n){return h(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case el.CLI:return[3,1];case el.STRING:return[3,3];case el.FUNCTION:return[3,4]}return[3,6];case 1:return[4,eA(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eV(e$("".concat(tO," ").concat(n))))];case 3:return[2,eV(e$(t))];case 4:return[4,eA(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 tN.apply(this,arguments)}O(tG,"buildCommand");function tk(e,t,n){return /*#__PURE__*/r(function(){return h(this,function(r){return[2,tG(e,t,n)]})})}O(tk,"commandFactory");var tU={simpleGitHooks:tk(el.CLI,tI,tS),eslintInspect:tk(el.CLI,tC,tT),nodeModulesInspect:tk(el.CLI,tP,tR),eslintCheck:tk(el.CLI,ts,"".concat(tl," ").concat(tD.WORKING_DIRECTORY)),eslintFix:tk(el.CLI,ts,"".concat(tl," ").concat(tD.WORKING_DIRECTORY," --fix")),typescriptCheck:tk(el.CLI,tm,"".concat(tb," -p ").concat(tD.TS_CONFIG," --noEmit")),configureGitHook:tk(el.STRING,"".concat(tw," config core.hooksPath ").concat(tD.GIT_HOOK)),testUnit:tk(el.CLI,tf,"".concat(tp," --config ").concat(tD.UNIT_TEST_CONFIG)),testE2e:tk(el.CLI,"".concat(tf," ").concat(td),"".concat(tp," --config ").concat(tD.E2E_TEST_CONFIG)),mongoMigrateCreate:O(function(e){return tk(el.FUNCTION,"".concat(tj),function(){return es.migrate.create(e)})()},"mongoMigrateCreate"),mongoMigrateUp:tk(el.FUNCTION,"".concat(tj),es.migrate.up),mongoMigrateDown:tk(el.FUNCTION,"".concat(tj),es.migrate.down),commitLint:tk(el.CLI,tv,"".concat(tg," --edit ").concat(tD.GIT_COMMIT_MSG," --config ").concat(tD.COMMITLINT_CONFIG)),lintStaged:tk(el.CLI,th,"".concat(ty," --config ").concat(tD.LINT_STAGED_CONFIG)),stageBuildDirectory:tk(el.STRING,"".concat(tw," add ").concat(e7)),build:tk(el.STRING,"".concat(tE," run build")),pnpmInstallStandard:tk(el.STRING,"".concat(tE," install")),pnpmInstallLegacy:tk(el.STRING,"".concat(tE," install --legacy-peer-deps")),pnpmInstallForce:tk(el.STRING,"".concat(tE," install --force"))};function tL(e){return(0,j.defineConfig)(l({plugins:[(0,R.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tD.UNIT_TEST_SETUP_CONFIG]}},e))}O(tL,"vitestUnit");0&&(module.exports={vitestUnit:vitestUnit});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,o,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 o(e){return function(){var t=this,n=arguments;return new Promise(function(o,a){var i=e.apply(t,n);function c(e){r(i,o,a,c,s,"next",e)}function s(e){r(i,o,a,c,s,"throw",e)}c(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var o=true;var a=false;var i,c;try{for(n=n.call(e);!(o=(i=n.next()).done);o=true){r.push(i.value);if(t&&r.length===t)break}}catch(e){a=true;c=e}finally{try{if(!o&&n["return"]!=null)n["return"]()}finally{if(a)throw c}}return r}function s(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function u(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function f(e,n){return t(e)||c(e,n)||v(e,n)||s()}function d(e){return n(e)||i(e)||v(e)||u()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(t,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})};import y from"@vitejs/plugin-react-swc";import{defineConfig as b}from"vitest/config";var I=".cyberskill-storage";import E from"dotenv";import{bool as w,cleanEnv as C,str as S}from"envalid";import O from"node:os";import T from"node:path";import _ from"node:process";E.config();function L(){var e={DEBUG:_.env.DEBUG||!1,CWD:_.env.CWD||_.cwd(),CYBERSKILL_STORAGE_DIRECTORY:_.env.CYBERSKILL_STORAGE_DIRECTORY||T.join(O.homedir(),I)};return C(e,{DEBUG:w(),CWD:S(),CYBERSKILL_STORAGE_DIRECTORY:S()})}h(L,"getEnv");var k=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});import{exec as R}from"node:child_process";import G from"node:process";import*as D from"node:util";var A=function(e){return e.Error="error",e.Warning="warning",e}({});import j from"chalk";import N from"consola";import{GraphQLError as P}from"graphql";var x=L();x.DEBUG||(N.level=4);function F(e){var t=j[e];return typeof t=="function"?t:j.green}h(F,"chalkKeyword");var U={silent:N.silent,level:N.level,fatal:N.fatal,error:N.error,warn:N.warn,log:N.log,info:N.info,success:N.success,ready:N.ready,start:N.start,box:N.box,debug:N.debug,trace:N.trace,verbose:N.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){N.box(j.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;N.log("".concat(j.gray("File:")," ").concat(j.blue("".concat(t).concat(r?":".concat(r):"")))),o&&N.log(" ".concat(F(n)("Rule:")," ").concat(o)),N.log(" ".concat(F(n)("Message:")," ").concat(a))}),N.box(F(n)("".concat(e," : ").concat(t.length))),N.log(j.gray("─".repeat(40)))}};var M={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import W from"node-fetch";import*as K from"node:fs";function Y(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return K.existsSync(e)})}h(Y,"existsSync");function B(e,t){var n=K.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":p(r))=="object"&&r!==null)return r;throw new Error("Parsed JSON is not an object or array")}catch(t){throw new Error("Failed to parse JSON from file: ".concat(e))}return n}h(B,"readFileSync");function J(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var r=n.isJson,o=r===void 0?!1:r,a=o&&(typeof t==="undefined"?"undefined":p(t))=="object"?JSON.stringify(t,null,4):String(t);K.writeFileSync(e,a,"utf-8")}h(J,"writeFileSync");var H=L();function $(e){var t=eS(H.CWD,eR);if(!Y(t))return!1;try{var n=B(t,{asJson:!0}),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 U.warn("Failed to read package.json: ".concat(e.message)),!1}}h($,"getPackage");function q(e){return Q.apply(this,arguments)}function Q(){Q=o(function(e){var t,n,r,o;return m(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,W("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 Q.apply(this,arguments)}h(q,"getLatestPackageVersion");function V(e,t){return z.apply(this,arguments)}function z(){z=o(function(e,t){var n,r,o,a,i,c,s,u,f,d,p,v,g,h,y,b,I,E,w,C,S;return m(this,function(m){switch(m.label){case 0:m.trys.push([0,4,,5]);n=$(e);if(!n)return[2,l({},M)];s=n.path,u=n.file,f=n.isCurrentProject,d=n.isDepend,p=n.isDevDepend,v=(r=u.dependencies)!==null&&r!==void 0?r:{},g=(o=u.devDependencies)!==null&&o!==void 0?o:{},h=f?(a=u.version)!==null&&a!==void 0?a:"0.0.0":d?(i=v[e])!==null&&i!==void 0?i:"0.0.0":p?(c=g[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!f)return[3,1];I=h;return[3,3];case 1:return[4,q(e)];case 2:I=m.sent();m.label=3;case 3:y=I,b=f||h===y;if(!b&&(t===null||t===void 0?void 0:t.update)){;w=d?"dependencies":p?"devDependencies":null;w&&((E=u[w])===null||E===void 0?void 0:E[e])!==y&&(u[w]=(C=u[w])!==null&&C!==void 0?C:{},u[w][e]=y,J(s,u,{isJson:!0}),U.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:f,installedPath:s,file:u,isUpToDate:b}];case 4:S=m.sent();return[2,(U.error('Error checking package "'.concat(e,'": ').concat(S.message)),l({},M))];case 5:return[2]}})});return z.apply(this,arguments)}h(V,"checkPackage");function X(){return Z.apply(this,arguments)}function Z(){Z=o(function(){var e,t,n,r,o,a,i,c,s,u,l,f;return m(this,function(d){switch(d.label){case 0:e=[{command:h(function(){return to.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return to.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return to.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=(a=o.next()).done))return[3,8];i=a.value,c=i.command,s=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:u=d.sent();return[4,eb("".concat(s," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.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=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 Z.apply(this,arguments)}h(X,"installDependencies");function ee(e,t){return et.apply(this,arguments)}function et(){et=o(function(e,t){var n,r,o,a,i,c,s,u,f,p,v;return m(this,function(m){switch(m.label){case 0:if(!Y(te.PACKAGE_JSON)){U.error("package.json not found. Aborting setup.");return[2]}m.label=1;case 1:m.trys.push([1,13,,14]);n=d(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return V(e,l({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=m.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,X()];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]);s=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();m.label=6;case 6:if(!!(a=(u=s.next()).done))return[3,9];f=u.value;return[4,f()];case 7:m.sent();m.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:p=m.sent();i=true;c=p;return[3,12];case 11:try{if(!a&&s.return!=null){s.return()}}finally{if(i){throw c}}return[7];case 12:return[3,14];case 13:v=m.sent();throw U.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})});return et.apply(this,arguments)}h(ee,"setupPackages");import en from"node-persist";var er=L();function eo(){return ea.apply(this,arguments)}function ea(){ea=o(function(){var e;return m(this,function(t){switch(t.label){case 0:e=en.defaultInstance;if(e)return[3,2];return[4,en.init({dir:er.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 ea.apply(this,arguments)}h(eo,"initNodePersist");var ei={get:function e(e){return o(function(){var t,n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eo()];case 1:r.sent();return[4,en.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 o(function(){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eo()];case 1:r.sent();return[4,en.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 o(function(){var t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eo()];case 1:n.sent();return[4,en.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 o(function(){var e,t;return m(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eo()];case 1:n.sent();return[4,en.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 o(function(){return m(this,function(t){try{return[2,"".concat(er.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(U.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ec=L(),es=D.promisify(R);function eu(e){return"error_list:".concat(e)}h(eu,"getErrorListKey");function el(e){return ef.apply(this,arguments)}function ef(){ef=o(function(e){var t,n,r;return m(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eu(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,ei.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/o(function(){var e;return m(this,function(t){switch(t.label){case 0:return[4,ei.getLogLink(n)];case 1:e=t.sent();e&&U.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:r=a.sent();U.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})});return ef.apply(this,arguments)}h(el,"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.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,s,u,l,f;var d=o.exec(e)||[],p=a.exec(e)||[],v=i.exec(e)||[];var m,g,h,y,b,I;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===A.Error?A.Error:A.Warning,message:(m=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(g=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&g!==void 0?g:""}):p.length?t.push({file:(h=p===null||p===void 0?void 0:p[1])!==null&&h!==void 0?h:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===A.Error?A.Error:A.Warning,message:(y=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):v.length?t.push({file:"commitlint",type:A.Error,message:(b=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&b!==void 0?b:"",rule:(I=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&I!==void 0?I:""}):n.push(e.trim())}}),t.length&&el(t),ec.DEBUG&&n.length&&(U.warn("Unmatched lines:"),n.forEach(function(e){return U.info(" ".concat(e))}))}h(ed,"parseTextErrors");function ep(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?A.Error:A.Warning,file:t,position:"".concat(o,":").concat(a),rule:i,message:c})})}),n.length&&el(n)}catch(t){ed(e)}}h(ep,"parseCommandOutput");function ev(e){return em.apply(this,arguments)}function em(){em=o(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]:ep;n=new AbortController;G.on("SIGINT",function(){U.warn("Process interrupted. Terminating..."),n.abort(),G.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,es(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});return[3,4];case 3:i=f.sent();c=i.stdout,s=i.stderr,u=i.message;[c,s].forEach(function(e){return e&&t(e)}),!s&&!c&&U.error("Command failed: ".concat(u));return[3,4];case 4:return[2]}})});return em.apply(this,arguments)}h(ev,"executeCommand");function eg(e){return{raw:!0,cmd:e}}h(eg,"rawCommand");function eh(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e1," ").concat(e_," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e1," ").concat(eX," ").concat(eM," ").concat(e):"".concat(e1," ").concat(eU," ").concat(e)}h(eh,"formatCLI");function ey(e,t){return typeof e=="function"?eh(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"?eh(e,t):e}h(ey,"formatCommand");function eb(e,t){return eI.apply(this,arguments)}function eI(){eI=o(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)),ec.DEBUG&&U.info("→ ".concat(t));return[4,ev(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 eI.apply(this,arguments)}h(eb,"runCommand");import*as eE from"node:path";var ew=L();function eC(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eE).resolve.apply(r,[ew.CWD].concat(d(t)))}h(eC,"resolveWorkingPath");function eS(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eE).join.apply(r,d(t))}h(eS,"join");var eO=L(),eT=eO.CWD,e_="@cyberskill/shared",eL="node_modules",ek="dist",eR="package.json",eG="package-lock.json",eD="tsconfig.json",eA=".gitignore",ej=".simple-git-hooks.json",eN="pnpm-lock.yaml",eP=".git/hooks/",ex=".git/COMMIT_EDITMSG",eF=eS(eT,eL,e_,ek),eU="cyberskill",eM="src/nodejs/cli/index.ts",eW="eslint",eK="eslint",eY="vitest",eB="playwright",eJ="vitest",eH="@commitlint/cli",e$="commitlint",eq="lint-staged",eQ="lint-staged",eV="typescript",ez="tsc",eX="tsx",eZ="git",e0="pnpm",e1="pnpm exec",e2="simple-git-hooks",e4="simple-git-hooks",e3="@eslint/config-inspector",e5="eslint-config-inspector",e6="node-modules-inspector",e8="node-modules-inspector",e7="migrate-mongo",e9="migrate-mongo",te={CYBERSKILL_DIRECTORY:eF,WORKING_DIRECTORY:eT,TS_CONFIG:eC(eD),GIT_IGNORE:eC(eA),GIT_HOOK:eC(eP),GIT_COMMIT_MSG:eC(ex),SIMPLE_GIT_HOOKS_JSON:eC(ej),PACKAGE_JSON:eC(eR),PACKAGE_LOCK_JSON:eC(eG),PNPM_LOCK_YAML:eC(eN),NODE_MODULES:eC(eL),LINT_STAGED_CONFIG:eC("".concat(eF,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eC("".concat(eF,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eC("".concat(eF,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eC("".concat(eF,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eC("".concat(eF,"/react/vitest/vitest.e2e.js"))};function tt(e){return tn.apply(this,arguments)}function tn(){tn=o(function(e){var t,n,r,o,a,i;var c=arguments;return m(this,function(s){switch(s.label){case 0:for(t=c.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=c[r]}o=f(n,2),a=o[0],i=o[1];if(!a)throw new Error("'first' argument is undefined");switch(e){case k.CLI:return[3,1];case k.RAW:return[3,3]}return[3,4];case 1:return[4,ee(a.split(" "),{update:!0})];case 2:return[2,(s.sent(),ey(eg("".concat(e1," ").concat(i))))];case 3:return[2,ey(eg(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tn.apply(this,arguments)}h(tt,"buildCommand");function tr(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++){n[r-1]=arguments[r]}return /*#__PURE__*/o(function(){return m(this,function(t){return[2,tt.apply(void 0,[e].concat(d(n)))]})})}h(tr,"commandFactory");var to={simpleGitHooks:tr(k.CLI,e2,e4),eslintInspect:tr(k.CLI,e3,e5),nodeModulesInspect:tr(k.CLI,e6,e8),eslintCheck:tr(k.CLI,eW,"".concat(eK," ").concat(te.WORKING_DIRECTORY)),eslintFix:tr(k.CLI,eW,"".concat(eK," ").concat(te.WORKING_DIRECTORY," --fix")),typescriptCheck:tr(k.CLI,eV,"".concat(ez," -p ").concat(te.TS_CONFIG," --noEmit")),configureGitHook:tr(k.RAW,"".concat(eZ," config core.hooksPath ").concat(te.GIT_HOOK)),testUnit:tr(k.CLI,eY,"".concat(eJ," --config ").concat(te.UNIT_TEST_CONFIG)),testE2e:tr(k.CLI,"".concat(eY," ").concat(eB),"".concat(eJ," --config ").concat(te.E2E_TEST_CONFIG)),mongoMigrateCreate:h(function(e){return tr(k.CLI,"".concat(e7),"".concat(e9," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:tr(k.CLI,"".concat(e7),"".concat(e9," up")),mongoMigrateDown:tr(k.CLI,"".concat(e7),"".concat(e9," down")),commitLint:tr(k.CLI,eH,"".concat(e$," --edit ").concat(te.GIT_COMMIT_MSG," --config ").concat(te.COMMITLINT_CONFIG)),lintStaged:tr(k.CLI,eq,"".concat(eQ," --config ").concat(te.LINT_STAGED_CONFIG)),stageBuildDirectory:tr(k.RAW,"".concat(eZ," add ").concat(ek)),build:tr(k.RAW,"".concat(e0," run build")),pnpmInstallStandard:tr(k.RAW,"".concat(e0," install")),pnpmInstallLegacy:tr(k.RAW,"".concat(e0," install --legacy-peer-deps")),pnpmInstallForce:tr(k.RAW,"".concat(e0," install --force"))};function ta(e){return b(l({plugins:[y()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[te.UNIT_TEST_SETUP_CONFIG]}},e))}h(ta,"vitestUnit");export{ta as vitestUnit};
|
|
1
|
+
function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(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"@vitejs/plugin-react-swc";import{defineConfig as y}from"vitest/config";var b=".cyberskill-storage";import w from"dotenv";import{bool as _,cleanEnv as E,str as I}from"envalid";import S from"node:os";import O from"node:path";import C from"node:process";w.config();function T(){var e={DEBUG:C.env.DEBUG||!1,CWD:C.env.CWD||C.cwd(),CYBERSKILL_STORAGE_DIRECTORY:C.env.CYBERSKILL_STORAGE_DIRECTORY||O.join(S.homedir(),b)};return E(e,{DEBUG:_(),CWD:I(),CYBERSKILL_STORAGE_DIRECTORY:I()})}h(T,"getEnv");var R="MONGO_MIGRATE_OPTIONS";import{Collection as G,Db as D}from"mongodb";import{Document as N,Model as P}from"mongoose";import{format as j}from"date-fns";import k from"migrate-mongo";import{Document as L}from"mongoose";import U from"mongoose-aggregate-paginate-v2";import A from"mongoose-paginate-v2";import{v4 as x}from"uuid";import F from"node-persist";var M=function(e){return e.Error="error",e.Warning="warning",e}({});import K from"chalk";import B from"consola";import{GraphQLError as Y}from"graphql";var W=T();W.DEBUG||(B.level=4);function J(e){var t=K[e];return typeof t=="function"?t:K.green}h(J,"chalkKeyword");var H={silent:B.silent,level:B.level,fatal:B.fatal,error:B.error,warn:B.warn,log:B.log,info:B.info,success:B.success,ready:B.ready,start:B.start,box:B.box,debug:B.debug,trace:B.trace,verbose:B.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)){B.box(K.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,i=e.message;B.log("".concat(K.gray("File:")," ").concat(K.blue("".concat(t).concat(r?":".concat(r):"")))),o&&B.log(" ".concat(J(n)("Rule:")," ").concat(o)),B.log(" ".concat(J(n)("Message:")," ").concat(i))}),B.box(J(n)("".concat(e," : ").concat(t.length))),B.log(K.gray("─".repeat(40)))}};var $=T();function q(){return Q.apply(this,arguments)}function Q(){Q=r(function(){var e;return m(this,function(t){switch(t.label){case 0:e=F.defaultInstance;if(e)return[3,2];return[4,F.init({dir:$.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 Q.apply(this,arguments)}h(q,"initNodePersist");var V={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,q()];case 1:r.sent();return[4,F.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(H.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,q()];case 1:r.sent();return[4,F.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();H.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,q()];case 1:n.sent();return[4,F.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();H.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,q()];case 1:n.sent();return[4,F.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(H.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(H.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($.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(H.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};import z from"crypto-js";import X from"slugify";var Z=X.default||X;var ee={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 et={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return j(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"?et.getDateTime():new Date;return{id:x(),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:x,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(et.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=et.createSchema({mongoose:t,schema:r,virtuals:u});return et.applyPlugins(p,[i&&A,c&&U]),et.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,!ee.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,V.get(R)];case 1:n=a.sent();if(!n)throw new Error("Missing migrate config");if(k.config.set(n),!t)return[2,e(void 0)];return[4,k.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,k.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,et.migrate.withConfig(function(){return k.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,et.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,k.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,et.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,k.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,et.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,k.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){V.set(R,e)},"config")}};var en=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as er}from"node:child_process";import eo from"node:process";import*as ei from"node:util";var ea={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import ec from"node-fetch";import es from"fs-extra";var eu=es.readFileSync,el=es.writeFileSync,ef=es.pathExistsSync,ep=es.appendFileSync,ed=es.copySync,em=es.removeSync,eg=es.statSync,eh=es.readJsonSync,ev=es.writeJsonSync;function ey(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ef(e)})}h(ey,"existsSync");var eb=T();function ew(e){var t=e$(eb.CWD,eZ);if(!ey(t))return!1;try{var n=eh(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 H.warn("Failed to read package.json: ".concat(e.message)),!1}}h(ew,"getPackage");function e_(e){return eE.apply(this,arguments)}function eE(){eE=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,ec("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 H.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 eS.apply(this,arguments)}function eS(){eS=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=ew(e);if(!n)return[2,s({},ea)];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,e_(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)){;E=p?"dependencies":d?"devDependencies":null;E&&((_=l[E])===null||_===void 0?void 0:_[e])!==y&&(l[E]=(I=l[E])!==null&&I!==void 0?I:{},l[E][e]=y,ev(u,l),H.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,(H.error('Error checking package "'.concat(e,'": ').concat(S.message)),s({},ea))];case 5:return[2]}})});return eS.apply(this,arguments)}h(eI,"checkPackage");function eO(){return eC.apply(this,arguments)}function eC(){eC=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 tC.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return tC.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return tC.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,eK("".concat(s," using: ").concat(u),u)];case 5:p.sent();return[2];case 6:l=p.sent();H.warn("Installation attempt failed: ".concat(s)),H.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 eC.apply(this,arguments)}h(eO,"installDependencies");function eT(e,t){return eR.apply(this,arguments)}function eR(){eR=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(!ey(tE.PACKAGE_JSON)){H.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;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 H.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return eR.apply(this,arguments)}h(eT,"setupPackages");var eG=T(),eD=ei.promisify(er);function eN(e){return"error_list:".concat(e)}h(eN,"getErrorListKey");function eP(e){return ej.apply(this,arguments)}function ej(){ej=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=eN(t);i.label=1;case 1:i.trys.push([1,3,,4]);return[4,V.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,V.getLogLink(n)];case 1:e=t.sent();e&&H.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=i.sent();H.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return ej.apply(this,arguments)}h(eP,"saveErrorListToStorage");function ek(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]===M.Error?M.Error:M.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]===M.Error?M.Error:M.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:M.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&&eP(t),eG.DEBUG&&n.length&&(H.warn("Unmatched lines:"),n.forEach(function(e){return H.info(" ".concat(e))}))}h(ek,"parseTextErrors");function eL(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?M.Error:M.Warning,file:t,position:"".concat(o,":").concat(i),rule:a,message:c})})}),n.length&&eP(n)}catch(t){ek(e)}}h(eL,"parseCommandOutput");function eU(e){return eA.apply(this,arguments)}function eA(){eA=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]:eL;n=new AbortController;eo.on("SIGINT",function(){H.warn("Process interrupted. Terminating..."),n.abort(),eo.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eD(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&&H.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eA.apply(this,arguments)}h(eU,"executeCommand");function ex(e){return{raw:!0,cmd:e}}h(ex,"rawCommand");function eF(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tm," ").concat(eV," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tm," ").concat(tf," ").concat(e9," ").concat(e):"".concat(tm," ").concat(e8," ").concat(e)}h(eF,"formatCLI");function eM(e,t){return typeof e=="function"?eF(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"?eF(e,t):e}h(eM,"formatCommand");function eK(e,t){return eB.apply(this,arguments)}function eB(){eB=r(function(e,t){var n;return m(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);H.start("".concat(e)),eG.DEBUG&&H.info("→ ".concat(t));return[4,eU(t)];case 1:r.sent(),H.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw H.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eB.apply(this,arguments)}h(eK,"runCommand");import{join as eY,resolve as eW}from"node:path";var eJ=T();function eH(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eW.apply(void 0,[eJ.CWD].concat(f(t)))}h(eH,"resolveWorkingPath");function e$(){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(e$,"join");var eq=T(),eQ=eq.CWD,eV="@cyberskill/shared",ez="node_modules",eX="dist",eZ="package.json",e0="package-lock.json",e1="tsconfig.json",e2=".gitignore",e4=".simple-git-hooks.json",e3="pnpm-lock.yaml",e5=".git/hooks/",e6=".git/COMMIT_EDITMSG",e7=e$(eQ,ez,eV,eX),e8="cyberskill",e9="src/nodejs/cli/index.ts",te="eslint",tt="eslint",tn="vitest",tr="playwright",to="vitest",ti="@commitlint/cli",ta="commitlint",tc="lint-staged",ts="lint-staged",tu="typescript",tl="tsc",tf="tsx",tp="git",td="pnpm",tm="pnpm exec",tg="simple-git-hooks",th="simple-git-hooks",tv="@eslint/config-inspector",ty="eslint-config-inspector",tb="node-modules-inspector",tw="node-modules-inspector",t_="migrate-mongo";var tE={CYBERSKILL_DIRECTORY:e7,WORKING_DIRECTORY:eQ,TS_CONFIG:eH(e1),GIT_IGNORE:eH(e2),GIT_HOOK:eH(e5),GIT_COMMIT_MSG:eH(e6),SIMPLE_GIT_HOOKS_JSON:eH(e4),PACKAGE_JSON:eH(eZ),PACKAGE_LOCK_JSON:eH(e0),PNPM_LOCK_YAML:eH(e3),NODE_MODULES:eH(ez),LINT_STAGED_CONFIG:eH("".concat(e7,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eH("".concat(e7,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eH("".concat(e7,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eH("".concat(e7,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eH("".concat(e7,"/react/vitest/vitest.e2e.js"))};function tI(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 en.CLI:return[3,1];case en.STRING:return[3,3];case en.FUNCTION:return[3,4]}return[3,6];case 1:return[4,eT(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eM(ex("".concat(tm," ").concat(n))))];case 3:return[2,eM(ex(t))];case 4:return[4,eT(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(tI,"buildCommand");function tO(e,t,n){return /*#__PURE__*/r(function(){return m(this,function(r){return[2,tI(e,t,n)]})})}h(tO,"commandFactory");var tC={simpleGitHooks:tO(en.CLI,tg,th),eslintInspect:tO(en.CLI,tv,ty),nodeModulesInspect:tO(en.CLI,tb,tw),eslintCheck:tO(en.CLI,te,"".concat(tt," ").concat(tE.WORKING_DIRECTORY)),eslintFix:tO(en.CLI,te,"".concat(tt," ").concat(tE.WORKING_DIRECTORY," --fix")),typescriptCheck:tO(en.CLI,tu,"".concat(tl," -p ").concat(tE.TS_CONFIG," --noEmit")),configureGitHook:tO(en.STRING,"".concat(tp," config core.hooksPath ").concat(tE.GIT_HOOK)),testUnit:tO(en.CLI,tn,"".concat(to," --config ").concat(tE.UNIT_TEST_CONFIG)),testE2e:tO(en.CLI,"".concat(tn," ").concat(tr),"".concat(to," --config ").concat(tE.E2E_TEST_CONFIG)),mongoMigrateCreate:h(function(e){return tO(en.FUNCTION,"".concat(t_),function(){return et.migrate.create(e)})()},"mongoMigrateCreate"),mongoMigrateUp:tO(en.FUNCTION,"".concat(t_),et.migrate.up),mongoMigrateDown:tO(en.FUNCTION,"".concat(t_),et.migrate.down),commitLint:tO(en.CLI,ti,"".concat(ta," --edit ").concat(tE.GIT_COMMIT_MSG," --config ").concat(tE.COMMITLINT_CONFIG)),lintStaged:tO(en.CLI,tc,"".concat(ts," --config ").concat(tE.LINT_STAGED_CONFIG)),stageBuildDirectory:tO(en.STRING,"".concat(tp," add ").concat(eX)),build:tO(en.STRING,"".concat(td," run build")),pnpmInstallStandard:tO(en.STRING,"".concat(td," install")),pnpmInstallLegacy:tO(en.STRING,"".concat(td," install --legacy-peer-deps")),pnpmInstallForce:tO(en.STRING,"".concat(td," install --force"))};function tT(e){return y(s({plugins:[v()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tE.UNIT_TEST_SETUP_CONFIG]}},e))}h(tT,"vitestUnit");export{tT as vitestUnit};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyberskill/shared",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.102.0",
|
|
5
5
|
"description": "CyberSkill Shared",
|
|
6
6
|
"author": "Stephen Cheng",
|
|
7
7
|
"license": "MIT",
|
|
@@ -212,7 +212,7 @@
|
|
|
212
212
|
"@testing-library/jest-dom": "6.6.3",
|
|
213
213
|
"@testing-library/react": "16.3.0",
|
|
214
214
|
"@vitejs/plugin-react-swc": "3.9.0",
|
|
215
|
-
"@vitest/browser": "3.1.
|
|
215
|
+
"@vitest/browser": "3.1.2",
|
|
216
216
|
"chalk": "5.4.1",
|
|
217
217
|
"classnames": "2.5.1",
|
|
218
218
|
"compression": "1.8.0",
|
|
@@ -230,10 +230,11 @@
|
|
|
230
230
|
"express": "4.21.2",
|
|
231
231
|
"express-device": "0.4.2",
|
|
232
232
|
"express-session": "1.18.1",
|
|
233
|
+
"fs-extra": "11.3.0",
|
|
233
234
|
"globals": "16.0.0",
|
|
234
235
|
"graphql": "16.10.0",
|
|
235
236
|
"graphql-ws": "6.0.4",
|
|
236
|
-
"i18next": "25.0.
|
|
237
|
+
"i18next": "25.0.1",
|
|
237
238
|
"jsdom": "26.1.0",
|
|
238
239
|
"localforage": "1.10.0",
|
|
239
240
|
"migrate-mongo": "12.1.3",
|
|
@@ -256,13 +257,14 @@
|
|
|
256
257
|
"react-icons": "5.5.0",
|
|
257
258
|
"sass": "1.86.3",
|
|
258
259
|
"slugify": "1.6.6",
|
|
260
|
+
"ts-node": "10.9.2",
|
|
259
261
|
"tsup": "8.4.0",
|
|
260
262
|
"tsx": "4.19.3",
|
|
261
263
|
"typescript": "5.8.3",
|
|
262
264
|
"unorm": "1.6.0",
|
|
263
265
|
"uuid": "11.1.0",
|
|
264
266
|
"vite": "6.3.2",
|
|
265
|
-
"vitest": "3.1.
|
|
267
|
+
"vitest": "3.1.2",
|
|
266
268
|
"vitest-browser-react": "0.1.1",
|
|
267
269
|
"ws": "8.18.1",
|
|
268
270
|
"yargs": "17.7.2"
|
|
@@ -279,6 +281,7 @@
|
|
|
279
281
|
"@types/crypto-js": "4.2.2",
|
|
280
282
|
"@types/express": "4.17.21",
|
|
281
283
|
"@types/express-session": "1.18.1",
|
|
284
|
+
"@types/fs-extra": "11.0.4",
|
|
282
285
|
"@types/migrate-mongo": "10.0.5",
|
|
283
286
|
"@types/mongoose-aggregate-paginate-v2": "1.0.12",
|
|
284
287
|
"@types/node-persist": "3.1.8",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";function e(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}var r=Object.defineProperty;var t=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var o=Object.prototype.hasOwnProperty;var u=function(e,t){return r(e,"name",{value:t,configurable:!0})};var i=function(e,t){for(var n in t)r(e,n,{get:t[n],enumerable:!0})},a=function(u,i,a,f){var c=true,l=false,g=undefined;if(i&&(typeof i==="undefined"?"undefined":e(i))=="object"||typeof i=="function")try{var s=function(){var e=v.value;!o.call(u,e)&&e!==a&&r(u,e,{get:function(){return i[e]},enumerable:!(f=t(i,e))||f.enumerable})};for(var y=n(i)[Symbol.iterator](),v;!(c=(v=y.next()).done);c=true)s()}catch(e){l=true;g=e}finally{try{if(!c&&y.return!=null){y.return()}}finally{if(l){throw g}}}return u};var f=function(e){return a(r({},"__esModule",{value:!0}),e)};var c={};i(c,{setMongoMigrateConfig:function(){return g}});module.exports=f(c);var l=require("migrate-mongo");function g(e){l.config.set(e)}u(g,"setMongoMigrateConfig");0&&(module.exports={setMongoMigrateConfig:setMongoMigrateConfig});
|