@cyberskill/shared 1.105.0 → 1.107.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 (101) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +158 -24
  2. package/dist/_tsup-dts-rollup.d.ts +158 -24
  3. package/dist/configs/config.util.cjs +1 -1
  4. package/dist/configs/config.util.js +1 -1
  5. package/dist/configs/index.cjs +1 -1
  6. package/dist/configs/index.js +1 -1
  7. package/dist/index.cjs +1 -1
  8. package/dist/index.d.cts +11 -5
  9. package/dist/index.d.ts +11 -5
  10. package/dist/index.js +1 -1
  11. package/dist/nodejs/cli/cli.util.cjs +1 -1
  12. package/dist/nodejs/cli/cli.util.js +1 -1
  13. package/dist/nodejs/cli/index.cjs +1 -1
  14. package/dist/nodejs/cli/index.js +1 -1
  15. package/dist/nodejs/command/command.util.cjs +1 -1
  16. package/dist/nodejs/command/command.util.js +1 -1
  17. package/dist/nodejs/command/index.cjs +1 -1
  18. package/dist/nodejs/command/index.js +1 -1
  19. package/dist/nodejs/fs/fs.util.cjs +1 -1
  20. package/dist/nodejs/fs/fs.util.d.cts +5 -5
  21. package/dist/nodejs/fs/fs.util.d.ts +5 -5
  22. package/dist/nodejs/fs/fs.util.js +1 -1
  23. package/dist/nodejs/fs/index.cjs +1 -1
  24. package/dist/nodejs/fs/index.d.cts +5 -5
  25. package/dist/nodejs/fs/index.d.ts +5 -5
  26. package/dist/nodejs/fs/index.js +1 -1
  27. package/dist/nodejs/index.cjs +1 -1
  28. package/dist/nodejs/index.d.cts +5 -5
  29. package/dist/nodejs/index.d.ts +5 -5
  30. package/dist/nodejs/index.js +1 -1
  31. package/dist/nodejs/mongo/index.cjs +1 -1
  32. package/dist/nodejs/mongo/index.js +1 -1
  33. package/dist/nodejs/mongo/mongo.util.cjs +1 -1
  34. package/dist/nodejs/mongo/mongo.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.js +1 -1
  41. package/dist/nodejs/path/path.constant.cjs +1 -1
  42. package/dist/nodejs/path/path.constant.js +1 -1
  43. package/dist/react/apollo-client/apollo-client.component.d.cts +1 -1
  44. package/dist/react/apollo-client/apollo-client.component.d.ts +1 -1
  45. package/dist/react/apollo-client/index.d.cts +1 -1
  46. package/dist/react/apollo-client/index.d.ts +1 -1
  47. package/dist/react/apollo-error/apollo-error.component.d.cts +1 -1
  48. package/dist/react/apollo-error/apollo-error.component.d.ts +1 -1
  49. package/dist/react/apollo-error/apollo-error.context.d.cts +1 -1
  50. package/dist/react/apollo-error/apollo-error.context.d.ts +1 -1
  51. package/dist/react/apollo-error/apollo-error.hook.d.cts +1 -1
  52. package/dist/react/apollo-error/apollo-error.hook.d.ts +1 -1
  53. package/dist/react/apollo-error/apollo-error.provider.d.cts +1 -1
  54. package/dist/react/apollo-error/apollo-error.provider.d.ts +1 -1
  55. package/dist/react/apollo-error/apollo-error.util.d.cts +2 -2
  56. package/dist/react/apollo-error/apollo-error.util.d.ts +2 -2
  57. package/dist/react/apollo-error/index.d.cts +6 -6
  58. package/dist/react/apollo-error/index.d.ts +6 -6
  59. package/dist/react/index.cjs +1 -1
  60. package/dist/react/index.js +1 -1
  61. package/dist/react/next-intl/index.cjs +1 -1
  62. package/dist/react/next-intl/index.js +1 -1
  63. package/dist/react/next-intl/next-intl.provider.cjs +1 -1
  64. package/dist/react/next-intl/next-intl.provider.js +1 -1
  65. package/dist/react/storage/index.cjs +1 -1
  66. package/dist/react/storage/index.js +1 -1
  67. package/dist/react/storage/storage.hook.cjs +1 -1
  68. package/dist/react/storage/storage.hook.js +1 -1
  69. package/dist/react/vitest/index.cjs +1 -1
  70. package/dist/react/vitest/index.js +1 -1
  71. package/dist/react/vitest/vitest.unit.cjs +1 -1
  72. package/dist/react/vitest/vitest.unit.js +1 -1
  73. package/dist/utils/index.cjs +1 -1
  74. package/dist/utils/index.d.cts +6 -0
  75. package/dist/utils/index.d.ts +6 -0
  76. package/dist/utils/index.js +1 -1
  77. package/dist/utils/object/index.cjs +1 -1
  78. package/dist/utils/object/index.js +1 -1
  79. package/dist/utils/object/object.util.cjs +1 -1
  80. package/dist/utils/object/object.util.js +1 -1
  81. package/dist/utils/serializer/index.cjs +1 -1
  82. package/dist/utils/serializer/index.d.cts +3 -0
  83. package/dist/utils/serializer/index.d.ts +3 -0
  84. package/dist/utils/serializer/index.js +1 -1
  85. package/dist/utils/serializer/serializer.type.d.cts +3 -0
  86. package/dist/utils/serializer/serializer.type.d.ts +3 -0
  87. package/dist/utils/serializer/serializer.util.cjs +1 -1
  88. package/dist/utils/serializer/serializer.util.js +1 -1
  89. package/dist/utils/string/index.cjs +1 -1
  90. package/dist/utils/string/index.d.cts +3 -0
  91. package/dist/utils/string/index.d.ts +3 -0
  92. package/dist/utils/string/index.js +1 -1
  93. package/dist/utils/string/string.util.cjs +1 -1
  94. package/dist/utils/string/string.util.d.cts +3 -0
  95. package/dist/utils/string/string.util.d.ts +3 -0
  96. package/dist/utils/string/string.util.js +1 -1
  97. package/dist/utils/validate/index.cjs +1 -1
  98. package/dist/utils/validate/index.js +1 -1
  99. package/dist/utils/validate/validate.util.cjs +1 -1
  100. package/dist/utils/validate/validate.util.js +1 -1
  101. package/package.json +2 -2
