@cyberskill/shared 1.96.0 → 1.97.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +1 -7
  2. package/dist/_tsup-dts-rollup.d.ts +1 -7
  3. package/dist/configs/config.util.cjs +1 -1
  4. package/dist/configs/config.util.js +1 -1
  5. package/dist/configs/env/env.util.cjs +1 -1
  6. package/dist/configs/env/env.util.js +1 -1
  7. package/dist/configs/env/index.cjs +1 -1
  8. package/dist/configs/env/index.js +1 -1
  9. package/dist/configs/index.cjs +1 -1
  10. package/dist/configs/index.js +1 -1
  11. package/dist/index.cjs +1 -1
  12. package/dist/index.d.cts +0 -1
  13. package/dist/index.d.ts +0 -1
  14. package/dist/index.js +1 -1
  15. package/dist/nodejs/apollo-server/apollo-server.util.cjs +1 -1
  16. package/dist/nodejs/apollo-server/apollo-server.util.js +1 -1
  17. package/dist/nodejs/apollo-server/index.cjs +1 -1
  18. package/dist/nodejs/apollo-server/index.js +1 -1
  19. package/dist/nodejs/cli/cli.util.cjs +1 -1
  20. package/dist/nodejs/cli/cli.util.js +1 -1
  21. package/dist/nodejs/cli/index.cjs +1 -1
  22. package/dist/nodejs/cli/index.js +1 -1
  23. package/dist/nodejs/command/command.util.cjs +1 -1
  24. package/dist/nodejs/command/command.util.js +1 -1
  25. package/dist/nodejs/command/index.cjs +1 -1
  26. package/dist/nodejs/command/index.js +1 -1
  27. package/dist/nodejs/index.cjs +1 -1
  28. package/dist/nodejs/index.d.cts +0 -1
  29. package/dist/nodejs/index.d.ts +0 -1
  30. package/dist/nodejs/index.js +1 -1
  31. package/dist/nodejs/log/index.cjs +1 -1
  32. package/dist/nodejs/log/index.js +1 -1
  33. package/dist/nodejs/log/log.util.cjs +1 -1
  34. package/dist/nodejs/log/log.util.js +1 -1
  35. package/dist/nodejs/package/index.cjs +1 -1
  36. package/dist/nodejs/package/index.js +1 -1
  37. package/dist/nodejs/package/package.util.cjs +1 -1
  38. package/dist/nodejs/package/package.util.js +1 -1
  39. package/dist/nodejs/path/index.cjs +1 -1
  40. package/dist/nodejs/path/index.d.cts +0 -1
  41. package/dist/nodejs/path/index.d.ts +0 -1
  42. package/dist/nodejs/path/index.js +1 -1
  43. package/dist/nodejs/path/path.constant.cjs +1 -1
  44. package/dist/nodejs/path/path.constant.js +1 -1
  45. package/dist/nodejs/path/path.util.cjs +1 -1
  46. package/dist/nodejs/path/path.util.d.cts +0 -1
  47. package/dist/nodejs/path/path.util.d.ts +0 -1
  48. package/dist/nodejs/path/path.util.js +1 -1
  49. package/dist/nodejs/storage/index.cjs +1 -1
  50. package/dist/nodejs/storage/index.js +1 -1
  51. package/dist/nodejs/storage/storage.util.cjs +1 -1
  52. package/dist/nodejs/storage/storage.util.js +1 -1
  53. package/dist/react/index.cjs +1 -1
  54. package/dist/react/index.js +1 -1
  55. package/dist/react/vitest/index.cjs +1 -1
  56. package/dist/react/vitest/index.js +1 -1
  57. package/dist/react/vitest/vitest.unit.cjs +1 -1
  58. package/dist/react/vitest/vitest.unit.js +1 -1
  59. package/package.json +1 -1