@@ -1 +1 @@
1
- "use strict";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(e,r,t,n,o,a,u){try{var c=e[a](u);var s=c.value}catch(e){t(e);return}if(c.done){r(s)}else{Promise.resolve(s).then(n,o)}}function n(e){return function(){var r=this,n=arguments;return new Promise(function(o,a){var u=e.apply(r,n);function c(e){t(u,o,a,c,s,"next",e)}function s(e){t(u,o,a,c,s,"throw",e)}c(undefined)})}}function o(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function a(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 u,c;try{for(t=t.call(e);!(o=(u=t.next()).done);o=true){n.push(u.value);if(r&&n.length===r)break}}catch(e){a=true;c=e}finally{try{if(!o&&t["return"]!=null)t["return"]()}finally{if(a)throw c}}return n}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function c(e,t){return r(e)||a(e,t)||i(e,t)||u()}function s(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function i(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(e,r){var t,n,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},u=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return u.next=c(0),u["throw"]=c(1),u["return"]=c(2),typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(e){return function(r){return s([e,r])}}function s(c){if(t)throw new TypeError("Generator is already executing.");while(u&&(u=0,c[0]&&(a=0)),a)try{if(t=1,n&&(o=c[0]&2?n["return"]:c[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;if(n=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;n=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(c[0]===6&&a.label<o[1]){a.label=o[1];o=c;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(c);break}if(o[2])a.ops.pop();a.trys.pop();continue}c=r.call(e,a)}catch(e){c=[6,e];n=0}finally{t=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var f=Object.create;var v=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var p=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var h=function(e,r){return v(e,"name",{value:r,configurable:!0})};var g=function(e,r){for(var t in r)v(e,t,{get:r[t],enumerable:!0})},m=function(e,r,t,n){var o=true,a=false,u=undefined;if(r&&(typeof r==="undefined"?"undefined":s(r))=="object"||typeof r=="function")try{var c=function(){var o=l.value;!d.call(e,o)&&o!==t&&v(e,o,{get:function(){return r[o]},enumerable:!(n=y(r,o))||n.enumerable})};for(var i=b(r)[Symbol.iterator](),l;!(o=(l=i.next()).done);o=true)c()}catch(e){a=true;u=e}finally{try{if(!o&&i.return!=null){i.return()}}finally{if(a){throw u}}}return e};var w=function(e,r,t){return t=e!=null?f(p(e)):{},m(r||!e||!e.__esModule?v(t,"default",{value:e,enumerable:!0}):t,e)},S=function(e){return m(v({},"__esModule",{value:!0}),e)};var _={};g(_,{useStorage:function(){return P}});module.exports=S(_);var k=require("react");var O={serialize:h(function(e){return JSON.stringify(e,function(e,r){return o(r,Date)?{__type:"Date",value:r.toISOString()}:r})},"serialize"),deserialize:h(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")};var E=require("consola/browser"),j={silent:E.consola.silent,level:E.consola.level,fatal:E.consola.fatal,error:E.consola.error,warn:E.consola.warn,log:E.consola.log,info:E.consola.info,success:E.consola.success,ready:E.consola.ready,start:E.consola.start,box:E.consola.box,debug:E.consola.debug,trace:E.consola.trace,verbose:E.consola.verbose};var I=w(require("localforage"),1);var x={get:function e(e){return n(function(){var r;return l(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,I.default.getItem(e)];case 1:return[2,t.sent()];case 2:r=t.sent();return[2,(j.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 3:return[2]}})})()},set:function e(e,r){return n(function(){var t;return l(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,I.default.setItem(e,r)];case 1:n.sent();return[3,3];case 2:t=n.sent();j.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,3];case 3:return[2]}})})()},remove:function e(e){return n(function(){var r;return l(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,I.default.removeItem(e)];case 1:t.sent();return[3,3];case 2:r=t.sent();j.error('[Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})})()},keys:function e(){return n(function(){var e,r;return l(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,I.default.keys()];case 1:return[2,(e=t.sent())!==null&&e!==void 0?e:[]];case 2:r=t.sent();return[2,(j.error("[Storage:keys] Error getting keys:",r),[])];case 3:return[2]}})})()}};function P(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:O;var o=c((0,k.useState)(r),2),a=o[0],u=o[1],s=c((0,k.useState)(!1),2),i=s[0],f=s[1];(0,k.useEffect)(function(){var o=!0;return h(/*#__PURE__*/n(function(){var n,a,c,s;return l(this,function(i){switch(i.label){case 0:i.trys.push([0,6,7,8]);return[4,x.get(e)];case 1:n=i.sent();if(!o)return[3,5];if(!(n!==null))return[3,2];a=t.deserialize(n);u(a);return[3,5];case 2:if(!(r!==void 0))return[3,4];c=t.serialize(r);return[4,x.set(e,c)];case 3:i.sent(),u(r);return[3,5];case 4:u(void 0);i.label=5;case 5:return[3,8];case 6:s=i.sent();j.error('Error loading value for key "'.concat(e,'":'),s),o&&u(r);return[3,8];case 7:o&&f(!0);return[7];case 8:return[2]}})}),"loadValue")(),function(){o=!1,f(!1)}},[e,r,t]),(0,k.useEffect)(function(){if(!i)return;h(/*#__PURE__*/n(function(){var r,n;return l(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);if(!(a!==void 0))return[3,2];r=t.serialize(a);return[4,x.set(e,r)];case 1:o.sent();o.label=2;case 2:return[3,4];case 3:n=o.sent();j.error('Error saving value for key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})}),"saveValue")()},[a,e,t,i]);var v=(0,k.useCallback)(function(e){u(function(r){return typeof e=="function"?e(r):e})},[]),y=(0,k.useCallback)(/*#__PURE__*/n(function(){var r;return l(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,x.remove(e)];case 1:t.sent(),u(void 0);return[3,3];case 2:r=t.sent();j.error('Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})}),[e]);return{value:a,set:v,remove:y}}h(P,"useStorage");0&&(module.exports={useStorage:useStorage});
1
+ "use strict";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(e,r,t,n,u,a,i){try{var o=e[a](i);var s=o.value}catch(e){t(e);return}if(o.done){r(s)}else{Promise.resolve(s).then(n,u)}}function n(e){return function(){var r=this,n=arguments;return new Promise(function(u,a){var i=e.apply(r,n);function o(e){t(i,u,a,o,s,"next",e)}function s(e){t(i,u,a,o,s,"throw",e)}o(undefined)})}}function u(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function a(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var u=true;var a=false;var i,o;try{for(t=t.call(e);!(u=(i=t.next()).done);u=true){n.push(i.value);if(r&&n.length===r)break}}catch(e){a=true;o=e}finally{try{if(!u&&t["return"]!=null)t["return"]()}finally{if(a)throw o}}return n}function i(){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 o(e,t){return r(e)||a(e,t)||l(e,t)||i()}function s(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(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 c(e,r){var t,n,u,a={label:0,sent:function(){if(u[0]&1)throw u[1];return u[1]},trys:[],ops:[]},i=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return i.next=o(0),i["throw"]=o(1),i["return"]=o(2),typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function o(e){return function(r){return s([e,r])}}function s(o){if(t)throw new TypeError("Generator is already executing.");while(i&&(i=0,o[0]&&(a=0)),a)try{if(t=1,n&&(u=o[0]&2?n["return"]:o[0]?n["throw"]||((u=n["return"])&&u.call(n),0):n.next)&&!(u=u.call(n,o[1])).done)return u;if(n=0,u)o=[o[0]&2,u.value];switch(o[0]){case 0:case 1:u=o;break;case 4:a.label++;return{value:o[1],done:false};case 5:a.label++;n=o[1];o=[0];continue;case 7:o=a.ops.pop();a.trys.pop();continue;default:if(!(u=a.trys,u=u.length>0&&u[u.length-1])&&(o[0]===6||o[0]===2)){a=0;continue}if(o[0]===3&&(!u||o[1]>u[0]&&o[1]<u[3])){a.label=o[1];break}if(o[0]===6&&a.label<u[1]){a.label=u[1];u=o;break}if(u&&a.label<u[2]){a.label=u[2];a.ops.push(o);break}if(u[2])a.ops.pop();a.trys.pop();continue}o=r.call(e,a)}catch(e){o=[6,e];n=0}finally{t=u=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var f=Object.create;var y=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var p=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var g=function(e,r){return y(e,"name",{value:r,configurable:!0})};var h=function(e,r){for(var t in r)y(e,t,{get:r[t],enumerable:!0})},m=function(e,r,t,n){var u=true,a=false,i=undefined;if(r&&(typeof r==="undefined"?"undefined":s(r))=="object"||typeof r=="function")try{var o=function(){var u=c.value;!b.call(e,u)&&u!==t&&y(e,u,{get:function(){return r[u]},enumerable:!(n=v(r,u))||n.enumerable})};for(var l=d(r)[Symbol.iterator](),c;!(u=(c=l.next()).done);u=true)o()}catch(e){a=true;i=e}finally{try{if(!u&&l.return!=null){l.return()}}finally{if(a){throw i}}}return e};var w=function(e,r,t){return t=e!=null?f(p(e)):{},m(r||!e||!e.__esModule?y(t,"default",{value:e,enumerable:!0}):t,e)},S=function(e){return m(y({},"__esModule",{value:!0}),e)};var _={};h(_,{useStorage:function(){return A}});module.exports=S(_);var z=require("react");var k=require("buffer");var E={Date:{is:g(function(e){return u(e,Date)},"is"),serialize:g(function(e){return{__type:"Date",value:e.toISOString()}},"serialize"),deserialize:g(function(e){return new Date(e)},"deserialize")},Map:{is:g(function(e){return u(e,Map)},"is"),serialize:g(function(e){return{__type:"Map",value:Array.from(e.entries())}},"serialize"),deserialize:g(function(e){return new Map(e)},"deserialize")},Set:{is:g(function(e){return u(e,Set)},"is"),serialize:g(function(e){return{__type:"Set",value:Array.from(e)}},"serialize"),deserialize:g(function(e){return new Set(e)},"deserialize")},RegExp:{is:g(function(e){return u(e,RegExp)},"is"),serialize:g(function(e){return{__type:"RegExp",value:{source:e.source,flags:e.flags}}},"serialize"),deserialize:g(function(e){var r=e.source,t=e.flags;return new RegExp(r,t)},"deserialize")},BigInt:{is:g(function(e){return(typeof e==="undefined"?"undefined":s(e))=="bigint"},"is"),serialize:g(function(e){return{__type:"BigInt",value:e.toString()}},"serialize"),deserialize:g(function(e){return BigInt(e)},"deserialize")},Buffer:{is:g(function(e){return k.Buffer.isBuffer(e)},"is"),serialize:g(function(e){return{__type:"Buffer",value:e.toString("base64")}},"serialize"),deserialize:g(function(e){return k.Buffer.from(e,"base64")},"deserialize")}},O={serialize:function e(e){return JSON.stringify(e,function(e,r){var t=true,n=false,u=undefined;try{for(var a=Object.keys(E)[Symbol.iterator](),i;!(t=(i=a.next()).done);t=true){var o=i.value;var s=E[o];if(s.is(r))return s.serialize(r)}}catch(e){n=true;u=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw u}}}return r})},deserialize:function e(e){return JSON.parse(e,function(e,r){if(r&&(typeof r==="undefined"?"undefined":s(r))=="object"&&"__type"in r&&typeof r.__type=="string"){var t=r.__type,n=E[t];if(n)return n.deserialize(r.value)}return r})}};var x=require("consola/browser"),j={silent:x.consola.silent,level:x.consola.level,fatal:x.consola.fatal,error:x.consola.error,warn:x.consola.warn,log:x.consola.log,info:x.consola.info,success:x.consola.success,ready:x.consola.ready,start:x.consola.start,box:x.consola.box,debug:x.consola.debug,trace:x.consola.trace,verbose:x.consola.verbose};var I=w(require("localforage"),1);var P={get:function e(e){return n(function(){var r;return c(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,I.default.getItem(e)];case 1:return[2,t.sent()];case 2:r=t.sent();return[2,(j.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 3:return[2]}})})()},set:function e(e,r){return n(function(){var t;return c(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,I.default.setItem(e,r)];case 1:n.sent();return[3,3];case 2:t=n.sent();j.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,3];case 3:return[2]}})})()},remove:function e(e){return n(function(){var r;return c(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,I.default.removeItem(e)];case 1:t.sent();return[3,3];case 2:r=t.sent();j.error('[Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})})()},keys:function e(){return n(function(){var e,r;return c(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,I.default.keys()];case 1:return[2,(e=t.sent())!==null&&e!==void 0?e:[]];case 2:r=t.sent();return[2,(j.error("[Storage:keys] Error getting keys:",r),[])];case 3:return[2]}})})()}};function A(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:O;var u=o((0,z.useState)(r),2),a=u[0],i=u[1],s=o((0,z.useState)(!1),2),l=s[0],f=s[1];(0,z.useEffect)(function(){var u=!0;return g(/*#__PURE__*/n(function(){var n,a,o,s;return c(this,function(l){switch(l.label){case 0:l.trys.push([0,6,7,8]);return[4,P.get(e)];case 1:n=l.sent();if(!u)return[3,5];if(!(n!==null))return[3,2];a=t.deserialize(n);i(a);return[3,5];case 2:if(!(r!==void 0))return[3,4];o=t.serialize(r);return[4,P.set(e,o)];case 3:l.sent(),i(r);return[3,5];case 4:i(void 0);l.label=5;case 5:return[3,8];case 6:s=l.sent();j.error('Error loading value for key "'.concat(e,'":'),s),u&&i(r);return[3,8];case 7:u&&f(!0);return[7];case 8:return[2]}})}),"loadValue")(),function(){u=!1,f(!1)}},[e,r,t]),(0,z.useEffect)(function(){if(!l)return;g(/*#__PURE__*/n(function(){var r,n;return c(this,function(u){switch(u.label){case 0:u.trys.push([0,3,,4]);if(!(a!==void 0))return[3,2];r=t.serialize(a);return[4,P.set(e,r)];case 1:u.sent();u.label=2;case 2:return[3,4];case 3:n=u.sent();j.error('Error saving value for key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})}),"saveValue")()},[a,e,t,l]);var y=(0,z.useCallback)(function(e){i(function(r){return typeof e=="function"?e(r):e})},[]),v=(0,z.useCallback)(/*#__PURE__*/n(function(){var r;return c(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,P.remove(e)];case 1:t.sent(),i(void 0);return[3,3];case 2:r=t.sent();j.error('Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})}),[e]);return{value:a,set:y,remove:v}}g(A,"useStorage");0&&(module.exports={useStorage:useStorage});
@@ -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(e,r,t,n,a,o,u){try{var i=e[o](u);var s=i.value}catch(e){t(e);return}if(i.done){r(s)}else{Promise.resolve(s).then(n,a)}}function n(e){return function(){var r=this,n=arguments;return new Promise(function(a,o){var u=e.apply(r,n);function i(e){t(u,a,o,i,s,"next",e)}function s(e){t(u,a,o,i,s,"throw",e)}i(undefined)})}}function a(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function o(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var a=true;var o=false;var u,i;try{for(t=t.call(e);!(a=(u=t.next()).done);a=true){n.push(u.value);if(r&&n.length===r)break}}catch(e){o=true;i=e}finally{try{if(!a&&t["return"]!=null)t["return"]()}finally{if(o)throw i}}return n}function u(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e,t){return r(e)||o(e,t)||s(e,t)||u()}function s(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 c(e,r){var t,n,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},u=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return u.next=i(0),u["throw"]=i(1),u["return"]=i(2),typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function i(e){return function(r){return s([e,r])}}function s(i){if(t)throw new TypeError("Generator is already executing.");while(u&&(u=0,i[0]&&(o=0)),o)try{if(t=1,n&&(a=i[0]&2?n["return"]:i[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,i[1])).done)return a;if(n=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;n=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=r.call(e,o)}catch(e){i=[6,e];n=0}finally{t=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var l=Object.defineProperty;var f=function(e,r){return l(e,"name",{value:r,configurable:!0})};import{useCallback as v,useEffect as y,useState as h}from"react";var b={serialize:f(function(e){return JSON.stringify(e,function(e,r){return a(r,Date)?{__type:"Date",value:r.toISOString()}:r})},"serialize"),deserialize:f(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{consola as p}from"consola/browser";var d={silent:p.silent,level:p.level,fatal:p.fatal,error:p.error,warn:p.warn,log:p.log,info:p.info,success:p.success,ready:p.ready,start:p.start,box:p.box,debug:p.debug,trace:p.trace,verbose:p.verbose};import g from"localforage";var m={get:function e(e){return n(function(){var r;return c(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,g.getItem(e)];case 1:return[2,t.sent()];case 2:r=t.sent();return[2,(d.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 3:return[2]}})})()},set:function e(e,r){return n(function(){var t;return c(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,g.setItem(e,r)];case 1:n.sent();return[3,3];case 2:t=n.sent();d.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,3];case 3:return[2]}})})()},remove:function e(e){return n(function(){var r;return c(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,g.removeItem(e)];case 1:t.sent();return[3,3];case 2:r=t.sent();d.error('[Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})})()},keys:function e(){return n(function(){var e,r;return c(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,g.keys()];case 1:return[2,(e=t.sent())!==null&&e!==void 0?e:[]];case 2:r=t.sent();return[2,(d.error("[Storage:keys] Error getting keys:",r),[])];case 3:return[2]}})})()}};function w(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:b;var a=i(h(r),2),o=a[0],u=a[1],s=i(h(!1),2),l=s[0],p=s[1];y(function(){var a=!0;return f(/*#__PURE__*/n(function(){var n,o,i,s;return c(this,function(c){switch(c.label){case 0:c.trys.push([0,6,7,8]);return[4,m.get(e)];case 1:n=c.sent();if(!a)return[3,5];if(!(n!==null))return[3,2];o=t.deserialize(n);u(o);return[3,5];case 2:if(!(r!==void 0))return[3,4];i=t.serialize(r);return[4,m.set(e,i)];case 3:c.sent(),u(r);return[3,5];case 4:u(void 0);c.label=5;case 5:return[3,8];case 6:s=c.sent();d.error('Error loading value for key "'.concat(e,'":'),s),a&&u(r);return[3,8];case 7:a&&p(!0);return[7];case 8:return[2]}})}),"loadValue")(),function(){a=!1,p(!1)}},[e,r,t]),y(function(){if(!l)return;f(/*#__PURE__*/n(function(){var r,n;return c(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,m.set(e,r)];case 1:a.sent();a.label=2;case 2:return[3,4];case 3:n=a.sent();d.error('Error saving value for key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})}),"saveValue")()},[o,e,t,l]);var g=v(function(e){u(function(r){return typeof e=="function"?e(r):e})},[]),w=v(/*#__PURE__*/n(function(){var r;return c(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,m.remove(e)];case 1:t.sent(),u(void 0);return[3,3];case 2:r=t.sent();d.error('Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})}),[e]);return{value:o,set:g,remove:w}}f(w,"useStorage");export{w as useStorage};
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(e,r,t,n,i,u,a){try{var o=e[u](a);var s=o.value}catch(e){t(e);return}if(o.done){r(s)}else{Promise.resolve(s).then(n,i)}}function n(e){return function(){var r=this,n=arguments;return new Promise(function(i,u){var a=e.apply(r,n);function o(e){t(a,i,u,o,s,"next",e)}function s(e){t(a,i,u,o,s,"throw",e)}o(undefined)})}}function i(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function u(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var i=true;var u=false;var a,o;try{for(t=t.call(e);!(i=(a=t.next()).done);i=true){n.push(a.value);if(r&&n.length===r)break}}catch(e){u=true;o=e}finally{try{if(!i&&t["return"]!=null)t["return"]()}finally{if(u)throw o}}return n}function a(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function o(e,t){return r(e)||u(e,t)||c(e,t)||a()}function s(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function c(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(e,r){var t,n,i,u={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=o(0),a["throw"]=o(1),a["return"]=o(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function o(e){return function(r){return s([e,r])}}function s(o){if(t)throw new TypeError("Generator is already executing.");while(a&&(a=0,o[0]&&(u=0)),u)try{if(t=1,n&&(i=o[0]&2?n["return"]:o[0]?n["throw"]||((i=n["return"])&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;if(n=0,i)o=[o[0]&2,i.value];switch(o[0]){case 0:case 1:i=o;break;case 4:u.label++;return{value:o[1],done:false};case 5:u.label++;n=o[1];o=[0];continue;case 7:o=u.ops.pop();u.trys.pop();continue;default:if(!(i=u.trys,i=i.length>0&&i[i.length-1])&&(o[0]===6||o[0]===2)){u=0;continue}if(o[0]===3&&(!i||o[1]>i[0]&&o[1]<i[3])){u.label=o[1];break}if(o[0]===6&&u.label<i[1]){u.label=i[1];i=o;break}if(i&&u.label<i[2]){u.label=i[2];u.ops.push(o);break}if(i[2])u.ops.pop();u.trys.pop();continue}o=r.call(e,u)}catch(e){o=[6,e];n=0}finally{t=i=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var f=Object.defineProperty;var y=function(e,r){return f(e,"name",{value:r,configurable:!0})};import{useCallback as v,useEffect as p,useState as d}from"react";import{Buffer as b}from"node:buffer";var h={Date:{is:y(function(e){return i(e,Date)},"is"),serialize:y(function(e){return{__type:"Date",value:e.toISOString()}},"serialize"),deserialize:y(function(e){return new Date(e)},"deserialize")},Map:{is:y(function(e){return i(e,Map)},"is"),serialize:y(function(e){return{__type:"Map",value:Array.from(e.entries())}},"serialize"),deserialize:y(function(e){return new Map(e)},"deserialize")},Set:{is:y(function(e){return i(e,Set)},"is"),serialize:y(function(e){return{__type:"Set",value:Array.from(e)}},"serialize"),deserialize:y(function(e){return new Set(e)},"deserialize")},RegExp:{is:y(function(e){return i(e,RegExp)},"is"),serialize:y(function(e){return{__type:"RegExp",value:{source:e.source,flags:e.flags}}},"serialize"),deserialize:y(function(e){var r=e.source,t=e.flags;return new RegExp(r,t)},"deserialize")},BigInt:{is:y(function(e){return(typeof e==="undefined"?"undefined":s(e))=="bigint"},"is"),serialize:y(function(e){return{__type:"BigInt",value:e.toString()}},"serialize"),deserialize:y(function(e){return BigInt(e)},"deserialize")},Buffer:{is:y(function(e){return b.isBuffer(e)},"is"),serialize:y(function(e){return{__type:"Buffer",value:e.toString("base64")}},"serialize"),deserialize:y(function(e){return b.from(e,"base64")},"deserialize")}},g={serialize:function e(e){return JSON.stringify(e,function(e,r){var t=true,n=false,i=undefined;try{for(var u=Object.keys(h)[Symbol.iterator](),a;!(t=(a=u.next()).done);t=true){var o=a.value;var s=h[o];if(s.is(r))return s.serialize(r)}}catch(e){n=true;i=e}finally{try{if(!t&&u.return!=null){u.return()}}finally{if(n){throw i}}}return r})},deserialize:function e(e){return JSON.parse(e,function(e,r){if(r&&(typeof r==="undefined"?"undefined":s(r))=="object"&&"__type"in r&&typeof r.__type=="string"){var t=r.__type,n=h[t];if(n)return n.deserialize(r.value)}return r})}};import{consola as m}from"consola/browser";var z={silent:m.silent,level:m.level,fatal:m.fatal,error:m.error,warn:m.warn,log:m.log,info:m.info,success:m.success,ready:m.ready,start:m.start,box:m.box,debug:m.debug,trace:m.trace,verbose:m.verbose};import w from"localforage";var S={get:function e(e){return n(function(){var r;return l(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,w.getItem(e)];case 1:return[2,t.sent()];case 2:r=t.sent();return[2,(z.error('[Storage:get] Error getting key "'.concat(e,'":'),r),null)];case 3:return[2]}})})()},set:function e(e,r){return n(function(){var t;return l(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,w.setItem(e,r)];case 1:n.sent();return[3,3];case 2:t=n.sent();z.error('[Storage:set] Error setting key "'.concat(e,'":'),t);return[3,3];case 3:return[2]}})})()},remove:function e(e){return n(function(){var r;return l(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,w.removeItem(e)];case 1:t.sent();return[3,3];case 2:r=t.sent();z.error('[Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})})()},keys:function e(){return n(function(){var e,r;return l(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,w.keys()];case 1:return[2,(e=t.sent())!==null&&e!==void 0?e:[]];case 2:r=t.sent();return[2,(z.error("[Storage:keys] Error getting keys:",r),[])];case 3:return[2]}})})()}};function _(e,r){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:g;var i=o(d(r),2),u=i[0],a=i[1],s=o(d(!1),2),c=s[0],f=s[1];p(function(){var i=!0;return y(/*#__PURE__*/n(function(){var n,u,o,s;return l(this,function(c){switch(c.label){case 0:c.trys.push([0,6,7,8]);return[4,S.get(e)];case 1:n=c.sent();if(!i)return[3,5];if(!(n!==null))return[3,2];u=t.deserialize(n);a(u);return[3,5];case 2:if(!(r!==void 0))return[3,4];o=t.serialize(r);return[4,S.set(e,o)];case 3:c.sent(),a(r);return[3,5];case 4:a(void 0);c.label=5;case 5:return[3,8];case 6:s=c.sent();z.error('Error loading value for key "'.concat(e,'":'),s),i&&a(r);return[3,8];case 7:i&&f(!0);return[7];case 8:return[2]}})}),"loadValue")(),function(){i=!1,f(!1)}},[e,r,t]),p(function(){if(!c)return;y(/*#__PURE__*/n(function(){var r,n;return l(this,function(i){switch(i.label){case 0:i.trys.push([0,3,,4]);if(!(u!==void 0))return[3,2];r=t.serialize(u);return[4,S.set(e,r)];case 1:i.sent();i.label=2;case 2:return[3,4];case 3:n=i.sent();z.error('Error saving value for key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})}),"saveValue")()},[u,e,t,c]);var b=v(function(e){a(function(r){return typeof e=="function"?e(r):e})},[]),h=v(/*#__PURE__*/n(function(){var r;return l(this,function(t){switch(t.label){case 0:t.trys.push([0,2,,3]);return[4,S.remove(e)];case 1:t.sent(),a(void 0);return[3,3];case 2:r=t.sent();z.error('Error removing key "'.concat(e,'":'),r);return[3,3];case 3:return[2]}})}),[e]);return{value:u,set:b,remove:h}}y(_,"useStorage");export{_ as useStorage};
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,i){try{var c=e[a](i);var s=c.value}catch(e){n(e);return}if(c.done){t(s)}else{Promise.resolve(s).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var i=e.apply(t,r);function c(e){n(i,o,a,c,s,"next",e)}function s(e){n(i,o,a,c,s,"throw",e)}c(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(){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 c(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function s(e){return t(e)||a(e)||l(e)||i()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},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 d=Object.create;var p=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var y=function(e,t){return p(e,"name",{value:t,configurable:!0})};var I=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},b=function(e,t,n,r){var o=true,a=false,i=undefined;if(t&&(typeof t==="undefined"?"undefined":u(t))=="object"||typeof t=="function")try{var c=function(){var o=l.value;!m.call(e,o)&&o!==n&&p(e,o,{get:function(){return t[o]},enumerable:!(r=v(t,o))||r.enumerable})};for(var s=g(t)[Symbol.iterator](),l;!(o=(l=s.next()).done);o=true)c()}catch(e){a=true;i=e}finally{try{if(!o&&s.return!=null){s.return()}}finally{if(a){throw i}}}return e};var E=function(e,t,n){return n=e!=null?d(h(e)):{},b(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},O=function(e){return b(p({},"__esModule",{value:!0}),e)};var w={};I(w,{vitestE2E:function(){return T},vitestUnit:function(){return tO}});module.exports=O(w);var C=E(require("@vitejs/plugin-react-swc"),1),S=require("vitest/config");function T(e){return(0,S.defineConfig)(c({plugins:[(0,C.default)()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}y(T,"vitestE2E");var _=E(require("@vitejs/plugin-react-swc"),1),G=require("vitest/config");var N=".cyberskill-storage";var R=E(require("dotenv"),1),L=require("envalid"),k=E(require("os"),1),j=E(require("path"),1),D=E(require("process"),1);R.default.config();function P(){var e={DEBUG:D.default.env.DEBUG||!1,CWD:D.default.env.CWD||D.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:D.default.env.CYBERSKILL_STORAGE_DIRECTORY||j.default.join(k.default.homedir(),N)};return(0,L.cleanEnv)(e,{DEBUG:(0,L.bool)(),CWD:(0,L.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,L.str)()})}y(P,"getEnv");var x=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var A=require("child_process"),M=E(require("process"),1),F=E(require("util"),1);var U=function(e){return e.Error="error",e.Warning="warning",e}({});var q=E(require("chalk"),1),K=E(require("consola"),1),Y=require("graphql");var B=P();B.DEBUG||(K.default.level=4);function W(e){var t=q.default[e];return typeof t=="function"?t:q.default.green}y(W,"chalkKeyword");var J={silent:K.default.silent,level:K.default.level,fatal:K.default.fatal,error:K.default.error,warn:K.default.warn,log:K.default.log,info:K.default.info,success:K.default.success,ready:K.default.ready,start:K.default.start,box:K.default.box,debug:K.default.debug,trace:K.default.trace,verbose:K.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){K.default.box(q.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;K.default.log("".concat(q.default.gray("File:")," ").concat(q.default.blue("".concat(t).concat(r?":".concat(r):"")))),o&&K.default.log(" ".concat(W(n)("Rule:")," ").concat(o)),K.default.log(" ".concat(W(n)("Message:")," ").concat(a))}),K.default.box(W(n)("".concat(e," : ").concat(t.length))),K.default.log(q.default.gray("─".repeat(40)))}};var H={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var $=E(require("node-fetch"),1);var V=E(require("fs-extra"),1),z=require("path");var Q=V.default,X=Q.readFileSync,Z=Q.writeFileSync,ee=Q.pathExistsSync,et=Q.appendFileSync,en=Q.copySync,er=Q.removeSync,eo=Q.statSync,ea=V.default.readJsonSync,ei=V.default.writeJsonSync;function ec(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ee(e)})}y(ec,"existsSync");var es=P();function eu(e){var t=eU(es.CWD,eJ);if(!ec(t))return!1;try{var n=ea(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,i=n.devDependencies,c=i===void 0?{}:i,s=r===e,u=e in a,l=e in c;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return J.warn("Failed to read package.json: ".concat(e.message)),!1}}y(eu,"getPackage");function el(e){return ef.apply(this,arguments)}function ef(){ef=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,$.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 J.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return ef.apply(this,arguments)}y(el,"getLatestPackageVersion");function ed(e,t){return ep.apply(this,arguments)}function ep(){ep=r(function(e,t){var n,r,o,a,i,s,u,l,d,p,v,g,h,m,y,I,b,E,O,w,C;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=eu(e);if(!n)return[2,c({},H)];u=n.path,l=n.file,d=n.isCurrentProject,p=n.isDepend,v=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},h=(o=l.devDependencies)!==null&&o!==void 0?o:{},m=d?(a=l.version)!==null&&a!==void 0?a:"0.0.0":p?(i=g[e])!==null&&i!==void 0?i:"0.0.0":v?(s=h[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!d)return[3,1];b=m;return[3,3];case 1:return[4,el(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=d||m===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;O=p?"dependencies":v?"devDependencies":null;O&&((E=l[O])===null||E===void 0?void 0:E[e])!==y&&(l[O]=(w=l[O])!==null&&w!==void 0?w:{},l[O][e]=y,ei(u,l),J.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:d,installedPath:u,file:l,isUpToDate:I}];case 4:C=f.sent();return[2,(J.error('Error checking package "'.concat(e,'": ').concat(C.message)),c({},H))];case 5:return[2]}})});return ep.apply(this,arguments)}y(ed,"checkPackage");function ev(){return eg.apply(this,arguments)}function eg(){eg=r(function(){var e,t,n,r,o,a,i,c,s,u,l,d;return f(this,function(f){switch(f.label){case 0:e=[{command:y(function(){return tE.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return tE.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return tE.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];i=a.value,c=i.command,s=i.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,eP("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();J.warn("Installation attempt failed: ".concat(s)),J.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eg.apply(this,arguments)}y(ev,"installDependencies");function eh(e,t){return em.apply(this,arguments)}function em(){em=r(function(e,t){var n,r,o,a,i,u,l,d,p,v,g;return f(this,function(f){switch(f.label){case 0:if(!ec(tm.PACKAGE_JSON)){J.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ed(e,c({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ev()];case 3:r=f.sent();f.label=4;case 4:r;a=true,i=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(d=l.next()).done))return[3,9];p=d.value;return[4,p()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:v=f.sent();i=true;u=v;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(i){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw J.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return em.apply(this,arguments)}y(eh,"setupPackages");var ey=E(require("node-persist"),1);var eI=P();function eb(){return eE.apply(this,arguments)}function eE(){eE=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=ey.default.defaultInstance;if(e)return[3,2];return[4,ey.default.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 eE.apply(this,arguments)}y(eb,"initNodePersist");var eO={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eb()];case 1:r.sent();return[4,ey.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(J.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eb()];case 1:r.sent();return[4,ey.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();J.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eb()];case 1:n.sent();return[4,ey.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();J.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eb()];case 1:n.sent();return[4,ey.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(J.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(J.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eI.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(J.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ew=P(),eC=F.promisify(A.exec);function eS(e){return"error_list:".concat(e)}y(eS,"getErrorListKey");function eT(e){return e_.apply(this,arguments)}function e_(){e_=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eS(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eO.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eO.getLogLink(n)];case 1:e=t.sent();e&&J.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();J.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return e_.apply(this,arguments)}y(eT,"saveErrorListToStorage");function eG(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,i=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,s,u,l,f;var d=o.exec(e)||[],p=a.exec(e)||[],v=i.exec(e)||[];var g,h,m,y,I,b;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===U.Error?U.Error:U.Warning,message:(g=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(h=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(m=p===null||p===void 0?void 0:p[1])!==null&&m!==void 0?m:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===U.Error?U.Error:U.Warning,message:(y=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):v.length?t.push({file:"commitlint",type:U.Error,message:(I=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",rule:(b=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&b!==void 0?b:""}):n.push(e.trim())}}),t.length&&eT(t),ew.DEBUG&&n.length&&(J.warn("Unmatched lines:"),n.forEach(function(e){return J.info(" ".concat(e))}))}y(eG,"parseTextErrors");function eN(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,o=e.line,a=e.column,i=e.ruleId,c=e.message;n.push({type:r===2?U.Error:U.Warning,file:t,position:"".concat(o,":").concat(a),rule:i,message:c})})}),n.length&&eT(n)}catch(t){eG(e)}}y(eN,"parseCommandOutput");function eR(e){return eL.apply(this,arguments)}function eL(){eL=r(function(e){var t,n,r,o,a,i,c,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eN;n=new AbortController;M.default.on("SIGINT",function(){J.warn("Process interrupted. Terminating..."),n.abort(),M.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eC(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:i=f.sent();c=i.stdout,s=i.stderr,u=i.message;[c,s].forEach(function(e){return e&&t(e)}),!s&&!c&&J.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eL.apply(this,arguments)}y(eR,"executeCommand");function ek(e){return{raw:!0,cmd:e}}y(ek,"rawCommand");function ej(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(ts," ").concat(eY," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(ts," ").concat(ta," ").concat(e3," ").concat(e):"".concat(ts," ").concat(e2," ").concat(e)}y(ej,"formatCLI");function eD(e,t){return typeof e=="function"?ej(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ej(e,t):e}y(eD,"formatCommand");function eP(e,t){return ex.apply(this,arguments)}function ex(){ex=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);J.start("".concat(e)),ew.DEBUG&&J.info("→ ".concat(t));return[4,eR(t)];case 1:r.sent(),J.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw J.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ex.apply(this,arguments)}y(eP,"runCommand");var eA=require("path");var eM=P();function eF(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eA.resolve).apply(this,[eM.CWD].concat(s(t)))}y(eF,"resolveWorkingPath");function eU(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eA.join).apply(this,s(t))}y(eU,"join");var eq=P(),eK=eq.CWD,eY="@cyberskill/shared",eB="node_modules",eW="dist",eJ="package.json",eH="package-lock.json",e$="tsconfig.json",eV=".gitignore",ez=".simple-git-hooks.json",eQ="pnpm-lock.yaml",eX=".git/hooks/",eZ=".git/COMMIT_EDITMSG",e0=".migrate-mongo.config.js",e1=eU(eK,eB,eY,eW),e2="cyberskill",e3="src/nodejs/cli/index.ts",e4="eslint",e5="eslint",e6="vitest",e7="playwright",e8="vitest",e9="@commitlint/cli",te="commitlint",tt="lint-staged",tn="lint-staged",tr="typescript",to="tsc",ta="tsx",ti="git",tc="pnpm",ts="pnpm exec",tu="simple-git-hooks",tl="simple-git-hooks",tf="@eslint/config-inspector",td="eslint-config-inspector",tp="node-modules-inspector",tv="node-modules-inspector",tg="migrate-mongo",th="./node_modules/migrate-mongo/bin/migrate-mongo",tm={CYBERSKILL_DIRECTORY:e1,WORKING_DIRECTORY:eK,TS_CONFIG:eF(e$),GIT_IGNORE:eF(eV),GIT_HOOK:eF(eX),GIT_COMMIT_MSG:eF(eZ),SIMPLE_GIT_HOOKS_JSON:eF(ez),PACKAGE_JSON:eF(eJ),PACKAGE_LOCK_JSON:eF(eH),PNPM_LOCK_YAML:eF(eQ),NODE_MODULES:eF(eB),MIGRATE_MONGO_CONFIG:eF(e0),LINT_STAGED_CONFIG:eF("".concat(e1,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eF("".concat(e1,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eF("".concat(e1,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eF("".concat(e1,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eF("".concat(e1,"/react/vitest/vitest.e2e.js"))};function ty(e,t,n){return tI.apply(this,arguments)}function tI(){tI=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case x.CLI:return[3,1];case x.STRING:return[3,3]}return[3,4];case 1:return[4,eh(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eD(ek("".concat(ts," ").concat(n))))];case 3:return[2,eD(ek(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tI.apply(this,arguments)}y(ty,"buildCommand");function tb(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,ty(e,t,n)]})})}y(tb,"commandFactory");var tE={simpleGitHooks:tb(x.CLI,tu,tl),eslintInspect:tb(x.CLI,tf,td),nodeModulesInspect:tb(x.CLI,tp,tv),eslintCheck:tb(x.CLI,e4,"".concat(e5," ").concat(tm.WORKING_DIRECTORY)),eslintFix:tb(x.CLI,e4,"".concat(e5," ").concat(tm.WORKING_DIRECTORY," --fix")),typescriptCheck:tb(x.CLI,tr,"".concat(to," -p ").concat(tm.TS_CONFIG," --noEmit")),configureGitHook:tb(x.STRING,"".concat(ti," config core.hooksPath ").concat(tm.GIT_HOOK)),testUnit:tb(x.CLI,e6,"".concat(e8," --config ").concat(tm.UNIT_TEST_CONFIG)),testE2e:tb(x.CLI,"".concat(e6," ").concat(e7),"".concat(e8," --config ").concat(tm.E2E_TEST_CONFIG)),mongoMigrateCreate:y(function(e){return tb(x.CLI,tg,"".concat(ta," ").concat(th," create ").concat(e," -f ").concat(tm.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tb(x.CLI,tg,"".concat(ta," ").concat(th," up -f ").concat(tm.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tb(x.CLI,tg,"".concat(ta," ").concat(th," down -f ").concat(tm.MIGRATE_MONGO_CONFIG)),commitLint:tb(x.CLI,e9,"".concat(te," --edit ").concat(tm.GIT_COMMIT_MSG," --config ").concat(tm.COMMITLINT_CONFIG)),lintStaged:tb(x.CLI,tt,"".concat(tn," --config ").concat(tm.LINT_STAGED_CONFIG)),stageBuildDirectory:tb(x.STRING,"".concat(ti," add ").concat(eW)),build:tb(x.STRING,"".concat(tc," run build")),pnpmInstallStandard:tb(x.STRING,"".concat(tc," install")),pnpmInstallLegacy:tb(x.STRING,"".concat(tc," install --legacy-peer-deps")),pnpmInstallForce:tb(x.STRING,"".concat(tc," install --force"))};function tO(e){return(0,G.defineConfig)(c({plugins:[(0,_.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tm.UNIT_TEST_SETUP_CONFIG]}},e))}y(tO,"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(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,a,o,i){try{var c=e[o](i);var s=c.value}catch(e){n(e);return}if(c.done){t(s)}else{Promise.resolve(s).then(r,a)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(a,o){var i=e.apply(t,r);function c(e){n(i,a,o,c,s,"next",e)}function s(e){n(i,a,o,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 o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function i(){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 c(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 s(e){return t(e)||o(e)||l(e)||i()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,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 s([e,t])}}function s(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 d=Object.create;var p=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var y=function(e,t){return p(e,"name",{value:t,configurable:!0})};var I=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},b=function(e,t,n,r){var a=true,o=false,i=undefined;if(t&&(typeof t==="undefined"?"undefined":u(t))=="object"||typeof t=="function")try{var c=function(){var a=l.value;!m.call(e,a)&&a!==n&&p(e,a,{get:function(){return t[a]},enumerable:!(r=v(t,a))||r.enumerable})};for(var s=g(t)[Symbol.iterator](),l;!(a=(l=s.next()).done);a=true)c()}catch(e){o=true;i=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw i}}}return e};var E=function(e,t,n){return n=e!=null?d(h(e)):{},b(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},O=function(e){return b(p({},"__esModule",{value:!0}),e)};var w={};I(w,{vitestE2E:function(){return T},vitestUnit:function(){return tO}});module.exports=O(w);var C=E(require("@vitejs/plugin-react-swc"),1),S=require("vitest/config");function T(e){return(0,S.defineConfig)(c({plugins:[(0,C.default)()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}y(T,"vitestE2E");var _=E(require("@vitejs/plugin-react-swc"),1),G=require("vitest/config");var N=".cyberskill-storage";var R=E(require("dotenv"),1),k=require("envalid"),L=E(require("os"),1),j=E(require("path"),1),D=E(require("process"),1);R.default.config();function P(){var e={DEBUG:D.default.env.DEBUG||!1,CWD:D.default.env.CWD||D.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:D.default.env.CYBERSKILL_STORAGE_DIRECTORY||j.default.join(L.default.homedir(),N)};return(0,k.cleanEnv)(e,{DEBUG:(0,k.bool)(),CWD:(0,k.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,k.str)()})}y(P,"getEnv");var x=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var A=require("child_process"),M=E(require("process"),1),F=E(require("util"),1);var U=function(e){return e.Error="error",e.Warning="warning",e}({});var q=E(require("chalk"),1),K=E(require("consola"),1),Y=require("graphql");var B=P();B.DEBUG||(K.default.level=4);function W(e){var t=q.default[e];return typeof t=="function"?t:q.default.green}y(W,"chalkKeyword");var J={silent:K.default.silent,level:K.default.level,fatal:K.default.fatal,error:K.default.error,warn:K.default.warn,log:K.default.log,info:K.default.info,success:K.default.success,ready:K.default.ready,start:K.default.start,box:K.default.box,debug:K.default.debug,trace:K.default.trace,verbose:K.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){K.default.box(q.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;K.default.log("".concat(q.default.gray("File:")," ").concat(q.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&K.default.log(" ".concat(W(n)("Rule:")," ").concat(a)),K.default.log(" ".concat(W(n)("Message:")," ").concat(o))}),K.default.box(W(n)("".concat(e," : ").concat(t.length))),K.default.log(q.default.gray("─".repeat(40)))}};var H={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var $=E(require("node-fetch"),1);var V=E(require("fs-extra"),1),z=require("path");var Q=V.default,X=Q.appendFileSync,Z=Q.lstatSync,ee=Q.mkdirSync,et=Q.readFileSync,en=Q.unlinkSync,er=Q.writeFileSync,ea=Q.statSync,eo=V.default.readJsonSync,ei=V.default.writeJsonSync;function ec(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return V.default.pathExistsSync(e)})}y(ec,"pathExistsSync");var es=P();function eu(e){var t=eU(es.CWD,eJ);if(!ec(t))return!1;try{var n=eo(t),r=n.name,a=n.dependencies,o=a===void 0?{}:a,i=n.devDependencies,c=i===void 0?{}:i,s=r===e,u=e in o,l=e in c;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return J.warn("Failed to read package.json: ".concat(e.message)),!1}}y(eu,"getPackage");function el(e){return ef.apply(this,arguments)}function ef(){ef=r(function(e){var t,n,r,a;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,$.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 J.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return ef.apply(this,arguments)}y(el,"getLatestPackageVersion");function ed(e,t){return ep.apply(this,arguments)}function ep(){ep=r(function(e,t){var n,r,a,o,i,s,u,l,d,p,v,g,h,m,y,I,b,E,O,w,C;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=eu(e);if(!n)return[2,c({},H)];u=n.path,l=n.file,d=n.isCurrentProject,p=n.isDepend,v=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},h=(a=l.devDependencies)!==null&&a!==void 0?a:{},m=d?(o=l.version)!==null&&o!==void 0?o:"0.0.0":p?(i=g[e])!==null&&i!==void 0?i:"0.0.0":v?(s=h[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!d)return[3,1];b=m;return[3,3];case 1:return[4,el(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=d||m===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;O=p?"dependencies":v?"devDependencies":null;O&&((E=l[O])===null||E===void 0?void 0:E[e])!==y&&(l[O]=(w=l[O])!==null&&w!==void 0?w:{},l[O][e]=y,ei(u,l),J.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:d,installedPath:u,file:l,isUpToDate:I}];case 4:C=f.sent();return[2,(J.error('Error checking package "'.concat(e,'": ').concat(C.message)),c({},H))];case 5:return[2]}})});return ep.apply(this,arguments)}y(ed,"checkPackage");function ev(){return eg.apply(this,arguments)}function eg(){eg=r(function(){var e,t,n,r,a,o,i,c,s,u,l,d;return f(this,function(f){switch(f.label){case 0:e=[{command:y(function(){return tE.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return tE.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return tE.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);a=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];i=o.value,c=i.command,s=i.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,eP("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();J.warn("Installation attempt failed: ".concat(s)),J.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;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 eg.apply(this,arguments)}y(ev,"installDependencies");function eh(e,t){return em.apply(this,arguments)}function em(){em=r(function(e,t){var n,r,a,o,i,u,l,d,p,v,g;return f(this,function(f){switch(f.label){case 0:if(!ec(tm.PACKAGE_JSON)){J.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ed(e,c({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ev()];case 3:r=f.sent();f.label=4;case 4:r;o=true,i=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();f.label=6;case 6:if(!!(o=(d=l.next()).done))return[3,9];p=d.value;return[4,p()];case 7:f.sent();f.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:v=f.sent();i=true;u=v;return[3,12];case 11:try{if(!o&&l.return!=null){l.return()}}finally{if(i){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw J.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return em.apply(this,arguments)}y(eh,"setupPackages");var ey=E(require("node-persist"),1);var eI=P();function eb(){return eE.apply(this,arguments)}function eE(){eE=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=ey.default.defaultInstance;if(e)return[3,2];return[4,ey.default.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 eE.apply(this,arguments)}y(eb,"initNodePersist");var eO={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eb()];case 1:r.sent();return[4,ey.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(J.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eb()];case 1:r.sent();return[4,ey.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();J.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eb()];case 1:n.sent();return[4,ey.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();J.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eb()];case 1:n.sent();return[4,ey.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(J.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(J.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eI.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(J.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ew=P(),eC=F.promisify(A.exec);function eS(e){return"error_list:".concat(e)}y(eS,"getErrorListKey");function eT(e){return e_.apply(this,arguments)}function e_(){e_=r(function(e){var t,n,a;return f(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eS(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eO.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eO.getLogLink(n)];case 1:e=t.sent();e&&J.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:a=o.sent();J.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})});return e_.apply(this,arguments)}y(eT,"saveErrorListToStorage");function eG(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,s,u,l,f;var d=a.exec(e)||[],p=o.exec(e)||[],v=i.exec(e)||[];var g,h,m,y,I,b;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===U.Error?U.Error:U.Warning,message:(g=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&g!==void 0?g:"",rule:(h=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(m=p===null||p===void 0?void 0:p[1])!==null&&m!==void 0?m:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===U.Error?U.Error:U.Warning,message:(y=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):v.length?t.push({file:"commitlint",type:U.Error,message:(I=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",rule:(b=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&b!==void 0?b:""}):n.push(e.trim())}}),t.length&&eT(t),ew.DEBUG&&n.length&&(J.warn("Unmatched lines:"),n.forEach(function(e){return J.info(" ".concat(e))}))}y(eG,"parseTextErrors");function eN(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,i=e.ruleId,c=e.message;n.push({type:r===2?U.Error:U.Warning,file:t,position:"".concat(a,":").concat(o),rule:i,message:c})})}),n.length&&eT(n)}catch(t){eG(e)}}y(eN,"parseCommandOutput");function eR(e){return ek.apply(this,arguments)}function ek(){ek=r(function(e){var t,n,r,a,o,i,c,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eN;n=new AbortController;M.default.on("SIGINT",function(){J.warn("Process interrupted. Terminating..."),n.abort(),M.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eC(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:i=f.sent();c=i.stdout,s=i.stderr,u=i.message;[c,s].forEach(function(e){return e&&t(e)}),!s&&!c&&J.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return ek.apply(this,arguments)}y(eR,"executeCommand");function eL(e){return{raw:!0,cmd:e}}y(eL,"rawCommand");function ej(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(ts," ").concat(eY," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(ts," ").concat(to," ").concat(e3," ").concat(e):"".concat(ts," ").concat(e2," ").concat(e)}y(ej,"formatCLI");function eD(e,t){return typeof e=="function"?ej(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ej(e,t):e}y(eD,"formatCommand");function eP(e,t){return ex.apply(this,arguments)}function ex(){ex=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);J.start("".concat(e)),ew.DEBUG&&J.info("→ ".concat(t));return[4,eR(t)];case 1:r.sent(),J.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw J.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ex.apply(this,arguments)}y(eP,"runCommand");var eA=require("path");var eM=P();function eF(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eA.resolve).apply(this,[eM.CWD].concat(s(t)))}y(eF,"resolveWorkingPath");function eU(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eA.join).apply(this,s(t))}y(eU,"join");var eq=P(),eK=eq.CWD,eY="@cyberskill/shared",eB="node_modules",eW="dist",eJ="package.json",eH="package-lock.json",e$="tsconfig.json",eV=".gitignore",ez=".simple-git-hooks.json",eQ="pnpm-lock.yaml",eX=".git/hooks/",eZ=".git/COMMIT_EDITMSG",e0=".migrate-mongo.config.js",e1=eU(eK,eB,eY,eW),e2="cyberskill",e3="src/nodejs/cli/index.ts",e4="eslint",e5="eslint",e6="vitest",e7="playwright",e8="vitest",e9="@commitlint/cli",te="commitlint",tt="lint-staged",tn="lint-staged",tr="typescript",ta="tsc",to="tsx",ti="git",tc="pnpm",ts="pnpm exec",tu="simple-git-hooks",tl="simple-git-hooks",tf="@eslint/config-inspector",td="eslint-config-inspector",tp="node-modules-inspector",tv="node-modules-inspector",tg="migrate-mongo",th="./node_modules/migrate-mongo/bin/migrate-mongo",tm={CYBERSKILL_DIRECTORY:e1,WORKING_DIRECTORY:eK,TS_CONFIG:eF(e$),GIT_IGNORE:eF(eV),GIT_HOOK:eF(eX),GIT_COMMIT_MSG:eF(eZ),SIMPLE_GIT_HOOKS_JSON:eF(ez),PACKAGE_JSON:eF(eJ),PACKAGE_LOCK_JSON:eF(eH),PNPM_LOCK_YAML:eF(eQ),NODE_MODULES:eF(eB),MIGRATE_MONGO_CONFIG:eF(e0),LINT_STAGED_CONFIG:eF("".concat(e1,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eF("".concat(e1,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eF("".concat(e1,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eF("".concat(e1,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eF("".concat(e1,"/react/vitest/vitest.e2e.js"))};function ty(e,t,n){return tI.apply(this,arguments)}function tI(){tI=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case x.CLI:return[3,1];case x.STRING:return[3,3]}return[3,4];case 1:return[4,eh(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eD(eL("".concat(ts," ").concat(n))))];case 3:return[2,eD(eL(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tI.apply(this,arguments)}y(ty,"buildCommand");function tb(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,ty(e,t,n)]})})}y(tb,"commandFactory");var tE={simpleGitHooks:tb(x.CLI,tu,tl),eslintInspect:tb(x.CLI,tf,td),nodeModulesInspect:tb(x.CLI,tp,tv),eslintCheck:tb(x.CLI,e4,"".concat(e5," ").concat(tm.WORKING_DIRECTORY)),eslintFix:tb(x.CLI,e4,"".concat(e5," ").concat(tm.WORKING_DIRECTORY," --fix")),typescriptCheck:tb(x.CLI,tr,"".concat(ta," -p ").concat(tm.TS_CONFIG," --noEmit")),configureGitHook:tb(x.STRING,"".concat(ti," config core.hooksPath ").concat(tm.GIT_HOOK)),testUnit:tb(x.CLI,e6,"".concat(e8," --config ").concat(tm.UNIT_TEST_CONFIG)),testE2e:tb(x.CLI,"".concat(e6," ").concat(e7),"".concat(e8," --config ").concat(tm.E2E_TEST_CONFIG)),mongoMigrateCreate:y(function(e){return tb(x.CLI,tg,"".concat(to," ").concat(th," create ").concat(e," -f ").concat(tm.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tb(x.CLI,tg,"".concat(to," ").concat(th," up -f ").concat(tm.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tb(x.CLI,tg,"".concat(to," ").concat(th," down -f ").concat(tm.MIGRATE_MONGO_CONFIG)),commitLint:tb(x.CLI,e9,"".concat(te," --edit ").concat(tm.GIT_COMMIT_MSG," --config ").concat(tm.COMMITLINT_CONFIG)),lintStaged:tb(x.CLI,tt,"".concat(tn," --config ").concat(tm.LINT_STAGED_CONFIG)),stageBuildDirectory:tb(x.STRING,"".concat(ti," add ").concat(eW)),build:tb(x.STRING,"".concat(tc," run build")),pnpmInstallStandard:tb(x.STRING,"".concat(tc," install")),pnpmInstallLegacy:tb(x.STRING,"".concat(tc," install --legacy-peer-deps")),pnpmInstallForce:tb(x.STRING,"".concat(tc," install --force"))};function tO(e){return(0,G.defineConfig)(c({plugins:[(0,_.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tm.UNIT_TEST_SETUP_CONFIG]}},e))}y(tO,"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(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,c){try{var i=e[a](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var c=e.apply(t,r);function i(e){n(c,o,a,i,s,"next",e)}function s(e){n(c,o,a,i,s,"throw",e)}i(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function s(e){return t(e)||a(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(a=0)),a)try{if(n=1,r&&(o=i[0]&2?r["return"]:i[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;if(r=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:a.label++;return{value:i[1],done:false};case 5:a.label++;r=i[1];i=[0];continue;case 7:i=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){a=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(i[0]===6&&a.label<o[1]){a.label=o[1];o=i;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(i);break}if(o[2])a.ops.pop();a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e];r=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.defineProperty;var d=function(e,t){return p(e,"name",{value:t,configurable:!0})};import m from"@vitejs/plugin-react-swc";import{defineConfig as g}from"vitest/config";function v(e){return g(i({plugins:[m()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}d(v,"vitestE2E");import h from"@vitejs/plugin-react-swc";import{defineConfig as y}from"vitest/config";var I=".cyberskill-storage";import b from"dotenv";import{bool as E,cleanEnv as C,str as S}from"envalid";import w from"node:os";import O from"node:path";import T from"node:process";b.config();function _(){var e={DEBUG:T.env.DEBUG||!1,CWD:T.env.CWD||T.cwd(),CYBERSKILL_STORAGE_DIRECTORY:T.env.CYBERSKILL_STORAGE_DIRECTORY||O.join(w.homedir(),I)};return C(e,{DEBUG:E(),CWD:S(),CYBERSKILL_STORAGE_DIRECTORY:S()})}d(_,"getEnv");var G=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as N}from"node:child_process";import L from"node:process";import*as R from"node:util";var k=function(e){return e.Error="error",e.Warning="warning",e}({});import D from"chalk";import j from"consola";import{GraphQLError as P}from"graphql";var A=_();A.DEBUG||(j.level=4);function x(e){var t=D[e];return typeof t=="function"?t:D.green}d(x,"chalkKeyword");var F={silent:j.silent,level:j.level,fatal:j.fatal,error:j.error,warn:j.warn,log:j.log,info:j.info,success:j.success,ready:j.ready,start:j.start,box:j.box,debug:j.debug,trace:j.trace,verbose:j.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){j.box(D.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;j.log("".concat(D.gray("File:")," ").concat(D.blue("".concat(t).concat(r?":".concat(r):"")))),o&&j.log(" ".concat(x(n)("Rule:")," ").concat(o)),j.log(" ".concat(x(n)("Message:")," ").concat(a))}),j.box(x(n)("".concat(e," : ").concat(t.length))),j.log(D.gray("─".repeat(40)))}};var M={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import U from"node-fetch";import K from"fs-extra";var Y=K.readFileSync,B=K.writeFileSync,W=K.pathExistsSync,J=K.appendFileSync,H=K.copySync,$=K.removeSync,q=K.statSync,Q=K.readJsonSync,V=K.writeJsonSync;function z(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return W(e)})}d(z,"existsSync");var X=_();function Z(e){var t=eR(X.CWD,ex);if(!z(t))return!1;try{var n=Q(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in a,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return F.warn("Failed to read package.json: ".concat(e.message)),!1}}d(Z,"getPackage");function ee(e){return et.apply(this,arguments)}function et(){et=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,U("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 F.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return et.apply(this,arguments)}d(ee,"getLatestPackageVersion");function en(e,t){return er.apply(this,arguments)}function er(){er=r(function(e,t){var n,r,o,a,c,s,u,l,p,d,m,g,v,h,y,I,b,E,C,S,w;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=Z(e);if(!n)return[2,i({},M)];u=n.path,l=n.file,p=n.isCurrentProject,d=n.isDepend,m=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},v=(o=l.devDependencies)!==null&&o!==void 0?o:{},h=p?(a=l.version)!==null&&a!==void 0?a:"0.0.0":d?(c=g[e])!==null&&c!==void 0?c:"0.0.0":m?(s=v[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!p)return[3,1];b=h;return[3,3];case 1:return[4,ee(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=p||h===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;C=d?"dependencies":m?"devDependencies":null;C&&((E=l[C])===null||E===void 0?void 0:E[e])!==y&&(l[C]=(S=l[C])!==null&&S!==void 0?S:{},l[C][e]=y,V(u,l),F.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:p,installedPath:u,file:l,isUpToDate:I}];case 4:w=f.sent();return[2,(F.error('Error checking package "'.concat(e,'": ').concat(w.message)),i({},M))];case 5:return[2]}})});return er.apply(this,arguments)}d(en,"checkPackage");function eo(){return ea.apply(this,arguments)}function ea(){ea=r(function(){var e,t,n,r,o,a,c,i,s,u,l,p;return f(this,function(f){switch(f.label){case 0:e=[{command:d(function(){return tp.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:d(function(){return tp.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:d(function(){return tp.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,eO("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();F.warn("Installation attempt failed: ".concat(s)),F.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:p=f.sent();n=true;r=p;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ea.apply(this,arguments)}d(eo,"installDependencies");function ec(e,t){return ei.apply(this,arguments)}function ei(){ei=r(function(e,t){var n,r,o,a,c,u,l,p,d,m,g;return f(this,function(f){switch(f.label){case 0:if(!z(ts.PACKAGE_JSON)){F.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return en(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eo()];case 3:r=f.sent();f.label=4;case 4:r;a=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(p=l.next()).done))return[3,9];d=p.value;return[4,d()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:m=f.sent();c=true;u=m;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw F.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return ei.apply(this,arguments)}d(ec,"setupPackages");import es from"node-persist";var eu=_();function el(){return ef.apply(this,arguments)}function ef(){ef=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=es.defaultInstance;if(e)return[3,2];return[4,es.init({dir:eu.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 ef.apply(this,arguments)}d(el,"initNodePersist");var ep={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,el()];case 1:r.sent();return[4,es.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(F.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,el()];case 1:r.sent();return[4,es.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();F.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,el()];case 1:n.sent();return[4,es.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();F.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,el()];case 1:n.sent();return[4,es.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(F.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(F.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eu.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(F.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ed=_(),em=R.promisify(N);function eg(e){return"error_list:".concat(e)}d(eg,"getErrorListKey");function ev(e){return eh.apply(this,arguments)}function eh(){eh=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eg(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,ep.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,ep.getLogLink(n)];case 1:e=t.sent();e&&F.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();F.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return eh.apply(this,arguments)}d(ev,"saveErrorListToStorage");function ey(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var p=o.exec(e)||[],d=a.exec(e)||[],m=c.exec(e)||[];var g,v,h,y,I,b;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===k.Error?k.Error:k.Warning,message:(g=p===null||p===void 0?void 0:(i=p[4])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:"",rule:(v=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&v!==void 0?v:""}):d.length?t.push({file:(h=d===null||d===void 0?void 0:d[1])!==null&&h!==void 0?h:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===k.Error?k.Error:k.Warning,message:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:"commitlint",type:k.Error,message:(I=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",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:""}):n.push(e.trim())}}),t.length&&ev(t),ed.DEBUG&&n.length&&(F.warn("Unmatched lines:"),n.forEach(function(e){return F.info(" ".concat(e))}))}d(ey,"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,o=e.line,a=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?k.Error:k.Warning,file:t,position:"".concat(o,":").concat(a),rule:c,message:i})})}),n.length&&ev(n)}catch(t){ey(e)}}d(eI,"parseCommandOutput");function eb(e){return eE.apply(this,arguments)}function eE(){eE=r(function(e){var t,n,r,o,a,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eI;n=new AbortController;L.on("SIGINT",function(){F.warn("Process interrupted. Terminating..."),n.abort(),L.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];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)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&F.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eE.apply(this,arguments)}d(eb,"executeCommand");function eC(e){return{raw:!0,cmd:e}}d(eC,"rawCommand");function eS(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e9," ").concat(ej," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e9," ").concat(e6," ").concat(eq," ").concat(e):"".concat(e9," ").concat(e$," ").concat(e)}d(eS,"formatCLI");function ew(e,t){return typeof e=="function"?eS(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eS(e,t):e}d(ew,"formatCommand");function eO(e,t){return eT.apply(this,arguments)}function eT(){eT=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);F.start("".concat(e)),ed.DEBUG&&F.info("→ ".concat(t));return[4,eb(t)];case 1:r.sent(),F.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw F.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eT.apply(this,arguments)}d(eO,"runCommand");import{join as e_,resolve as eG}from"node:path";var eN=_();function eL(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eG.apply(void 0,[eN.CWD].concat(s(t)))}d(eL,"resolveWorkingPath");function eR(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return e_.apply(void 0,s(t))}d(eR,"join");var ek=_(),eD=ek.CWD,ej="@cyberskill/shared",eP="node_modules",eA="dist",ex="package.json",eF="package-lock.json",eM="tsconfig.json",eU=".gitignore",eK=".simple-git-hooks.json",eY="pnpm-lock.yaml",eB=".git/hooks/",eW=".git/COMMIT_EDITMSG",eJ=".migrate-mongo.config.js",eH=eR(eD,eP,ej,eA),e$="cyberskill",eq="src/nodejs/cli/index.ts",eQ="eslint",eV="eslint",ez="vitest",eX="playwright",eZ="vitest",e0="@commitlint/cli",e1="commitlint",e2="lint-staged",e3="lint-staged",e4="typescript",e5="tsc",e6="tsx",e7="git",e8="pnpm",e9="pnpm exec",te="simple-git-hooks",tt="simple-git-hooks",tn="@eslint/config-inspector",tr="eslint-config-inspector",to="node-modules-inspector",ta="node-modules-inspector",tc="migrate-mongo",ti="./node_modules/migrate-mongo/bin/migrate-mongo",ts={CYBERSKILL_DIRECTORY:eH,WORKING_DIRECTORY:eD,TS_CONFIG:eL(eM),GIT_IGNORE:eL(eU),GIT_HOOK:eL(eB),GIT_COMMIT_MSG:eL(eW),SIMPLE_GIT_HOOKS_JSON:eL(eK),PACKAGE_JSON:eL(ex),PACKAGE_LOCK_JSON:eL(eF),PNPM_LOCK_YAML:eL(eY),NODE_MODULES:eL(eP),MIGRATE_MONGO_CONFIG:eL(eJ),LINT_STAGED_CONFIG:eL("".concat(eH,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eL("".concat(eH,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eL("".concat(eH,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eL("".concat(eH,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eL("".concat(eH,"/react/vitest/vitest.e2e.js"))};function tu(e,t,n){return tl.apply(this,arguments)}function tl(){tl=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case G.CLI:return[3,1];case G.STRING:return[3,3]}return[3,4];case 1:return[4,ec(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ew(eC("".concat(e9," ").concat(n))))];case 3:return[2,ew(eC(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tl.apply(this,arguments)}d(tu,"buildCommand");function tf(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,tu(e,t,n)]})})}d(tf,"commandFactory");var tp={simpleGitHooks:tf(G.CLI,te,tt),eslintInspect:tf(G.CLI,tn,tr),nodeModulesInspect:tf(G.CLI,to,ta),eslintCheck:tf(G.CLI,eQ,"".concat(eV," ").concat(ts.WORKING_DIRECTORY)),eslintFix:tf(G.CLI,eQ,"".concat(eV," ").concat(ts.WORKING_DIRECTORY," --fix")),typescriptCheck:tf(G.CLI,e4,"".concat(e5," -p ").concat(ts.TS_CONFIG," --noEmit")),configureGitHook:tf(G.STRING,"".concat(e7," config core.hooksPath ").concat(ts.GIT_HOOK)),testUnit:tf(G.CLI,ez,"".concat(eZ," --config ").concat(ts.UNIT_TEST_CONFIG)),testE2e:tf(G.CLI,"".concat(ez," ").concat(eX),"".concat(eZ," --config ").concat(ts.E2E_TEST_CONFIG)),mongoMigrateCreate:d(function(e){return tf(G.CLI,tc,"".concat(e6," ").concat(ti," create ").concat(e," -f ").concat(ts.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tf(G.CLI,tc,"".concat(e6," ").concat(ti," up -f ").concat(ts.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tf(G.CLI,tc,"".concat(e6," ").concat(ti," down -f ").concat(ts.MIGRATE_MONGO_CONFIG)),commitLint:tf(G.CLI,e0,"".concat(e1," --edit ").concat(ts.GIT_COMMIT_MSG," --config ").concat(ts.COMMITLINT_CONFIG)),lintStaged:tf(G.CLI,e2,"".concat(e3," --config ").concat(ts.LINT_STAGED_CONFIG)),stageBuildDirectory:tf(G.STRING,"".concat(e7," add ").concat(eA)),build:tf(G.STRING,"".concat(e8," run build")),pnpmInstallStandard:tf(G.STRING,"".concat(e8," install")),pnpmInstallLegacy:tf(G.STRING,"".concat(e8," install --legacy-peer-deps")),pnpmInstallForce:tf(G.STRING,"".concat(e8," install --force"))};function td(e){return y(i({plugins:[h()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[ts.UNIT_TEST_SETUP_CONFIG]}},e))}d(td,"vitestUnit");export{v as vitestE2E,td as vitestUnit};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,c){try{var i=e[a](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var c=e.apply(t,r);function i(e){n(c,o,a,i,s,"next",e)}function s(e){n(c,o,a,i,s,"throw",e)}i(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function s(e){return t(e)||a(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(a=0)),a)try{if(n=1,r&&(o=i[0]&2?r["return"]:i[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;if(r=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:a.label++;return{value:i[1],done:false};case 5:a.label++;r=i[1];i=[0];continue;case 7:i=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){a=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(i[0]===6&&a.label<o[1]){a.label=o[1];o=i;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(i);break}if(o[2])a.ops.pop();a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e];r=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.defineProperty;var d=function(e,t){return p(e,"name",{value:t,configurable:!0})};import m from"@vitejs/plugin-react-swc";import{defineConfig as g}from"vitest/config";function v(e){return g(i({plugins:[m()],test:{include:["**/*.test.e2e.?(c|m)[jt]s?(x)"],browser:{enabled:!0,provider:"playwright",instances:[{browser:"chromium"},{browser:"firefox"},{browser:"webkit"}]}}},e))}d(v,"vitestE2E");import h from"@vitejs/plugin-react-swc";import{defineConfig as y}from"vitest/config";var I=".cyberskill-storage";import b from"dotenv";import{bool as E,cleanEnv as C,str as S}from"envalid";import w from"node:os";import O from"node:path";import T from"node:process";b.config();function _(){var e={DEBUG:T.env.DEBUG||!1,CWD:T.env.CWD||T.cwd(),CYBERSKILL_STORAGE_DIRECTORY:T.env.CYBERSKILL_STORAGE_DIRECTORY||O.join(w.homedir(),I)};return C(e,{DEBUG:E(),CWD:S(),CYBERSKILL_STORAGE_DIRECTORY:S()})}d(_,"getEnv");var G=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as N}from"node:child_process";import L from"node:process";import*as R from"node:util";var k=function(e){return e.Error="error",e.Warning="warning",e}({});import D from"chalk";import j from"consola";import{GraphQLError as P}from"graphql";var A=_();A.DEBUG||(j.level=4);function x(e){var t=D[e];return typeof t=="function"?t:D.green}d(x,"chalkKeyword");var F={silent:j.silent,level:j.level,fatal:j.fatal,error:j.error,warn:j.warn,log:j.log,info:j.info,success:j.success,ready:j.ready,start:j.start,box:j.box,debug:j.debug,trace:j.trace,verbose:j.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){j.box(D.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;j.log("".concat(D.gray("File:")," ").concat(D.blue("".concat(t).concat(r?":".concat(r):"")))),o&&j.log(" ".concat(x(n)("Rule:")," ").concat(o)),j.log(" ".concat(x(n)("Message:")," ").concat(a))}),j.box(x(n)("".concat(e," : ").concat(t.length))),j.log(D.gray("─".repeat(40)))}};var M={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import U from"node-fetch";import K from"fs-extra";var Y=K.appendFileSync,B=K.lstatSync,W=K.mkdirSync,J=K.readFileSync,H=K.unlinkSync,$=K.writeFileSync,q=K.statSync,Q=K.readJsonSync,V=K.writeJsonSync;function z(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return K.pathExistsSync(e)})}d(z,"pathExistsSync");var X=_();function Z(e){var t=eR(X.CWD,ex);if(!z(t))return!1;try{var n=Q(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in a,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return F.warn("Failed to read package.json: ".concat(e.message)),!1}}d(Z,"getPackage");function ee(e){return et.apply(this,arguments)}function et(){et=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,U("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 F.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return et.apply(this,arguments)}d(ee,"getLatestPackageVersion");function en(e,t){return er.apply(this,arguments)}function er(){er=r(function(e,t){var n,r,o,a,c,s,u,l,p,d,m,g,v,h,y,I,b,E,C,S,w;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=Z(e);if(!n)return[2,i({},M)];u=n.path,l=n.file,p=n.isCurrentProject,d=n.isDepend,m=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},v=(o=l.devDependencies)!==null&&o!==void 0?o:{},h=p?(a=l.version)!==null&&a!==void 0?a:"0.0.0":d?(c=g[e])!==null&&c!==void 0?c:"0.0.0":m?(s=v[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!p)return[3,1];b=h;return[3,3];case 1:return[4,ee(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=p||h===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;C=d?"dependencies":m?"devDependencies":null;C&&((E=l[C])===null||E===void 0?void 0:E[e])!==y&&(l[C]=(S=l[C])!==null&&S!==void 0?S:{},l[C][e]=y,V(u,l),F.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:p,installedPath:u,file:l,isUpToDate:I}];case 4:w=f.sent();return[2,(F.error('Error checking package "'.concat(e,'": ').concat(w.message)),i({},M))];case 5:return[2]}})});return er.apply(this,arguments)}d(en,"checkPackage");function eo(){return ea.apply(this,arguments)}function ea(){ea=r(function(){var e,t,n,r,o,a,c,i,s,u,l,p;return f(this,function(f){switch(f.label){case 0:e=[{command:d(function(){return tp.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:d(function(){return tp.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:d(function(){return tp.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,eO("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();F.warn("Installation attempt failed: ".concat(s)),F.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:p=f.sent();n=true;r=p;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ea.apply(this,arguments)}d(eo,"installDependencies");function ec(e,t){return ei.apply(this,arguments)}function ei(){ei=r(function(e,t){var n,r,o,a,c,u,l,p,d,m,g;return f(this,function(f){switch(f.label){case 0:if(!z(ts.PACKAGE_JSON)){F.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return en(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eo()];case 3:r=f.sent();f.label=4;case 4:r;a=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(p=l.next()).done))return[3,9];d=p.value;return[4,d()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:m=f.sent();c=true;u=m;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw F.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return ei.apply(this,arguments)}d(ec,"setupPackages");import es from"node-persist";var eu=_();function el(){return ef.apply(this,arguments)}function ef(){ef=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=es.defaultInstance;if(e)return[3,2];return[4,es.init({dir:eu.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 ef.apply(this,arguments)}d(el,"initNodePersist");var ep={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,el()];case 1:r.sent();return[4,es.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(F.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,el()];case 1:r.sent();return[4,es.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();F.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,el()];case 1:n.sent();return[4,es.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();F.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,el()];case 1:n.sent();return[4,es.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(F.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(F.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eu.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(F.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ed=_(),em=R.promisify(N);function eg(e){return"error_list:".concat(e)}d(eg,"getErrorListKey");function ev(e){return eh.apply(this,arguments)}function eh(){eh=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eg(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,ep.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,ep.getLogLink(n)];case 1:e=t.sent();e&&F.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();F.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return eh.apply(this,arguments)}d(ev,"saveErrorListToStorage");function ey(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var p=o.exec(e)||[],d=a.exec(e)||[],m=c.exec(e)||[];var g,v,h,y,I,b;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===k.Error?k.Error:k.Warning,message:(g=p===null||p===void 0?void 0:(i=p[4])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:"",rule:(v=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&v!==void 0?v:""}):d.length?t.push({file:(h=d===null||d===void 0?void 0:d[1])!==null&&h!==void 0?h:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===k.Error?k.Error:k.Warning,message:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:"commitlint",type:k.Error,message:(I=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",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:""}):n.push(e.trim())}}),t.length&&ev(t),ed.DEBUG&&n.length&&(F.warn("Unmatched lines:"),n.forEach(function(e){return F.info(" ".concat(e))}))}d(ey,"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,o=e.line,a=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?k.Error:k.Warning,file:t,position:"".concat(o,":").concat(a),rule:c,message:i})})}),n.length&&ev(n)}catch(t){ey(e)}}d(eI,"parseCommandOutput");function eb(e){return eE.apply(this,arguments)}function eE(){eE=r(function(e){var t,n,r,o,a,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eI;n=new AbortController;L.on("SIGINT",function(){F.warn("Process interrupted. Terminating..."),n.abort(),L.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];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)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&F.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eE.apply(this,arguments)}d(eb,"executeCommand");function eC(e){return{raw:!0,cmd:e}}d(eC,"rawCommand");function eS(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e9," ").concat(ej," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e9," ").concat(e6," ").concat(eq," ").concat(e):"".concat(e9," ").concat(e$," ").concat(e)}d(eS,"formatCLI");function ew(e,t){return typeof e=="function"?eS(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eS(e,t):e}d(ew,"formatCommand");function eO(e,t){return eT.apply(this,arguments)}function eT(){eT=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);F.start("".concat(e)),ed.DEBUG&&F.info("→ ".concat(t));return[4,eb(t)];case 1:r.sent(),F.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw F.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eT.apply(this,arguments)}d(eO,"runCommand");import{join as e_,resolve as eG}from"node:path";var eN=_();function eL(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eG.apply(void 0,[eN.CWD].concat(s(t)))}d(eL,"resolveWorkingPath");function eR(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return e_.apply(void 0,s(t))}d(eR,"join");var ek=_(),eD=ek.CWD,ej="@cyberskill/shared",eP="node_modules",eA="dist",ex="package.json",eF="package-lock.json",eM="tsconfig.json",eU=".gitignore",eK=".simple-git-hooks.json",eY="pnpm-lock.yaml",eB=".git/hooks/",eW=".git/COMMIT_EDITMSG",eJ=".migrate-mongo.config.js",eH=eR(eD,eP,ej,eA),e$="cyberskill",eq="src/nodejs/cli/index.ts",eQ="eslint",eV="eslint",ez="vitest",eX="playwright",eZ="vitest",e0="@commitlint/cli",e1="commitlint",e2="lint-staged",e3="lint-staged",e4="typescript",e5="tsc",e6="tsx",e7="git",e8="pnpm",e9="pnpm exec",te="simple-git-hooks",tt="simple-git-hooks",tn="@eslint/config-inspector",tr="eslint-config-inspector",to="node-modules-inspector",ta="node-modules-inspector",tc="migrate-mongo",ti="./node_modules/migrate-mongo/bin/migrate-mongo",ts={CYBERSKILL_DIRECTORY:eH,WORKING_DIRECTORY:eD,TS_CONFIG:eL(eM),GIT_IGNORE:eL(eU),GIT_HOOK:eL(eB),GIT_COMMIT_MSG:eL(eW),SIMPLE_GIT_HOOKS_JSON:eL(eK),PACKAGE_JSON:eL(ex),PACKAGE_LOCK_JSON:eL(eF),PNPM_LOCK_YAML:eL(eY),NODE_MODULES:eL(eP),MIGRATE_MONGO_CONFIG:eL(eJ),LINT_STAGED_CONFIG:eL("".concat(eH,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eL("".concat(eH,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eL("".concat(eH,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eL("".concat(eH,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eL("".concat(eH,"/react/vitest/vitest.e2e.js"))};function tu(e,t,n){return tl.apply(this,arguments)}function tl(){tl=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case G.CLI:return[3,1];case G.STRING:return[3,3]}return[3,4];case 1:return[4,ec(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ew(eC("".concat(e9," ").concat(n))))];case 3:return[2,ew(eC(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tl.apply(this,arguments)}d(tu,"buildCommand");function tf(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,tu(e,t,n)]})})}d(tf,"commandFactory");var tp={simpleGitHooks:tf(G.CLI,te,tt),eslintInspect:tf(G.CLI,tn,tr),nodeModulesInspect:tf(G.CLI,to,ta),eslintCheck:tf(G.CLI,eQ,"".concat(eV," ").concat(ts.WORKING_DIRECTORY)),eslintFix:tf(G.CLI,eQ,"".concat(eV," ").concat(ts.WORKING_DIRECTORY," --fix")),typescriptCheck:tf(G.CLI,e4,"".concat(e5," -p ").concat(ts.TS_CONFIG," --noEmit")),configureGitHook:tf(G.STRING,"".concat(e7," config core.hooksPath ").concat(ts.GIT_HOOK)),testUnit:tf(G.CLI,ez,"".concat(eZ," --config ").concat(ts.UNIT_TEST_CONFIG)),testE2e:tf(G.CLI,"".concat(ez," ").concat(eX),"".concat(eZ," --config ").concat(ts.E2E_TEST_CONFIG)),mongoMigrateCreate:d(function(e){return tf(G.CLI,tc,"".concat(e6," ").concat(ti," create ").concat(e," -f ").concat(ts.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tf(G.CLI,tc,"".concat(e6," ").concat(ti," up -f ").concat(ts.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tf(G.CLI,tc,"".concat(e6," ").concat(ti," down -f ").concat(ts.MIGRATE_MONGO_CONFIG)),commitLint:tf(G.CLI,e0,"".concat(e1," --edit ").concat(ts.GIT_COMMIT_MSG," --config ").concat(ts.COMMITLINT_CONFIG)),lintStaged:tf(G.CLI,e2,"".concat(e3," --config ").concat(ts.LINT_STAGED_CONFIG)),stageBuildDirectory:tf(G.STRING,"".concat(e7," add ").concat(eA)),build:tf(G.STRING,"".concat(e8," run build")),pnpmInstallStandard:tf(G.STRING,"".concat(e8," install")),pnpmInstallLegacy:tf(G.STRING,"".concat(e8," install --legacy-peer-deps")),pnpmInstallForce:tf(G.STRING,"".concat(e8," install --force"))};function td(e){return y(i({plugins:[h()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[ts.UNIT_TEST_SETUP_CONFIG]}},e))}d(td,"vitestUnit");export{v as vitestE2E,td as vitestUnit};
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,a)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(a,o){var c=e.apply(t,r);function i(e){n(c,a,o,i,s,"next",e)}function s(e){n(c,a,o,i,s,"throw",e)}i(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function s(e){return t(e)||o(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(o=0)),o)try{if(n=1,r&&(a=i[0]&2?r["return"]:i[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;if(r=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var d=Object.create;var p=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var y=function(e,t){return p(e,"name",{value:t,configurable:!0})};var I=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},b=function(e,t,n,r){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":u(t))=="object"||typeof t=="function")try{var i=function(){var a=l.value;!m.call(e,a)&&a!==n&&p(e,a,{get:function(){return t[a]},enumerable:!(r=v(t,a))||r.enumerable})};for(var s=g(t)[Symbol.iterator](),l;!(a=(l=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var E=function(e,t,n){return n=e!=null?d(h(e)):{},b(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},O=function(e){return b(p({},"__esModule",{value:!0}),e)};var C={};I(C,{vitestUnit:function(){return tI}});module.exports=O(C);var S=E(require("@vitejs/plugin-react-swc"),1),T=require("vitest/config");var w=".cyberskill-storage";var _=E(require("dotenv"),1),G=require("envalid"),N=E(require("os"),1),R=E(require("path"),1),L=E(require("process"),1);_.default.config();function k(){var e={DEBUG:L.default.env.DEBUG||!1,CWD:L.default.env.CWD||L.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:L.default.env.CYBERSKILL_STORAGE_DIRECTORY||R.default.join(N.default.homedir(),w)};return(0,G.cleanEnv)(e,{DEBUG:(0,G.bool)(),CWD:(0,G.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,G.str)()})}y(k,"getEnv");var j=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var D=require("child_process"),P=E(require("process"),1),A=E(require("util"),1);var M=function(e){return e.Error="error",e.Warning="warning",e}({});var x=E(require("chalk"),1),F=E(require("consola"),1),U=require("graphql");var q=k();q.DEBUG||(F.default.level=4);function K(e){var t=x.default[e];return typeof t=="function"?t:x.default.green}y(K,"chalkKeyword");var Y={silent:F.default.silent,level:F.default.level,fatal:F.default.fatal,error:F.default.error,warn:F.default.warn,log:F.default.log,info:F.default.info,success:F.default.success,ready:F.default.ready,start:F.default.start,box:F.default.box,debug:F.default.debug,trace:F.default.trace,verbose:F.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){F.default.box(x.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;F.default.log("".concat(x.default.gray("File:")," ").concat(x.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&F.default.log(" ".concat(K(n)("Rule:")," ").concat(a)),F.default.log(" ".concat(K(n)("Message:")," ").concat(o))}),F.default.box(K(n)("".concat(e," : ").concat(t.length))),F.default.log(x.default.gray("─".repeat(40)))}};var B={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var W=E(require("node-fetch"),1);var J=E(require("fs-extra"),1),H=require("path");var $=J.default,V=$.readFileSync,z=$.writeFileSync,Q=$.pathExistsSync,X=$.appendFileSync,Z=$.copySync,ee=$.removeSync,et=$.statSync,en=J.default.readJsonSync,er=J.default.writeJsonSync;function ea(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return Q(e)})}y(ea,"existsSync");var eo=k();function ec(e){var t=eM(eo.CWD,eY);if(!ea(t))return!1;try{var n=en(t),r=n.name,a=n.dependencies,o=a===void 0?{}:a,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in o,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return Y.warn("Failed to read package.json: ".concat(e.message)),!1}}y(ec,"getPackage");function ei(e){return es.apply(this,arguments)}function es(){es=r(function(e){var t,n,r,a;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,W.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 Y.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return es.apply(this,arguments)}y(ei,"getLatestPackageVersion");function eu(e,t){return el.apply(this,arguments)}function el(){el=r(function(e,t){var n,r,a,o,c,s,u,l,d,p,v,g,h,m,y,I,b,E,O,C,S;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=ec(e);if(!n)return[2,i({},B)];u=n.path,l=n.file,d=n.isCurrentProject,p=n.isDepend,v=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},h=(a=l.devDependencies)!==null&&a!==void 0?a:{},m=d?(o=l.version)!==null&&o!==void 0?o:"0.0.0":p?(c=g[e])!==null&&c!==void 0?c:"0.0.0":v?(s=h[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!d)return[3,1];b=m;return[3,3];case 1:return[4,ei(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=d||m===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;O=p?"dependencies":v?"devDependencies":null;O&&((E=l[O])===null||E===void 0?void 0:E[e])!==y&&(l[O]=(C=l[O])!==null&&C!==void 0?C:{},l[O][e]=y,er(u,l),Y.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:d,installedPath:u,file:l,isUpToDate:I}];case 4:S=f.sent();return[2,(Y.error('Error checking package "'.concat(e,'": ').concat(S.message)),i({},B))];case 5:return[2]}})});return el.apply(this,arguments)}y(eu,"checkPackage");function ef(){return ed.apply(this,arguments)}function ed(){ed=r(function(){var e,t,n,r,a,o,c,i,s,u,l,d;return f(this,function(f){switch(f.label){case 0:e=[{command:y(function(){return ty.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return ty.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return ty.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);a=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,ek("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();Y.warn("Installation attempt failed: ".concat(s)),Y.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;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 ed.apply(this,arguments)}y(ef,"installDependencies");function ep(e,t){return ev.apply(this,arguments)}function ev(){ev=r(function(e,t){var n,r,a,o,c,u,l,d,p,v,g;return f(this,function(f){switch(f.label){case 0:if(!ea(tv.PACKAGE_JSON)){Y.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eu(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ef()];case 3:r=f.sent();f.label=4;case 4:r;o=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();f.label=6;case 6:if(!!(o=(d=l.next()).done))return[3,9];p=d.value;return[4,p()];case 7:f.sent();f.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:v=f.sent();c=true;u=v;return[3,12];case 11:try{if(!o&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw Y.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return ev.apply(this,arguments)}y(ep,"setupPackages");var eg=E(require("node-persist"),1);var eh=k();function em(){return ey.apply(this,arguments)}function ey(){ey=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=eg.default.defaultInstance;if(e)return[3,2];return[4,eg.default.init({dir:eh.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)}y(em,"initNodePersist");var eI={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,em()];case 1:r.sent();return[4,eg.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(Y.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,em()];case 1:r.sent();return[4,eg.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();Y.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,em()];case 1:n.sent();return[4,eg.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();Y.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,em()];case 1:n.sent();return[4,eg.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(Y.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(Y.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eh.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(Y.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eb=k(),eE=A.promisify(D.exec);function eO(e){return"error_list:".concat(e)}y(eO,"getErrorListKey");function eC(e){return eS.apply(this,arguments)}function eS(){eS=r(function(e){var t,n,a;return f(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eO(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eI.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eI.getLogLink(n)];case 1:e=t.sent();e&&Y.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:a=o.sent();Y.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})});return eS.apply(this,arguments)}y(eC,"saveErrorListToStorage");function eT(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.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var d=a.exec(e)||[],p=o.exec(e)||[],v=c.exec(e)||[];var g,h,m,y,I,b;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===M.Error?M.Error:M.Warning,message:(g=d===null||d===void 0?void 0:(i=d[4])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:"",rule:(h=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(m=p===null||p===void 0?void 0:p[1])!==null&&m!==void 0?m:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===M.Error?M.Error:M.Warning,message:(y=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):v.length?t.push({file:"commitlint",type:M.Error,message:(I=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",rule:(b=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&b!==void 0?b:""}):n.push(e.trim())}}),t.length&&eC(t),eb.DEBUG&&n.length&&(Y.warn("Unmatched lines:"),n.forEach(function(e){return Y.info(" ".concat(e))}))}y(eT,"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,c=e.ruleId,i=e.message;n.push({type:r===2?M.Error:M.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&eC(n)}catch(t){eT(e)}}y(ew,"parseCommandOutput");function e_(e){return eG.apply(this,arguments)}function eG(){eG=r(function(e){var t,n,r,a,o,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ew;n=new AbortController;P.default.on("SIGINT",function(){Y.warn("Process interrupted. Terminating..."),n.abort(),P.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eE(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&Y.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eG.apply(this,arguments)}y(e_,"executeCommand");function eN(e){return{raw:!0,cmd:e}}y(eN,"rawCommand");function eR(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(to," ").concat(eU," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(to," ").concat(tn," ").concat(e0," ").concat(e):"".concat(to," ").concat(eZ," ").concat(e)}y(eR,"formatCLI");function eL(e,t){return typeof e=="function"?eR(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eR(e,t):e}y(eL,"formatCommand");function ek(e,t){return ej.apply(this,arguments)}function ej(){ej=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);Y.start("".concat(e)),eb.DEBUG&&Y.info("→ ".concat(t));return[4,e_(t)];case 1:r.sent(),Y.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw Y.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ej.apply(this,arguments)}y(ek,"runCommand");var eD=require("path");var eP=k();function eA(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eD.resolve).apply(this,[eP.CWD].concat(s(t)))}y(eA,"resolveWorkingPath");function eM(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eD.join).apply(this,s(t))}y(eM,"join");var ex=k(),eF=ex.CWD,eU="@cyberskill/shared",eq="node_modules",eK="dist",eY="package.json",eB="package-lock.json",eW="tsconfig.json",eJ=".gitignore",eH=".simple-git-hooks.json",e$="pnpm-lock.yaml",eV=".git/hooks/",ez=".git/COMMIT_EDITMSG",eQ=".migrate-mongo.config.js",eX=eM(eF,eq,eU,eK),eZ="cyberskill",e0="src/nodejs/cli/index.ts",e1="eslint",e2="eslint",e3="vitest",e4="playwright",e5="vitest",e6="@commitlint/cli",e7="commitlint",e8="lint-staged",e9="lint-staged",te="typescript",tt="tsc",tn="tsx",tr="git",ta="pnpm",to="pnpm exec",tc="simple-git-hooks",ti="simple-git-hooks",ts="@eslint/config-inspector",tu="eslint-config-inspector",tl="node-modules-inspector",tf="node-modules-inspector",td="migrate-mongo",tp="./node_modules/migrate-mongo/bin/migrate-mongo",tv={CYBERSKILL_DIRECTORY:eX,WORKING_DIRECTORY:eF,TS_CONFIG:eA(eW),GIT_IGNORE:eA(eJ),GIT_HOOK:eA(eV),GIT_COMMIT_MSG:eA(ez),SIMPLE_GIT_HOOKS_JSON:eA(eH),PACKAGE_JSON:eA(eY),PACKAGE_LOCK_JSON:eA(eB),PNPM_LOCK_YAML:eA(e$),NODE_MODULES:eA(eq),MIGRATE_MONGO_CONFIG:eA(eQ),LINT_STAGED_CONFIG:eA("".concat(eX,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eA("".concat(eX,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eA("".concat(eX,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eA("".concat(eX,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eA("".concat(eX,"/react/vitest/vitest.e2e.js"))};function tg(e,t,n){return th.apply(this,arguments)}function th(){th=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case j.CLI:return[3,1];case j.STRING:return[3,3]}return[3,4];case 1:return[4,ep(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eL(eN("".concat(to," ").concat(n))))];case 3:return[2,eL(eN(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return th.apply(this,arguments)}y(tg,"buildCommand");function tm(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,tg(e,t,n)]})})}y(tm,"commandFactory");var ty={simpleGitHooks:tm(j.CLI,tc,ti),eslintInspect:tm(j.CLI,ts,tu),nodeModulesInspect:tm(j.CLI,tl,tf),eslintCheck:tm(j.CLI,e1,"".concat(e2," ").concat(tv.WORKING_DIRECTORY)),eslintFix:tm(j.CLI,e1,"".concat(e2," ").concat(tv.WORKING_DIRECTORY," --fix")),typescriptCheck:tm(j.CLI,te,"".concat(tt," -p ").concat(tv.TS_CONFIG," --noEmit")),configureGitHook:tm(j.STRING,"".concat(tr," config core.hooksPath ").concat(tv.GIT_HOOK)),testUnit:tm(j.CLI,e3,"".concat(e5," --config ").concat(tv.UNIT_TEST_CONFIG)),testE2e:tm(j.CLI,"".concat(e3," ").concat(e4),"".concat(e5," --config ").concat(tv.E2E_TEST_CONFIG)),mongoMigrateCreate:y(function(e){return tm(j.CLI,td,"".concat(tn," ").concat(tp," create ").concat(e," -f ").concat(tv.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tm(j.CLI,td,"".concat(tn," ").concat(tp," up -f ").concat(tv.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tm(j.CLI,td,"".concat(tn," ").concat(tp," down -f ").concat(tv.MIGRATE_MONGO_CONFIG)),commitLint:tm(j.CLI,e6,"".concat(e7," --edit ").concat(tv.GIT_COMMIT_MSG," --config ").concat(tv.COMMITLINT_CONFIG)),lintStaged:tm(j.CLI,e8,"".concat(e9," --config ").concat(tv.LINT_STAGED_CONFIG)),stageBuildDirectory:tm(j.STRING,"".concat(tr," add ").concat(eK)),build:tm(j.STRING,"".concat(ta," run build")),pnpmInstallStandard:tm(j.STRING,"".concat(ta," install")),pnpmInstallLegacy:tm(j.STRING,"".concat(ta," install --legacy-peer-deps")),pnpmInstallForce:tm(j.STRING,"".concat(ta," install --force"))};function tI(e){return(0,T.defineConfig)(i({plugins:[(0,S.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tv.UNIT_TEST_SETUP_CONFIG]}},e))}y(tI,"vitestUnit");0&&(module.exports={vitestUnit:vitestUnit});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,a)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(a,o){var c=e.apply(t,r);function i(e){n(c,a,o,i,s,"next",e)}function s(e){n(c,a,o,i,s,"throw",e)}i(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function s(e){return t(e)||o(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(o=0)),o)try{if(n=1,r&&(a=i[0]&2?r["return"]:i[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;if(r=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var d=Object.create;var p=Object.defineProperty;var v=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var y=function(e,t){return p(e,"name",{value:t,configurable:!0})};var I=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},b=function(e,t,n,r){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":u(t))=="object"||typeof t=="function")try{var i=function(){var a=l.value;!m.call(e,a)&&a!==n&&p(e,a,{get:function(){return t[a]},enumerable:!(r=v(t,a))||r.enumerable})};for(var s=g(t)[Symbol.iterator](),l;!(a=(l=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var E=function(e,t,n){return n=e!=null?d(h(e)):{},b(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},O=function(e){return b(p({},"__esModule",{value:!0}),e)};var C={};I(C,{vitestUnit:function(){return tI}});module.exports=O(C);var S=E(require("@vitejs/plugin-react-swc"),1),T=require("vitest/config");var w=".cyberskill-storage";var _=E(require("dotenv"),1),G=require("envalid"),N=E(require("os"),1),R=E(require("path"),1),L=E(require("process"),1);_.default.config();function k(){var e={DEBUG:L.default.env.DEBUG||!1,CWD:L.default.env.CWD||L.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:L.default.env.CYBERSKILL_STORAGE_DIRECTORY||R.default.join(N.default.homedir(),w)};return(0,G.cleanEnv)(e,{DEBUG:(0,G.bool)(),CWD:(0,G.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,G.str)()})}y(k,"getEnv");var j=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var D=require("child_process"),P=E(require("process"),1),A=E(require("util"),1);var M=function(e){return e.Error="error",e.Warning="warning",e}({});var x=E(require("chalk"),1),F=E(require("consola"),1),U=require("graphql");var q=k();q.DEBUG||(F.default.level=4);function K(e){var t=x.default[e];return typeof t=="function"?t:x.default.green}y(K,"chalkKeyword");var Y={silent:F.default.silent,level:F.default.level,fatal:F.default.fatal,error:F.default.error,warn:F.default.warn,log:F.default.log,info:F.default.info,success:F.default.success,ready:F.default.ready,start:F.default.start,box:F.default.box,debug:F.default.debug,trace:F.default.trace,verbose:F.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){F.default.box(x.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;F.default.log("".concat(x.default.gray("File:")," ").concat(x.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&F.default.log(" ".concat(K(n)("Rule:")," ").concat(a)),F.default.log(" ".concat(K(n)("Message:")," ").concat(o))}),F.default.box(K(n)("".concat(e," : ").concat(t.length))),F.default.log(x.default.gray("─".repeat(40)))}};var B={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var W=E(require("node-fetch"),1);var J=E(require("fs-extra"),1),H=require("path");var $=J.default,V=$.appendFileSync,z=$.lstatSync,Q=$.mkdirSync,X=$.readFileSync,Z=$.unlinkSync,ee=$.writeFileSync,et=$.statSync,en=J.default.readJsonSync,er=J.default.writeJsonSync;function ea(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return J.default.pathExistsSync(e)})}y(ea,"pathExistsSync");var eo=k();function ec(e){var t=eM(eo.CWD,eY);if(!ea(t))return!1;try{var n=en(t),r=n.name,a=n.dependencies,o=a===void 0?{}:a,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in o,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return Y.warn("Failed to read package.json: ".concat(e.message)),!1}}y(ec,"getPackage");function ei(e){return es.apply(this,arguments)}function es(){es=r(function(e){var t,n,r,a;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,W.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 Y.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return es.apply(this,arguments)}y(ei,"getLatestPackageVersion");function eu(e,t){return el.apply(this,arguments)}function el(){el=r(function(e,t){var n,r,a,o,c,s,u,l,d,p,v,g,h,m,y,I,b,E,O,C,S;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=ec(e);if(!n)return[2,i({},B)];u=n.path,l=n.file,d=n.isCurrentProject,p=n.isDepend,v=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},h=(a=l.devDependencies)!==null&&a!==void 0?a:{},m=d?(o=l.version)!==null&&o!==void 0?o:"0.0.0":p?(c=g[e])!==null&&c!==void 0?c:"0.0.0":v?(s=h[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!d)return[3,1];b=m;return[3,3];case 1:return[4,ei(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=d||m===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;O=p?"dependencies":v?"devDependencies":null;O&&((E=l[O])===null||E===void 0?void 0:E[e])!==y&&(l[O]=(C=l[O])!==null&&C!==void 0?C:{},l[O][e]=y,er(u,l),Y.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:d,installedPath:u,file:l,isUpToDate:I}];case 4:S=f.sent();return[2,(Y.error('Error checking package "'.concat(e,'": ').concat(S.message)),i({},B))];case 5:return[2]}})});return el.apply(this,arguments)}y(eu,"checkPackage");function ef(){return ed.apply(this,arguments)}function ed(){ed=r(function(){var e,t,n,r,a,o,c,i,s,u,l,d;return f(this,function(f){switch(f.label){case 0:e=[{command:y(function(){return ty.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return ty.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return ty.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);a=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,ek("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();Y.warn("Installation attempt failed: ".concat(s)),Y.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;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 ed.apply(this,arguments)}y(ef,"installDependencies");function ep(e,t){return ev.apply(this,arguments)}function ev(){ev=r(function(e,t){var n,r,a,o,c,u,l,d,p,v,g;return f(this,function(f){switch(f.label){case 0:if(!ea(tv.PACKAGE_JSON)){Y.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eu(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ef()];case 3:r=f.sent();f.label=4;case 4:r;o=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();f.label=6;case 6:if(!!(o=(d=l.next()).done))return[3,9];p=d.value;return[4,p()];case 7:f.sent();f.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:v=f.sent();c=true;u=v;return[3,12];case 11:try{if(!o&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw Y.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return ev.apply(this,arguments)}y(ep,"setupPackages");var eg=E(require("node-persist"),1);var eh=k();function em(){return ey.apply(this,arguments)}function ey(){ey=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=eg.default.defaultInstance;if(e)return[3,2];return[4,eg.default.init({dir:eh.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)}y(em,"initNodePersist");var eI={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,em()];case 1:r.sent();return[4,eg.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(Y.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,em()];case 1:r.sent();return[4,eg.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();Y.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,em()];case 1:n.sent();return[4,eg.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();Y.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,em()];case 1:n.sent();return[4,eg.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(Y.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(Y.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eh.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(Y.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eb=k(),eE=A.promisify(D.exec);function eO(e){return"error_list:".concat(e)}y(eO,"getErrorListKey");function eC(e){return eS.apply(this,arguments)}function eS(){eS=r(function(e){var t,n,a;return f(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eO(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eI.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eI.getLogLink(n)];case 1:e=t.sent();e&&Y.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:a=o.sent();Y.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})});return eS.apply(this,arguments)}y(eC,"saveErrorListToStorage");function eT(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.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var d=a.exec(e)||[],p=o.exec(e)||[],v=c.exec(e)||[];var g,h,m,y,I,b;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===M.Error?M.Error:M.Warning,message:(g=d===null||d===void 0?void 0:(i=d[4])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:"",rule:(h=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(m=p===null||p===void 0?void 0:p[1])!==null&&m!==void 0?m:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===M.Error?M.Error:M.Warning,message:(y=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):v.length?t.push({file:"commitlint",type:M.Error,message:(I=v===null||v===void 0?void 0:(l=v[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",rule:(b=v===null||v===void 0?void 0:(f=v[2])===null||f===void 0?void 0:f.trim())!==null&&b!==void 0?b:""}):n.push(e.trim())}}),t.length&&eC(t),eb.DEBUG&&n.length&&(Y.warn("Unmatched lines:"),n.forEach(function(e){return Y.info(" ".concat(e))}))}y(eT,"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,c=e.ruleId,i=e.message;n.push({type:r===2?M.Error:M.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&eC(n)}catch(t){eT(e)}}y(ew,"parseCommandOutput");function e_(e){return eG.apply(this,arguments)}function eG(){eG=r(function(e){var t,n,r,a,o,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ew;n=new AbortController;P.default.on("SIGINT",function(){Y.warn("Process interrupted. Terminating..."),n.abort(),P.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eE(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&Y.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eG.apply(this,arguments)}y(e_,"executeCommand");function eN(e){return{raw:!0,cmd:e}}y(eN,"rawCommand");function eR(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(to," ").concat(eU," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(to," ").concat(tn," ").concat(e0," ").concat(e):"".concat(to," ").concat(eZ," ").concat(e)}y(eR,"formatCLI");function eL(e,t){return typeof e=="function"?eR(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eR(e,t):e}y(eL,"formatCommand");function ek(e,t){return ej.apply(this,arguments)}function ej(){ej=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);Y.start("".concat(e)),eb.DEBUG&&Y.info("→ ".concat(t));return[4,e_(t)];case 1:r.sent(),Y.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw Y.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ej.apply(this,arguments)}y(ek,"runCommand");var eD=require("path");var eP=k();function eA(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eD.resolve).apply(this,[eP.CWD].concat(s(t)))}y(eA,"resolveWorkingPath");function eM(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eD.join).apply(this,s(t))}y(eM,"join");var ex=k(),eF=ex.CWD,eU="@cyberskill/shared",eq="node_modules",eK="dist",eY="package.json",eB="package-lock.json",eW="tsconfig.json",eJ=".gitignore",eH=".simple-git-hooks.json",e$="pnpm-lock.yaml",eV=".git/hooks/",ez=".git/COMMIT_EDITMSG",eQ=".migrate-mongo.config.js",eX=eM(eF,eq,eU,eK),eZ="cyberskill",e0="src/nodejs/cli/index.ts",e1="eslint",e2="eslint",e3="vitest",e4="playwright",e5="vitest",e6="@commitlint/cli",e7="commitlint",e8="lint-staged",e9="lint-staged",te="typescript",tt="tsc",tn="tsx",tr="git",ta="pnpm",to="pnpm exec",tc="simple-git-hooks",ti="simple-git-hooks",ts="@eslint/config-inspector",tu="eslint-config-inspector",tl="node-modules-inspector",tf="node-modules-inspector",td="migrate-mongo",tp="./node_modules/migrate-mongo/bin/migrate-mongo",tv={CYBERSKILL_DIRECTORY:eX,WORKING_DIRECTORY:eF,TS_CONFIG:eA(eW),GIT_IGNORE:eA(eJ),GIT_HOOK:eA(eV),GIT_COMMIT_MSG:eA(ez),SIMPLE_GIT_HOOKS_JSON:eA(eH),PACKAGE_JSON:eA(eY),PACKAGE_LOCK_JSON:eA(eB),PNPM_LOCK_YAML:eA(e$),NODE_MODULES:eA(eq),MIGRATE_MONGO_CONFIG:eA(eQ),LINT_STAGED_CONFIG:eA("".concat(eX,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eA("".concat(eX,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eA("".concat(eX,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eA("".concat(eX,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eA("".concat(eX,"/react/vitest/vitest.e2e.js"))};function tg(e,t,n){return th.apply(this,arguments)}function th(){th=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case j.CLI:return[3,1];case j.STRING:return[3,3]}return[3,4];case 1:return[4,ep(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eL(eN("".concat(to," ").concat(n))))];case 3:return[2,eL(eN(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return th.apply(this,arguments)}y(tg,"buildCommand");function tm(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,tg(e,t,n)]})})}y(tm,"commandFactory");var ty={simpleGitHooks:tm(j.CLI,tc,ti),eslintInspect:tm(j.CLI,ts,tu),nodeModulesInspect:tm(j.CLI,tl,tf),eslintCheck:tm(j.CLI,e1,"".concat(e2," ").concat(tv.WORKING_DIRECTORY)),eslintFix:tm(j.CLI,e1,"".concat(e2," ").concat(tv.WORKING_DIRECTORY," --fix")),typescriptCheck:tm(j.CLI,te,"".concat(tt," -p ").concat(tv.TS_CONFIG," --noEmit")),configureGitHook:tm(j.STRING,"".concat(tr," config core.hooksPath ").concat(tv.GIT_HOOK)),testUnit:tm(j.CLI,e3,"".concat(e5," --config ").concat(tv.UNIT_TEST_CONFIG)),testE2e:tm(j.CLI,"".concat(e3," ").concat(e4),"".concat(e5," --config ").concat(tv.E2E_TEST_CONFIG)),mongoMigrateCreate:y(function(e){return tm(j.CLI,td,"".concat(tn," ").concat(tp," create ").concat(e," -f ").concat(tv.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tm(j.CLI,td,"".concat(tn," ").concat(tp," up -f ").concat(tv.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tm(j.CLI,td,"".concat(tn," ").concat(tp," down -f ").concat(tv.MIGRATE_MONGO_CONFIG)),commitLint:tm(j.CLI,e6,"".concat(e7," --edit ").concat(tv.GIT_COMMIT_MSG," --config ").concat(tv.COMMITLINT_CONFIG)),lintStaged:tm(j.CLI,e8,"".concat(e9," --config ").concat(tv.LINT_STAGED_CONFIG)),stageBuildDirectory:tm(j.STRING,"".concat(tr," add ").concat(eK)),build:tm(j.STRING,"".concat(ta," run build")),pnpmInstallStandard:tm(j.STRING,"".concat(ta," install")),pnpmInstallLegacy:tm(j.STRING,"".concat(ta," install --legacy-peer-deps")),pnpmInstallForce:tm(j.STRING,"".concat(ta," install --force"))};function tI(e){return(0,T.defineConfig)(i({plugins:[(0,S.default)()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[tv.UNIT_TEST_SETUP_CONFIG]}},e))}y(tI,"vitestUnit");0&&(module.exports={vitestUnit:vitestUnit});
@@ -1 +1 @@
1
- function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,c){try{var i=e[a](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var c=e.apply(t,r);function i(e){n(c,o,a,i,s,"next",e)}function s(e){n(c,o,a,i,s,"throw",e)}i(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function s(e){return t(e)||a(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(a=0)),a)try{if(n=1,r&&(o=i[0]&2?r["return"]:i[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;if(r=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:a.label++;return{value:i[1],done:false};case 5:a.label++;r=i[1];i=[0];continue;case 7:i=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){a=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(i[0]===6&&a.label<o[1]){a.label=o[1];o=i;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(i);break}if(o[2])a.ops.pop();a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e];r=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.defineProperty;var d=function(e,t){return p(e,"name",{value:t,configurable:!0})};import m from"@vitejs/plugin-react-swc";import{defineConfig as g}from"vitest/config";var v=".cyberskill-storage";import h from"dotenv";import{bool as y,cleanEnv as I,str as b}from"envalid";import E from"node:os";import C from"node:path";import S from"node:process";h.config();function O(){var e={DEBUG:S.env.DEBUG||!1,CWD:S.env.CWD||S.cwd(),CYBERSKILL_STORAGE_DIRECTORY:S.env.CYBERSKILL_STORAGE_DIRECTORY||C.join(E.homedir(),v)};return I(e,{DEBUG:y(),CWD:b(),CYBERSKILL_STORAGE_DIRECTORY:b()})}d(O,"getEnv");var T=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as w}from"node:child_process";import _ from"node:process";import*as G from"node:util";var N=function(e){return e.Error="error",e.Warning="warning",e}({});import L from"chalk";import R from"consola";import{GraphQLError as k}from"graphql";var D=O();D.DEBUG||(R.level=4);function j(e){var t=L[e];return typeof t=="function"?t:L.green}d(j,"chalkKeyword");var P={silent:R.silent,level:R.level,fatal:R.fatal,error:R.error,warn:R.warn,log:R.log,info:R.info,success:R.success,ready:R.ready,start:R.start,box:R.box,debug:R.debug,trace:R.trace,verbose:R.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)){R.box(L.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;R.log("".concat(L.gray("File:")," ").concat(L.blue("".concat(t).concat(r?":".concat(r):"")))),o&&R.log(" ".concat(j(n)("Rule:")," ").concat(o)),R.log(" ".concat(j(n)("Message:")," ").concat(a))}),R.box(j(n)("".concat(e," : ").concat(t.length))),R.log(L.gray("─".repeat(40)))}};var A={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import F from"node-fetch";import M from"fs-extra";var x=M.readFileSync,U=M.writeFileSync,K=M.pathExistsSync,Y=M.appendFileSync,B=M.copySync,W=M.removeSync,J=M.statSync,H=M.readJsonSync,$=M.writeJsonSync;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 K(e)})}d(q,"existsSync");var Q=O();function V(e){var t=eG(Q.CWD,ej);if(!q(t))return!1;try{var n=H(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in a,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return P.warn("Failed to read package.json: ".concat(e.message)),!1}}d(V,"getPackage");function z(e){return X.apply(this,arguments)}function X(){X=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,F("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw P.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return X.apply(this,arguments)}d(z,"getLatestPackageVersion");function Z(e,t){return ee.apply(this,arguments)}function ee(){ee=r(function(e,t){var n,r,o,a,c,s,u,l,p,d,m,g,v,h,y,I,b,E,C,S,O;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=V(e);if(!n)return[2,i({},A)];u=n.path,l=n.file,p=n.isCurrentProject,d=n.isDepend,m=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},v=(o=l.devDependencies)!==null&&o!==void 0?o:{},h=p?(a=l.version)!==null&&a!==void 0?a:"0.0.0":d?(c=g[e])!==null&&c!==void 0?c:"0.0.0":m?(s=v[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!p)return[3,1];b=h;return[3,3];case 1:return[4,z(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=p||h===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;C=d?"dependencies":m?"devDependencies":null;C&&((E=l[C])===null||E===void 0?void 0:E[e])!==y&&(l[C]=(S=l[C])!==null&&S!==void 0?S:{},l[C][e]=y,$(u,l),P.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:p,installedPath:u,file:l,isUpToDate:I}];case 4:O=f.sent();return[2,(P.error('Error checking package "'.concat(e,'": ').concat(O.message)),i({},A))];case 5:return[2]}})});return ee.apply(this,arguments)}d(Z,"checkPackage");function et(){return en.apply(this,arguments)}function en(){en=r(function(){var e,t,n,r,o,a,c,i,s,u,l,p;return f(this,function(f){switch(f.label){case 0:e=[{command:d(function(){return tu.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:d(function(){return tu.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:d(function(){return tu.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,eC("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();P.warn("Installation attempt failed: ".concat(s)),P.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:p=f.sent();n=true;r=p;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return en.apply(this,arguments)}d(et,"installDependencies");function er(e,t){return eo.apply(this,arguments)}function eo(){eo=r(function(e,t){var n,r,o,a,c,u,l,p,d,m,g;return f(this,function(f){switch(f.label){case 0:if(!q(ta.PACKAGE_JSON)){P.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return Z(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,et()];case 3:r=f.sent();f.label=4;case 4:r;a=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(p=l.next()).done))return[3,9];d=p.value;return[4,d()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:m=f.sent();c=true;u=m;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw P.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return eo.apply(this,arguments)}d(er,"setupPackages");import ea from"node-persist";var ec=O();function ei(){return es.apply(this,arguments)}function es(){es=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=ea.defaultInstance;if(e)return[3,2];return[4,ea.init({dir:ec.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)}d(ei,"initNodePersist");var eu={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ei()];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,(P.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ei()];case 1:r.sent();return[4,ea.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();P.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ei()];case 1:n.sent();return[4,ea.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();P.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ei()];case 1:n.sent();return[4,ea.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(P.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(P.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(ec.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(P.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var el=O(),ef=G.promisify(w);function ep(e){return"error_list:".concat(e)}d(ep,"getErrorListKey");function ed(e){return em.apply(this,arguments)}function em(){em=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=ep(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__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eu.getLogLink(n)];case 1:e=t.sent();e&&P.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();P.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return em.apply(this,arguments)}d(ed,"saveErrorListToStorage");function eg(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var p=o.exec(e)||[],d=a.exec(e)||[],m=c.exec(e)||[];var g,v,h,y,I,b;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===N.Error?N.Error:N.Warning,message:(g=p===null||p===void 0?void 0:(i=p[4])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:"",rule:(v=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&v!==void 0?v:""}):d.length?t.push({file:(h=d===null||d===void 0?void 0:d[1])!==null&&h!==void 0?h:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===N.Error?N.Error:N.Warning,message:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:"commitlint",type:N.Error,message:(I=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",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:""}):n.push(e.trim())}}),t.length&&ed(t),el.DEBUG&&n.length&&(P.warn("Unmatched lines:"),n.forEach(function(e){return P.info(" ".concat(e))}))}d(eg,"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,c=e.ruleId,i=e.message;n.push({type:r===2?N.Error:N.Warning,file:t,position:"".concat(o,":").concat(a),rule:c,message:i})})}),n.length&&ed(n)}catch(t){eg(e)}}d(ev,"parseCommandOutput");function eh(e){return ey.apply(this,arguments)}function ey(){ey=r(function(e){var t,n,r,o,a,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ev;n=new AbortController;_.on("SIGINT",function(){P.warn("Process interrupted. Terminating..."),n.abort(),_.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,ef(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&P.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return ey.apply(this,arguments)}d(eh,"executeCommand");function eI(e){return{raw:!0,cmd:e}}d(eI,"rawCommand");function eb(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e6," ").concat(eR," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e6," ").concat(e3," ").concat(eJ," ").concat(e):"".concat(e6," ").concat(eW," ").concat(e)}d(eb,"formatCLI");function eE(e,t){return typeof e=="function"?eb(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eb(e,t):e}d(eE,"formatCommand");function eC(e,t){return eS.apply(this,arguments)}function eS(){eS=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);P.start("".concat(e)),el.DEBUG&&P.info("→ ".concat(t));return[4,eh(t)];case 1:r.sent(),P.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw P.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eS.apply(this,arguments)}d(eC,"runCommand");import{join as eO,resolve as eT}from"node:path";var ew=O();function e_(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eT.apply(void 0,[ew.CWD].concat(s(t)))}d(e_,"resolveWorkingPath");function eG(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eO.apply(void 0,s(t))}d(eG,"join");var eN=O(),eL=eN.CWD,eR="@cyberskill/shared",ek="node_modules",eD="dist",ej="package.json",eP="package-lock.json",eA="tsconfig.json",eF=".gitignore",eM=".simple-git-hooks.json",ex="pnpm-lock.yaml",eU=".git/hooks/",eK=".git/COMMIT_EDITMSG",eY=".migrate-mongo.config.js",eB=eG(eL,ek,eR,eD),eW="cyberskill",eJ="src/nodejs/cli/index.ts",eH="eslint",e$="eslint",eq="vitest",eQ="playwright",eV="vitest",ez="@commitlint/cli",eX="commitlint",eZ="lint-staged",e0="lint-staged",e1="typescript",e2="tsc",e3="tsx",e4="git",e5="pnpm",e6="pnpm exec",e7="simple-git-hooks",e8="simple-git-hooks",e9="@eslint/config-inspector",te="eslint-config-inspector",tt="node-modules-inspector",tn="node-modules-inspector",tr="migrate-mongo",to="./node_modules/migrate-mongo/bin/migrate-mongo",ta={CYBERSKILL_DIRECTORY:eB,WORKING_DIRECTORY:eL,TS_CONFIG:e_(eA),GIT_IGNORE:e_(eF),GIT_HOOK:e_(eU),GIT_COMMIT_MSG:e_(eK),SIMPLE_GIT_HOOKS_JSON:e_(eM),PACKAGE_JSON:e_(ej),PACKAGE_LOCK_JSON:e_(eP),PNPM_LOCK_YAML:e_(ex),NODE_MODULES:e_(ek),MIGRATE_MONGO_CONFIG:e_(eY),LINT_STAGED_CONFIG:e_("".concat(eB,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e_("".concat(eB,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e_("".concat(eB,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e_("".concat(eB,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e_("".concat(eB,"/react/vitest/vitest.e2e.js"))};function tc(e,t,n){return ti.apply(this,arguments)}function ti(){ti=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case T.CLI:return[3,1];case T.STRING:return[3,3]}return[3,4];case 1:return[4,er(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eE(eI("".concat(e6," ").concat(n))))];case 3:return[2,eE(eI(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return ti.apply(this,arguments)}d(tc,"buildCommand");function ts(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,tc(e,t,n)]})})}d(ts,"commandFactory");var tu={simpleGitHooks:ts(T.CLI,e7,e8),eslintInspect:ts(T.CLI,e9,te),nodeModulesInspect:ts(T.CLI,tt,tn),eslintCheck:ts(T.CLI,eH,"".concat(e$," ").concat(ta.WORKING_DIRECTORY)),eslintFix:ts(T.CLI,eH,"".concat(e$," ").concat(ta.WORKING_DIRECTORY," --fix")),typescriptCheck:ts(T.CLI,e1,"".concat(e2," -p ").concat(ta.TS_CONFIG," --noEmit")),configureGitHook:ts(T.STRING,"".concat(e4," config core.hooksPath ").concat(ta.GIT_HOOK)),testUnit:ts(T.CLI,eq,"".concat(eV," --config ").concat(ta.UNIT_TEST_CONFIG)),testE2e:ts(T.CLI,"".concat(eq," ").concat(eQ),"".concat(eV," --config ").concat(ta.E2E_TEST_CONFIG)),mongoMigrateCreate:d(function(e){return ts(T.CLI,tr,"".concat(e3," ").concat(to," create ").concat(e," -f ").concat(ta.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:ts(T.CLI,tr,"".concat(e3," ").concat(to," up -f ").concat(ta.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:ts(T.CLI,tr,"".concat(e3," ").concat(to," down -f ").concat(ta.MIGRATE_MONGO_CONFIG)),commitLint:ts(T.CLI,ez,"".concat(eX," --edit ").concat(ta.GIT_COMMIT_MSG," --config ").concat(ta.COMMITLINT_CONFIG)),lintStaged:ts(T.CLI,eZ,"".concat(e0," --config ").concat(ta.LINT_STAGED_CONFIG)),stageBuildDirectory:ts(T.STRING,"".concat(e4," add ").concat(eD)),build:ts(T.STRING,"".concat(e5," run build")),pnpmInstallStandard:ts(T.STRING,"".concat(e5," install")),pnpmInstallLegacy:ts(T.STRING,"".concat(e5," install --legacy-peer-deps")),pnpmInstallForce:ts(T.STRING,"".concat(e5," install --force"))};function tl(e){return g(i({plugins:[m()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[ta.UNIT_TEST_SETUP_CONFIG]}},e))}d(tl,"vitestUnit");export{tl as vitestUnit};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,o,a,c){try{var i=e[a](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,o)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(o,a){var c=e.apply(t,r);function i(e){n(c,o,a,i,s,"next",e)}function s(e){n(c,o,a,i,s,"throw",e)}i(undefined)})}}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function s(e){return t(e)||a(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,o,a={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(a=0)),a)try{if(n=1,r&&(o=i[0]&2?r["return"]:i[0]?r["throw"]||((o=r["return"])&&o.call(r),0):r.next)&&!(o=o.call(r,i[1])).done)return o;if(r=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:a.label++;return{value:i[1],done:false};case 5:a.label++;r=i[1];i=[0];continue;case 7:i=a.ops.pop();a.trys.pop();continue;default:if(!(o=a.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){a=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(i[0]===6&&a.label<o[1]){a.label=o[1];o=i;break}if(o&&a.label<o[2]){a.label=o[2];a.ops.push(i);break}if(o[2])a.ops.pop();a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e];r=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var p=Object.defineProperty;var d=function(e,t){return p(e,"name",{value:t,configurable:!0})};import m from"@vitejs/plugin-react-swc";import{defineConfig as g}from"vitest/config";var v=".cyberskill-storage";import h from"dotenv";import{bool as y,cleanEnv as I,str as b}from"envalid";import E from"node:os";import C from"node:path";import S from"node:process";h.config();function O(){var e={DEBUG:S.env.DEBUG||!1,CWD:S.env.CWD||S.cwd(),CYBERSKILL_STORAGE_DIRECTORY:S.env.CYBERSKILL_STORAGE_DIRECTORY||C.join(E.homedir(),v)};return I(e,{DEBUG:y(),CWD:b(),CYBERSKILL_STORAGE_DIRECTORY:b()})}d(O,"getEnv");var T=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as w}from"node:child_process";import _ from"node:process";import*as G from"node:util";var N=function(e){return e.Error="error",e.Warning="warning",e}({});import L from"chalk";import R from"consola";import{GraphQLError as k}from"graphql";var D=O();D.DEBUG||(R.level=4);function j(e){var t=L[e];return typeof t=="function"?t:L.green}d(j,"chalkKeyword");var P={silent:R.silent,level:R.level,fatal:R.fatal,error:R.error,warn:R.warn,log:R.log,info:R.info,success:R.success,ready:R.ready,start:R.start,box:R.box,debug:R.debug,trace:R.trace,verbose:R.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)){R.box(L.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,o=e.rule,a=e.message;R.log("".concat(L.gray("File:")," ").concat(L.blue("".concat(t).concat(r?":".concat(r):"")))),o&&R.log(" ".concat(j(n)("Rule:")," ").concat(o)),R.log(" ".concat(j(n)("Message:")," ").concat(a))}),R.box(j(n)("".concat(e," : ").concat(t.length))),R.log(L.gray("─".repeat(40)))}};var A={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import F from"node-fetch";import M from"fs-extra";var x=M.appendFileSync,U=M.lstatSync,K=M.mkdirSync,Y=M.readFileSync,B=M.unlinkSync,W=M.writeFileSync,J=M.statSync,H=M.readJsonSync,$=M.writeJsonSync;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 M.pathExistsSync(e)})}d(q,"pathExistsSync");var Q=O();function V(e){var t=eG(Q.CWD,ej);if(!q(t))return!1;try{var n=H(t),r=n.name,o=n.dependencies,a=o===void 0?{}:o,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in a,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return P.warn("Failed to read package.json: ".concat(e.message)),!1}}d(V,"getPackage");function z(e){return X.apply(this,arguments)}function X(){X=r(function(e){var t,n,r,o;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,F("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:o=a.sent();throw P.error('Failed to fetch version for "'.concat(e,'": ').concat(o.message)),o;case 4:return[2]}})});return X.apply(this,arguments)}d(z,"getLatestPackageVersion");function Z(e,t){return ee.apply(this,arguments)}function ee(){ee=r(function(e,t){var n,r,o,a,c,s,u,l,p,d,m,g,v,h,y,I,b,E,C,S,O;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=V(e);if(!n)return[2,i({},A)];u=n.path,l=n.file,p=n.isCurrentProject,d=n.isDepend,m=n.isDevDepend,g=(r=l.dependencies)!==null&&r!==void 0?r:{},v=(o=l.devDependencies)!==null&&o!==void 0?o:{},h=p?(a=l.version)!==null&&a!==void 0?a:"0.0.0":d?(c=g[e])!==null&&c!==void 0?c:"0.0.0":m?(s=v[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!p)return[3,1];b=h;return[3,3];case 1:return[4,z(e)];case 2:b=f.sent();f.label=3;case 3:y=b,I=p||h===y;if(!I&&(t===null||t===void 0?void 0:t.update)){;C=d?"dependencies":m?"devDependencies":null;C&&((E=l[C])===null||E===void 0?void 0:E[e])!==y&&(l[C]=(S=l[C])!==null&&S!==void 0?S:{},l[C][e]=y,$(u,l),P.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:p,installedPath:u,file:l,isUpToDate:I}];case 4:O=f.sent();return[2,(P.error('Error checking package "'.concat(e,'": ').concat(O.message)),i({},A))];case 5:return[2]}})});return ee.apply(this,arguments)}d(Z,"checkPackage");function et(){return en.apply(this,arguments)}function en(){en=r(function(){var e,t,n,r,o,a,c,i,s,u,l,p;return f(this,function(f){switch(f.label){case 0:e=[{command:d(function(){return tu.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:d(function(){return tu.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:d(function(){return tu.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);o=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=o.next()).done))return[3,8];c=a.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,eC("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();P.warn("Installation attempt failed: ".concat(s)),P.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:p=f.sent();n=true;r=p;return[3,11];case 10:try{if(!t&&o.return!=null){o.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return en.apply(this,arguments)}d(et,"installDependencies");function er(e,t){return eo.apply(this,arguments)}function eo(){eo=r(function(e,t){var n,r,o,a,c,u,l,p,d,m,g;return f(this,function(f){switch(f.label){case 0:if(!q(ta.PACKAGE_JSON)){P.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return Z(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,et()];case 3:r=f.sent();f.label=4;case 4:r;a=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((o=t===null||t===void 0?void 0:t.postInstallActions)!==null&&o!==void 0?o:[])[Symbol.iterator]();f.label=6;case 6:if(!!(a=(p=l.next()).done))return[3,9];d=p.value;return[4,d()];case 7:f.sent();f.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:m=f.sent();c=true;u=m;return[3,12];case 11:try{if(!a&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:g=f.sent();throw P.error('Failed to setup "'.concat(e.join(", "),'": ').concat(g.message)),g;case 14:return[2]}})});return eo.apply(this,arguments)}d(er,"setupPackages");import ea from"node-persist";var ec=O();function ei(){return es.apply(this,arguments)}function es(){es=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=ea.defaultInstance;if(e)return[3,2];return[4,ea.init({dir:ec.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)}d(ei,"initNodePersist");var eu={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ei()];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,(P.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,ei()];case 1:r.sent();return[4,ea.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();P.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ei()];case 1:n.sent();return[4,ea.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();P.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,ei()];case 1:n.sent();return[4,ea.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(P.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(P.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(ec.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(P.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var el=O(),ef=G.promisify(w);function ep(e){return"error_list:".concat(e)}d(ep,"getErrorListKey");function ed(e){return em.apply(this,arguments)}function em(){em=r(function(e){var t,n,o;return f(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=ep(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__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eu.getLogLink(n)];case 1:e=t.sent();e&&P.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:o=a.sent();P.error("Failed to save errors: ".concat(o.message));return[3,4];case 4:return[2]}})});return em.apply(this,arguments)}d(ed,"saveErrorListToStorage");function eg(e){var t=[],n=[],r="",o=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var p=o.exec(e)||[],d=a.exec(e)||[],m=c.exec(e)||[];var g,v,h,y,I,b;p.length&&r?t.push({file:r,position:"".concat(p[1],":").concat(p[2]),type:p[3]===N.Error?N.Error:N.Warning,message:(g=p===null||p===void 0?void 0:(i=p[4])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:"",rule:(v=p===null||p===void 0?void 0:(s=p[5])===null||s===void 0?void 0:s.trim())!==null&&v!==void 0?v:""}):d.length?t.push({file:(h=d===null||d===void 0?void 0:d[1])!==null&&h!==void 0?h:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===N.Error?N.Error:N.Warning,message:(y=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):m.length?t.push({file:"commitlint",type:N.Error,message:(I=m===null||m===void 0?void 0:(l=m[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",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:""}):n.push(e.trim())}}),t.length&&ed(t),el.DEBUG&&n.length&&(P.warn("Unmatched lines:"),n.forEach(function(e){return P.info(" ".concat(e))}))}d(eg,"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,c=e.ruleId,i=e.message;n.push({type:r===2?N.Error:N.Warning,file:t,position:"".concat(o,":").concat(a),rule:c,message:i})})}),n.length&&ed(n)}catch(t){eg(e)}}d(ev,"parseCommandOutput");function eh(e){return ey.apply(this,arguments)}function ey(){ey=r(function(e){var t,n,r,o,a,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ev;n=new AbortController;_.on("SIGINT",function(){P.warn("Process interrupted. Terminating..."),n.abort(),_.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,ef(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),o=r.stdout,a=r.stderr;[o,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&P.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return ey.apply(this,arguments)}d(eh,"executeCommand");function eI(e){return{raw:!0,cmd:e}}d(eI,"rawCommand");function eb(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e6," ").concat(eR," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e6," ").concat(e3," ").concat(eJ," ").concat(e):"".concat(e6," ").concat(eW," ").concat(e)}d(eb,"formatCLI");function eE(e,t){return typeof e=="function"?eb(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eb(e,t):e}d(eE,"formatCommand");function eC(e,t){return eS.apply(this,arguments)}function eS(){eS=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);P.start("".concat(e)),el.DEBUG&&P.info("→ ".concat(t));return[4,eh(t)];case 1:r.sent(),P.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw P.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eS.apply(this,arguments)}d(eC,"runCommand");import{join as eO,resolve as eT}from"node:path";var ew=O();function e_(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eT.apply(void 0,[ew.CWD].concat(s(t)))}d(e_,"resolveWorkingPath");function eG(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eO.apply(void 0,s(t))}d(eG,"join");var eN=O(),eL=eN.CWD,eR="@cyberskill/shared",ek="node_modules",eD="dist",ej="package.json",eP="package-lock.json",eA="tsconfig.json",eF=".gitignore",eM=".simple-git-hooks.json",ex="pnpm-lock.yaml",eU=".git/hooks/",eK=".git/COMMIT_EDITMSG",eY=".migrate-mongo.config.js",eB=eG(eL,ek,eR,eD),eW="cyberskill",eJ="src/nodejs/cli/index.ts",eH="eslint",e$="eslint",eq="vitest",eQ="playwright",eV="vitest",ez="@commitlint/cli",eX="commitlint",eZ="lint-staged",e0="lint-staged",e1="typescript",e2="tsc",e3="tsx",e4="git",e5="pnpm",e6="pnpm exec",e7="simple-git-hooks",e8="simple-git-hooks",e9="@eslint/config-inspector",te="eslint-config-inspector",tt="node-modules-inspector",tn="node-modules-inspector",tr="migrate-mongo",to="./node_modules/migrate-mongo/bin/migrate-mongo",ta={CYBERSKILL_DIRECTORY:eB,WORKING_DIRECTORY:eL,TS_CONFIG:e_(eA),GIT_IGNORE:e_(eF),GIT_HOOK:e_(eU),GIT_COMMIT_MSG:e_(eK),SIMPLE_GIT_HOOKS_JSON:e_(eM),PACKAGE_JSON:e_(ej),PACKAGE_LOCK_JSON:e_(eP),PNPM_LOCK_YAML:e_(ex),NODE_MODULES:e_(ek),MIGRATE_MONGO_CONFIG:e_(eY),LINT_STAGED_CONFIG:e_("".concat(eB,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e_("".concat(eB,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e_("".concat(eB,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e_("".concat(eB,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e_("".concat(eB,"/react/vitest/vitest.e2e.js"))};function tc(e,t,n){return ti.apply(this,arguments)}function ti(){ti=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case T.CLI:return[3,1];case T.STRING:return[3,3]}return[3,4];case 1:return[4,er(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eE(eI("".concat(e6," ").concat(n))))];case 3:return[2,eE(eI(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return ti.apply(this,arguments)}d(tc,"buildCommand");function ts(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,tc(e,t,n)]})})}d(ts,"commandFactory");var tu={simpleGitHooks:ts(T.CLI,e7,e8),eslintInspect:ts(T.CLI,e9,te),nodeModulesInspect:ts(T.CLI,tt,tn),eslintCheck:ts(T.CLI,eH,"".concat(e$," ").concat(ta.WORKING_DIRECTORY)),eslintFix:ts(T.CLI,eH,"".concat(e$," ").concat(ta.WORKING_DIRECTORY," --fix")),typescriptCheck:ts(T.CLI,e1,"".concat(e2," -p ").concat(ta.TS_CONFIG," --noEmit")),configureGitHook:ts(T.STRING,"".concat(e4," config core.hooksPath ").concat(ta.GIT_HOOK)),testUnit:ts(T.CLI,eq,"".concat(eV," --config ").concat(ta.UNIT_TEST_CONFIG)),testE2e:ts(T.CLI,"".concat(eq," ").concat(eQ),"".concat(eV," --config ").concat(ta.E2E_TEST_CONFIG)),mongoMigrateCreate:d(function(e){return ts(T.CLI,tr,"".concat(e3," ").concat(to," create ").concat(e," -f ").concat(ta.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:ts(T.CLI,tr,"".concat(e3," ").concat(to," up -f ").concat(ta.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:ts(T.CLI,tr,"".concat(e3," ").concat(to," down -f ").concat(ta.MIGRATE_MONGO_CONFIG)),commitLint:ts(T.CLI,ez,"".concat(eX," --edit ").concat(ta.GIT_COMMIT_MSG," --config ").concat(ta.COMMITLINT_CONFIG)),lintStaged:ts(T.CLI,eZ,"".concat(e0," --config ").concat(ta.LINT_STAGED_CONFIG)),stageBuildDirectory:ts(T.STRING,"".concat(e4," add ").concat(eD)),build:ts(T.STRING,"".concat(e5," run build")),pnpmInstallStandard:ts(T.STRING,"".concat(e5," install")),pnpmInstallLegacy:ts(T.STRING,"".concat(e5," install --legacy-peer-deps")),pnpmInstallForce:ts(T.STRING,"".concat(e5," install --force"))};function tl(e){return g(i({plugins:[m()],test:{globals:!0,environment:"jsdom",pool:"vmThreads",include:["**/*.test.unit.?(c|m)[jt]s?(x)"],setupFiles:[ta.UNIT_TEST_SETUP_CONFIG]}},e))}d(tl,"vitestUnit");export{tl as vitestUnit};