@@ -1 +1 @@
1
- function e(e,r){if(r==null||r>e.length)r=e.length;for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function r(e){if(Array.isArray(e))return e}function t(r){if(Array.isArray(r))return e(r)}function n(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function o(e,r,t,n,o,a,i){try{var s=e[a](i);var c=s.value}catch(e){t(e);return}if(s.done){r(c)}else{Promise.resolve(c).then(n,o)}}function a(e){return function(){var r=this,t=arguments;return new Promise(function(n,a){var i=e.apply(r,t);function s(e){o(i,n,a,s,c,"next",e)}function c(e){o(i,n,a,s,c,"throw",e)}s(undefined)})}}function i(e,r,t){r=f(r);return w(e,L()?Reflect.construct(r,t||[],f(e).constructor):r.apply(e,t))}function s(e,r){if(!(e instanceof r)){throw new TypeError("Cannot call a class as a function")}}function c(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||false;n.configurable=true;if("value"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}function l(e,r,t){if(r)c(e.prototype,r);if(t)c(e,t);return e}function u(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function d(e,r){if(typeof r!=="function"&&r!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,writable:true,configurable:true}});if(r)I(e,r)}function p(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function m(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function v(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var o=true;var a=false;var i,s;try{for(t=t.call(e);!(o=(i=t.next()).done);o=true){n.push(i.value);if(r&&n.length===r)break}}catch(e){a=true;s=e}finally{try{if(!o&&t["return"]!=null)t["return"]()}finally{if(a)throw s}}return n}function g(){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 h(){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 y(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var n=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}n.forEach(function(r){u(e,r,t[r])})}return e}function E(e,r){if(e==null)return{};var t=b(e,r);var n,o;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++){n=a[o];if(r.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;t[n]=e[n]}}return t}function b(e,r){if(e==null)return{};var t={};var n=Object.keys(e);var o,a;for(a=0;a<n.length;a++){o=n[a];if(r.indexOf(o)>=0)continue;t[o]=e[o]}return t}function w(e,r){if(r&&(k(r)==="object"||typeof r==="function")){return r}return n(e)}function I(e,r){I=Object.setPrototypeOf||function e(e,r){e.__proto__=r;return e};return I(e,r)}function S(e,t){return r(e)||v(e,t)||_(e,t)||g()}function C(e){return t(e)||m(e)||_(e)||h()}function k(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function _(r,t){if(!r)return;if(typeof r==="string")return e(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);if(n==="Object"&&r.constructor)n=r.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(r,t)}function L(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(L=function(){return!!e})()}function O(e,r){var t,n,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},i=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return i.next=s(0),i["throw"]=s(1),i["return"]=s(2),typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function s(e){return function(r){return c([e,r])}}function c(s){if(t)throw new TypeError("Generator is already executing.");while(i&&(i=0,s[0]&&(a=0)),a)try{if(t=1,n&&(o=s[0]&2?n["return"]:s[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;if(n=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:a.label++;return{value:s[1],done:false};case 5:a.label++;n=s[1];s=[0];continue;case 7:s=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){a=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(s[0]===6&&a.label<o[1]){a.label=o[1];o=s;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(s);break}if(o[2])a.ops.pop();a.trys.pop();continue}s=r.call(e,a)}catch(e){s=[6,e];n=0}finally{t=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var N=Object.defineProperty;var T=function(e,r,t){return r in e?N(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t};var x=function(e,r){return N(e,"name",{value:r,configurable:!0})};var A=function(e,r,t){return T(e,(typeof r==="undefined"?"undefined":k(r))!="symbol"?r+"":r,t)};import{ApolloClient as P,ApolloError as D,ApolloLink as R,ApolloProvider as G,from as j,HttpLink as U,InMemoryCache as F,split as M}from"@apollo/client";import{onError as W}from"@apollo/client/link/error";import{removeTypenameFromVariables as B}from"@apollo/client/link/remove-typename";import{GraphQLWsLink as J}from"@apollo/client/link/subscriptions";import{getMainDefinition as K}from"@apollo/client/utilities";import{createClient as Y}from"graphql-ws";import z,{useMemo as H}from"react";import{FaInfo as Q}from"react-icons/fa6";import q,{use as V}from"react";import{FaRepeat as $}from"react-icons/fa6";import{createContext as X}from"react";var Z=X(void 0);import ee from"./apollo-error/apollo-error.module.scss";function er(){var e=V(Z),r=e===null||e===void 0?void 0:e.error;if(!r)return null;var t=x(function(e,r){return(r===null||r===void 0?void 0:r.length)?q.createElement("div",null,q.createElement("strong",null,e,":"),q.createElement("ul",null,r.map(function(e){return q.createElement("li",{key:e.message},e.message)}))):null},"renderErrorList");return q.createElement("div",{className:ee["modal-backdrop"]},q.createElement("div",{className:ee["modal-content"]},q.createElement("button",{type:"button",className:ee["btn-close"],onClick:e.hideError},"✕"),q.createElement("div",{className:ee["error-title"]},q.createElement("button",{type:"button",className:ee["btn-retry"],onClick:x(function(){return window.location.reload()},"onClick")},q.createElement($,null))," ",r.message),q.createElement("div",{className:ee["error-details"]},r.networkError&&q.createElement("pre",{className:"network"},q.createElement("strong",null,"Network Error:")," ",r.networkError.message),t("GraphQL Errors",C(r.graphQLErrors)),t("Protocol Errors",C(r.protocolErrors)),t("Client Errors",C(r.clientErrors)),r.extraInfo&&q.createElement("pre",{className:"extra"},q.createElement("strong",null,"Extra Info:")," ",JSON.stringify(r.extraInfo,null,4)))))}x(er,"ApolloError");import{use as et}from"react";function en(){var e=et(Z);if(!e)throw new Error("useApolloError must be used within ApolloErrorProvider");return e}x(en,"useApolloError");import eo,{useEffect as ea,useMemo as ei,useState as es}from"react";var ec=null;function el(e){ec=e}x(el,"setGlobalApolloErrorCallback");function eu(e){ec===null||ec===void 0?void 0:ec(e)}x(eu,"showGlobalApolloError");function ef(e){var r=e.children;var t=S(es(null),2),n=t[0],o=t[1];ea(function(){el(o)},[]);var a=ei(function(){return{error:n,showError:o,hideError:x(function(){return o(null)},"hideError")}},[n]);return eo.createElement(Z,{value:a},r)}x(ef,"ApolloErrorProvider");import{consola as ed}from"consola/browser";var ep={silent:ed.silent,level:ed.level,fatal:ed.fatal,error:ed.error,warn:ed.warn,log:ed.log,info:ed.info,success:ed.success,ready:ed.ready,start:ed.start,box:ed.box,debug:ed.debug,trace:ed.trace,verbose:ed.verbose};import{toast as em,Toaster as ev}from"react-hot-toast";var eg="/graphql";var eh,ey=(eh=/*#__PURE__*/function(e){"use strict";d(r,e);function r(){s(this,r);var e;e=i(this,r,arguments);A(e,"count",0);return e}l(r,[{key:"request",value:function e(e,r){var t=this;var n=Date.now();return this.count+=1,r(e).map(function(r){var o=Date.now()-n,a=e.operationName||"Unnamed";return ep.info("[Apollo] #".concat(t.count,": ").concat(a," (").concat(o,"ms)")),r})}}]);return r}(R),x(eh,"DevLoggerLink"),eh);function eE(e){var r=e.uri,t=e.wsUrl,n=e.customLinks,o=new ey,a=W(function(e){var r=e.graphQLErrors,t=e.networkError,n=e.protocolErrors,o=e.operation;var a=(o===null||o===void 0?void 0:o.operationName)||"Unknown";if(r&&r.forEach(function(e){var r=e.message,t=e.locations,n=e.path;ep.error("[GraphQL error] ".concat(a,": ").concat(r,", Location: ").concat(JSON.stringify(t),", Path: ").concat(n))}),n&&n.forEach(function(e){var r=e.message,t=e.extensions;ep.error("[Protocol error]: ".concat(r,", Extensions: ").concat(JSON.stringify(t)))}),t&&ep.error("[Network error]: ".concat(t)),r||n||t){var i,s;var c=(r===null||r===void 0?void 0:(i=r[0])===null||i===void 0?void 0:i.message)||(n===null||n===void 0?void 0:(s=n[0])===null||s===void 0?void 0:s.message)||(t===null||t===void 0?void 0:t.message)||"Unexpected error",l=new D({graphQLErrors:r||[],protocolErrors:n||[],clientErrors:[],networkError:t||null,errorMessage:c,extraInfo:{operation:o}});em.error(function(e){return z.createElement(z.Fragment,null,c,"\xa0",z.createElement(Q,{cursor:"pointer",onClick:x(function(){setTimeout(function(){eu(l)},0),em.dismiss(e.id)},"onClick")}))})}}),i=B();r||ep.warn('[Apollo] No GraphQL URI provided — using "'.concat(eg,'" as default'));var s=new U({uri:r!==null&&r!==void 0?r:eg,credentials:"include"}),c=t?new J(Y({url:t})):R.empty(),l=p(c,R)?M(function(e){var r=e.query;var t=K(r);return t.kind==="OperationDefinition"&&t.operation==="subscription"},c,s):s;return l===s&&t&&ep.warn("[Apollo] WS URL is set, but subscriptions fallback to HTTP. Check your wsLink config."),[o,a,i].concat(C(n!==null&&n!==void 0?n:[]),[l])}x(eE,"createApolloLinks");function eb(e){var r=e.isNextJS,t=e.options,n=e.children,o=e.client,a=e.provider,i=e.cache;var s=t||{},c=s.uri,l=s.wsUrl,u=s.customLinks,f=E(s,["uri","wsUrl","customLinks"]),d=o!==null&&o!==void 0?o:P;if(typeof d!="function")throw new TypeError("Invalid ApolloClient provided. Ensure CustomClient is a class.");var m=a||G,v=H(function(){return j(eE({uri:c!==null&&c!==void 0?c:eg,wsUrl:l!==null&&l!==void 0?l:"",customLinks:u!==null&&u!==void 0?u:[]}))},[c,l,u]),g=H(function(){return p(i,F)?i:new F},[i]),h=H(function(){return new d(y({link:v,cache:g},f))},[d,v,g,f]),b=r?z.createElement(m,{makeClient:x(function(){return h},"makeClient")},n):z.createElement(m,{client:h},n);return z.createElement(z.Fragment,null,z.createElement(ef,null,b,z.createElement(er,null)),z.createElement(ev,{position:"top-right"}))}x(eb,"ApolloProvider");import{useTranslation as ew}from"react-i18next";var eI=ew;import eS from"i18next";import{initReactI18next as eC}from"react-i18next";function ek(e){return eS.use(eC).init(e)}x(ek,"initI18next");import e_ from"classnames";import eL from"react";import eO from"./loading/loading.module.scss";function eN(e){var r=e.full,t=r===void 0?!1:r,n=e.block,o=n===void 0?!1:n,a=e.className,i=a===void 0?"":a,s=e.message,c=s===void 0?"Loading":s,l=E(e,["full","block","className","message"]);function u(){return eL.createElement("div",y({className:eO.container},l),eL.createElement("div",{className:eO.ring}),eL.createElement("div",{className:eO.ring}),eL.createElement("div",{className:eO.ring}),eL.createElement("div",{className:eO.ring}),c&&eL.createElement("div",{className:eO.message},c))}return x(u,"_renderLoading"),t?eL.createElement("div",{className:e_(eO.fullscreen,i)},u()):o?eL.createElement("div",{className:e_(eO.block,i)},u()):u()}x(eN,"Loading");import{createContext as eT}from"react";var ex=eT(void 0);import{use as eA}from"react";function eP(){var e=eA(ex);if(!e)throw new Error("useLoading must be used within a LoadingProvider");return e}x(eP,"useLoading");import eD,{useCallback as eR,useMemo as eG,useState as ej}from"react";function eU(e){var r=e.children;var t=S(ej(!1),2),n=t[0],o=t[1],a=S(ej(!1),2),i=a[0],s=a[1],c=eR(function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;o(!0),s(e)},[]),l=eR(function(){o(!1),s(!1)},[]),u=eG(function(){return{isLoading:n,isGlobalLoading:i,showLoading:c,hideLoading:l}},[n,i,c,l]);return eD.createElement(ex,{value:u},n?eD.createElement(eN,{full:i}):r)}x(eU,"LoadingProvider");import{enUS as eF}from"date-fns/locale";var eM={label:"English",value:"en",flag:"\uD83C\uDDFA\uD83C\uDDF8",adapterLocale:eF,icon:"flagpack:gb-nir",numberFormat:{code:"en-US",currency:"USD"},timezone:"America/New_York"};import{createContext as eW}from"react";var eB=eW(void 0);import{NextIntlClientProvider as eJ}from"next-intl";import eK from"react";import{useTranslations as eY}from"next-intl";import{use as ez}from"react";function eH(){var e=ez(eB);if(!e)throw new Error("useNextIntl must be used within a NextIntlProvider");return e}x(eH,"useNextIntl");var eQ=eY;function eq(e){var r=x(function(r){var t;var n;var o=eH(),a=o.currentLanguage,i=r.messages,s=r.languages,c="en",l=i[(a===null||a===void 0?void 0:a.value)||c],u=(n=(t=s.find(function(e){return e.value===(a===null||a===void 0?void 0:a.value)}))===null||t===void 0?void 0:t.timezone)!==null&&n!==void 0?n:eM.timezone;return i?eK.createElement(eJ,{locale:(a===null||a===void 0?void 0:a.value)||c,messages:l||null,timeZone:u},eK.createElement(e,r)):(ep.warn("Missing messages for language: ".concat((a===null||a===void 0?void 0:a.value)||c)),null)},"PageWithI18n");return r.displayName="withNextIntl(".concat(e.displayName||e.name||"Component",")"),r}x(eq,"withNextIntl");import eV,{useMemo as e$}from"react";import{useCallback as eX,useEffect as eZ,useState as e0}from"react";var e1={serialize:x(function(e){return JSON.stringify(e,function(e,r){return p(r,Date)?{__type:"Date",value:r.toISOString()}:r})},"serialize"),deserialize:x(function(e){return JSON.parse(e,function(e,r){return(r===null||r===void 0?void 0:r.__type)==="Date"?new Date(r.value):r})},"deserialize")};import e2 from"localforage";var e3={get:function e(e){return a(function(){var r;return O(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,e2.getItem(e)];case 1:return[2,t.sent()];case 2:r=t.sent();return[2,(ep.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 3:return[2]}})})()},set:function e(e,r){return a(function(){var t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,e2.setItem(e,r)];case 1:n.sent();return[3,3];case 2:t=n.sent();ep.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,3];case 3:return[2]}})})()},remove:function e(e){return a(function(){var r;return O(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,e2.removeItem(e)];case 1:t.sent();return[3,3];case 2:r=t.sent();ep.error('[Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})})()},keys:function e(){return a(function(){var e,r;return O(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,e2.keys()];case 1:return[2,(e=t.sent())!==null&&e!==void 0?e:[]];case 2:r=t.sent();return[2,(ep.error("[Storage:keys] Error getting keys:",r),[])];case 3:return[2]}})})()}};function e4(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e1;var n=S(e0(r),2),o=n[0],i=n[1],s=S(e0(!1),2),c=s[0],l=s[1];eZ(function(){var n=!0;return x(/*#__PURE__*/a(function(){var o,a,s,c;return O(this,function(u){switch(u.label){case 0:u.trys.push([0,6,7,8]);return[4,e3.get(e)];case 1:o=u.sent();if(!n)return[3,5];if(!(o!==null))return[3,2];a=t.deserialize(o);i(a);return[3,5];case 2:if(!(r!==void 0))return[3,4];s=t.serialize(r);return[4,e3.set(e,s)];case 3:u.sent(),i(r);return[3,5];case 4:i(void 0);u.label=5;case 5:return[3,8];case 6:c=u.sent();ep.error('Error loading value for key "'.concat(e,'":'),c),n&&i(r);return[3,8];case 7:n&&l(!0);return[7];case 8:return[2]}})}),"loadValue")(),function(){n=!1,l(!1)}},[e,r,t]),eZ(function(){if(!c)return;x(/*#__PURE__*/a(function(){var r,n;return O(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);if(!(o!==void 0))return[3,2];r=t.serialize(o);return[4,e3.set(e,r)];case 1:a.sent();a.label=2;case 2:return[3,4];case 3:n=a.sent();ep.error('Error saving value for key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})}),"saveValue")()},[o,e,t,c]);var u=eX(function(e){i(function(r){return typeof e=="function"?e(r):e})},[]),f=eX(/*#__PURE__*/a(function(){var r;return O(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,e3.remove(e)];case 1:t.sent(),i(void 0);return[3,3];case 2:r=t.sent();ep.error('Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})}),[e]);return{value:o,set:u,remove:f}}x(e4,"useStorage");function e8(e){var r=e.children;return eV.createElement(eV.Fragment,null,r)}x(e8,"LanguageWrapperBase");var e5=eq(e8);function e6(e){var r=e.children,t=e.languages,n=e.messages;var o=e4("lang",t[0]),a=o.value,i=o.set,s=e$(function(){return{languages:t,currentLanguage:a!==null&&a!==void 0?a:eM,setCurrentLanguage:i}},[t,i,a]);return eV.createElement(eB,{value:s},eV.createElement(e5,{languages:t,messages:n},r))}x(e6,"NextIntlProvider");import e7 from"@vitejs/plugin-react-swc";import{defineConfig as e9}from"vitest/config";function re(e){return e9(y({plugins:[e7()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}x(re,"vitestE2E");import rr from"@vitejs/plugin-react-swc";import{defineConfig as rt}from"vitest/config";var rn=".cyberskill-storage";import ro from"dotenv";import{bool as ra,cleanEnv as ri,str as rs}from"envalid";import rc from"node:os";import rl from"node:path";import ru from"node:process";ro.config();function rf(){var e={DEBUG:ru.env.DEBUG,CWD:ru.env.CWD,CYBERSKILL_STORAGE_DIR:ru.env.CYBERSKILL_STORAGE_DIR},r=ri(e,{DEBUG:ra({default:!1}),CWD:rs({default:ru.cwd()}),CYBERSKILL_STORAGE_DIR:rs({default:rl.join(rc.homedir(),rn)})});return{DEBUG:r.DEBUG,CWD:r.CWD,CYBERSKILL_STORAGE_DIR:r.CYBERSKILL_STORAGE_DIR}}x(rf,"getEnv");var rd=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});import{exec as rp}from"node:child_process";import rm from"node:process";import*as rv from"node:util";var rg=function(e){return e.Error="error",e.Warning="warning",e}({});import rh from"chalk";import ry from"consola";import{GraphQLError as rE}from"graphql";var rb=rf();rb.DEBUG||(ry.level=4);function rw(e){var r=rh[e];return typeof r=="function"?r:rh.green}x(rw,"chalkKeyword");var rI={silent:ry.silent,level:ry.level,fatal:ry.fatal,error:ry.error,warn:ry.warn,log:ry.log,info:ry.info,success:ry.success,ready:ry.ready,start:ry.start,box:ry.box,debug:ry.debug,trace:ry.trace,verbose:ry.verbose,printBoxedLog:function e(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(r===null||r===void 0?void 0:r.length)){ry.box(rh.green(e));return}r.forEach(function(e){var r=e.file,n=e.position,o=e.rule,a=e.message;ry.log("".concat(rh.gray("File:")," ").concat(rh.blue("".concat(r).concat(n?":".concat(n):"")))),o&&ry.log(" ".concat(rw(t)("Rule:")," ").concat(o)),ry.log(" ".concat(rw(t)("Message:")," ").concat(a))}),ry.box(rw(t)("".concat(e," : ").concat(r.length))),ry.log(rh.gray("─".repeat(40)))}};var rS={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import rC from"node-fetch";import*as rk from"node:fs";function r_(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}return r.every(function(e){return rk.existsSync(e)})}x(r_,"existsSync");function rL(e,r){var t=rk.readFileSync(e,"utf-8");if(r===null||r===void 0?void 0:r.asJson)try{var n=JSON.parse(t);if((typeof n==="undefined"?"undefined":k(n))=="object"&&n!==null)return n;throw new Error("Parsed JSON is not an object or array")}catch(r){throw new Error("Failed to parse JSON from file: ".concat(e))}return t}x(rL,"readFileSync");function rO(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=t.isJson,o=n===void 0?!1:n,a=o&&(typeof r==="undefined"?"undefined":k(r))=="object"?JSON.stringify(r,null,4):String(r);rk.writeFileSync(e,a,"utf-8")}x(rO,"writeFileSync");function rN(e){var r=rf(),t=r8(r.CWD,tr);if(!r_(t))return!1;try{var n=rL(t,{asJson:!0}),o=n.name,a=n.dependencies,i=a===void 0?{}:a,s=n.devDependencies,c=s===void 0?{}:s,l=o===e,u=e in i,f=e in c;return l||u||f?{path:t,file:n,isCurrentProject:l,isDepend:u,isDevDepend:f}:!1}catch(e){return rI.warn("Failed to read package.json: ".concat(e.message)),!1}}x(rN,"getPackage");function rT(e){return rx.apply(this,arguments)}function rx(){rx=a(function(e){var r,t,n,o;return O(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,rC("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:r=a.sent();if(!r.ok)throw new Error("Failed to fetch latest version: ".concat(r.status," ").concat(r.statusText));return[4,r.json()];case 2:t=a.sent(),n=t.version;return[2,n];case 3:o=a.sent();throw rI.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return rx.apply(this,arguments)}x(rT,"getLatestPackageVersion");function rA(e,r){return rP.apply(this,arguments)}function rP(){rP=a(function(e,r){var t,n,o,a,i,s,c,l,u,f,d,p,m,v,g,h,E,b,w,I,S;return O(this,function(C){switch(C.label){case 0:C.trys.push([0,4,,5]);t=rN(e);if(!t)return[2,y({},rS)];c=t.path,l=t.file,u=t.isCurrentProject,f=t.isDepend,d=t.isDevDepend,p=(n=l.dependencies)!==null&&n!==void 0?n:{},m=(o=l.devDependencies)!==null&&o!==void 0?o:{},v=u?(a=l.version)!==null&&a!==void 0?a:"0.0.0":f?(i=p[e])!==null&&i!==void 0?i:"0.0.0":d?(s=m[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!u)return[3,1];E=v;return[3,3];case 1:return[4,rT(e)];case 2:E=C.sent();C.label=3;case 3:g=E,h=u||v===g;if(!h&&(r===null||r===void 0?void 0:r.update)){;w=f?"dependencies":d?"devDependencies":null;w&&((b=l[w])===null||b===void 0?void 0:b[e])!==g&&(l[w]=(I=l[w])!==null&&I!==void 0?I:{},l[w][e]=g,rO(c,l,{isJson:!0}),rI.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:u,installedPath:c,file:l,isUpToDate:h}];case 4:S=C.sent();return[2,(rI.error('Error checking package "'.concat(e,'": ').concat(S.message)),y({},rS))];case 5:return[2]}})});return rP.apply(this,arguments)}x(rA,"checkPackage");function rD(){return rR.apply(this,arguments)}function rR(){rR=a(function(){var e,r,t,n,o,a,i,s,c,l,u,f;return O(this,function(d){switch(d.label){case 0:e=[{command:x(function(){return tF.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:x(function(){return tF.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:x(function(){return tF.pnpmInstallForce()},"command"),message:"Retrying with force install"}];r=true,t=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);o=e[Symbol.iterator]();d.label=2;case 2:if(!!(r=(a=o.next()).done))return[3,8];i=a.value,s=i.command,c=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,s()];case 4:l=d.sent();return[4,r1("".concat(c," using: ").concat(l),l)];case 5:d.sent();return[2];case 6:u=d.sent();rI.warn("Installation attempt failed: ".concat(c)),rI.error("Details: ".concat(u.message));return[3,7];case 7:r=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();t=true;n=f;return[3,11];case 10:try{if(!r&&o.return!=null){o.return()}}finally{if(t){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return rR.apply(this,arguments)}x(rD,"installDependencies");function rG(e,r){return rj.apply(this,arguments)}function rj(){rj=a(function(e,r){var t,n,o,a,i,s,c,l,u,f,d;return O(this,function(p){switch(p.label){case 0:if(!r_(tR.PACKAGE_JSON)){rI.error("package.json not found. Aborting setup.");return[2]}p.label=1;case 1:p.trys.push([1,13,,14]);t=C(new Set(e)).sort();return[4,Promise.all(t.map(function(e){return rA(e,y({},(r===null||r===void 0?void 0:r.update)&&{update:r.update}))}))];case 2:n=p.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,rD()];case 3:n=p.sent();p.label=4;case 4:n;a=true,i=false,s=undefined;p.label=5;case 5:p.trys.push([5,10,11,12]);c=((o=r===null||r===void 0?void 0:r.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();p.label=6;case 6:if(!!(a=(l=c.next()).done))return[3,9];u=l.value;return[4,u()];case 7:p.sent();p.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=p.sent();i=true;s=f;return[3,12];case 11:try{if(!a&&c.return!=null){c.return()}}finally{if(i){throw s}}return[7];case 12:return[3,14];case 13:d=p.sent();throw rI.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})});return rj.apply(this,arguments)}x(rG,"setupPackages");import rU from"node-persist";var rF=rf();function rM(){return rW.apply(this,arguments)}function rW(){rW=a(function(){var e;return O(this,function(r){switch(r.label){case 0:e=rU.defaultInstance;if(e)return[3,2];return[4,rU.init({dir:rF.CYBERSKILL_STORAGE_DIR,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=r.sent();r.label=2;case 2:e;return[2]}})});return rW.apply(this,arguments)}x(rM,"initNodePersist");var rB={get:function e(e){return a(function(){var r,t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,rM()];case 1:n.sent();return[4,rU.getItem(e)];case 2:return[2,(r=n.sent())!==null&&r!==void 0?r:null];case 3:t=n.sent();return[2,(rI.error('[Storage:get] Error getting key "'.concat(e,'":'),t),null)];case 4:return[2]}})})()},set:function e(e,r){return a(function(){var t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,rM()];case 1:n.sent();return[4,rU.setItem(e,r)];case 2:n.sent();return[3,4];case 3:t=n.sent();rI.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var r;return O(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,rM()];case 1:t.sent();return[4,rU.removeItem(e)];case 2:t.sent();return[3,4];case 3:r=t.sent();rI.error('[Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,r;return O(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,rM()];case 1:t.sent();return[4,rU.keys()];case 2:e=t.sent();return[2,Array.isArray(e)?e:(rI.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:r=t.sent();return[2,(rI.error("[Storage:keys] Error getting keys:",r),[])];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return O(this,function(r){try{return[2,"".concat(rF.CYBERSKILL_STORAGE_DIR," (key: ").concat(e,")")]}catch(e){return[2,(rI.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var rJ=rf(),rK=rv.promisify(rp);function rY(e){return"error_list:".concat(e)}x(rY,"getErrorListKey");function rz(e){return rH.apply(this,arguments)}function rH(){rH=a(function(e){var r,t,n;return O(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];r=Date.now(),t=rY(r);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,rB.set(t,{errors:e,timestamp:r})];case 2:o.sent(),setTimeout(/*#__PURE__*/a(function(){var e;return O(this,function(r){switch(r.label){case 0:return[4,rB.getLogLink(t)];case 1:e=r.sent();e&&rI.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:n=o.sent();rI.error("Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return rH.apply(this,arguments)}x(rz,"saveErrorListToStorage");function rQ(e){var r=[],t=[],n="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))n=e.trim();else{var s,c,l,u,f;var d=o.exec(e)||[],p=a.exec(e)||[],m=i.exec(e)||[];var v,g,h,y,E,b;d.length&&n?r.push({file:n,position:"".concat(d[1],":").concat(d[2]),type:d[3]===rg.Error?rg.Error:rg.Warning,message:(v=d===null||d===void 0?void 0:(s=d[4])===null||s===void 0?void 0:s.trim())!==null&&v!==void 0?v:"",rule:(g=d===null||d===void 0?void 0:(c=d[5])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:""}):p.length?r.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]===rg.Error?rg.Error:rg.Warning,message:(y=p===null||p===void 0?void 0:(l=p[5])===null||l===void 0?void 0:l.trim())!==null&&y!==void 0?y:""}):m.length?r.push({file:"commitlint",type:rg.Error,message:(E=m===null||m===void 0?void 0:(u=m[1])===null||u===void 0?void 0:u.trim())!==null&&E!==void 0?E:"",rule:(b=m===null||m===void 0?void 0:(f=m[2])===null||f===void 0?void 0:f.trim())!==null&&b!==void 0?b:""}):t.push(e.trim())}}),r.length&&rz(r),rJ.DEBUG&&t.length&&(rI.warn("Unmatched lines:"),t.forEach(function(e){return rI.info(" ".concat(e))}))}x(rQ,"parseTextErrors");function rq(e){try{var r=JSON.parse(e),t=[];r.forEach(function(e){var r=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,o=e.line,a=e.column,i=e.ruleId,s=e.message;t.push({type:n===2?rg.Error:rg.Warning,file:r,position:"".concat(o,":").concat(a),rule:i,message:s})})}),t.length&&rz(t)}catch(r){rQ(e)}}x(rq,"parseCommandOutput");function rV(e){return r$.apply(this,arguments)}function r$(){r$=a(function(e){var r,t,n,o,a,i,s,c,l;var u=arguments;return O(this,function(f){switch(f.label){case 0:r=u.length>1&&u[1]!==void 0?u[1]:rq;t=new AbortController;rm.on("SIGINT",function(){rI.warn("Process interrupted. Terminating..."),t.abort(),rm.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,rK(e,{maxBuffer:0x6400000,signal:t.signal})];case 2:n=f.sent(),o=n.stdout,a=n.stderr;[o,a].forEach(function(e){return e&&r(e)});return[3,4];case 3:i=f.sent();s=i.stdout,c=i.stderr,l=i.message;[s,c].forEach(function(e){return e&&r(e)}),!c&&!s&&rI.error("Command failed: ".concat(l));return[3,4];case 4:return[2]}})});return r$.apply(this,arguments)}x(rV,"executeCommand");function rX(e){return{raw:!0,cmd:e}}x(rX,"rawCommand");function rZ(e,r){return(r===null||r===void 0?void 0:r.isRemote)?"".concat(t_," ").concat(r7," ").concat(e):(r===null||r===void 0?void 0:r.isCurrentProject)?"".concat(t_," ").concat(tS," ").concat(tf," ").concat(e):"".concat(t_," ").concat(tu," ").concat(e)}x(rZ,"formatCLI");function r0(e,r){return typeof e=="function"?rZ(e(r),r):(typeof e==="undefined"?"undefined":k(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?rZ(e,r):e}x(r0,"formatCommand");function r1(e,r){return r2.apply(this,arguments)}function r2(){r2=a(function(e,r){var t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);rI.start("".concat(e)),rJ.DEBUG&&rI.info("→ ".concat(r));return[4,rV(r)];case 1:n.sent(),rI.success("".concat(e," done."));return[3,3];case 2:t=n.sent();throw rI.error("".concat(e," failed: ").concat(t.message)),t;case 3:return[2]}})});return r2.apply(this,arguments)}x(r1,"runCommand");import*as r3 from"node:path";function r4(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n;var o=rf();return(n=r3).resolve.apply(n,[o.CWD].concat(C(r)))}x(r4,"resolveWorkingPath");function r8(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n;return(n=r3).join.apply(n,C(r))}x(r8,"join");var r5=rf(),r6=r5.CWD,r7="@cyberskill/shared",r9="node_modules",te="dist",tr="package.json",tt="package-lock.json",tn="tsconfig.json",to=".gitignore",ta=".simple-git-hooks.json",ti="pnpm-lock.yaml",ts=".git/hooks/",tc=".git/COMMIT_EDITMSG",tl=r8(r6,r9,r7,te),tu="cyberskill",tf="src/nodejs/cli/index.ts",td="eslint",tp="eslint",tm="vitest",tv="playwright",tg="vitest",th="@commitlint/cli",ty="commitlint",tE="lint-staged",tb="lint-staged",tw="typescript",tI="tsc",tS="tsx",tC="git",tk="pnpm",t_="pnpm exec",tL="simple-git-hooks",tO="simple-git-hooks",tN="@eslint/config-inspector",tT="eslint-config-inspector",tx="node-modules-inspector",tA="node-modules-inspector",tP="migrate-mongo",tD="migrate-mongo",tR={CYBERSKILL_DIRECTORY:tl,WORKING_DIRECTORY:r6,TS_CONFIG:r4(tn),GIT_IGNORE:r4(to),GIT_HOOK:r4(ts),GIT_COMMIT_MSG:r4(tc),SIMPLE_GIT_HOOKS_JSON:r4(ta),PACKAGE_JSON:r4(tr),PACKAGE_LOCK_JSON:r4(tt),PNPM_LOCK_YAML:r4(ti),NODE_MODULES:r4(r9),LINT_STAGED_CONFIG:r4("".concat(tl,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:r4("".concat(tl,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:r4("".concat(tl,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:r4("".concat(tl,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:r4("".concat(tl,"/react/vitest/vitest.e2e.js"))};function tG(e){return tj.apply(this,arguments)}function tj(){tj=a(function(e){var r,t,n,o,a,i;var s=arguments;return O(this,function(c){switch(c.label){case 0:for(r=s.length,t=new Array(r>1?r-1:0),n=1;n<r;n++){t[n-1]=s[n]}o=S(t,2),a=o[0],i=o[1];if(!a)throw new Error("'first' argument is undefined");switch(e){case rd.CLI:return[3,1];case rd.RAW:return[3,3]}return[3,4];case 1:return[4,rG(a.split(" "),{update:!0})];case 2:return[2,(c.sent(),r0(rX("".concat(t_," ").concat(i))))];case 3:return[2,r0(rX(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tj.apply(this,arguments)}x(tG,"buildCommand");function tU(e){for(var r=arguments.length,t=new Array(r>1?r-1:0),n=1;n<r;n++){t[n-1]=arguments[n]}return /*#__PURE__*/a(function(){return O(this,function(r){return[2,tG.apply(void 0,[e].concat(C(t)))]})})}x(tU,"commandFactory");var tF={simpleGitHooks:tU(rd.CLI,tL,tO),eslintInspect:tU(rd.CLI,tN,tT),nodeModulesInspect:tU(rd.CLI,tx,tA),eslintCheck:tU(rd.CLI,td,"".concat(tp," ").concat(tR.WORKING_DIRECTORY)),eslintFix:tU(rd.CLI,td,"".concat(tp," ").concat(tR.WORKING_DIRECTORY," --fix")),typescriptCheck:tU(rd.CLI,tw,"".concat(tI," -p ").concat(tR.TS_CONFIG," --noEmit")),configureGitHook:tU(rd.RAW,"".concat(tC," config core.hooksPath ").concat(tR.GIT_HOOK)),testUnit:tU(rd.CLI,tm,"".concat(tg," --config ").concat(tR.UNIT_TEST_CONFIG)),testE2e:tU(rd.CLI,"".concat(tm," ").concat(tv),"".concat(tg," --config ").concat(tR.E2E_TEST_CONFIG)),mongoMigrateCreate:x(function(e){return tU(rd.CLI,"".concat(tP),"".concat(tD," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:tU(rd.CLI,"".concat(tP),"".concat(tD," up")),mongoMigrateDown:tU(rd.CLI,"".concat(tP),"".concat(tD," down")),commitLint:tU(rd.CLI,th,"".concat(ty," --edit ").concat(tR.GIT_COMMIT_MSG," --config ").concat(tR.COMMITLINT_CONFIG)),lintStaged:tU(rd.CLI,tE,"".concat(tb," --config ").concat(tR.LINT_STAGED_CONFIG)),stageBuildDirectory:tU(rd.RAW,"".concat(tC," add ").concat(te)),build:tU(rd.RAW,"".concat(tk," run build")),pnpmInstallStandard:tU(rd.RAW,"".concat(tk," install")),pnpmInstallLegacy:tU(rd.RAW,"".concat(tk," install --legacy-peer-deps")),pnpmInstallForce:tU(rd.RAW,"".concat(tk," install --force"))};function tM(e){return rt(y({plugins:[rr()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tR.UNIT_TEST_SETUP_CONFIG]}},e))}x(tM,"vitestUnit");export{er as ApolloError,Z as ApolloErrorContext,ef as ApolloErrorProvider,eb as ApolloProvider,eg as GRAPHQL_URI_DEFAULT,eN as Loading,ex as LoadingContext,eU as LoadingProvider,eM as NEXT_INTL_DEFAULT_LANGUAGE,eB as NextIntlContext,e6 as NextIntlProvider,ev as Toaster,ek as initI18next,ep as log,el as setGlobalApolloErrorCallback,eu as showGlobalApolloError,e3 as storage,em as toast,en as useApolloError,eP as useLoading,eH as useNextIntl,e4 as useStorage,eI as useTranslateI18next,eQ as useTranslateNextIntl,re as vitestE2E,tM as vitestUnit,eq as withNextIntl};
1
+ function e(e,r){if(r==null||r>e.length)r=e.length;for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function r(e){if(Array.isArray(e))return e}function t(r){if(Array.isArray(r))return e(r)}function n(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function o(e,r,t,n,o,a,i){try{var s=e[a](i);var c=s.value}catch(e){t(e);return}if(s.done){r(c)}else{Promise.resolve(c).then(n,o)}}function a(e){return function(){var r=this,t=arguments;return new Promise(function(n,a){var i=e.apply(r,t);function s(e){o(i,n,a,s,c,"next",e)}function c(e){o(i,n,a,s,c,"throw",e)}s(undefined)})}}function i(e,r,t){r=f(r);return w(e,O()?Reflect.construct(r,t||[],f(e).constructor):r.apply(e,t))}function s(e,r){if(!(e instanceof r)){throw new TypeError("Cannot call a class as a function")}}function c(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||false;n.configurable=true;if("value"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}function l(e,r,t){if(r)c(e.prototype,r);if(t)c(e,t);return e}function u(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function d(e,r){if(typeof r!=="function"&&r!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,writable:true,configurable:true}});if(r)I(e,r)}function p(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function m(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function v(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var o=true;var a=false;var i,s;try{for(t=t.call(e);!(o=(i=t.next()).done);o=true){n.push(i.value);if(r&&n.length===r)break}}catch(e){a=true;s=e}finally{try{if(!o&&t["return"]!=null)t["return"]()}finally{if(a)throw s}}return n}function g(){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 h(){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 y(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var n=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}n.forEach(function(r){u(e,r,t[r])})}return e}function E(e,r){if(e==null)return{};var t=b(e,r);var n,o;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++){n=a[o];if(r.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;t[n]=e[n]}}return t}function b(e,r){if(e==null)return{};var t={};var n=Object.keys(e);var o,a;for(a=0;a<n.length;a++){o=n[a];if(r.indexOf(o)>=0)continue;t[o]=e[o]}return t}function w(e,r){if(r&&(S(r)==="object"||typeof r==="function")){return r}return n(e)}function I(e,r){I=Object.setPrototypeOf||function e(e,r){e.__proto__=r;return e};return I(e,r)}function C(e,t){return r(e)||v(e,t)||_(e,t)||g()}function k(e){return t(e)||m(e)||_(e)||h()}function S(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function _(r,t){if(!r)return;if(typeof r==="string")return e(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);if(n==="Object"&&r.constructor)n=r.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(r,t)}function O(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(O=function(){return!!e})()}function L(e,r){var t,n,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},i=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return i.next=s(0),i["throw"]=s(1),i["return"]=s(2),typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function s(e){return function(r){return c([e,r])}}function c(s){if(t)throw new TypeError("Generator is already executing.");while(i&&(i=0,s[0]&&(a=0)),a)try{if(t=1,n&&(o=s[0]&2?n["return"]:s[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;if(n=0,o)s=[s[0]&2,o.value];switch(s[0]){case 0:case 1:o=s;break;case 4:a.label++;return{value:s[1],done:false};case 5:a.label++;n=s[1];s=[0];continue;case 7:s=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(s[0]===6||s[0]===2)){a=0;continue}if(s[0]===3&&(!o||s[1]>o[0]&&s[1]<o[3])){a.label=s[1];break}if(s[0]===6&&a.label<o[1]){a.label=o[1];o=s;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(s);break}if(o[2])a.ops.pop();a.trys.pop();continue}s=r.call(e,a)}catch(e){s=[6,e];n=0}finally{t=o=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var N=Object.defineProperty;var T=function(e,r,t){return r in e?N(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t};var x=function(e,r){return N(e,"name",{value:r,configurable:!0})};var A=function(e,r,t){return T(e,(typeof r==="undefined"?"undefined":S(r))!="symbol"?r+"":r,t)};import{ApolloClient as P,ApolloError as R,ApolloLink as G,ApolloProvider as j,from as D,HttpLink as U,InMemoryCache as F,split as M}from"@apollo/client";import{onError as W}from"@apollo/client/link/error";import{removeTypenameFromVariables as J}from"@apollo/client/link/remove-typename";import{GraphQLWsLink as K}from"@apollo/client/link/subscriptions";import{getMainDefinition as B}from"@apollo/client/utilities";import{createClient as Y}from"graphql-ws";import z,{useMemo as H}from"react";import{FaInfo as Q}from"react-icons/fa6";import q,{use as V}from"react";import{FaRepeat as $}from"react-icons/fa6";import{createContext as X}from"react";var Z=X(void 0);import ee from"./apollo-error/apollo-error.module.scss";function er(){var e=V(Z),r=e===null||e===void 0?void 0:e.error;if(!r)return null;var t=x(function(e,r){return(r===null||r===void 0?void 0:r.length)?q.createElement("div",null,q.createElement("strong",null,e,":"),q.createElement("ul",null,r.map(function(e){return q.createElement("li",{key:e.message},e.message)}))):null},"renderErrorList");return q.createElement("div",{className:ee["modal-backdrop"]},q.createElement("div",{className:ee["modal-content"]},q.createElement("button",{type:"button",className:ee["btn-close"],onClick:e.hideError},"✕"),q.createElement("div",{className:ee["error-title"]},q.createElement("button",{type:"button",className:ee["btn-retry"],onClick:x(function(){return window.location.reload()},"onClick")},q.createElement($,null))," ",r.message),q.createElement("div",{className:ee["error-details"]},r.networkError&&q.createElement("pre",{className:"network"},q.createElement("strong",null,"Network Error:")," ",r.networkError.message),t("GraphQL Errors",k(r.graphQLErrors)),t("Protocol Errors",k(r.protocolErrors)),t("Client Errors",k(r.clientErrors)),r.extraInfo&&q.createElement("pre",{className:"extra"},q.createElement("strong",null,"Extra Info:")," ",JSON.stringify(r.extraInfo,null,4)))))}x(er,"ApolloError");import{use as et}from"react";function en(){var e=et(Z);if(!e)throw new Error("useApolloError must be used within ApolloErrorProvider");return e}x(en,"useApolloError");import eo,{useEffect as ea,useMemo as ei,useState as es}from"react";var ec=null;function el(e){ec=e}x(el,"setGlobalApolloErrorCallback");function eu(e){ec===null||ec===void 0?void 0:ec(e)}x(eu,"showGlobalApolloError");function ef(e){var r=e.children;var t=C(es(null),2),n=t[0],o=t[1];ea(function(){el(o)},[]);var a=ei(function(){return{error:n,showError:o,hideError:x(function(){return o(null)},"hideError")}},[n]);return eo.createElement(Z,{value:a},r)}x(ef,"ApolloErrorProvider");import{consola as ed}from"consola/browser";var ep={silent:ed.silent,level:ed.level,fatal:ed.fatal,error:ed.error,warn:ed.warn,log:ed.log,info:ed.info,success:ed.success,ready:ed.ready,start:ed.start,box:ed.box,debug:ed.debug,trace:ed.trace,verbose:ed.verbose};import{toast as em,Toaster as ev}from"react-hot-toast";var eg="/graphql";var eh,ey=(eh=/*#__PURE__*/function(e){"use strict";d(r,e);function r(){s(this,r);var e;e=i(this,r,arguments);A(e,"count",0);return e}l(r,[{key:"request",value:function e(e,r){var t=this;var n=Date.now();return this.count+=1,r(e).map(function(r){var o=Date.now()-n,a=e.operationName||"Unnamed";return ep.info("[Apollo] #".concat(t.count,": ").concat(a," (").concat(o,"ms)")),r})}}]);return r}(G),x(eh,"DevLoggerLink"),eh);function eE(e){var r=e.uri,t=e.wsUrl,n=e.customLinks,o=new ey,a=W(function(e){var r=e.graphQLErrors,t=e.networkError,n=e.protocolErrors,o=e.operation;var a=(o===null||o===void 0?void 0:o.operationName)||"Unknown";if(r&&r.forEach(function(e){var r=e.message,t=e.locations,n=e.path;ep.error("[GraphQL error] ".concat(a,": ").concat(r,", Location: ").concat(JSON.stringify(t),", Path: ").concat(n))}),n&&n.forEach(function(e){var r=e.message,t=e.extensions;ep.error("[Protocol error]: ".concat(r,", Extensions: ").concat(JSON.stringify(t)))}),t&&ep.error("[Network error]: ".concat(t)),r||n||t){var i,s;var c=(r===null||r===void 0?void 0:(i=r[0])===null||i===void 0?void 0:i.message)||(n===null||n===void 0?void 0:(s=n[0])===null||s===void 0?void 0:s.message)||(t===null||t===void 0?void 0:t.message)||"Unexpected error",l=new R({graphQLErrors:r||[],protocolErrors:n||[],clientErrors:[],networkError:t||null,errorMessage:c,extraInfo:{operation:o}});em.error(function(e){return z.createElement(z.Fragment,null,c,"\xa0",z.createElement(Q,{cursor:"pointer",onClick:x(function(){setTimeout(function(){eu(l)},0),em.dismiss(e.id)},"onClick")}))})}}),i=J();r||ep.warn('[Apollo] No GraphQL URI provided — using "'.concat(eg,'" as default'));var s=new U({uri:r!==null&&r!==void 0?r:eg,credentials:"include"}),c=t?new K(Y({url:t})):G.empty(),l=p(c,G)?M(function(e){var r=e.query;var t=B(r);return t.kind==="OperationDefinition"&&t.operation==="subscription"},c,s):s;return l===s&&t&&ep.warn("[Apollo] WS URL is set, but subscriptions fallback to HTTP. Check your wsLink config."),[o,a,i].concat(k(n!==null&&n!==void 0?n:[]),[l])}x(eE,"createApolloLinks");function eb(e){var r=e.isNextJS,t=e.options,n=e.children,o=e.client,a=e.provider,i=e.cache;var s=t||{},c=s.uri,l=s.wsUrl,u=s.customLinks,f=E(s,["uri","wsUrl","customLinks"]),d=o!==null&&o!==void 0?o:P;if(typeof d!="function")throw new TypeError("Invalid ApolloClient provided. Ensure CustomClient is a class.");var m=a||j,v=H(function(){return D(eE({uri:c!==null&&c!==void 0?c:eg,wsUrl:l!==null&&l!==void 0?l:"",customLinks:u!==null&&u!==void 0?u:[]}))},[c,l,u]),g=H(function(){return p(i,F)?i:new F},[i]),h=H(function(){return new d(y({link:v,cache:g},f))},[d,v,g,f]),b=r?z.createElement(m,{makeClient:x(function(){return h},"makeClient")},n):z.createElement(m,{client:h},n);return z.createElement(z.Fragment,null,z.createElement(ef,null,b,z.createElement(er,null)),z.createElement(ev,{position:"top-right"}))}x(eb,"ApolloProvider");import{useTranslation as ew}from"react-i18next";var eI=ew;import eC from"i18next";import{initReactI18next as ek}from"react-i18next";function eS(e){return eC.use(ek).init(e)}x(eS,"initI18next");import e_ from"classnames";import eO from"react";import eL from"./loading/loading.module.scss";function eN(e){var r=e.full,t=r===void 0?!1:r,n=e.block,o=n===void 0?!1:n,a=e.className,i=a===void 0?"":a,s=e.message,c=s===void 0?"Loading":s,l=E(e,["full","block","className","message"]);function u(){return eO.createElement("div",y({className:eL.container},l),eO.createElement("div",{className:eL.ring}),eO.createElement("div",{className:eL.ring}),eO.createElement("div",{className:eL.ring}),eO.createElement("div",{className:eL.ring}),c&&eO.createElement("div",{className:eL.message},c))}return x(u,"_renderLoading"),t?eO.createElement("div",{className:e_(eL.fullscreen,i)},u()):o?eO.createElement("div",{className:e_(eL.block,i)},u()):u()}x(eN,"Loading");import{createContext as eT}from"react";var ex=eT(void 0);import{use as eA}from"react";function eP(){var e=eA(ex);if(!e)throw new Error("useLoading must be used within a LoadingProvider");return e}x(eP,"useLoading");import eR,{useCallback as eG,useMemo as ej,useState as eD}from"react";function eU(e){var r=e.children;var t=C(eD(!1),2),n=t[0],o=t[1],a=C(eD(!1),2),i=a[0],s=a[1],c=eG(function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;o(!0),s(e)},[]),l=eG(function(){o(!1),s(!1)},[]),u=ej(function(){return{isLoading:n,isGlobalLoading:i,showLoading:c,hideLoading:l}},[n,i,c,l]);return eR.createElement(ex,{value:u},n?eR.createElement(eN,{full:i}):r)}x(eU,"LoadingProvider");import{enUS as eF}from"date-fns/locale";var eM={label:"English",value:"en",flag:"\uD83C\uDDFA\uD83C\uDDF8",adapterLocale:eF,icon:"flagpack:gb-nir",numberFormat:{code:"en-US",currency:"USD"},timezone:"America/New_York"};import{createContext as eW}from"react";var eJ=eW(void 0);import{NextIntlClientProvider as eK}from"next-intl";import eB from"react";import{useTranslations as eY}from"next-intl";import{use as ez}from"react";function eH(){var e=ez(eJ);if(!e)throw new Error("useNextIntl must be used within a NextIntlProvider");return e}x(eH,"useNextIntl");var eQ=eY;function eq(e){var r=x(function(r){var t;var n;var o=eH(),a=o.currentLanguage,i=r.messages,s=r.languages,c="en",l=i[(a===null||a===void 0?void 0:a.value)||c],u=(n=(t=s.find(function(e){return e.value===(a===null||a===void 0?void 0:a.value)}))===null||t===void 0?void 0:t.timezone)!==null&&n!==void 0?n:eM.timezone;return i?eB.createElement(eK,{locale:(a===null||a===void 0?void 0:a.value)||c,messages:l||null,timeZone:u},eB.createElement(e,r)):(ep.warn("Missing messages for language: ".concat((a===null||a===void 0?void 0:a.value)||c)),null)},"PageWithI18n");return r.displayName="withNextIntl(".concat(e.displayName||e.name||"Component",")"),r}x(eq,"withNextIntl");import eV,{useMemo as e$}from"react";import{useCallback as eX,useEffect as eZ,useState as e0}from"react";var e1={serialize:x(function(e){return JSON.stringify(e,function(e,r){return p(r,Date)?{__type:"Date",value:r.toISOString()}:r})},"serialize"),deserialize:x(function(e){return JSON.parse(e,function(e,r){return(r===null||r===void 0?void 0:r.__type)==="Date"?new Date(r.value):r})},"deserialize")};import e2 from"localforage";var e3={get:function e(e){return a(function(){var r;return L(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,e2.getItem(e)];case 1:return[2,t.sent()];case 2:r=t.sent();return[2,(ep.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 3:return[2]}})})()},set:function e(e,r){return a(function(){var t;return L(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,e2.setItem(e,r)];case 1:n.sent();return[3,3];case 2:t=n.sent();ep.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,3];case 3:return[2]}})})()},remove:function e(e){return a(function(){var r;return L(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,e2.removeItem(e)];case 1:t.sent();return[3,3];case 2:r=t.sent();ep.error('[Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})})()},keys:function e(){return a(function(){var e,r;return L(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,e2.keys()];case 1:return[2,(e=t.sent())!==null&&e!==void 0?e:[]];case 2:r=t.sent();return[2,(ep.error("[Storage:keys] Error getting keys:",r),[])];case 3:return[2]}})})()}};function e4(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e1;var n=C(e0(r),2),o=n[0],i=n[1],s=C(e0(!1),2),c=s[0],l=s[1];eZ(function(){var n=!0;return x(/*#__PURE__*/a(function(){var o,a,s,c;return L(this,function(u){switch(u.label){case 0:u.trys.push([0,6,7,8]);return[4,e3.get(e)];case 1:o=u.sent();if(!n)return[3,5];if(!(o!==null))return[3,2];a=t.deserialize(o);i(a);return[3,5];case 2:if(!(r!==void 0))return[3,4];s=t.serialize(r);return[4,e3.set(e,s)];case 3:u.sent(),i(r);return[3,5];case 4:i(void 0);u.label=5;case 5:return[3,8];case 6:c=u.sent();ep.error('Error loading value for key "'.concat(e,'":'),c),n&&i(r);return[3,8];case 7:n&&l(!0);return[7];case 8:return[2]}})}),"loadValue")(),function(){n=!1,l(!1)}},[e,r,t]),eZ(function(){if(!c)return;x(/*#__PURE__*/a(function(){var r,n;return L(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);if(!(o!==void 0))return[3,2];r=t.serialize(o);return[4,e3.set(e,r)];case 1:a.sent();a.label=2;case 2:return[3,4];case 3:n=a.sent();ep.error('Error saving value for key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})}),"saveValue")()},[o,e,t,c]);var u=eX(function(e){i(function(r){return typeof e=="function"?e(r):e})},[]),f=eX(/*#__PURE__*/a(function(){var r;return L(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,e3.remove(e)];case 1:t.sent(),i(void 0);return[3,3];case 2:r=t.sent();ep.error('Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})}),[e]);return{value:o,set:u,remove:f}}x(e4,"useStorage");function e8(e){var r=e.children;return eV.createElement(eV.Fragment,null,r)}x(e8,"LanguageWrapperBase");var e5=eq(e8);function e6(e){var r=e.children,t=e.languages,n=e.messages;var o=e4("lang",t[0]),a=o.value,i=o.set,s=e$(function(){return{languages:t,currentLanguage:a!==null&&a!==void 0?a:eM,setCurrentLanguage:i}},[t,i,a]);return eV.createElement(eJ,{value:s},eV.createElement(e5,{languages:t,messages:n},r))}x(e6,"NextIntlProvider");import e7 from"@vitejs/plugin-react-swc";import{defineConfig as e9}from"vitest/config";function re(e){return e9(y({plugins:[e7()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}x(re,"vitestE2E");import rr from"@vitejs/plugin-react-swc";import{defineConfig as rt}from"vitest/config";var rn=".cyberskill-storage";import ro from"dotenv";import{bool as ra,cleanEnv as ri,str as rs}from"envalid";import rc from"node:os";import rl from"node:path";import ru from"node:process";ro.config();function rf(){var e={DEBUG:ru.env.DEBUG||!1,CWD:ru.env.CWD,CYBERSKILL_STORAGE_DIRECTORY:ru.env.CYBERSKILL_STORAGE_DIRECTORY||rn};return ri(e,{DEBUG:ra(),CWD:rs({default:ru.cwd()}),CYBERSKILL_STORAGE_DIRECTORY:rs({default:rl.join(rc.homedir(),rn)})})}x(rf,"getEnv");var rd=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});import{exec as rp}from"node:child_process";import rm from"node:process";import*as rv from"node:util";var rg=function(e){return e.Error="error",e.Warning="warning",e}({});import rh from"chalk";import ry from"consola";import{GraphQLError as rE}from"graphql";var rb=rf();rb.DEBUG||(ry.level=4);function rw(e){var r=rh[e];return typeof r=="function"?r:rh.green}x(rw,"chalkKeyword");var rI={silent:ry.silent,level:ry.level,fatal:ry.fatal,error:ry.error,warn:ry.warn,log:ry.log,info:ry.info,success:ry.success,ready:ry.ready,start:ry.start,box:ry.box,debug:ry.debug,trace:ry.trace,verbose:ry.verbose,printBoxedLog:function e(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(r===null||r===void 0?void 0:r.length)){ry.box(rh.green(e));return}r.forEach(function(e){var r=e.file,n=e.position,o=e.rule,a=e.message;ry.log("".concat(rh.gray("File:")," ").concat(rh.blue("".concat(r).concat(n?":".concat(n):"")))),o&&ry.log(" ".concat(rw(t)("Rule:")," ").concat(o)),ry.log(" ".concat(rw(t)("Message:")," ").concat(a))}),ry.box(rw(t)("".concat(e," : ").concat(r.length))),ry.log(rh.gray("─".repeat(40)))}};var rC={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import rk from"node-fetch";import*as rS from"node:fs";function r_(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}return r.every(function(e){return rS.existsSync(e)})}x(r_,"existsSync");function rO(e,r){var t=rS.readFileSync(e,"utf-8");if(r===null||r===void 0?void 0:r.asJson)try{var n=JSON.parse(t);if((typeof n==="undefined"?"undefined":S(n))=="object"&&n!==null)return n;throw new Error("Parsed JSON is not an object or array")}catch(r){throw new Error("Failed to parse JSON from file: ".concat(e))}return t}x(rO,"readFileSync");function rL(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=t.isJson,o=n===void 0?!1:n,a=o&&(typeof r==="undefined"?"undefined":S(r))=="object"?JSON.stringify(r,null,4):String(r);rS.writeFileSync(e,a,"utf-8")}x(rL,"writeFileSync");var rN=rf();function rT(e){var r=r6(rN.CWD,tn);if(!r_(r))return!1;try{var t=rO(r,{asJson:!0}),n=t.name,o=t.dependencies,a=o===void 0?{}:o,i=t.devDependencies,s=i===void 0?{}:i,c=n===e,l=e in a,u=e in s;return c||l||u?{path:r,file:t,isCurrentProject:c,isDepend:l,isDevDepend:u}:!1}catch(e){return rI.warn("Failed to read package.json: ".concat(e.message)),!1}}x(rT,"getPackage");function rx(e){return rA.apply(this,arguments)}function rA(){rA=a(function(e){var r,t,n,o;return L(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,rk("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:r=a.sent();if(!r.ok)throw new Error("Failed to fetch latest version: ".concat(r.status," ").concat(r.statusText));return[4,r.json()];case 2:t=a.sent(),n=t.version;return[2,n];case 3:o=a.sent();throw rI.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return rA.apply(this,arguments)}x(rx,"getLatestPackageVersion");function rP(e,r){return rR.apply(this,arguments)}function rR(){rR=a(function(e,r){var t,n,o,a,i,s,c,l,u,f,d,p,m,v,g,h,E,b,w,I,C;return L(this,function(k){switch(k.label){case 0:k.trys.push([0,4,,5]);t=rT(e);if(!t)return[2,y({},rC)];c=t.path,l=t.file,u=t.isCurrentProject,f=t.isDepend,d=t.isDevDepend,p=(n=l.dependencies)!==null&&n!==void 0?n:{},m=(o=l.devDependencies)!==null&&o!==void 0?o:{},v=u?(a=l.version)!==null&&a!==void 0?a:"0.0.0":f?(i=p[e])!==null&&i!==void 0?i:"0.0.0":d?(s=m[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!u)return[3,1];E=v;return[3,3];case 1:return[4,rx(e)];case 2:E=k.sent();k.label=3;case 3:g=E,h=u||v===g;if(!h&&(r===null||r===void 0?void 0:r.update)){;w=f?"dependencies":d?"devDependencies":null;w&&((b=l[w])===null||b===void 0?void 0:b[e])!==g&&(l[w]=(I=l[w])!==null&&I!==void 0?I:{},l[w][e]=g,rL(c,l,{isJson:!0}),rI.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:u,installedPath:c,file:l,isUpToDate:h}];case 4:C=k.sent();return[2,(rI.error('Error checking package "'.concat(e,'": ').concat(C.message)),y({},rC))];case 5:return[2]}})});return rR.apply(this,arguments)}x(rP,"checkPackage");function rG(){return rj.apply(this,arguments)}function rj(){rj=a(function(){var e,r,t,n,o,a,i,s,c,l,u,f;return L(this,function(d){switch(d.label){case 0:e=[{command:x(function(){return tW.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:x(function(){return tW.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:x(function(){return tW.pnpmInstallForce()},"command"),message:"Retrying with force install"}];r=true,t=false,n=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);o=e[Symbol.iterator]();d.label=2;case 2:if(!!(r=(a=o.next()).done))return[3,8];i=a.value,s=i.command,c=i.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,s()];case 4:l=d.sent();return[4,r2("".concat(c," using: ").concat(l),l)];case 5:d.sent();return[2];case 6:u=d.sent();rI.warn("Installation attempt failed: ".concat(c)),rI.error("Details: ".concat(u.message));return[3,7];case 7:r=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();t=true;n=f;return[3,11];case 10:try{if(!r&&o.return!=null){o.return()}}finally{if(t){throw n}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return rj.apply(this,arguments)}x(rG,"installDependencies");function rD(e,r){return rU.apply(this,arguments)}function rU(){rU=a(function(e,r){var t,n,o,a,i,s,c,l,u,f,d;return L(this,function(p){switch(p.label){case 0:if(!r_(tD.PACKAGE_JSON)){rI.error("package.json not found. Aborting setup.");return[2]}p.label=1;case 1:p.trys.push([1,13,,14]);t=k(new Set(e)).sort();return[4,Promise.all(t.map(function(e){return rP(e,y({},(r===null||r===void 0?void 0:r.update)&&{update:r.update}))}))];case 2:n=p.sent().every(function(e){return e.isUpToDate});if(n)return[3,4];return[4,rG()];case 3:n=p.sent();p.label=4;case 4:n;a=true,i=false,s=undefined;p.label=5;case 5:p.trys.push([5,10,11,12]);c=((o=r===null||r===void 0?void 0:r.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();p.label=6;case 6:if(!!(a=(l=c.next()).done))return[3,9];u=l.value;return[4,u()];case 7:p.sent();p.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=p.sent();i=true;s=f;return[3,12];case 11:try{if(!a&&c.return!=null){c.return()}}finally{if(i){throw s}}return[7];case 12:return[3,14];case 13:d=p.sent();throw rI.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})});return rU.apply(this,arguments)}x(rD,"setupPackages");import rF from"node-persist";var rM=rf();function rW(){return rJ.apply(this,arguments)}function rJ(){rJ=a(function(){var e;return L(this,function(r){switch(r.label){case 0:e=rF.defaultInstance;if(e)return[3,2];return[4,rF.init({dir:rM.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=r.sent();r.label=2;case 2:e;return[2]}})});return rJ.apply(this,arguments)}x(rW,"initNodePersist");var rK={get:function e(e){return a(function(){var r,t;return L(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,rW()];case 1:n.sent();return[4,rF.getItem(e)];case 2:return[2,(r=n.sent())!==null&&r!==void 0?r:null];case 3:t=n.sent();return[2,(rI.error('[Storage:get] Error getting key "'.concat(e,'":'),t),null)];case 4:return[2]}})})()},set:function e(e,r){return a(function(){var t;return L(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,rW()];case 1:n.sent();return[4,rF.setItem(e,r)];case 2:n.sent();return[3,4];case 3:t=n.sent();rI.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},remove:function e(e){return a(function(){var r;return L(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,rW()];case 1:t.sent();return[4,rF.removeItem(e)];case 2:t.sent();return[3,4];case 3:r=t.sent();rI.error('[Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,4];case 4:return[2]}})})()},keys:function e(){return a(function(){var e,r;return L(this,function(t){switch(t.label){case 0:t.trys.push([0,3,,4]);return[4,rW()];case 1:t.sent();return[4,rF.keys()];case 2:e=t.sent();return[2,Array.isArray(e)?e:(rI.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:r=t.sent();return[2,(rI.error("[Storage:keys] Error getting keys:",r),[])];case 4:return[2]}})})()},getLogLink:function e(e){return a(function(){return L(this,function(r){try{return[2,"".concat(rM.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(rI.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var rB=rf(),rY=rv.promisify(rp);function rz(e){return"error_list:".concat(e)}x(rz,"getErrorListKey");function rH(e){return rQ.apply(this,arguments)}function rQ(){rQ=a(function(e){var r,t,n;return L(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];r=Date.now(),t=rz(r);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,rK.set(t,{errors:e,timestamp:r})];case 2:o.sent(),setTimeout(/*#__PURE__*/a(function(){var e;return L(this,function(r){switch(r.label){case 0:return[4,rK.getLogLink(t)];case 1:e=r.sent();e&&rI.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:n=o.sent();rI.error("Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return rQ.apply(this,arguments)}x(rH,"saveErrorListToStorage");function rq(e){var r=[],t=[],n="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))n=e.trim();else{var s,c,l,u,f;var d=o.exec(e)||[],p=a.exec(e)||[],m=i.exec(e)||[];var v,g,h,y,E,b;d.length&&n?r.push({file:n,position:"".concat(d[1],":").concat(d[2]),type:d[3]===rg.Error?rg.Error:rg.Warning,message:(v=d===null||d===void 0?void 0:(s=d[4])===null||s===void 0?void 0:s.trim())!==null&&v!==void 0?v:"",rule:(g=d===null||d===void 0?void 0:(c=d[5])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:""}):p.length?r.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]===rg.Error?rg.Error:rg.Warning,message:(y=p===null||p===void 0?void 0:(l=p[5])===null||l===void 0?void 0:l.trim())!==null&&y!==void 0?y:""}):m.length?r.push({file:"commitlint",type:rg.Error,message:(E=m===null||m===void 0?void 0:(u=m[1])===null||u===void 0?void 0:u.trim())!==null&&E!==void 0?E:"",rule:(b=m===null||m===void 0?void 0:(f=m[2])===null||f===void 0?void 0:f.trim())!==null&&b!==void 0?b:""}):t.push(e.trim())}}),r.length&&rH(r),rB.DEBUG&&t.length&&(rI.warn("Unmatched lines:"),t.forEach(function(e){return rI.info(" ".concat(e))}))}x(rq,"parseTextErrors");function rV(e){try{var r=JSON.parse(e),t=[];r.forEach(function(e){var r=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,o=e.line,a=e.column,i=e.ruleId,s=e.message;t.push({type:n===2?rg.Error:rg.Warning,file:r,position:"".concat(o,":").concat(a),rule:i,message:s})})}),t.length&&rH(t)}catch(r){rq(e)}}x(rV,"parseCommandOutput");function r$(e){return rX.apply(this,arguments)}function rX(){rX=a(function(e){var r,t,n,o,a,i,s,c,l;var u=arguments;return L(this,function(f){switch(f.label){case 0:r=u.length>1&&u[1]!==void 0?u[1]:rV;t=new AbortController;rm.on("SIGINT",function(){rI.warn("Process interrupted. Terminating..."),t.abort(),rm.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,rY(e,{maxBuffer:0x6400000,signal:t.signal})];case 2:n=f.sent(),o=n.stdout,a=n.stderr;[o,a].forEach(function(e){return e&&r(e)});return[3,4];case 3:i=f.sent();s=i.stdout,c=i.stderr,l=i.message;[s,c].forEach(function(e){return e&&r(e)}),!c&&!s&&rI.error("Command failed: ".concat(l));return[3,4];case 4:return[2]}})});return rX.apply(this,arguments)}x(r$,"executeCommand");function rZ(e){return{raw:!0,cmd:e}}x(rZ,"rawCommand");function r0(e,r){return(r===null||r===void 0?void 0:r.isRemote)?"".concat(tL," ").concat(te," ").concat(e):(r===null||r===void 0?void 0:r.isCurrentProject)?"".concat(tL," ").concat(tS," ").concat(tp," ").concat(e):"".concat(tL," ").concat(td," ").concat(e)}x(r0,"formatCLI");function r1(e,r){return typeof e=="function"?r0(e(r),r):(typeof e==="undefined"?"undefined":S(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?r0(e,r):e}x(r1,"formatCommand");function r2(e,r){return r3.apply(this,arguments)}function r3(){r3=a(function(e,r){var t;return L(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);rI.start("".concat(e)),rB.DEBUG&&rI.info("→ ".concat(r));return[4,r$(r)];case 1:n.sent(),rI.success("".concat(e," done."));return[3,3];case 2:t=n.sent();throw rI.error("".concat(e," failed: ").concat(t.message)),t;case 3:return[2]}})});return r3.apply(this,arguments)}x(r2,"runCommand");import*as r4 from"node:path";var r8=rf();function r5(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n;return(n=r4).resolve.apply(n,[r8.CWD].concat(k(r)))}x(r5,"resolveWorkingPath");function r6(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n;return(n=r4).join.apply(n,k(r))}x(r6,"join");var r7=rf(),r9=r7.CWD,te="@cyberskill/shared",tr="node_modules",tt="dist",tn="package.json",to="package-lock.json",ta="tsconfig.json",ti=".gitignore",ts=".simple-git-hooks.json",tc="pnpm-lock.yaml",tl=".git/hooks/",tu=".git/COMMIT_EDITMSG",tf=r6(r9,tr,te,tt),td="cyberskill",tp="src/nodejs/cli/index.ts",tm="eslint",tv="eslint",tg="vitest",th="playwright",ty="vitest",tE="@commitlint/cli",tb="commitlint",tw="lint-staged",tI="lint-staged",tC="typescript",tk="tsc",tS="tsx",t_="git",tO="pnpm",tL="pnpm exec",tN="simple-git-hooks",tT="simple-git-hooks",tx="@eslint/config-inspector",tA="eslint-config-inspector",tP="node-modules-inspector",tR="node-modules-inspector",tG="migrate-mongo",tj="migrate-mongo",tD={CYBERSKILL_DIRECTORY:tf,WORKING_DIRECTORY:r9,TS_CONFIG:r5(ta),GIT_IGNORE:r5(ti),GIT_HOOK:r5(tl),GIT_COMMIT_MSG:r5(tu),SIMPLE_GIT_HOOKS_JSON:r5(ts),PACKAGE_JSON:r5(tn),PACKAGE_LOCK_JSON:r5(to),PNPM_LOCK_YAML:r5(tc),NODE_MODULES:r5(tr),LINT_STAGED_CONFIG:r5("".concat(tf,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:r5("".concat(tf,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:r5("".concat(tf,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:r5("".concat(tf,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:r5("".concat(tf,"/react/vitest/vitest.e2e.js"))};function tU(e){return tF.apply(this,arguments)}function tF(){tF=a(function(e){var r,t,n,o,a,i;var s=arguments;return L(this,function(c){switch(c.label){case 0:for(r=s.length,t=new Array(r>1?r-1:0),n=1;n<r;n++){t[n-1]=s[n]}o=C(t,2),a=o[0],i=o[1];if(!a)throw new Error("'first' argument is undefined");switch(e){case rd.CLI:return[3,1];case rd.RAW:return[3,3]}return[3,4];case 1:return[4,rD(a.split(" "),{update:!0})];case 2:return[2,(c.sent(),r1(rZ("".concat(tL," ").concat(i))))];case 3:return[2,r1(rZ(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tF.apply(this,arguments)}x(tU,"buildCommand");function tM(e){for(var r=arguments.length,t=new Array(r>1?r-1:0),n=1;n<r;n++){t[n-1]=arguments[n]}return /*#__PURE__*/a(function(){return L(this,function(r){return[2,tU.apply(void 0,[e].concat(k(t)))]})})}x(tM,"commandFactory");var tW={simpleGitHooks:tM(rd.CLI,tN,tT),eslintInspect:tM(rd.CLI,tx,tA),nodeModulesInspect:tM(rd.CLI,tP,tR),eslintCheck:tM(rd.CLI,tm,"".concat(tv," ").concat(tD.WORKING_DIRECTORY)),eslintFix:tM(rd.CLI,tm,"".concat(tv," ").concat(tD.WORKING_DIRECTORY," --fix")),typescriptCheck:tM(rd.CLI,tC,"".concat(tk," -p ").concat(tD.TS_CONFIG," --noEmit")),configureGitHook:tM(rd.RAW,"".concat(t_," config core.hooksPath ").concat(tD.GIT_HOOK)),testUnit:tM(rd.CLI,tg,"".concat(ty," --config ").concat(tD.UNIT_TEST_CONFIG)),testE2e:tM(rd.CLI,"".concat(tg," ").concat(th),"".concat(ty," --config ").concat(tD.E2E_TEST_CONFIG)),mongoMigrateCreate:x(function(e){return tM(rd.CLI,"".concat(tG),"".concat(tj," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:tM(rd.CLI,"".concat(tG),"".concat(tj," up")),mongoMigrateDown:tM(rd.CLI,"".concat(tG),"".concat(tj," down")),commitLint:tM(rd.CLI,tE,"".concat(tb," --edit ").concat(tD.GIT_COMMIT_MSG," --config ").concat(tD.COMMITLINT_CONFIG)),lintStaged:tM(rd.CLI,tw,"".concat(tI," --config ").concat(tD.LINT_STAGED_CONFIG)),stageBuildDirectory:tM(rd.RAW,"".concat(t_," add ").concat(tt)),build:tM(rd.RAW,"".concat(tO," run build")),pnpmInstallStandard:tM(rd.RAW,"".concat(tO," install")),pnpmInstallLegacy:tM(rd.RAW,"".concat(tO," install --legacy-peer-deps")),pnpmInstallForce:tM(rd.RAW,"".concat(tO," install --force"))};function tJ(e){return rt(y({plugins:[rr()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tD.UNIT_TEST_SETUP_CONFIG]}},e))}x(tJ,"vitestUnit");export{er as ApolloError,Z as ApolloErrorContext,ef as ApolloErrorProvider,eb as ApolloProvider,eg as GRAPHQL_URI_DEFAULT,eN as Loading,ex as LoadingContext,eU as LoadingProvider,eM as NEXT_INTL_DEFAULT_LANGUAGE,eJ as NextIntlContext,e6 as NextIntlProvider,ev as Toaster,eS as initI18next,ep as log,el as setGlobalApolloErrorCallback,eu as showGlobalApolloError,e3 as storage,em as toast,en as useApolloError,eP as useLoading,eH as useNextIntl,e4 as useStorage,eI as useTranslateI18next,eQ as useTranslateNextIntl,re as vitestE2E,tJ as vitestUnit,eq as withNextIntl};
@@ -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 I=Object.getPrototypeOf,E=Object.prototype.hasOwnProperty;var w=function(e,t){return h(e,"name",{value:t,configurable:!0})};var S=function(e,t){for(var n in t)h(e,n,{get:t[n],enumerable:!0})},C=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;!E.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 O=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={};S(T,{vitestE2E:function(){return j},vitestUnit:function(){return tv}});module.exports=_(T);var L=O(require("@vitejs/plugin-react-swc"),1),D=require("vitest/config");function j(e){return(0,D.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))}w(j,"vitestE2E");var k=O(require("@vitejs/plugin-react-swc"),1),G=require("vitest/config");var R=".cyberskill-storage";var A=O(require("dotenv"),1),N=require("envalid"),P=O(require("os"),1),x=O(require("path"),1),U=O(require("process"),1);A.default.config();function F(){var e={DEBUG:U.default.env.DEBUG,CWD:U.default.env.CWD,CYBERSKILL_STORAGE_DIR:U.default.env.CYBERSKILL_STORAGE_DIR},t=(0,N.cleanEnv)(e,{DEBUG:(0,N.bool)({default:!1}),CWD:(0,N.str)({default:U.default.cwd()}),CYBERSKILL_STORAGE_DIR:(0,N.str)({default:x.default.join(P.default.homedir(),R)})});return{DEBUG:t.DEBUG,CWD:t.CWD,CYBERSKILL_STORAGE_DIR:t.CYBERSKILL_STORAGE_DIR}}w(F,"getEnv");var M=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});var W=require("child_process"),K=O(require("process"),1),q=O(require("util"),1);var B=function(e){return e.Error="error",e.Warning="warning",e}({});var J=O(require("chalk"),1),Y=O(require("consola"),1),H=require("graphql");var $=F();$.DEBUG||(Y.default.level=4);function V(e){var t=J.default[e];return typeof t=="function"?t:J.default.green}w(V,"chalkKeyword");var z={silent:Y.default.silent,level:Y.default.level,fatal:Y.default.fatal,error:Y.default.error,warn:Y.default.warn,log:Y.default.log,info:Y.default.info,success:Y.default.success,ready:Y.default.ready,start:Y.default.start,box:Y.default.box,debug:Y.default.debug,trace:Y.default.trace,verbose:Y.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)){Y.default.box(J.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;Y.default.log("".concat(J.default.gray("File:")," ").concat(J.default.blue("".concat(t).concat(r?":".concat(r):"")))),o&&Y.default.log(" ".concat(V(n)("Rule:")," ").concat(o)),Y.default.log(" ".concat(V(n)("Message:")," ").concat(a))}),Y.default.box(V(n)("".concat(e," : ").concat(t.length))),Y.default.log(J.default.gray("─".repeat(40)))}};var Q={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var X=O(require("node-fetch"),1);var Z=O(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)})}w(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}w(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")}w(en,"writeFileSync");function er(e){var t=F(),n=eR(t.CWD,eF);if(!ee(n))return!1;try{var r=et(n,{asJson:!0}),o=r.name,a=r.dependencies,i=a===void 0?{}:a,c=r.devDependencies,u=c===void 0?{}:c,s=o===e,l=e in i,f=e in u;return s||l||f?{path:n,file:r,isCurrentProject:s,isDepend:l,isDevDepend:f}:!1}catch(e){return z.warn("Failed to read package.json: ".concat(e.message)),!1}}w(er,"getPackage");function eo(e){return ea.apply(this,arguments)}function ea(){ea=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 ea.apply(this,arguments)}w(eo,"getLatestPackageVersion");function ei(e,t){return ec.apply(this,arguments)}function ec(){ec=o(function(e,t){var n,r,o,a,i,c,u,s,f,d,p,v,y,h,m,b,I,E,w,S,C;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,4,,5]);n=er(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];I=h;return[3,3];case 1:return[4,eo(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)){;w=d?"dependencies":p?"devDependencies":null;w&&((E=s[w])===null||E===void 0?void 0:E[e])!==m&&(s[w]=(S=s[w])!==null&&S!==void 0?S:{},s[w][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:C=g.sent();return[2,(z.error('Error checking package "'.concat(e,'": ').concat(C.message)),l({},Q))];case 5:return[2]}})});return ec.apply(this,arguments)}w(ei,"checkPackage");function eu(){return es.apply(this,arguments)}function es(){es=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:w(function(){return tp.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:w(function(){return tp.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:w(function(){return tp.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,eD("".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 es.apply(this,arguments)}w(eu,"installDependencies");function el(e,t){return ef.apply(this,arguments)}function ef(){ef=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(ts.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 ei(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;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 ef.apply(this,arguments)}w(el,"setupPackages");var ed=O(require("node-persist"),1);var ep=F();function ev(){return eg.apply(this,arguments)}function eg(){eg=o(function(){var e;return g(this,function(t){switch(t.label){case 0:e=ed.default.defaultInstance;if(e)return[3,2];return[4,ed.default.init({dir:ep.CYBERSKILL_STORAGE_DIR,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return eg.apply(this,arguments)}w(ev,"initNodePersist");var ey={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,ev()];case 1:r.sent();return[4,ed.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,ev()];case 1:r.sent();return[4,ed.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,ev()];case 1:n.sent();return[4,ed.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,ev()];case 1:n.sent();return[4,ed.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(ep.CYBERSKILL_STORAGE_DIR," (key: ").concat(e,")")]}catch(e){return[2,(z.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eh=F(),em=q.promisify(W.exec);function eb(e){return"error_list:".concat(e)}w(eb,"getErrorListKey");function eI(e){return eE.apply(this,arguments)}function eE(){eE=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=eb(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,ey.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,ey.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 eE.apply(this,arguments)}w(eI,"saveErrorListToStorage");function ew(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,I;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===B.Error?B.Error:B.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]===B.Error?B.Error:B.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:B.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&&eI(t),eh.DEBUG&&n.length&&(z.warn("Unmatched lines:"),n.forEach(function(e){return z.info(" ".concat(e))}))}w(ew,"parseTextErrors");function eS(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?B.Error:B.Warning,file:t,position:"".concat(o,":").concat(a),rule:i,message:c})})}),n.length&&eI(n)}catch(t){ew(e)}}w(eS,"parseCommandOutput");function eC(e){return eO.apply(this,arguments)}function eO(){eO=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]:eS;n=new AbortController;K.default.on("SIGINT",function(){z.warn("Process interrupted. Terminating..."),n.abort(),K.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,em(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 eO.apply(this,arguments)}w(eC,"executeCommand");function e_(e){return{raw:!0,cmd:e}}w(e_,"rawCommand");function eT(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(te," ").concat(eP," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(te," ").concat(e8," ").concat(eV," ").concat(e):"".concat(te," ").concat(e$," ").concat(e)}w(eT,"formatCLI");function eL(e,t){return typeof e=="function"?eT(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"?eT(e,t):e}w(eL,"formatCommand");function eD(e,t){return ej.apply(this,arguments)}function ej(){ej=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)),eh.DEBUG&&z.info("→ ".concat(t));return[4,eC(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 ej.apply(this,arguments)}w(eD,"runCommand");var ek=O(require("path"),1);function eG(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;var o=F();return(r=ek).resolve.apply(r,[o.CWD].concat(d(t)))}w(eG,"resolveWorkingPath");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).join.apply(r,d(t))}w(eR,"join");var eA=F(),eN=eA.CWD,eP="@cyberskill/shared",ex="node_modules",eU="dist",eF="package.json",eM="package-lock.json",eW="tsconfig.json",eK=".gitignore",eq=".simple-git-hooks.json",eB="pnpm-lock.yaml",eJ=".git/hooks/",eY=".git/COMMIT_EDITMSG",eH=eR(eN,ex,eP,eU),e$="cyberskill",eV="src/nodejs/cli/index.ts",ez="eslint",eQ="eslint",eX="vitest",eZ="playwright",e0="vitest",e1="@commitlint/cli",e2="commitlint",e4="lint-staged",e3="lint-staged",e5="typescript",e6="tsc",e8="tsx",e7="git",e9="pnpm",te="pnpm exec",tt="simple-git-hooks",tn="simple-git-hooks",tr="@eslint/config-inspector",to="eslint-config-inspector",ta="node-modules-inspector",ti="node-modules-inspector",tc="migrate-mongo",tu="migrate-mongo",ts={CYBERSKILL_DIRECTORY:eH,WORKING_DIRECTORY:eN,TS_CONFIG:eG(eW),GIT_IGNORE:eG(eK),GIT_HOOK:eG(eJ),GIT_COMMIT_MSG:eG(eY),SIMPLE_GIT_HOOKS_JSON:eG(eq),PACKAGE_JSON:eG(eF),PACKAGE_LOCK_JSON:eG(eM),PNPM_LOCK_YAML:eG(eB),NODE_MODULES:eG(ex),LINT_STAGED_CONFIG:eG("".concat(eH,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eG("".concat(eH,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eG("".concat(eH,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eG("".concat(eH,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eG("".concat(eH,"/react/vitest/vitest.e2e.js"))};function tl(e){return tf.apply(this,arguments)}function tf(){tf=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,el(a.split(" "),{update:!0})];case 2:return[2,(u.sent(),eL(e_("".concat(te," ").concat(i))))];case 3:return[2,eL(e_(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tf.apply(this,arguments)}w(tl,"buildCommand");function td(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,tl.apply(void 0,[e].concat(d(n)))]})})}w(td,"commandFactory");var tp={simpleGitHooks:td(M.CLI,tt,tn),eslintInspect:td(M.CLI,tr,to),nodeModulesInspect:td(M.CLI,ta,ti),eslintCheck:td(M.CLI,ez,"".concat(eQ," ").concat(ts.WORKING_DIRECTORY)),eslintFix:td(M.CLI,ez,"".concat(eQ," ").concat(ts.WORKING_DIRECTORY," --fix")),typescriptCheck:td(M.CLI,e5,"".concat(e6," -p ").concat(ts.TS_CONFIG," --noEmit")),configureGitHook:td(M.RAW,"".concat(e7," config core.hooksPath ").concat(ts.GIT_HOOK)),testUnit:td(M.CLI,eX,"".concat(e0," --config ").concat(ts.UNIT_TEST_CONFIG)),testE2e:td(M.CLI,"".concat(eX," ").concat(eZ),"".concat(e0," --config ").concat(ts.E2E_TEST_CONFIG)),mongoMigrateCreate:w(function(e){return td(M.CLI,"".concat(tc),"".concat(tu," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:td(M.CLI,"".concat(tc),"".concat(tu," up")),mongoMigrateDown:td(M.CLI,"".concat(tc),"".concat(tu," down")),commitLint:td(M.CLI,e1,"".concat(e2," --edit ").concat(ts.GIT_COMMIT_MSG," --config ").concat(ts.COMMITLINT_CONFIG)),lintStaged:td(M.CLI,e4,"".concat(e3," --config ").concat(ts.LINT_STAGED_CONFIG)),stageBuildDirectory:td(M.RAW,"".concat(e7," add ").concat(eU)),build:td(M.RAW,"".concat(e9," run build")),pnpmInstallStandard:td(M.RAW,"".concat(e9," install")),pnpmInstallLegacy:td(M.RAW,"".concat(e9," install --legacy-peer-deps")),pnpmInstallForce:td(M.RAW,"".concat(e9," install --force"))};function tv(e){return(0,G.defineConfig)(l({plugins:[(0,k.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[ts.UNIT_TEST_SETUP_CONFIG]}},e))}w(tv,"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 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,CYBERSKILL_STORAGE_DIRECTORY:F.default.env.CYBERSKILL_STORAGE_DIRECTORY||G};return(0,N.cleanEnv)(e,{DEBUG:(0,N.bool)(),CWD:(0,N.str)({default:F.default.cwd()}),CYBERSKILL_STORAGE_DIRECTORY:(0,N.str)({default:x.default.join(P.default.homedir(),G)})})}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 +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 S=".cyberskill-storage";import C from"dotenv";import{bool as _,cleanEnv as O,str as T}from"envalid";import L from"node:os";import k from"node:path";import D from"node:process";C.config();function G(){var e={DEBUG:D.env.DEBUG,CWD:D.env.CWD,CYBERSKILL_STORAGE_DIR:D.env.CYBERSKILL_STORAGE_DIR},t=O(e,{DEBUG:_({default:!1}),CWD:T({default:D.cwd()}),CYBERSKILL_STORAGE_DIR:T({default:k.join(L.homedir(),S)})});return{DEBUG:t.DEBUG,CWD:t.CWD,CYBERSKILL_STORAGE_DIR:t.CYBERSKILL_STORAGE_DIR}}h(G,"getEnv");var R=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});import{exec as A}from"node:child_process";import j 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 W=G();W.DEBUG||(F.level=4);function M(e){var t=x[e];return typeof t=="function"?t:x.green}h(M,"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(M(n)("Rule:")," ").concat(o)),F.log(" ".concat(M(n)("Message:")," ").concat(a))}),F.box(M(n)("".concat(e," : ").concat(t.length))),F.log(x.gray("─".repeat(40)))}};var B={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import J from"node-fetch";import*as Y 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 Y.existsSync(e)})}h(H,"existsSync");function $(e,t){var n=Y.readFileSync(e,"utf-8");if(t===null||t===void 0?void 0:t.asJson)try{var r=JSON.parse(n);if((typeof r==="undefined"?"undefined":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);Y.writeFileSync(e,a,"utf-8")}h(q,"writeFileSync");function Q(e){var t=G(),n=e_(t.CWD,eG);if(!H(n))return!1;try{var r=$(n,{asJson:!0}),o=r.name,a=r.dependencies,i=a===void 0?{}:a,c=r.devDependencies,s=c===void 0?{}:c,u=o===e,l=e in i,f=e in s;return u||l||f?{path:n,file:r,isCurrentProject:u,isDepend:l,isDevDepend:f}:!1}catch(e){return K.warn("Failed to read package.json: ".concat(e.message)),!1}}h(Q,"getPackage");function V(e){return z.apply(this,arguments)}function z(){z=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,J("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw K.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return z.apply(this,arguments)}h(V,"getLatestPackageVersion");function X(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,m,g,h,y,b,I,E,w,S,C;return v(this,function(v){switch(v.label){case 0:v.trys.push([0,4,,5]);n=Q(e);if(!n)return[2,l({},B)];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,V(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]=(S=u[w])!==null&&S!==void 0?S:{},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:C=v.sent();return[2,(K.error('Error checking package "'.concat(e,'": ').concat(C.message)),l({},B))];case 5:return[2]}})});return Z.apply(this,arguments)}h(X,"checkPackage");function ee(){return et.apply(this,arguments)}function et(){et=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 ta.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:h(function(){return ta.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:h(function(){return ta.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,eE("".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 et.apply(this,arguments)}h(ee,"installDependencies");function en(e,t){return er.apply(this,arguments)}function er(){er=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(tt.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 X(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,ee()];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 er.apply(this,arguments)}h(en,"setupPackages");import eo from"node-persist";var ea=G();function ei(){return ec.apply(this,arguments)}function ec(){ec=o(function(){var e;return v(this,function(t){switch(t.label){case 0:e=eo.defaultInstance;if(e)return[3,2];return[4,eo.init({dir:ea.CYBERSKILL_STORAGE_DIR,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return ec.apply(this,arguments)}h(ei,"initNodePersist");var es={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,ei()];case 1:r.sent();return[4,eo.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,ei()];case 1:r.sent();return[4,eo.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,ei()];case 1:n.sent();return[4,eo.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,ei()];case 1:n.sent();return[4,eo.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(ea.CYBERSKILL_STORAGE_DIR," (key: ").concat(e,")")]}catch(e){return[2,(K.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eu=G(),el=N.promisify(A);function ef(e){return"error_list:".concat(e)}h(ef,"getErrorListKey");function ed(e){return ep.apply(this,arguments)}function ep(){ep=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=ef(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,es.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/o(function(){var e;return v(this,function(t){switch(t.label){case 0:return[4,es.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 ep.apply(this,arguments)}h(ed,"saveErrorListToStorage");function em(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&&ed(t),eu.DEBUG&&n.length&&(K.warn("Unmatched lines:"),n.forEach(function(e){return K.info(" ".concat(e))}))}h(em,"parseTextErrors");function ev(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&&ed(n)}catch(t){em(e)}}h(ev,"parseCommandOutput");function eg(e){return eh.apply(this,arguments)}function eh(){eh=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]:ev;n=new AbortController;j.on("SIGINT",function(){K.warn("Process interrupted. Terminating..."),n.abort(),j.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,el(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});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 eh.apply(this,arguments)}h(eg,"executeCommand");function ey(e){return{raw:!0,cmd:e}}h(ey,"rawCommand");function eb(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e2," ").concat(eL," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e2," ").concat(eZ," ").concat(eM," ").concat(e):"".concat(e2," ").concat(eW," ").concat(e)}h(eb,"formatCLI");function eI(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(eI,"formatCommand");function eE(e,t){return ew.apply(this,arguments)}function ew(){ew=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)),eu.DEBUG&&K.info("→ ".concat(t));return[4,eg(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 ew.apply(this,arguments)}h(eE,"runCommand");import*as eS from"node:path";function eC(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;var o=G();return(r=eS).resolve.apply(r,[o.CWD].concat(d(t)))}h(eC,"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 eO=G(),eT=eO.CWD,eL="@cyberskill/shared",ek="node_modules",eD="dist",eG="package.json",eR="package-lock.json",eA="tsconfig.json",ej=".gitignore",eN=".simple-git-hooks.json",eP="pnpm-lock.yaml",ex=".git/hooks/",eF=".git/COMMIT_EDITMSG",eU=e_(eT,ek,eL,eD),eW="cyberskill",eM="src/nodejs/cli/index.ts",eK="eslint",eB="eslint",eJ="vitest",eY="playwright",eH="vitest",e$="@commitlint/cli",eq="commitlint",eQ="lint-staged",eV="lint-staged",ez="typescript",eX="tsc",eZ="tsx",e0="git",e1="pnpm",e2="pnpm exec",e4="simple-git-hooks",e3="simple-git-hooks",e5="@eslint/config-inspector",e6="eslint-config-inspector",e8="node-modules-inspector",e7="node-modules-inspector",e9="migrate-mongo",te="migrate-mongo",tt={CYBERSKILL_DIRECTORY:eU,WORKING_DIRECTORY:eT,TS_CONFIG:eC(eA),GIT_IGNORE:eC(ej),GIT_HOOK:eC(ex),GIT_COMMIT_MSG:eC(eF),SIMPLE_GIT_HOOKS_JSON:eC(eN),PACKAGE_JSON:eC(eG),PACKAGE_LOCK_JSON:eC(eR),PNPM_LOCK_YAML:eC(eP),NODE_MODULES:eC(ek),LINT_STAGED_CONFIG:eC("".concat(eU,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eC("".concat(eU,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eC("".concat(eU,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eC("".concat(eU,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eC("".concat(eU,"/react/vitest/vitest.e2e.js"))};function tn(e){return tr.apply(this,arguments)}function tr(){tr=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 R.CLI:return[3,1];case R.RAW:return[3,3]}return[3,4];case 1:return[4,en(a.split(" "),{update:!0})];case 2:return[2,(s.sent(),eI(ey("".concat(e2," ").concat(i))))];case 3:return[2,eI(ey(a))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tr.apply(this,arguments)}h(tn,"buildCommand");function to(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,tn.apply(void 0,[e].concat(d(n)))]})})}h(to,"commandFactory");var ta={simpleGitHooks:to(R.CLI,e4,e3),eslintInspect:to(R.CLI,e5,e6),nodeModulesInspect:to(R.CLI,e8,e7),eslintCheck:to(R.CLI,eK,"".concat(eB," ").concat(tt.WORKING_DIRECTORY)),eslintFix:to(R.CLI,eK,"".concat(eB," ").concat(tt.WORKING_DIRECTORY," --fix")),typescriptCheck:to(R.CLI,ez,"".concat(eX," -p ").concat(tt.TS_CONFIG," --noEmit")),configureGitHook:to(R.RAW,"".concat(e0," config core.hooksPath ").concat(tt.GIT_HOOK)),testUnit:to(R.CLI,eJ,"".concat(eH," --config ").concat(tt.UNIT_TEST_CONFIG)),testE2e:to(R.CLI,"".concat(eJ," ").concat(eY),"".concat(eH," --config ").concat(tt.E2E_TEST_CONFIG)),mongoMigrateCreate:h(function(e){return to(R.CLI,"".concat(e9),"".concat(te," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:to(R.CLI,"".concat(e9),"".concat(te," up")),mongoMigrateDown:to(R.CLI,"".concat(e9),"".concat(te," down")),commitLint:to(R.CLI,e$,"".concat(eq," --edit ").concat(tt.GIT_COMMIT_MSG," --config ").concat(tt.COMMITLINT_CONFIG)),lintStaged:to(R.CLI,eQ,"".concat(eV," --config ").concat(tt.LINT_STAGED_CONFIG)),stageBuildDirectory:to(R.RAW,"".concat(e0," add ").concat(eD)),build:to(R.RAW,"".concat(e1," run build")),pnpmInstallStandard:to(R.RAW,"".concat(e1," install")),pnpmInstallLegacy:to(R.RAW,"".concat(e1," install --legacy-peer-deps")),pnpmInstallForce:to(R.RAW,"".concat(e1," install --force"))};function ti(e){return w(l({plugins:[E()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tt.UNIT_TEST_SETUP_CONFIG]}},e))}h(ti,"vitestUnit");export{I as vitestE2E,ti as vitestUnit};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,o,a,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,CYBERSKILL_STORAGE_DIRECTORY:R.env.CYBERSKILL_STORAGE_DIRECTORY||C};return T(e,{DEBUG:O(),CWD:_({default:R.cwd()}),CYBERSKILL_STORAGE_DIRECTORY:_({default:k.join(L.homedir(),C)})})}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 +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,E=Object.prototype.hasOwnProperty;var w=function(e,t){return h(e,"name",{value:t,configurable:!0})};var S=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;!E.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 O=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={};S(T,{vitestUnit:function(){return tf}});module.exports=_(T);var L=O(require("@vitejs/plugin-react-swc"),1),D=require("vitest/config");var k=".cyberskill-storage";var G=O(require("dotenv"),1),R=require("envalid"),j=O(require("os"),1),A=O(require("path"),1),N=O(require("process"),1);G.default.config();function P(){var e={DEBUG:N.default.env.DEBUG,CWD:N.default.env.CWD,CYBERSKILL_STORAGE_DIR:N.default.env.CYBERSKILL_STORAGE_DIR},t=(0,R.cleanEnv)(e,{DEBUG:(0,R.bool)({default:!1}),CWD:(0,R.str)({default:N.default.cwd()}),CYBERSKILL_STORAGE_DIR:(0,R.str)({default:A.default.join(j.default.homedir(),k)})});return{DEBUG:t.DEBUG,CWD:t.CWD,CYBERSKILL_STORAGE_DIR:t.CYBERSKILL_STORAGE_DIR}}w(P,"getEnv");var x=function(e){return e.CLI="CLI",e.RAW="RAW",e}({});var U=require("child_process"),F=O(require("process"),1),M=O(require("util"),1);var W=function(e){return e.Error="error",e.Warning="warning",e}({});var K=O(require("chalk"),1),B=O(require("consola"),1),q=require("graphql");var J=P();J.DEBUG||(B.default.level=4);function Y(e){var t=K.default[e];return typeof t=="function"?t:K.default.green}w(Y,"chalkKeyword");var H={silent:B.default.silent,level:B.default.level,fatal:B.default.fatal,error:B.default.error,warn:B.default.warn,log:B.default.log,info:B.default.info,success:B.default.success,ready:B.default.ready,start:B.default.start,box:B.default.box,debug:B.default.debug,trace:B.default.trace,verbose:B.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)){B.default.box(K.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;B.default.log("".concat(K.default.gray("File:")," ").concat(K.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&B.default.log(" ".concat(Y(n)("Rule:")," ").concat(a)),B.default.log(" ".concat(Y(n)("Message:")," ").concat(o))}),B.default.box(Y(n)("".concat(e," : ").concat(t.length))),B.default.log(K.default.gray("─".repeat(40)))}};var $={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var V=O(require("node-fetch"),1);var z=O(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)})}w(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}w(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")}w(Z,"writeFileSync");function ee(e){var t=P(),n=ek(t.CWD,eP);if(!Q(n))return!1;try{var r=X(n,{asJson:!0}),a=r.name,o=r.dependencies,i=o===void 0?{}:o,c=r.devDependencies,u=c===void 0?{}:c,s=a===e,l=e in i,f=e in u;return s||l||f?{path:n,file:r,isCurrentProject:s,isDepend:l,isDevDepend:f}:!1}catch(e){return H.warn("Failed to read package.json: ".concat(e.message)),!1}}w(ee,"getPackage");function et(e){return en.apply(this,arguments)}function en(){en=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 en.apply(this,arguments)}w(et,"getLatestPackageVersion");function er(e,t){return ea.apply(this,arguments)}function ea(){ea=a(function(e,t){var n,r,a,o,i,c,u,s,f,d,p,v,y,h,m,b,I,E,w,S,C;return g(this,function(g){switch(g.label){case 0:g.trys.push([0,4,,5]);n=ee(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,et(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)){;w=d?"dependencies":p?"devDependencies":null;w&&((E=s[w])===null||E===void 0?void 0:E[e])!==m&&(s[w]=(S=s[w])!==null&&S!==void 0?S:{},s[w][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 ea.apply(this,arguments)}w(er,"checkPackage");function eo(){return ei.apply(this,arguments)}function ei(){ei=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:w(function(){return tl.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:w(function(){return tl.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:w(function(){return tl.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,e_("".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 ei.apply(this,arguments)}w(eo,"installDependencies");function ec(e,t){return eu.apply(this,arguments)}function eu(){eu=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(ti.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 er(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,eo()];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 eu.apply(this,arguments)}w(ec,"setupPackages");var es=O(require("node-persist"),1);var el=P();function ef(){return ed.apply(this,arguments)}function ed(){ed=a(function(){var e;return g(this,function(t){switch(t.label){case 0:e=es.default.defaultInstance;if(e)return[3,2];return[4,es.default.init({dir:el.CYBERSKILL_STORAGE_DIR,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return ed.apply(this,arguments)}w(ef,"initNodePersist");var ep={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,ef()];case 1:r.sent();return[4,es.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,ef()];case 1:r.sent();return[4,es.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,ef()];case 1:n.sent();return[4,es.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,ef()];case 1:n.sent();return[4,es.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(el.CYBERSKILL_STORAGE_DIR," (key: ").concat(e,")")]}catch(e){return[2,(H.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ev=P(),eg=M.promisify(U.exec);function ey(e){return"error_list:".concat(e)}w(ey,"getErrorListKey");function eh(e){return em.apply(this,arguments)}function em(){em=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=ey(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,ep.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,ep.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 em.apply(this,arguments)}w(eh,"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,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&&eh(t),ev.DEBUG&&n.length&&(H.warn("Unmatched lines:"),n.forEach(function(e){return H.info(" ".concat(e))}))}w(eb,"parseTextErrors");function eI(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&&eh(n)}catch(t){eb(e)}}w(eI,"parseCommandOutput");function eE(e){return ew.apply(this,arguments)}function ew(){ew=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]:eI;n=new AbortController;F.default.on("SIGINT",function(){H.warn("Process interrupted. Terminating..."),n.abort(),F.default.exit()});f.label=1;case 1:f.trys.push([1,3,,4]);return[4,eg(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 ew.apply(this,arguments)}w(eE,"executeCommand");function eS(e){return{raw:!0,cmd:e}}w(eS,"rawCommand");function eC(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e8," ").concat(ej," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e8," ").concat(e3," ").concat(eY," ").concat(e):"".concat(e8," ").concat(eJ," ").concat(e)}w(eC,"formatCLI");function eO(e,t){return typeof e=="function"?eC(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"?eC(e,t):e}w(eO,"formatCommand");function e_(e,t){return eT.apply(this,arguments)}function eT(){eT=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)),ev.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 eT.apply(this,arguments)}w(e_,"runCommand");var eL=O(require("path"),1);function eD(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;var a=P();return(r=eL).resolve.apply(r,[a.CWD].concat(d(t)))}w(eD,"resolveWorkingPath");function ek(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}var r;return(r=eL).join.apply(r,d(t))}w(ek,"join");var eG=P(),eR=eG.CWD,ej="@cyberskill/shared",eA="node_modules",eN="dist",eP="package.json",ex="package-lock.json",eU="tsconfig.json",eF=".gitignore",eM=".simple-git-hooks.json",eW="pnpm-lock.yaml",eK=".git/hooks/",eB=".git/COMMIT_EDITMSG",eq=ek(eR,eA,ej,eN),eJ="cyberskill",eY="src/nodejs/cli/index.ts",eH="eslint",e$="eslint",eV="vitest",ez="playwright",eQ="vitest",eX="@commitlint/cli",eZ="commitlint",e0="lint-staged",e1="lint-staged",e2="typescript",e4="tsc",e3="tsx",e5="git",e6="pnpm",e8="pnpm exec",e7="simple-git-hooks",e9="simple-git-hooks",te="@eslint/config-inspector",tt="eslint-config-inspector",tn="node-modules-inspector",tr="node-modules-inspector",ta="migrate-mongo",to="migrate-mongo",ti={CYBERSKILL_DIRECTORY:eq,WORKING_DIRECTORY:eR,TS_CONFIG:eD(eU),GIT_IGNORE:eD(eF),GIT_HOOK:eD(eK),GIT_COMMIT_MSG:eD(eB),SIMPLE_GIT_HOOKS_JSON:eD(eM),PACKAGE_JSON:eD(eP),PACKAGE_LOCK_JSON:eD(ex),PNPM_LOCK_YAML:eD(eW),NODE_MODULES:eD(eA),LINT_STAGED_CONFIG:eD("".concat(eq,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eD("".concat(eq,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eD("".concat(eq,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eD("".concat(eq,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eD("".concat(eq,"/react/vitest/vitest.e2e.js"))};function tc(e){return tu.apply(this,arguments)}function tu(){tu=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,ec(o.split(" "),{update:!0})];case 2:return[2,(u.sent(),eO(eS("".concat(e8," ").concat(i))))];case 3:return[2,eO(eS(o))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tu.apply(this,arguments)}w(tc,"buildCommand");function ts(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,tc.apply(void 0,[e].concat(d(n)))]})})}w(ts,"commandFactory");var tl={simpleGitHooks:ts(x.CLI,e7,e9),eslintInspect:ts(x.CLI,te,tt),nodeModulesInspect:ts(x.CLI,tn,tr),eslintCheck:ts(x.CLI,eH,"".concat(e$," ").concat(ti.WORKING_DIRECTORY)),eslintFix:ts(x.CLI,eH,"".concat(e$," ").concat(ti.WORKING_DIRECTORY," --fix")),typescriptCheck:ts(x.CLI,e2,"".concat(e4," -p ").concat(ti.TS_CONFIG," --noEmit")),configureGitHook:ts(x.RAW,"".concat(e5," config core.hooksPath ").concat(ti.GIT_HOOK)),testUnit:ts(x.CLI,eV,"".concat(eQ," --config ").concat(ti.UNIT_TEST_CONFIG)),testE2e:ts(x.CLI,"".concat(eV," ").concat(ez),"".concat(eQ," --config ").concat(ti.E2E_TEST_CONFIG)),mongoMigrateCreate:w(function(e){return ts(x.CLI,"".concat(ta),"".concat(to," create ").concat(e))()},"mongoMigrateCreate"),mongoMigrateUp:ts(x.CLI,"".concat(ta),"".concat(to," up")),mongoMigrateDown:ts(x.CLI,"".concat(ta),"".concat(to," down")),commitLint:ts(x.CLI,eX,"".concat(eZ," --edit ").concat(ti.GIT_COMMIT_MSG," --config ").concat(ti.COMMITLINT_CONFIG)),lintStaged:ts(x.CLI,e0,"".concat(e1," --config ").concat(ti.LINT_STAGED_CONFIG)),stageBuildDirectory:ts(x.RAW,"".concat(e5," add ").concat(eN)),build:ts(x.RAW,"".concat(e6," run build")),pnpmInstallStandard:ts(x.RAW,"".concat(e6," install")),pnpmInstallLegacy:ts(x.RAW,"".concat(e6," install --legacy-peer-deps")),pnpmInstallForce:ts(x.RAW,"".concat(e6," install --force"))};function tf(e){return(0,D.defineConfig)(l({plugins:[(0,L.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[ti.UNIT_TEST_SETUP_CONFIG]}},e))}w(tf,"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(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,CYBERSKILL_STORAGE_DIRECTORY:N.default.env.CYBERSKILL_STORAGE_DIRECTORY||j};return(0,D.cleanEnv)(e,{DEBUG:(0,D.bool)(),CWD:(0,D.str)({default:N.default.cwd()}),CYBERSKILL_STORAGE_DIRECTORY:(0,D.str)({default:A.default.join(G.default.homedir(),j)})})}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});