@cyberskill/shared 1.14.0 → 1.16.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 (135) hide show
  1. package/dist/commands.cjs +1 -1
  2. package/dist/commands.d.cts +1 -0
  3. package/dist/commands.d.ts +1 -0
  4. package/dist/commands.js +1 -1
  5. package/dist/components/react/index.d.cts +2 -0
  6. package/dist/components/react/index.d.ts +2 -0
  7. package/dist/components/react/loading/index.d.cts +11 -0
  8. package/dist/components/react/loading/index.d.ts +11 -0
  9. package/dist/components/react/loading/loading.module.d.cts +2 -0
  10. package/dist/components/react/loading/loading.module.d.ts +2 -0
  11. package/dist/configs/commitlint/base.d.cts +5 -0
  12. package/dist/configs/commitlint/base.d.ts +5 -0
  13. package/dist/configs/eslint/base.d.cts +1154 -0
  14. package/dist/configs/eslint/base.d.ts +1154 -0
  15. package/dist/configs/eslint/nestjs.d.cts +1156 -0
  16. package/dist/configs/eslint/nestjs.d.ts +1156 -0
  17. package/dist/configs/eslint/nextjs.d.cts +1156 -0
  18. package/dist/configs/eslint/nextjs.d.ts +1156 -0
  19. package/dist/configs/eslint/nodejs.d.cts +1156 -0
  20. package/dist/configs/eslint/nodejs.d.ts +1156 -0
  21. package/dist/configs/eslint/vite-react.d.cts +1157 -0
  22. package/dist/configs/eslint/vite-react.d.ts +1157 -0
  23. package/dist/configs/graphql/graphql-codegen.d.cts +8 -0
  24. package/dist/configs/graphql/graphql-codegen.d.ts +8 -0
  25. package/dist/configs/graphql/index.d.cts +5 -0
  26. package/dist/configs/graphql/index.d.ts +5 -0
  27. package/dist/configs/i18n/react/i18next.d.cts +6 -0
  28. package/dist/configs/i18n/react/i18next.d.ts +6 -0
  29. package/dist/configs/i18n/react/index.d.cts +2 -0
  30. package/dist/configs/i18n/react/index.d.ts +2 -0
  31. package/dist/configs/index.cjs +1 -1
  32. package/dist/configs/index.d.cts +9 -0
  33. package/dist/configs/index.d.ts +9 -0
  34. package/dist/configs/index.js +1 -1
  35. package/dist/configs/lint-staged/base.d.cts +5 -0
  36. package/dist/configs/lint-staged/base.d.ts +5 -0
  37. package/dist/configs/vitest/react/e2e.d.cts +6 -0
  38. package/dist/configs/vitest/react/e2e.d.ts +6 -0
  39. package/dist/configs/vitest/react/unit.d.cts +6 -0
  40. package/dist/configs/vitest/react/unit.d.ts +6 -0
  41. package/dist/configs/vitest/react/unit.setup.d.cts +2 -0
  42. package/dist/configs/vitest/react/unit.setup.d.ts +2 -0
  43. package/dist/constants/dirname.d.cts +3 -0
  44. package/dist/constants/dirname.d.ts +3 -0
  45. package/dist/constants/index.d.cts +2 -0
  46. package/dist/constants/index.d.ts +2 -0
  47. package/dist/constants/response-status.d.cts +252 -0
  48. package/dist/constants/response-status.d.ts +252 -0
  49. package/dist/contexts/react/index.d.cts +4 -0
  50. package/dist/contexts/react/index.d.ts +4 -0
  51. package/dist/contexts/react/loading.d.cts +7 -0
  52. package/dist/contexts/react/loading.d.ts +7 -0
  53. package/dist/controllers/index.cjs +1 -1
  54. package/dist/controllers/index.d.cts +5 -0
  55. package/dist/controllers/index.d.ts +5 -0
  56. package/dist/controllers/index.js +1 -1
  57. package/dist/controllers/migration.d.cts +55 -0
  58. package/dist/controllers/migration.d.ts +55 -0
  59. package/dist/controllers/mongoose.cjs +1 -1
  60. package/dist/controllers/mongoose.d.cts +25 -0
  61. package/dist/controllers/mongoose.d.ts +25 -0
  62. package/dist/controllers/mongoose.js +1 -1
  63. package/dist/hooks/react/index.cjs +1 -1
  64. package/dist/hooks/react/index.d.cts +6 -0
  65. package/dist/hooks/react/index.d.ts +6 -0
  66. package/dist/hooks/react/index.js +1 -1
  67. package/dist/hooks/react/use-loading.d.cts +7 -0
  68. package/dist/hooks/react/use-loading.d.ts +7 -0
  69. package/dist/hooks/react/use-storage.cjs +1 -1
  70. package/dist/hooks/react/use-storage.d.cts +5 -0
  71. package/dist/hooks/react/use-storage.d.ts +5 -0
  72. package/dist/hooks/react/use-storage.js +1 -1
  73. package/dist/index.cjs +1 -1
  74. package/dist/index.d.cts +32 -716
  75. package/dist/index.d.ts +32 -716
  76. package/dist/index.js +1 -1
  77. package/dist/providers/react/apollo-client.d.cts +11 -0
  78. package/dist/providers/react/apollo-client.d.ts +11 -0
  79. package/dist/providers/react/index.d.cts +6 -0
  80. package/dist/providers/react/index.d.ts +6 -0
  81. package/dist/providers/react/loading.d.cts +10 -0
  82. package/dist/providers/react/loading.d.ts +10 -0
  83. package/dist/typescript/command.cjs +1 -1
  84. package/dist/typescript/command.d.cts +39 -0
  85. package/dist/typescript/command.d.ts +39 -0
  86. package/dist/typescript/command.js +1 -1
  87. package/dist/typescript/config.d.cts +5 -0
  88. package/dist/typescript/config.d.ts +5 -0
  89. package/dist/typescript/index.cjs +1 -1
  90. package/dist/typescript/index.d.cts +10 -0
  91. package/dist/typescript/index.d.ts +10 -0
  92. package/dist/typescript/index.js +1 -1
  93. package/dist/typescript/log.d.cts +10 -0
  94. package/dist/typescript/log.d.ts +10 -0
  95. package/dist/typescript/mongoose.d.cts +163 -0
  96. package/dist/typescript/mongoose.d.ts +163 -0
  97. package/dist/typescript/react.d.cts +26 -0
  98. package/dist/typescript/react.d.ts +26 -0
  99. package/dist/typescript/serializer.d.cts +6 -0
  100. package/dist/typescript/serializer.d.ts +6 -0
  101. package/dist/utils/command-error.cjs +1 -1
  102. package/dist/utils/command-error.d.cts +15 -0
  103. package/dist/utils/command-error.d.ts +15 -0
  104. package/dist/utils/command-error.js +1 -1
  105. package/dist/utils/command-log.cjs +1 -1
  106. package/dist/utils/command-log.d.cts +3 -0
  107. package/dist/utils/command-log.d.ts +3 -0
  108. package/dist/utils/command-log.js +1 -1
  109. package/dist/utils/command-spinner.cjs +1 -1
  110. package/dist/utils/command-spinner.d.cts +11 -0
  111. package/dist/utils/command-spinner.d.ts +11 -0
  112. package/dist/utils/command-spinner.js +1 -1
  113. package/dist/utils/command.cjs +1 -1
  114. package/dist/utils/command.d.cts +5 -0
  115. package/dist/utils/command.d.ts +5 -0
  116. package/dist/utils/command.js +1 -1
  117. package/dist/utils/index.cjs +1 -1
  118. package/dist/utils/index.d.cts +26 -0
  119. package/dist/utils/index.d.ts +26 -0
  120. package/dist/utils/index.js +1 -1
  121. package/dist/utils/log.d.cts +5 -0
  122. package/dist/utils/log.d.ts +5 -0
  123. package/dist/utils/mongoose.d.cts +34 -0
  124. package/dist/utils/mongoose.d.ts +34 -0
  125. package/dist/utils/npm-package.cjs +1 -1
  126. package/dist/utils/npm-package.d.cts +16 -0
  127. package/dist/utils/npm-package.d.ts +16 -0
  128. package/dist/utils/npm-package.js +1 -1
  129. package/dist/utils/serializer.d.cts +5 -0
  130. package/dist/utils/serializer.d.ts +5 -0
  131. package/dist/utils/storage.d.cts +12 -0
  132. package/dist/utils/storage.d.ts +12 -0
  133. package/dist/utils/validate.d.cts +33 -0
  134. package/dist/utils/validate.d.ts +33 -0
  135. package/package.json +23 -1
@@ -1 +1 @@
1
- function e(e,r){if(r==null||r>e.length)r=e.length;for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function r(r){if(Array.isArray(r))return e(r)}function t(e,r,t,n,o,a,s){try{var i=e[a](s);var c=i.value}catch(e){t(e);return}if(i.done){r(c)}else{Promise.resolve(c).then(n,o)}}function n(e){return function(){var r=this,n=arguments;return new Promise(function(o,a){var s=e.apply(r,n);function i(e){t(s,o,a,i,c,"next",e)}function c(e){t(s,o,a,i,c,"throw",e)}i(undefined)})}}function o(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function a(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function s(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 r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var n=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}n.forEach(function(r){o(e,r,t[r])})}return e}function u(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(r){n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})}t.push.apply(t,n)}return t}function l(e,r){r=r!=null?r:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(r))}else{u(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function f(e,r){if(e==null)return{};var t=E(e,r);var n,o;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++){n=a[o];if(r.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;t[n]=e[n]}}return t}function E(e,r){if(e==null)return{};var t={};var n=Object.keys(e);var o,a;for(a=0;a<n.length;a++){o=n[a];if(r.indexOf(o)>=0)continue;t[o]=e[o]}return t}function p(e){return r(e)||s(e)||S(e)||i()}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}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 h(e,r){var t,n,o,a,s={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]};return a={next:i(0),"throw":i(1),"return":i(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function i(e){return function(r){return c([e,r])}}function c(a){if(t)throw new TypeError("Generator is already executing.");while(s)try{if(t=1,n&&(o=a[0]&2?n["return"]:a[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,a[1])).done)return o;if(n=0,o)a=[a[0]&2,o.value];switch(a[0]){case 0:case 1:o=a;break;case 4:s.label++;return{value:a[1],done:false};case 5:s.label++;n=a[1];a=[0];continue;case 7:a=s.ops.pop();s.trys.pop();continue;default:if(!(o=s.trys,o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){s=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){s.label=a[1];break}if(a[0]===6&&s.label<o[1]){s.label=o[1];o=a;break}if(o&&s.label<o[2]){s.label=o[2];s.ops.push(a);break}if(o[2])s.ops.pop();s.trys.pop();continue}a=r.call(e,s)}catch(e){a=[6,e];n=0}finally{t=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}import g from"unorm";import y from"localforage";import m from"node-persist";import O from"node:os";import v from"node:path";import A from"node:process";var D=(typeof window==="undefined"?"undefined":d(window))<"u",T=A.env.CYBERSKILL_STORAGE_DIR||v.join(O.homedir(),".cyberskill-storage");function R(){return b.apply(this,arguments)}function b(){b=n(function(){var e;return h(this,function(r){switch(r.label){case 0:e=!D&&!m.defaultInstance;if(!e)return[3,2];return[4,m.init({dir:T,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=r.sent();r.label=2;case 2:e;return[2]}})});return b.apply(this,arguments)}var _={get:function e(e){return n(function(){var r,t,n;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.getItem(e)];case 1:t=o.sent();return[3,5];case 2:return[4,R()];case 3:o.sent();return[4,m.getItem(e)];case 4:t=(r=o.sent())!==null&&r!==void 0?r:null;o.label=5;case 5:return[2,t];case 6:n=o.sent();return[2,(console.error('❌ [Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 7:return[2]}})})()},set:function e(e,r){return n(function(){var t,n;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.setItem(e,r)];case 1:t=o.sent();return[3,5];case 2:return[4,R()];case 3:o.sent();return[4,m.setItem(e,r)];case 4:t=o.sent();o.label=5;case 5:t;return[3,7];case 6:n=o.sent();console.error('❌ [Storage:set] Error setting key "'.concat(e,'":'),n);return[3,7];case 7:return[2]}})})()},remove:function e(e){return n(function(){var r,t;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.removeItem(e)];case 1:r=n.sent();return[3,5];case 2:return[4,R()];case 3:n.sent();return[4,m.removeItem(e)];case 4:r=n.sent();n.label=5;case 5:r;return[3,7];case 6:t=n.sent();console.error('❌ [Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,7];case 7:return[2]}})})()},keys:function e(){return n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.keys()];case 1:e=t.sent();return[3,5];case 2:return[4,R()];case 3:t.sent();return[4,m.keys()];case 4:e=t.sent()||[];t.label=5;case 5:return[2,e];case 6:r=t.sent();return[2,(console.error("❌ [Storage:keys] Error getting keys:",r),[])];case 7:return[2]}})})()},values:function e(){return n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:t.trys.push([0,7,,8]);if(!D)return[3,3];return[4,y.keys()];case 1:e=t.sent();return[4,Promise.all(e.map(function(e){return y.getItem(e)}))];case 2:return[2,t.sent().filter(function(e){return e!==null})];case 3:return[4,R()];case 4:t.sent();return[4,m.values()];case 5:return[2,t.sent()];case 6:return[3,8];case 7:r=t.sent();return[2,(console.error("❌ [Storage:values] Error getting values:",r),[])];case 8:return[2]}})})()},entries:function e(){return n(function(){var e,r,t,o;return h(this,function(a){switch(a.label){case 0:a.trys.push([0,8,,9]);if(!D)return[3,3];return[4,y.keys()];case 1:e=a.sent();return[4,Promise.all(e.map(/*#__PURE__*/function(){var e=n(function(e){var r;return h(this,function(t){switch(t.label){case 0:return[4,y.getItem(e)];case 1:r=t.sent();return[2,r!==null?[e,r]:null]}})});return function(r){return e.apply(this,arguments)}}()))];case 2:return[2,a.sent().filter(function(e){return e!==null})];case 3:return[4,R()];case 4:a.sent();return[4,m.keys()];case 5:r=a.sent();return[4,m.values()];case 6:t=a.sent();return[2,r.map(function(e,r){return[e,t[r]]})];case 7:return[3,9];case 8:o=a.sent();return[2,(console.error("❌ [Storage:entries] Error getting entries:",o),[])];case 9:return[2]}})})()},clear:function e(){return n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.clear()];case 1:e=t.sent();return[3,5];case 2:return[4,R()];case 3:t.sent();return[4,m.clear()];case 4:e=t.sent();t.label=5;case 5:e;return[3,7];case 6:r=t.sent();console.error("❌ [Storage:clear] Error clearing storage:",r);return[3,7];case 7:return[2]}})})()},length:function e(){return n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.length()];case 1:e=t.sent();return[3,5];case 2:return[4,R()];case 3:t.sent();return[4,m.keys()];case 4:e=t.sent().length;t.label=5;case 5:return[2,e];case 6:r=t.sent();return[2,(console.error("❌ [Storage:length] Error getting storage length:",r),0)];case 7:return[2]}})})()}};var I=function(e){return"error_list:".concat(e)},C=24*60*60*1e3;function M(e){return w.apply(this,arguments)}function w(){w=n(function(e){var r,t,n;return h(this,function(o){switch(o.label){case 0:if(!e.length)return[2];r=Date.now(),t=I(r);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,_.set(t,{errors:e,timestamp:r})];case 2:o.sent(),console.log("✅ Saved ".concat(e.length," errors to storage with key: ").concat(t));return[3,4];case 3:n=o.sent();console.error("❌ Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return w.apply(this,arguments)}function N(){return P.apply(this,arguments)}function P(){P=n(function(){var e,r,t,n,o,a,s,i,c,u,l,f;return h(this,function(E){switch(E.label){case 0:E.trys.push([0,10,,11]);return[4,_.keys()];case 1:e=E.sent().filter(function(e){return e.startsWith("error_list:")}),r=[];t=true,n=false,o=undefined;E.label=2;case 2:E.trys.push([2,7,8,9]);a=e[Symbol.iterator]();E.label=3;case 3:if(!!(t=(s=a.next()).done))return[3,6];i=s.value;return[4,_.get(i)];case 4:u=E.sent();u&&(c=r).push.apply(c,p(u.errors));E.label=5;case 5:t=true;return[3,3];case 6:return[3,9];case 7:l=E.sent();n=true;o=l;return[3,9];case 8:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw o}}return[7];case 9:return[2,r];case 10:f=E.sent();return[2,(console.error("❌ Failed to retrieve stored errors: ".concat(f.message)),[])];case 11:return[2]}})});return P.apply(this,arguments)}function G(){return U.apply(this,arguments)}function U(){U=n(function(){var e,r,t,n,o,a,s,i,c,u,l,f;return h(this,function(E){switch(E.label){case 0:E.trys.push([0,12,,13]);return[4,_.keys()];case 1:e=E.sent(),r=Date.now();t=true,n=false,o=undefined;E.label=2;case 2:E.trys.push([2,9,10,11]);a=e[Symbol.iterator]();E.label=3;case 3:if(!!(t=(s=a.next()).done))return[3,8];i=s.value;if(!i.startsWith("error_list:"))return[3,7];return[4,_.get(i)];case 4:c=E.sent();u=c&&r-c.timestamp>C;if(!u)return[3,6];return[4,_.remove(i)];case 5:u=(E.sent(),console.log("\uD83D\uDDD1️ Removed expired error list: ".concat(i)));E.label=6;case 6:u;E.label=7;case 7:t=true;return[3,3];case 8:return[3,11];case 9:l=E.sent();n=true;o=l;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw o}}return[7];case 11:return[3,13];case 12:f=E.sent();console.error("❌ Failed to clear expired error lists: ".concat(f.message));return[3,13];case 13:return[2]}})});return U.apply(this,arguments)}import L from"boxen";import F from"chalk";var x=F.blue,j=F.red,k=F.yellow,q=F.green,Q=F.gray,H=F.bold;function Y(e,r){var t=new Map([[j,"red"],[k,"yellow"],[q,"green"]]).get(r)||"green";return L(H(r(e)),{padding:1,margin:1,borderStyle:"arrow",borderColor:t})}function V(e,r,t,n){e.length&&(e.forEach(function(e){var n=e.file,o=e.position,a=e.rule,s=e.message;console.log("".concat(r("".concat(t," File:"))," ").concat(x("".concat(n).concat(o?":".concat(o):"")))),a&&console.log(" ".concat(r("Rule:")," ").concat(r(a))),console.log(" ".concat(r("Message:")," ").concat(r(s)))}),console.log(Y(H(r("".concat(t," Total ").concat(n,": ").concat(e.length))),r)),console.log(Q("─".repeat(40))))}function B(){return J.apply(this,arguments)}function J(){J=n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:return[4,N()];case 1:e=t.sent().filter(function(e){return e.type==="error"});return[4,N()];case 2:r=t.sent().filter(function(e){return e.type==="warning"});!e.length&&!r.length?console.log(Y(H(q("✔ NO ISSUE FOUND!")),q)):(V(r,k,"⚠","Warnings"),V(e,j,"✖","Errors"));return[2]}})});return J.apply(this,arguments)}import W from"node:process";import $ from"ora";function z(e,r){return K.apply(this,arguments)}function K(){K=n(function(e,r){var t,n,o,a,s,i,c,u,l;var f=arguments;return h(this,function(E){switch(E.label){case 0:t=f.length>2&&f[2]!==void 0?f[2]:{};n=t.successMessage,o=t.failureMessage,a=t.errorList,s=a===void 0?[]:a,i=t.exitOnError,c=i===void 0?!0:i,u=$({text:e,color:"cyan",spinner:"dots"}).start();E.label=1;case 1:E.trys.push([1,3,,4]);return[4,r()];case 2:E.sent(),s.length?c?(u.fail(o||"".concat(e," ❌")),W.exit(1)):u.fail(o||"".concat(e," ❌")):u.succeed(n||"".concat(e," ✅"));return[3,4];case 3:l=E.sent();if(u.fail(o||"".concat(e," ❌")),c)W.exit(1);else throw l;return[3,4];case 4:return[2]}})});return K.apply(this,arguments)}import X from"chalk";import{exec as Z}from"node:child_process";import ee from"node:process";import*as er from"node:util";var et=er.promisify(Z),en=X.gray,eo=X.white,ea=[];function es(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";var t=new Date().toLocaleString();console.log("".concat(r," [").concat(t,"] ").concat(eo(e)))}function ei(e){var r=/^\s*(\d+):(\d+)\s+(error|warning)\s+(\S+)\s+(\S+)$/,t=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,n=/^✖\s+(.*?)\s+\[(.*?)\]$/,o=[],a="";e.split("\n").forEach(function(e){if(e.startsWith("/"))a=e.trim();else{var s=r.exec(e);if(s&&a)ea.push({file:a,position:"".concat(s[1],":").concat(s[2]),type:s[3]==="error"?"error":"warning",message:s[4].trim(),rule:s[5].trim()});else{var i=t.exec(e);if(i)ea.push({file:i[1],position:"".concat(i[2],":").concat(i[3]),type:i[4],message:i[5].trim()});else{var c=n.exec(e);c?ea.push({file:"commitlint",type:"error",message:c[1].trim(),rule:c[2].trim()}):o.push(e.trim())}}}}),o.length>0&&(console.log(en("Unmatched lines:")),o.forEach(function(e){return console.info(e)}))}function ec(e){try{JSON.parse(e).forEach(function(e){var r=e.filePath,t=e.messages;t.forEach(function(e){var t=e.severity,n=e.line,o=e.column,a=e.ruleId,s=e.message;ea.push({type:t===2?"error":"warning",file:r,position:"".concat(n,":").concat(o),rule:a,message:s})})})}catch(r){ei(e)}}function eu(e,r){return el.apply(this,arguments)}function el(){el=n(function(e,r){var t,n,o,a,s,i,c;var u=arguments;return h(this,function(l){switch(l.label){case 0:t=u.length>2&&u[2]!==void 0?u[2]:ec;es(r);n=new AbortController;ee.on("SIGINT",function(){console.log("Terminating process..."),n.abort(),ee.exit()});l.label=1;case 1:l.trys.push([1,5,,6]);return[4,et(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:o=l.sent(),a=o.stdout,s=o.stderr;[a,s].forEach(function(e){return e&&t(e)});i=ea.length;if(!i)return[3,4];return[4,M(ea)];case 3:i=l.sent();l.label=4;case 4:i;return[3,6];case 5:c=l.sent();console.error("Command failed: ".concat(c.message));return[3,6];case 6:return[2]}})});return el.apply(this,arguments)}import{GraphQLError as ef}from"graphql";import{dirname as eE}from"node:path";import{fileURLToPath as ep}from"node:url";var ed=ep(import.meta.url),eS=eE(ed);var eh={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};function eg(e){var r=e.message,t=e.status,n=t===void 0?eh.INTERNAL_SERVER_ERROR:t,o=e.type,a=o===void 0?"graphql":o;var s;var i=(s=r!==null&&r!==void 0?r:n.MESSAGE)!==null&&s!==void 0?s:"Internal server error";throw a==="graphql"?new ef(i,{extensions:{code:n.CODE}}):new Error(i)}import ey from"crypto-js";import em from"mongoose-aggregate-paginate-v2";import eO from"mongoose-paginate-v2";import ev from"slugify";import{v4 as eA}from"uuid";function eD(e,r){r.filter(function(e){return typeof e=="function"}).forEach(function(r){return e.plugin(r)})}function eT(e,r){r.forEach(function(r){var t=r.method,n=r.fn;return e.pre(t,n)})}function eR(e){return new e.Schema({id:{type:String,default:eA,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})}function eb(e){var r=e.mongoose,t=e.schema,n=e.virtuals,o=n===void 0?[]:n,a=e.standalone,s=a===void 0?!1:a;var i=new r.Schema(t,{strict:!0});return o.forEach(function(e){var r=e.name,t=e.options,n=e.get;var o=i.virtual(r,t);n&&o.get(n)}),s||i.add(eR(r)),i}function e_(e){var r=e.mongoose,t=e.name,n=e.schema,o=e.pagination,a=o===void 0?!1:o,s=e.aggregate,i=s===void 0?!1:s,c=e.virtuals,u=c===void 0?[]:c,l=e.middlewares,f=l===void 0?[]:l;if(!t)throw new Error("Model name is required.");if(r.models[t])return r.models[t];var E=eb({mongoose:r,schema:n,virtuals:u});return eD(E,[a&&eO,i&&em]),eT(E,f),r.model(t,E)}var eI=ev.default||ev;function eC(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1?arguments[1]:void 0;var t=r||{},n=t.lower,o=n===void 0?!0:n,a=t.locale,s=a===void 0?"vi":a,i=f(t,["lower","locale"]);return eI(e,c({lower:o,locale:s},i))}function eM(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return ey.SHA256(e).toString(ey.enc.Hex).slice(0,r)}function ew(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2?arguments[2]:void 0;return l(c({},r,t&&{id:{$ne:t}}),{$or:[{slug:e},{slugHistory:e}]})}import eN from"node-fetch";import eP from"node:fs";import eG from"node:path";import eU from"node:process";var eL=24*60*60*1e3;function eF(e){return ex.apply(this,arguments)}function ex(){ex=n(function(e){var r,t,n,o,a,s,i,c,u,l;var f=arguments;return h(this,function(E){switch(E.label){case 0:r=f.length>1&&f[1]!==void 0?f[1]:!1;t="npm_version:".concat(e),n="npm_metadata:".concat(e);return[4,_.get(t)];case 1:o=E.sent();return[4,_.get(n)];case 2:a=E.sent(),s=o&&Date.now()-o.timestamp<eL;if(!r&&s)return[2,(console.log("Using cached version for ".concat(e,": ").concat(o.version)),o.version)];i={};(a===null||a===void 0?void 0:a.etag)&&(i["If-None-Match"]=a.etag),(a===null||a===void 0?void 0:a.lastModified)&&(i["If-Modified-Since"]=a.lastModified);E.label=3;case 3:E.trys.push([3,8,,9]);console.log("Fetching latest version for ".concat(e,"..."));return[4,eN("https://registry.npmjs.org/".concat(e,"/latest"),{headers:i})];case 4:c=E.sent();if(c.status===304&&o)return[2,(console.log("Cache is still valid for ".concat(e,": ").concat(o.version)),o.version)];if(!c.ok)throw new Error("Failed to fetch latest version: ".concat(c.statusText));return[4,c.json()];case 5:u=E.sent().version;return[4,_.set(t,{version:u,timestamp:Date.now()})];case 6:E.sent();return[4,_.set(n,{etag:c.headers.get("ETag")||void 0,lastModified:c.headers.get("Last-Modified")||void 0})];case 7:return[2,(E.sent(),console.log("Cached latest version for ".concat(e,": ").concat(u)),u)];case 8:l=E.sent();if(console.error("Error fetching latest version for ".concat(e,": ").concat(l.message)),o)return[2,(console.warn("Falling back to cached version for ".concat(e,": ").concat(o.version)),o.version)];throw l;case 9:return[2]}})});return ex.apply(this,arguments)}function ej(e){return eG.join(eU.cwd(),"node_modules",e,"package.json")}function ek(){return eG.join(eU.cwd(),"package.json")}function eq(e){return eQ.apply(this,arguments)}function eQ(){eQ=n(function(e){var r,t,n,o,a;var s=arguments;return h(this,function(i){switch(i.label){case 0:r=s.length>1&&s[1]!==void 0?s[1]:!0;i.label=1;case 1:i.trys.push([1,3,,4]);t=ej(e);if(!eP.existsSync(t))return[2,(console.log("".concat(e," is not installed.")),!0)];n=JSON.parse(eP.readFileSync(t,"utf-8")).version;return[4,eF(e,r)];case 2:o=i.sent();return[2,(console.log("Installed version of ".concat(e,": ").concat(n)),console.log("Latest version of ".concat(e,": ").concat(o)),n!==o)];case 3:a=i.sent();return[2,(console.warn("Failed to check version for ".concat(e,": ").concat(a.message)),!0)];case 4:return[2]}})});return eQ.apply(this,arguments)}function eH(e){return eY.apply(this,arguments)}function eY(){eY=n(function(e){var r,t,n,a;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,4,,5]);return[4,eF(e,!0)];case 1:r=s.sent(),t=ek(),n=JSON.parse(eP.readFileSync(t,"utf-8"));n.dependencies=l(c({},n.dependencies),o({},e,r)),eP.writeFileSync(t,JSON.stringify(n,null,2)),console.log("Updated ".concat(e," to version ").concat(r));return[4,eu("npm i -f","Installing all dependencies with updated ".concat(e,"..."))];case 2:s.sent();return[4,eu("npm run lint:fix","Fixing lint issues for ".concat(e,"..."))];case 3:s.sent(),console.log("".concat(e," updated successfully."));return[3,5];case 4:a=s.sent();throw console.error("Failed to update ".concat(e,": ").concat(a.message)),a;case 5:return[2]}})});return eY.apply(this,arguments)}function eV(e,r){try{var t=eG.join(e,"package.json");return eP.existsSync(t)?JSON.parse(eP.readFileSync(t,"utf-8")).name===r:!1}catch(e){return console.error("Error reading package.json: ".concat(e.message)),!1}}var eB={serialize:function(e){return JSON.stringify(e,function(e,r){return a(r,Date)?{__type:"Date",value:r.toISOString()}:r})},deserialize: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})}};var eJ={common:{isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":d(e))=="object"?a(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1},isEmptyValidator:function e(){return /*#__PURE__*/function(){var e=n(function(e){return h(this,function(r){return[2,!eJ.common.isEmpty(e)]})});return function(r){return e.apply(this,arguments)}}()},isUniqueValidator:function e(e){return /*#__PURE__*/function(){var r=n(function(r){var t;return h(this,function(n){switch(n.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");t={$or:e.map(function(e){return o({},e,r)})};return[4,this.constructor.findOne(t)];case 1:return[2,!n.sent()]}})});return function(e){return r.apply(this,arguments)}}()},matchesRegexValidator:function e(e){return /*#__PURE__*/function(){var r=n(function(r){return h(this,function(t){if(!Array.isArray(e)||e.some(function(e){return!a(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(r)})]})});return function(e){return r.apply(this,arguments)}}()}}};function eW(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n=function(e,r){return Object.keys(r).forEach(function(t){var o=r[t],a=e[t];Array.isArray(o)?e[t]=p(new Set(p(Array.isArray(a)?a:[]).concat(p(o)))):(typeof o==="undefined"?"undefined":d(o))=="object"&&o!==null&&!Array.isArray(o)?e[t]=n((typeof a==="undefined"?"undefined":d(a))=="object"&&!Array.isArray(a)?a:{},o):e[t]=o}),e};return r.flatMap(function(e){return Array.isArray(e)?e:[e]}).reduce(function(e,r){return n(e,r)},{})}function e$(e){try{return JSON.parse(e),!0}catch(e){return!1}}function ez(e){return e=g.nfkc(e),e=e.replace(/[aàáạảãâầấậẩẫăằắặẳẵ]/g,"(a|\xe0|\xe1|ạ|ả|\xe3|\xe2|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ)"),e=e.replace(/[eèéẹẻẽêềếệểễ]/g,"(e|\xe8|\xe9|ẹ|ẻ|ẽ|\xea|ề|ế|ệ|ể|ễ)"),e=e.replace(/[iìíịỉĩ]/g,"(i|\xec|\xed|ị|ỉ|ĩ)"),e=e.replace(/[oòóọỏõôồốộổỗơờớợởỡ]/g,"(o|\xf2|\xf3|ọ|ỏ|\xf5|\xf4|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ)"),e=e.replace(/[uùúụủũưừứựửữ]/g,"(u|\xf9|\xfa|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ)"),e=e.replace(/[yỳýỵỷỹ]/g,"(y|ỳ|\xfd|ỵ|ỷ|ỹ)"),e=e.replace(/d|đ/g,"(d|đ)"),e=e.replace(/[AÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴ]/g,"(A|\xc0|\xc1|Ạ|Ả|\xc3|\xc2|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ă|Ằ|Ắ|Ặ|Ẳ|Ẵ)"),e=e.replace(/[EÈÉẸẺẼÊỀẾỆỂỄ]/g,"(E|\xc8|\xc9|Ẹ|Ẻ|Ẽ|\xca|Ề|Ế|Ệ|Ể|Ễ)"),e=e.replace(/[IÌÍỊỈĨ]/g,"(I|\xcc|\xcd|Ị|Ỉ|Ĩ)"),e=e.replace(/[OÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠ]/g,"(O|\xd2|\xd3|Ọ|Ỏ|\xd5|\xd4|Ồ|Ố|Ộ|Ổ|Ỗ|Ơ|Ờ|Ớ|Ợ|Ở|Ỡ)"),e=e.replace(/[UÙÚỤỦŨƯỪỨỰỬỮ]/g,"(U|\xd9|\xda|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|Ự|Ử|Ữ)"),e=e.replace(/[YỲÝỴỶỸ]/g,"(Y|Ỳ|\xdd|Ỵ|Ỷ|Ỹ)"),e=e.replace(/D|Đ/g,"(D|Đ)"),e}var eK=function(e){return e.normalize("NFD").replace(RegExp("\\p{Diacritic}","gu"),"")};export{em as aggregatePaginate,G as clearExpiredErrorLists,eW as deepMerge,B as displayResults,eu as executeCommand,e_ as generateModel,eb as generateSchema,eM as generateShortId,eC as generateSlug,ew as generateSlugQuery,eF as getLatestPackageVersion,N as getStoredErrorLists,eV as isCurrentProject,e$ as isJson,eq as isPackageOutdated,es as logProcessStep,eO as mongoosePaginate,ez as regexSearchMapper,eK as removeAccent,z as runWithSpinner,M as saveErrorListToStorage,eB as serializer,_ as storage,eg as throwResponse,eH as updatePackage,eJ as validate};
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(r){if(Array.isArray(r))return e(r)}function t(e,r,t,n,o,a,s){try{var i=e[a](s);var c=i.value}catch(e){t(e);return}if(i.done){r(c)}else{Promise.resolve(c).then(n,o)}}function n(e){return function(){var r=this,n=arguments;return new Promise(function(o,a){var s=e.apply(r,n);function i(e){t(s,o,a,i,c,"next",e)}function c(e){t(s,o,a,i,c,"throw",e)}i(undefined)})}}function o(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function a(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function s(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 r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var n=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}n.forEach(function(r){o(e,r,t[r])})}return e}function u(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(r){n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})}t.push.apply(t,n)}return t}function l(e,r){r=r!=null?r:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(r))}else{u(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function f(e,r){if(e==null)return{};var t=E(e,r);var n,o;if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++){n=a[o];if(r.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;t[n]=e[n]}}return t}function E(e,r){if(e==null)return{};var t={};var n=Object.keys(e);var o,a;for(a=0;a<n.length;a++){o=n[a];if(r.indexOf(o)>=0)continue;t[o]=e[o]}return t}function p(e){return r(e)||s(e)||g(e)||i()}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function g(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 h(e,r){var t,n,o,a,s={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]};return a={next:i(0),"throw":i(1),"return":i(2)},typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function i(e){return function(r){return c([e,r])}}function c(a){if(t)throw new TypeError("Generator is already executing.");while(s)try{if(t=1,n&&(o=a[0]&2?n["return"]:a[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,a[1])).done)return o;if(n=0,o)a=[a[0]&2,o.value];switch(a[0]){case 0:case 1:o=a;break;case 4:s.label++;return{value:a[1],done:false};case 5:s.label++;n=a[1];a=[0];continue;case 7:a=s.ops.pop();s.trys.pop();continue;default:if(!(o=s.trys,o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){s=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){s.label=a[1];break}if(a[0]===6&&s.label<o[1]){s.label=o[1];o=a;break}if(o&&s.label<o[2]){s.label=o[2];s.ops.push(a);break}if(o[2])s.ops.pop();s.trys.pop();continue}a=r.call(e,s)}catch(e){a=[6,e];n=0}finally{t=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}}import S from"unorm";import y from"localforage";import m from"node-persist";import O from"node:os";import v from"node:path";import A from"node:process";var D=(typeof window==="undefined"?"undefined":d(window))<"u",T=A.env.CYBERSKILL_STORAGE_DIR||v.join(O.homedir(),".cyberskill-storage");function R(){return _.apply(this,arguments)}function _(){_=n(function(){var e;return h(this,function(r){switch(r.label){case 0:e=!D&&!m.defaultInstance;if(!e)return[3,2];return[4,m.init({dir:T,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=r.sent();r.label=2;case 2:e;return[2]}})});return _.apply(this,arguments)}var b={get:function e(e){return n(function(){var r,t,n;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.getItem(e)];case 1:t=o.sent();return[3,5];case 2:return[4,R()];case 3:o.sent();return[4,m.getItem(e)];case 4:t=(r=o.sent())!==null&&r!==void 0?r:null;o.label=5;case 5:return[2,t];case 6:n=o.sent();return[2,(console.error('❌ [Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 7:return[2]}})})()},set:function e(e,r){return n(function(){var t,n;return h(this,function(o){switch(o.label){case 0:o.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.setItem(e,r)];case 1:t=o.sent();return[3,5];case 2:return[4,R()];case 3:o.sent();return[4,m.setItem(e,r)];case 4:t=o.sent();o.label=5;case 5:t;return[3,7];case 6:n=o.sent();console.error('❌ [Storage:set] Error setting key "'.concat(e,'":'),n);return[3,7];case 7:return[2]}})})()},remove:function e(e){return n(function(){var r,t;return h(this,function(n){switch(n.label){case 0:n.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.removeItem(e)];case 1:r=n.sent();return[3,5];case 2:return[4,R()];case 3:n.sent();return[4,m.removeItem(e)];case 4:r=n.sent();n.label=5;case 5:r;return[3,7];case 6:t=n.sent();console.error('❌ [Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,7];case 7:return[2]}})})()},keys:function e(){return n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.keys()];case 1:e=t.sent();return[3,5];case 2:return[4,R()];case 3:t.sent();return[4,m.keys()];case 4:e=t.sent()||[];t.label=5;case 5:return[2,e];case 6:r=t.sent();return[2,(console.error("❌ [Storage:keys] Error getting keys:",r),[])];case 7:return[2]}})})()},values:function e(){return n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:t.trys.push([0,7,,8]);if(!D)return[3,3];return[4,y.keys()];case 1:e=t.sent();return[4,Promise.all(e.map(function(e){return y.getItem(e)}))];case 2:return[2,t.sent().filter(function(e){return e!==null})];case 3:return[4,R()];case 4:t.sent();return[4,m.values()];case 5:return[2,t.sent()];case 6:return[3,8];case 7:r=t.sent();return[2,(console.error("❌ [Storage:values] Error getting values:",r),[])];case 8:return[2]}})})()},entries:function e(){return n(function(){var e,r,t,o;return h(this,function(a){switch(a.label){case 0:a.trys.push([0,8,,9]);if(!D)return[3,3];return[4,y.keys()];case 1:e=a.sent();return[4,Promise.all(e.map(/*#__PURE__*/function(){var e=n(function(e){var r;return h(this,function(t){switch(t.label){case 0:return[4,y.getItem(e)];case 1:r=t.sent();return[2,r!==null?[e,r]:null]}})});return function(r){return e.apply(this,arguments)}}()))];case 2:return[2,a.sent().filter(function(e){return e!==null})];case 3:return[4,R()];case 4:a.sent();return[4,m.keys()];case 5:r=a.sent();return[4,m.values()];case 6:t=a.sent();return[2,r.map(function(e,r){return[e,t[r]]})];case 7:return[3,9];case 8:o=a.sent();return[2,(console.error("❌ [Storage:entries] Error getting entries:",o),[])];case 9:return[2]}})})()},clear:function e(){return n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.clear()];case 1:e=t.sent();return[3,5];case 2:return[4,R()];case 3:t.sent();return[4,m.clear()];case 4:e=t.sent();t.label=5;case 5:e;return[3,7];case 6:r=t.sent();console.error("❌ [Storage:clear] Error clearing storage:",r);return[3,7];case 7:return[2]}})})()},length:function e(){return n(function(){var e,r;return h(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!D)return[3,2];return[4,y.length()];case 1:e=t.sent();return[3,5];case 2:return[4,R()];case 3:t.sent();return[4,m.keys()];case 4:e=t.sent().length;t.label=5;case 5:return[2,e];case 6:r=t.sent();return[2,(console.error("❌ [Storage:length] Error getting storage length:",r),0)];case 7:return[2]}})})()}};var I=function(e){return"error_list:".concat(e)};function C(e){return M.apply(this,arguments)}function M(){M=n(function(e){var r,t,n;return h(this,function(o){switch(o.label){case 0:if(!e.length)return[2];r=Date.now(),t=I(r);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,b.set(t,{errors:e,timestamp:r})];case 2:o.sent(),console.log("✅ Saved ".concat(e.length," errors to storage with key: ").concat(t));return[3,4];case 3:n=o.sent();console.error("❌ Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return M.apply(this,arguments)}function w(){return N.apply(this,arguments)}function N(){N=n(function(){var e,r,t,n,o,a,s,i,c,u,l,f;return h(this,function(E){switch(E.label){case 0:E.trys.push([0,10,,11]);return[4,b.keys()];case 1:e=E.sent().filter(function(e){return e.startsWith("error_list:")}),r=[];t=true,n=false,o=undefined;E.label=2;case 2:E.trys.push([2,7,8,9]);a=e[Symbol.iterator]();E.label=3;case 3:if(!!(t=(s=a.next()).done))return[3,6];i=s.value;return[4,b.get(i)];case 4:u=E.sent();u&&(c=r).push.apply(c,p(u.errors));E.label=5;case 5:t=true;return[3,3];case 6:return[3,9];case 7:l=E.sent();n=true;o=l;return[3,9];case 8:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw o}}return[7];case 9:return[2,r];case 10:f=E.sent();return[2,(console.error("❌ Failed to retrieve stored errors: ".concat(f.message)),[])];case 11:return[2]}})});return N.apply(this,arguments)}function P(){return G.apply(this,arguments)}function G(){G=n(function(){var e,r,t,n,o,a,s,i,c;return h(this,function(u){switch(u.label){case 0:u.trys.push([0,10,,11]);return[4,b.keys()];case 1:e=u.sent().filter(function(e){return e.startsWith("error_list:")});r=true,t=false,n=undefined;u.label=2;case 2:u.trys.push([2,7,8,9]);o=e[Symbol.iterator]();u.label=3;case 3:if(!!(r=(a=o.next()).done))return[3,6];s=a.value;return[4,b.remove(s)];case 4:u.sent(),console.log("\uD83D\uDDD1️ Removed error list: ".concat(s));u.label=5;case 5:r=true;return[3,3];case 6:return[3,9];case 7:i=u.sent();t=true;n=i;return[3,9];case 8:try{if(!r&&o.return!=null){o.return()}}finally{if(t){throw n}}return[7];case 9:return[3,11];case 10:c=u.sent();console.error("❌ Failed to clear error lists: ".concat(c.message));return[3,11];case 11:return[2]}})});return G.apply(this,arguments)}import U from"boxen";import L from"chalk";var F=L.blue,j=L.red,x=L.yellow,k=L.green,q=L.gray,Q=L.bold;function H(e,r){var t=new Map([[j,"red"],[x,"yellow"],[k,"green"]]).get(r)||"green";return U(Q(r(e)),{padding:1,margin:1,borderStyle:"arrow",borderColor:t})}function Y(e,r,t,n){e.length&&(e.forEach(function(e){var n=e.file,o=e.position,a=e.rule,s=e.message;console.log("".concat(r("".concat(t," File:"))," ").concat(F("".concat(n).concat(o?":".concat(o):"")))),a&&console.log(" ".concat(r("Rule:")," ").concat(r(a))),console.log(" ".concat(r("Message:")," ").concat(r(s)))}),console.log(H(Q(r("".concat(t," Total ").concat(n,": ").concat(e.length))),r)),console.log(q("─".repeat(40))))}function V(){return B.apply(this,arguments)}function B(){B=n(function(){var e,r,t;return h(this,function(n){switch(n.label){case 0:return[4,w()];case 1:e=n.sent(),r=e.filter(function(e){return e.type==="error"}),t=e.filter(function(e){return e.type==="warning"});!r.length&&!t.length?console.log(H(Q(k("✔ NO ISSUE FOUND!")),k)):(Y(t,x,"⚠","Warnings"),Y(r,j,"✖","Errors"));return[2]}})});return B.apply(this,arguments)}import J from"node:process";import W from"ora";function $(e,r){return z.apply(this,arguments)}function z(){z=n(function(e,r){var t,n,o,a,s,i,c;var u=arguments;return h(this,function(l){switch(l.label){case 0:t=u.length>2&&u[2]!==void 0?u[2]:{};n=t.successMessage,o=t.failureMessage,a=t.exitOnError,s=a===void 0?!0:a,i=W({text:e,color:"cyan",spinner:"dots"}).start();l.label=1;case 1:l.trys.push([1,4,,5]);return[4,r()];case 2:l.sent();return[4,w()];case 3:l.sent().length>0?s?(i.fail(o||"".concat(e," ❌")),J.exit(1)):i.fail(o||"".concat(e," ❌")):i.succeed(n||"".concat(e," ✅"));return[3,5];case 4:c=l.sent();if(i.fail(o||"".concat(e," ❌")),s)J.exit(1);else throw c;return[3,5];case 5:return[2]}})});return z.apply(this,arguments)}import K from"chalk";import{exec as X}from"node:child_process";import Z from"node:process";import*as ee from"node:util";var er=ee.promisify(X),et=K.gray,en=K.white;function eo(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";var t=new Date().toLocaleString();console.log("".concat(r," [").concat(t,"] ").concat(en(e)))}function ea(e){var r=/^\s*(\d+):(\d+)\s+(error|warning)\s+(\S+)\s+(\S+)$/,t=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,n=/^✖\s+(.*?)\s+\[(.*?)\]$/,o=[],a="",s=[];e.split("\n").forEach(function(e){if(e.startsWith("/"))a=e.trim();else{var i=r.exec(e);if(i&&a)s.push({file:a,position:"".concat(i[1],":").concat(i[2]),type:i[3]==="error"?"error":"warning",message:i[4].trim(),rule:i[5].trim()});else{var c=t.exec(e);if(c)s.push({file:c[1],position:"".concat(c[2],":").concat(c[3]),type:c[4],message:c[5].trim()});else{var u=n.exec(e);u?s.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):o.push(e.trim())}}}}),s.length>0&&C(s),o.length>0&&(console.log(et("Unmatched lines:")),o.forEach(function(e){return console.info(e)}))}function es(e){try{var r=JSON.parse(e),t=[];r.forEach(function(e){var r=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,o=e.line,a=e.column,s=e.ruleId,i=e.message;t.push({type:n===2?"error":"warning",file:r,position:"".concat(o,":").concat(a),rule:s,message:i})})}),t.length>0&&C(t)}catch(r){console.log("output",e),ea(e)}}function ei(e,r){return ec.apply(this,arguments)}function ec(){ec=n(function(e,r){var t,n,o,a,s,i,c,u,l;var f=arguments;return h(this,function(E){switch(E.label){case 0:t=f.length>2&&f[2]!==void 0?f[2]:es;eo(r);n=new AbortController;Z.on("SIGINT",function(){console.log("Terminating process..."),n.abort(),Z.exit()});E.label=1;case 1:E.trys.push([1,3,,4]);return[4,er(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:o=E.sent(),a=o.stdout,s=o.stderr;[a,s].forEach(function(e){return e&&t(e)});return[3,4];case 3:i=E.sent();c=i.stdout,u=i.stderr,l=i.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&console.error("Command failed: ".concat(l));return[3,4];case 4:return[2]}})});return ec.apply(this,arguments)}import{GraphQLError as eu}from"graphql";import{dirname as el}from"node:path";import{fileURLToPath as ef}from"node:url";var eE=ef(import.meta.url),ep=el(eE);var ed={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};function eg(e){var r=e.message,t=e.status,n=t===void 0?ed.INTERNAL_SERVER_ERROR:t,o=e.type,a=o===void 0?"graphql":o;var s;var i=(s=r!==null&&r!==void 0?r:n.MESSAGE)!==null&&s!==void 0?s:"Internal server error";throw a==="graphql"?new eu(i,{extensions:{code:n.CODE}}):new Error(i)}import eh from"crypto-js";import eS from"mongoose-aggregate-paginate-v2";import ey from"mongoose-paginate-v2";import em from"slugify";import{v4 as eO}from"uuid";function ev(e,r){r.filter(function(e){return typeof e=="function"}).forEach(function(r){return e.plugin(r)})}function eA(e,r){r.forEach(function(r){var t=r.method,n=r.fn;return e.pre(t,n)})}function eD(e){return new e.Schema({id:{type:String,default:eO,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})}function eT(e){var r=e.mongoose,t=e.schema,n=e.virtuals,o=n===void 0?[]:n,a=e.standalone,s=a===void 0?!1:a;var i=new r.Schema(t,{strict:!0});return o.forEach(function(e){var r=e.name,t=e.options,n=e.get;var o=i.virtual(r,t);n&&o.get(n)}),s||i.add(eD(r)),i}function eR(e){var r=e.mongoose,t=e.name,n=e.schema,o=e.pagination,a=o===void 0?!1:o,s=e.aggregate,i=s===void 0?!1:s,c=e.virtuals,u=c===void 0?[]:c,l=e.middlewares,f=l===void 0?[]:l;if(!t)throw new Error("Model name is required.");if(r.models[t])return r.models[t];var E=eT({mongoose:r,schema:n,virtuals:u});return ev(E,[a&&ey,i&&eS]),eA(E,f),r.model(t,E)}var e_=em.default||em;function eb(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1?arguments[1]:void 0;var t=r||{},n=t.lower,o=n===void 0?!0:n,a=t.locale,s=a===void 0?"vi":a,i=f(t,["lower","locale"]);return e_(e,c({lower:o,locale:s},i))}function eI(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return eh.SHA256(e).toString(eh.enc.Hex).slice(0,r)}function eC(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2?arguments[2]:void 0;return l(c({},r,t&&{id:{$ne:t}}),{$or:[{slug:e},{slugHistory:e}]})}import eM from"node-fetch";import ew from"node:fs";import eN from"node:path";import eP from"node:process";var eG=24*60*60*1e3;function eU(e){return eL.apply(this,arguments)}function eL(){eL=n(function(e){var r,t,n,o,a,s,i,c,u,l;var f=arguments;return h(this,function(E){switch(E.label){case 0:r=f.length>1&&f[1]!==void 0?f[1]:!1;t="npm_version:".concat(e),n="npm_metadata:".concat(e);return[4,b.get(t)];case 1:o=E.sent();return[4,b.get(n)];case 2:a=E.sent(),s=o&&Date.now()-o.timestamp<eG;if(!r&&s)return[2,(console.log("Using cached version for ".concat(e,": ").concat(o.version)),o.version)];i={};(a===null||a===void 0?void 0:a.etag)&&(i["If-None-Match"]=a.etag),(a===null||a===void 0?void 0:a.lastModified)&&(i["If-Modified-Since"]=a.lastModified);E.label=3;case 3:E.trys.push([3,8,,9]);console.log("Fetching latest version for ".concat(e,"..."));return[4,eM("https://registry.npmjs.org/".concat(e,"/latest"),{headers:i})];case 4:c=E.sent();if(c.status===304&&o)return[2,(console.log("Cache is still valid for ".concat(e,": ").concat(o.version)),o.version)];if(!c.ok)throw new Error("Failed to fetch latest version: ".concat(c.statusText));return[4,c.json()];case 5:u=E.sent().version;return[4,b.set(t,{version:u,timestamp:Date.now()})];case 6:E.sent();return[4,b.set(n,{etag:c.headers.get("ETag")||void 0,lastModified:c.headers.get("Last-Modified")||void 0})];case 7:return[2,(E.sent(),console.log("Cached latest version for ".concat(e,": ").concat(u)),u)];case 8:l=E.sent();if(console.error("Error fetching latest version for ".concat(e,": ").concat(l.message)),o)return[2,(console.warn("Falling back to cached version for ".concat(e,": ").concat(o.version)),o.version)];throw l;case 9:return[2]}})});return eL.apply(this,arguments)}function eF(e){return eN.join(eP.cwd(),"node_modules",e,"package.json")}function ej(){return eN.join(eP.cwd(),"package.json")}function ex(e){return ek.apply(this,arguments)}function ek(){ek=n(function(e){var r,t,n,o,a;var s=arguments;return h(this,function(i){switch(i.label){case 0:r=s.length>1&&s[1]!==void 0?s[1]:!0;i.label=1;case 1:i.trys.push([1,3,,4]);t=eF(e);if(!ew.existsSync(t))return[2,(console.log("".concat(e," is not installed.")),!0)];n=JSON.parse(ew.readFileSync(t,"utf-8")).version;return[4,eU(e,r)];case 2:o=i.sent();return[2,(console.log("Installed version of ".concat(e,": ").concat(n)),console.log("Latest version of ".concat(e,": ").concat(o)),n!==o)];case 3:a=i.sent();return[2,(console.warn("Failed to check version for ".concat(e,": ").concat(a.message)),!0)];case 4:return[2]}})});return ek.apply(this,arguments)}function eq(e){return eQ.apply(this,arguments)}function eQ(){eQ=n(function(e){var r,t,n,a;return h(this,function(s){switch(s.label){case 0:s.trys.push([0,4,,5]);return[4,eU(e,!0)];case 1:r=s.sent(),t=ej(),n=JSON.parse(ew.readFileSync(t,"utf-8"));n.dependencies=l(c({},n.dependencies),o({},e,r)),ew.writeFileSync(t,JSON.stringify(n,null,2)),console.log("Updated ".concat(e," to version ").concat(r));return[4,ei("npm i -f","Installing all dependencies with updated ".concat(e,"..."))];case 2:s.sent();return[4,ei("npm run lint:fix","Fixing lint issues for ".concat(e,"..."))];case 3:s.sent(),console.log("".concat(e," updated successfully."));return[3,5];case 4:a=s.sent();throw console.error("Failed to update ".concat(e,": ").concat(a.message)),a;case 5:return[2]}})});return eQ.apply(this,arguments)}function eH(e,r){try{var t=eN.join(e,"package.json");return ew.existsSync(t)?JSON.parse(ew.readFileSync(t,"utf-8")).name===r:!1}catch(e){return console.error("Error reading package.json: ".concat(e.message)),!1}}var eY={serialize:function(e){return JSON.stringify(e,function(e,r){return a(r,Date)?{__type:"Date",value:r.toISOString()}:r})},deserialize: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})}};var eV={common:{isEmpty:function e(e){return e==null?!0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":d(e))=="object"?a(e,Date)?!1:Object.keys(e).length===0:typeof e=="string"?e.trim().length===0:!1},isEmptyValidator:function e(){return /*#__PURE__*/function(){var e=n(function(e){return h(this,function(r){return[2,!eV.common.isEmpty(e)]})});return function(r){return e.apply(this,arguments)}}()},isUniqueValidator:function e(e){return /*#__PURE__*/function(){var r=n(function(r){var t;return h(this,function(n){switch(n.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");t={$or:e.map(function(e){return o({},e,r)})};return[4,this.constructor.findOne(t)];case 1:return[2,!n.sent()]}})});return function(e){return r.apply(this,arguments)}}()},matchesRegexValidator:function e(e){return /*#__PURE__*/function(){var r=n(function(r){return h(this,function(t){if(!Array.isArray(e)||e.some(function(e){return!a(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(r)})]})});return function(e){return r.apply(this,arguments)}}()}}};function eB(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n=function(e,r){return Object.keys(r).forEach(function(t){var o=r[t],a=e[t];Array.isArray(o)?e[t]=p(new Set(p(Array.isArray(a)?a:[]).concat(p(o)))):(typeof o==="undefined"?"undefined":d(o))=="object"&&o!==null&&!Array.isArray(o)?e[t]=n((typeof a==="undefined"?"undefined":d(a))=="object"&&!Array.isArray(a)?a:{},o):e[t]=o}),e};return r.flatMap(function(e){return Array.isArray(e)?e:[e]}).reduce(function(e,r){return n(e,r)},{})}function eJ(e){try{return JSON.parse(e),!0}catch(e){return!1}}function eW(e){return e=S.nfkc(e),e=e.replace(/[aàáạảãâầấậẩẫăằắặẳẵ]/g,"(a|\xe0|\xe1|ạ|ả|\xe3|\xe2|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ)"),e=e.replace(/[eèéẹẻẽêềếệểễ]/g,"(e|\xe8|\xe9|ẹ|ẻ|ẽ|\xea|ề|ế|ệ|ể|ễ)"),e=e.replace(/[iìíịỉĩ]/g,"(i|\xec|\xed|ị|ỉ|ĩ)"),e=e.replace(/[oòóọỏõôồốộổỗơờớợởỡ]/g,"(o|\xf2|\xf3|ọ|ỏ|\xf5|\xf4|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ)"),e=e.replace(/[uùúụủũưừứựửữ]/g,"(u|\xf9|\xfa|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ)"),e=e.replace(/[yỳýỵỷỹ]/g,"(y|ỳ|\xfd|ỵ|ỷ|ỹ)"),e=e.replace(/d|đ/g,"(d|đ)"),e=e.replace(/[AÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴ]/g,"(A|\xc0|\xc1|Ạ|Ả|\xc3|\xc2|Ầ|Ấ|Ậ|Ẩ|Ẫ|Ă|Ằ|Ắ|Ặ|Ẳ|Ẵ)"),e=e.replace(/[EÈÉẸẺẼÊỀẾỆỂỄ]/g,"(E|\xc8|\xc9|Ẹ|Ẻ|Ẽ|\xca|Ề|Ế|Ệ|Ể|Ễ)"),e=e.replace(/[IÌÍỊỈĨ]/g,"(I|\xcc|\xcd|Ị|Ỉ|Ĩ)"),e=e.replace(/[OÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠ]/g,"(O|\xd2|\xd3|Ọ|Ỏ|\xd5|\xd4|Ồ|Ố|Ộ|Ổ|Ỗ|Ơ|Ờ|Ớ|Ợ|Ở|Ỡ)"),e=e.replace(/[UÙÚỤỦŨƯỪỨỰỬỮ]/g,"(U|\xd9|\xda|Ụ|Ủ|Ũ|Ư|Ừ|Ứ|Ự|Ử|Ữ)"),e=e.replace(/[YỲÝỴỶỸ]/g,"(Y|Ỳ|\xdd|Ỵ|Ỷ|Ỹ)"),e=e.replace(/D|Đ/g,"(D|Đ)"),e}var e$=function(e){return e.normalize("NFD").replace(RegExp("\\p{Diacritic}","gu"),"")};export{eS as aggregatePaginate,P as clearAllErrorLists,eB as deepMerge,V as displayResults,ei as executeCommand,eR as generateModel,eT as generateSchema,eI as generateShortId,eb as generateSlug,eC as generateSlugQuery,eU as getLatestPackageVersion,w as getStoredErrorLists,eH as isCurrentProject,eJ as isJson,ex as isPackageOutdated,eo as logProcessStep,ey as mongoosePaginate,eW as regexSearchMapper,e$ as removeAccent,$ as runWithSpinner,C as saveErrorListToStorage,eY as serializer,b as storage,eg as throwResponse,eq as updatePackage,eV as validate};
@@ -0,0 +1,5 @@
1
+ import { T_ThrowResponseArgs } from '../typescript/log.cjs';
2
+
3
+ declare function throwResponse({ message, status, type, }: T_ThrowResponseArgs): never;
4
+
5
+ export { throwResponse };
@@ -0,0 +1,5 @@
1
+ import { T_ThrowResponseArgs } from '../typescript/log.js';
2
+
3
+ declare function throwResponse({ message, status, type, }: T_ThrowResponseArgs): never;
4
+
5
+ export { throwResponse };
@@ -0,0 +1,34 @@
1
+ export { default as aggregatePaginate } from 'mongoose-aggregate-paginate-v2';
2
+ export { default as mongoosePaginate } from 'mongoose-paginate-v2';
3
+ import { C_Document, I_GenerateSchemaOptions, T_MongooseShema, I_GenerateModelOptions, I_ExtendedModel, I_SlugifyOptions, T_FilterQuery, T_GenerateSlugQueryResponse } from '../typescript/mongoose.cjs';
4
+ import 'mongodb';
5
+ import 'mongoose';
6
+
7
+ /**
8
+ * Generate a mongoose schema with optional virtuals and generic fields.
9
+ * @param options - Schema generation options.
10
+ * @param options.mongoose - The mongoose instance.
11
+ * @param options.schema - The schema definition.
12
+ * @param options.virtuals - List of virtual fields.
13
+ * @param options.standalone - Whether to include generic fields.
14
+ * @returns Enhanced schema.
15
+ */
16
+ declare function generateSchema<D extends Partial<C_Document>>({ mongoose, schema, virtuals, standalone, }: I_GenerateSchemaOptions<D>): T_MongooseShema<D>;
17
+ /**
18
+ * Generate a mongoose model with optional pagination, aggregation, and middleware.
19
+ * @param options - Model generation options.
20
+ * @param options.mongoose - The mongoose instance.
21
+ * @param options.name - The name of the model.
22
+ * @param options.schema - The schema definition.
23
+ * @param options.pagination - Whether to enable pagination plugin.
24
+ * @param options.aggregate - Whether to enable aggregate pagination plugin.
25
+ * @param options.virtuals - List of virtual fields.
26
+ * @param options.middlewares - Middleware functions to add.
27
+ * @returns Mongoose model.
28
+ */
29
+ declare function generateModel<D extends Partial<C_Document>>({ mongoose, name, schema, pagination, aggregate, virtuals, middlewares, }: I_GenerateModelOptions<D>): I_ExtendedModel<D>;
30
+ declare function generateSlug(str?: string, options?: I_SlugifyOptions): string;
31
+ declare function generateShortId(uuid: string, length?: number): string;
32
+ declare function generateSlugQuery<D>(slug: string, filters?: T_FilterQuery<D>, id?: string): T_GenerateSlugQueryResponse<D>;
33
+
34
+ export { generateModel, generateSchema, generateShortId, generateSlug, generateSlugQuery };
@@ -0,0 +1,34 @@
1
+ export { default as aggregatePaginate } from 'mongoose-aggregate-paginate-v2';
2
+ export { default as mongoosePaginate } from 'mongoose-paginate-v2';
3
+ import { C_Document, I_GenerateSchemaOptions, T_MongooseShema, I_GenerateModelOptions, I_ExtendedModel, I_SlugifyOptions, T_FilterQuery, T_GenerateSlugQueryResponse } from '../typescript/mongoose.js';
4
+ import 'mongodb';
5
+ import 'mongoose';
6
+
7
+ /**
8
+ * Generate a mongoose schema with optional virtuals and generic fields.
9
+ * @param options - Schema generation options.
10
+ * @param options.mongoose - The mongoose instance.
11
+ * @param options.schema - The schema definition.
12
+ * @param options.virtuals - List of virtual fields.
13
+ * @param options.standalone - Whether to include generic fields.
14
+ * @returns Enhanced schema.
15
+ */
16
+ declare function generateSchema<D extends Partial<C_Document>>({ mongoose, schema, virtuals, standalone, }: I_GenerateSchemaOptions<D>): T_MongooseShema<D>;
17
+ /**
18
+ * Generate a mongoose model with optional pagination, aggregation, and middleware.
19
+ * @param options - Model generation options.
20
+ * @param options.mongoose - The mongoose instance.
21
+ * @param options.name - The name of the model.
22
+ * @param options.schema - The schema definition.
23
+ * @param options.pagination - Whether to enable pagination plugin.
24
+ * @param options.aggregate - Whether to enable aggregate pagination plugin.
25
+ * @param options.virtuals - List of virtual fields.
26
+ * @param options.middlewares - Middleware functions to add.
27
+ * @returns Mongoose model.
28
+ */
29
+ declare function generateModel<D extends Partial<C_Document>>({ mongoose, name, schema, pagination, aggregate, virtuals, middlewares, }: I_GenerateModelOptions<D>): I_ExtendedModel<D>;
30
+ declare function generateSlug(str?: string, options?: I_SlugifyOptions): string;
31
+ declare function generateShortId(uuid: string, length?: number): string;
32
+ declare function generateSlugQuery<D>(slug: string, filters?: T_FilterQuery<D>, id?: string): T_GenerateSlugQueryResponse<D>;
33
+
34
+ export { generateModel, generateSchema, generateShortId, generateSlug, generateSlugQuery };
@@ -1 +1 @@
1
- "use strict";function e(e,t,r,n,a,s,o){try{var c=e[s](o);var u=c.value}catch(e){r(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(n,a)}}function t(t){return function(){var r=this,n=arguments;return new Promise(function(a,s){var o=t.apply(r,n);function c(t){e(o,a,s,c,u,"next",t)}function u(t){e(o,a,s,c,u,"throw",t)}c(undefined)})}}function r(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function n(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var a=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){a=a.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}a.forEach(function(t){r(e,t,n[t])})}return e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(t){n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,n)}return r}function s(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{a(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function o(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function c(e,t){var r,n,a,s,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]};return s={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function c(e){return function(t){return u([e,t])}}function u(s){if(r)throw new TypeError("Generator is already executing.");while(o)try{if(r=1,n&&(a=s[0]&2?n["return"]:s[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,s[1])).done)return a;if(n=0,a)s=[s[0]&2,a.value];switch(s[0]){case 0:case 1:a=s;break;case 4:o.label++;return{value:s[1],done:false};case 5:o.label++;n=s[1];s=[0];continue;case 7:s=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(s[0]===6||s[0]===2)){o=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){o.label=s[1];break}if(s[0]===6&&o.label<a[1]){o.label=a[1];a=s;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(s);break}if(a[2])o.ops.pop();o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e];n=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var u=Object.create;var i=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var d=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var g=function(e,t){for(var r in t)i(e,r,{get:t[r],enumerable:!0})},h=function(e,t,r,n){var a=true,s=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":o(t))=="object"||typeof t=="function")try{var u=function(){var a=g.value;!p.call(e,a)&&a!==r&&i(e,a,{get:function(){return t[a]},enumerable:!(n=l(t,a))||n.enumerable})};for(var d=f(t)[Symbol.iterator](),g;!(a=(g=d.next()).done);a=true)u()}catch(e){s=true;c=e}finally{try{if(!a&&d.return!=null){d.return()}}finally{if(s){throw c}}}return e};var v=function(e,t,r){return r=e!=null?u(d(e)):{},h(t||!e||!e.__esModule?i(r,"default",{value:e,enumerable:!0}):r,e)},y=function(e){return h(i({},"__esModule",{value:!0}),e)};var b={};g(b,{getLatestPackageVersion:function(){return X},isCurrentProject:function(){return eo},isPackageOutdated:function(){return er},updatePackage:function(){return ea}});module.exports=y(b);var m=v(require("node-fetch"),1),w=v(require("fs"),1),O=v(require("path"),1),S=v(require("process"),1);var k=v(require("chalk"),1),P=require("child_process"),j=v(require("process"),1),E=v(require("util"),1);var x=v(require("localforage"),1),I=v(require("node-persist"),1),_=v(require("os"),1),q=v(require("path"),1),D=v(require("process"),1),F=(typeof window==="undefined"?"undefined":o(window))<"u",N=D.default.env.CYBERSKILL_STORAGE_DIR||q.default.join(_.default.homedir(),".cyberskill-storage");function C(){return L.apply(this,arguments)}function L(){L=t(function(){var e;return c(this,function(t){switch(t.label){case 0:e=!F&&!I.default.defaultInstance;if(!e)return[3,2];return[4,I.default.init({dir:N,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 L.apply(this,arguments)}var M={get:function e(e){return t(function(){var t,r,n;return c(this,function(a){switch(a.label){case 0:a.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.getItem(e)];case 1:r=a.sent();return[3,5];case 2:return[4,C()];case 3:a.sent();return[4,I.default.getItem(e)];case 4:r=(t=a.sent())!==null&&t!==void 0?t:null;a.label=5;case 5:return[2,r];case 6:n=a.sent();return[2,(console.error('❌ [Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 7:return[2]}})})()},set:function e(e,r){return t(function(){var t,n;return c(this,function(a){switch(a.label){case 0:a.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.setItem(e,r)];case 1:t=a.sent();return[3,5];case 2:return[4,C()];case 3:a.sent();return[4,I.default.setItem(e,r)];case 4:t=a.sent();a.label=5;case 5:t;return[3,7];case 6:n=a.sent();console.error('❌ [Storage:set] Error setting key "'.concat(e,'":'),n);return[3,7];case 7:return[2]}})})()},remove:function e(e){return t(function(){var t,r;return c(this,function(n){switch(n.label){case 0:n.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.removeItem(e)];case 1:t=n.sent();return[3,5];case 2:return[4,C()];case 3:n.sent();return[4,I.default.removeItem(e)];case 4:t=n.sent();n.label=5;case 5:t;return[3,7];case 6:r=n.sent();console.error('❌ [Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,7];case 7:return[2]}})})()},keys:function e(){return t(function(){var e,t;return c(this,function(r){switch(r.label){case 0:r.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.keys()];case 1:e=r.sent();return[3,5];case 2:return[4,C()];case 3:r.sent();return[4,I.default.keys()];case 4:e=r.sent()||[];r.label=5;case 5:return[2,e];case 6:t=r.sent();return[2,(console.error("❌ [Storage:keys] Error getting keys:",t),[])];case 7:return[2]}})})()},values:function e(){return t(function(){var e,t;return c(this,function(r){switch(r.label){case 0:r.trys.push([0,7,,8]);if(!F)return[3,3];return[4,x.default.keys()];case 1:e=r.sent();return[4,Promise.all(e.map(function(e){return x.default.getItem(e)}))];case 2:return[2,r.sent().filter(function(e){return e!==null})];case 3:return[4,C()];case 4:r.sent();return[4,I.default.values()];case 5:return[2,r.sent()];case 6:return[3,8];case 7:t=r.sent();return[2,(console.error("❌ [Storage:values] Error getting values:",t),[])];case 8:return[2]}})})()},entries:function e(){return t(function(){var e,r,n,a;return c(this,function(s){switch(s.label){case 0:s.trys.push([0,8,,9]);if(!F)return[3,3];return[4,x.default.keys()];case 1:e=s.sent();return[4,Promise.all(e.map(/*#__PURE__*/function(){var e=t(function(e){var t;return c(this,function(r){switch(r.label){case 0:return[4,x.default.getItem(e)];case 1:t=r.sent();return[2,t!==null?[e,t]:null]}})});return function(t){return e.apply(this,arguments)}}()))];case 2:return[2,s.sent().filter(function(e){return e!==null})];case 3:return[4,C()];case 4:s.sent();return[4,I.default.keys()];case 5:r=s.sent();return[4,I.default.values()];case 6:n=s.sent();return[2,r.map(function(e,t){return[e,n[t]]})];case 7:return[3,9];case 8:a=s.sent();return[2,(console.error("❌ [Storage:entries] Error getting entries:",a),[])];case 9:return[2]}})})()},clear:function e(){return t(function(){var e,t;return c(this,function(r){switch(r.label){case 0:r.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.clear()];case 1:e=r.sent();return[3,5];case 2:return[4,C()];case 3:r.sent();return[4,I.default.clear()];case 4:e=r.sent();r.label=5;case 5:e;return[3,7];case 6:t=r.sent();console.error("❌ [Storage:clear] Error clearing storage:",t);return[3,7];case 7:return[2]}})})()},length:function e(){return t(function(){var e,t;return c(this,function(r){switch(r.label){case 0:r.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.length()];case 1:e=r.sent();return[3,5];case 2:return[4,C()];case 3:r.sent();return[4,I.default.keys()];case 4:e=r.sent().length;r.label=5;case 5:return[2,e];case 6:t=r.sent();return[2,(console.error("❌ [Storage:length] Error getting storage length:",t),0)];case 7:return[2]}})})()}};var J=function(e){return"error_list:".concat(e)},T=24*60*60*1e3;function R(e){return U.apply(this,arguments)}function U(){U=t(function(e){var t,r,n;return c(this,function(a){switch(a.label){case 0:if(!e.length)return[2];t=Date.now(),r=J(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,M.set(r,{errors:e,timestamp:t})];case 2:a.sent(),console.log("✅ Saved ".concat(e.length," errors to storage with key: ").concat(r));return[3,4];case 3:n=a.sent();console.error("❌ Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return U.apply(this,arguments)}var G=E.promisify(P.exec),V=k.default,$=V.gray,A=V.white,B=[];function K(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";var r=new Date().toLocaleString();console.log("".concat(t," [").concat(r,"] ").concat(A(e)))}function W(e){var t=/^\s*(\d+):(\d+)\s+(error|warning)\s+(\S+)\s+(\S+)$/,r=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,n=/^✖\s+(.*?)\s+\[(.*?)\]$/,a=[],s="";e.split("\n").forEach(function(e){if(e.startsWith("/"))s=e.trim();else{var o=t.exec(e);if(o&&s)B.push({file:s,position:"".concat(o[1],":").concat(o[2]),type:o[3]==="error"?"error":"warning",message:o[4].trim(),rule:o[5].trim()});else{var c=r.exec(e);if(c)B.push({file:c[1],position:"".concat(c[2],":").concat(c[3]),type:c[4],message:c[5].trim()});else{var u=n.exec(e);u?B.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):a.push(e.trim())}}}}),a.length>0&&(console.log($("Unmatched lines:")),a.forEach(function(e){return console.info(e)}))}function Y(e){try{JSON.parse(e).forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,n=e.line,a=e.column,s=e.ruleId,o=e.message;B.push({type:r===2?"error":"warning",file:t,position:"".concat(n,":").concat(a),rule:s,message:o})})})}catch(t){W(e)}}function z(e,t){return H.apply(this,arguments)}function H(){H=t(function(e,t){var r,n,a,s,o,u,i;var l=arguments;return c(this,function(c){switch(c.label){case 0:r=l.length>2&&l[2]!==void 0?l[2]:Y;K(t);n=new AbortController;j.default.on("SIGINT",function(){console.log("Terminating process..."),n.abort(),j.default.exit()});c.label=1;case 1:c.trys.push([1,5,,6]);return[4,G(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:a=c.sent(),s=a.stdout,o=a.stderr;[s,o].forEach(function(e){return e&&r(e)});u=B.length;if(!u)return[3,4];return[4,R(B)];case 3:u=c.sent();c.label=4;case 4:u;return[3,6];case 5:i=c.sent();console.error("Command failed: ".concat(i.message));return[3,6];case 6:return[2]}})});return H.apply(this,arguments)}var Q=24*60*60*1e3;function X(e){return Z.apply(this,arguments)}function Z(){Z=t(function(e){var t,r,n,a,s,o,u,i,l,f;var d=arguments;return c(this,function(c){switch(c.label){case 0:t=d.length>1&&d[1]!==void 0?d[1]:!1;r="npm_version:".concat(e),n="npm_metadata:".concat(e);return[4,M.get(r)];case 1:a=c.sent();return[4,M.get(n)];case 2:s=c.sent(),o=a&&Date.now()-a.timestamp<Q;if(!t&&o)return[2,(console.log("Using cached version for ".concat(e,": ").concat(a.version)),a.version)];u={};(s===null||s===void 0?void 0:s.etag)&&(u["If-None-Match"]=s.etag),(s===null||s===void 0?void 0:s.lastModified)&&(u["If-Modified-Since"]=s.lastModified);c.label=3;case 3:c.trys.push([3,8,,9]);console.log("Fetching latest version for ".concat(e,"..."));return[4,(0,m.default)("https://registry.npmjs.org/".concat(e,"/latest"),{headers:u})];case 4:i=c.sent();if(i.status===304&&a)return[2,(console.log("Cache is still valid for ".concat(e,": ").concat(a.version)),a.version)];if(!i.ok)throw new Error("Failed to fetch latest version: ".concat(i.statusText));return[4,i.json()];case 5:l=c.sent().version;return[4,M.set(r,{version:l,timestamp:Date.now()})];case 6:c.sent();return[4,M.set(n,{etag:i.headers.get("ETag")||void 0,lastModified:i.headers.get("Last-Modified")||void 0})];case 7:return[2,(c.sent(),console.log("Cached latest version for ".concat(e,": ").concat(l)),l)];case 8:f=c.sent();if(console.error("Error fetching latest version for ".concat(e,": ").concat(f.message)),a)return[2,(console.warn("Falling back to cached version for ".concat(e,": ").concat(a.version)),a.version)];throw f;case 9:return[2]}})});return Z.apply(this,arguments)}function ee(e){return O.default.join(S.default.cwd(),"node_modules",e,"package.json")}function et(){return O.default.join(S.default.cwd(),"package.json")}function er(e){return en.apply(this,arguments)}function en(){en=t(function(e){var t,r,n,a,s;var o=arguments;return c(this,function(c){switch(c.label){case 0:t=o.length>1&&o[1]!==void 0?o[1]:!0;c.label=1;case 1:c.trys.push([1,3,,4]);r=ee(e);if(!w.default.existsSync(r))return[2,(console.log("".concat(e," is not installed.")),!0)];n=JSON.parse(w.default.readFileSync(r,"utf-8")).version;return[4,X(e,t)];case 2:a=c.sent();return[2,(console.log("Installed version of ".concat(e,": ").concat(n)),console.log("Latest version of ".concat(e,": ").concat(a)),n!==a)];case 3:s=c.sent();return[2,(console.warn("Failed to check version for ".concat(e,": ").concat(s.message)),!0)];case 4:return[2]}})});return en.apply(this,arguments)}function ea(e){return es.apply(this,arguments)}function es(){es=t(function(e){var t,a,o,u;return c(this,function(c){switch(c.label){case 0:c.trys.push([0,4,,5]);return[4,X(e,!0)];case 1:t=c.sent(),a=et(),o=JSON.parse(w.default.readFileSync(a,"utf-8"));o.dependencies=s(n({},o.dependencies),r({},e,t)),w.default.writeFileSync(a,JSON.stringify(o,null,2)),console.log("Updated ".concat(e," to version ").concat(t));return[4,z("npm i -f","Installing all dependencies with updated ".concat(e,"..."))];case 2:c.sent();return[4,z("npm run lint:fix","Fixing lint issues for ".concat(e,"..."))];case 3:c.sent(),console.log("".concat(e," updated successfully."));return[3,5];case 4:u=c.sent();throw console.error("Failed to update ".concat(e,": ").concat(u.message)),u;case 5:return[2]}})});return es.apply(this,arguments)}function eo(e,t){try{var r=O.default.join(e,"package.json");return w.default.existsSync(r)?JSON.parse(w.default.readFileSync(r,"utf-8")).name===t:!1}catch(e){return console.error("Error reading package.json: ".concat(e.message)),!1}}0&&(module.exports={getLatestPackageVersion:getLatestPackageVersion,isCurrentProject:isCurrentProject,isPackageOutdated:isPackageOutdated,updatePackage:updatePackage});
1
+ "use strict";function e(e,t,r,n,a,s,o){try{var c=e[s](o);var u=c.value}catch(e){r(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(n,a)}}function t(t){return function(){var r=this,n=arguments;return new Promise(function(a,s){var o=t.apply(r,n);function c(t){e(o,a,s,c,u,"next",t)}function u(t){e(o,a,s,c,u,"throw",t)}c(undefined)})}}function r(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function n(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var a=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){a=a.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}a.forEach(function(t){r(e,t,n[t])})}return e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(t){n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,n)}return r}function s(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{a(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function o(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function c(e,t){var r,n,a,s,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]};return s={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function c(e){return function(t){return u([e,t])}}function u(s){if(r)throw new TypeError("Generator is already executing.");while(o)try{if(r=1,n&&(a=s[0]&2?n["return"]:s[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,s[1])).done)return a;if(n=0,a)s=[s[0]&2,a.value];switch(s[0]){case 0:case 1:a=s;break;case 4:o.label++;return{value:s[1],done:false};case 5:o.label++;n=s[1];s=[0];continue;case 7:s=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(s[0]===6||s[0]===2)){o=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){o.label=s[1];break}if(s[0]===6&&o.label<a[1]){o.label=a[1];a=s;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(s);break}if(a[2])o.ops.pop();o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e];n=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:true}}}var u=Object.create;var i=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var d=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var g=function(e,t){for(var r in t)i(e,r,{get:t[r],enumerable:!0})},h=function(e,t,r,n){var a=true,s=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":o(t))=="object"||typeof t=="function")try{var u=function(){var a=g.value;!p.call(e,a)&&a!==r&&i(e,a,{get:function(){return t[a]},enumerable:!(n=l(t,a))||n.enumerable})};for(var d=f(t)[Symbol.iterator](),g;!(a=(g=d.next()).done);a=true)u()}catch(e){s=true;c=e}finally{try{if(!a&&d.return!=null){d.return()}}finally{if(s){throw c}}}return e};var v=function(e,t,r){return r=e!=null?u(d(e)):{},h(t||!e||!e.__esModule?i(r,"default",{value:e,enumerable:!0}):r,e)},y=function(e){return h(i({},"__esModule",{value:!0}),e)};var b={};g(b,{getLatestPackageVersion:function(){return H},isCurrentProject:function(){return ea},isPackageOutdated:function(){return ee},updatePackage:function(){return er}});module.exports=y(b);var m=v(require("node-fetch"),1),w=v(require("fs"),1),O=v(require("path"),1),S=v(require("process"),1);var k=v(require("chalk"),1),P=require("child_process"),j=v(require("process"),1),E=v(require("util"),1);var x=v(require("localforage"),1),I=v(require("node-persist"),1),_=v(require("os"),1),q=v(require("path"),1),D=v(require("process"),1),F=(typeof window==="undefined"?"undefined":o(window))<"u",N=D.default.env.CYBERSKILL_STORAGE_DIR||q.default.join(_.default.homedir(),".cyberskill-storage");function C(){return L.apply(this,arguments)}function L(){L=t(function(){var e;return c(this,function(t){switch(t.label){case 0:e=!F&&!I.default.defaultInstance;if(!e)return[3,2];return[4,I.default.init({dir:N,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 L.apply(this,arguments)}var M={get:function e(e){return t(function(){var t,r,n;return c(this,function(a){switch(a.label){case 0:a.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.getItem(e)];case 1:r=a.sent();return[3,5];case 2:return[4,C()];case 3:a.sent();return[4,I.default.getItem(e)];case 4:r=(t=a.sent())!==null&&t!==void 0?t:null;a.label=5;case 5:return[2,r];case 6:n=a.sent();return[2,(console.error('❌ [Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 7:return[2]}})})()},set:function e(e,r){return t(function(){var t,n;return c(this,function(a){switch(a.label){case 0:a.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.setItem(e,r)];case 1:t=a.sent();return[3,5];case 2:return[4,C()];case 3:a.sent();return[4,I.default.setItem(e,r)];case 4:t=a.sent();a.label=5;case 5:t;return[3,7];case 6:n=a.sent();console.error('❌ [Storage:set] Error setting key "'.concat(e,'":'),n);return[3,7];case 7:return[2]}})})()},remove:function e(e){return t(function(){var t,r;return c(this,function(n){switch(n.label){case 0:n.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.removeItem(e)];case 1:t=n.sent();return[3,5];case 2:return[4,C()];case 3:n.sent();return[4,I.default.removeItem(e)];case 4:t=n.sent();n.label=5;case 5:t;return[3,7];case 6:r=n.sent();console.error('❌ [Storage:remove] Error removing key "'.concat(e,'":'),r);return[3,7];case 7:return[2]}})})()},keys:function e(){return t(function(){var e,t;return c(this,function(r){switch(r.label){case 0:r.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.keys()];case 1:e=r.sent();return[3,5];case 2:return[4,C()];case 3:r.sent();return[4,I.default.keys()];case 4:e=r.sent()||[];r.label=5;case 5:return[2,e];case 6:t=r.sent();return[2,(console.error("❌ [Storage:keys] Error getting keys:",t),[])];case 7:return[2]}})})()},values:function e(){return t(function(){var e,t;return c(this,function(r){switch(r.label){case 0:r.trys.push([0,7,,8]);if(!F)return[3,3];return[4,x.default.keys()];case 1:e=r.sent();return[4,Promise.all(e.map(function(e){return x.default.getItem(e)}))];case 2:return[2,r.sent().filter(function(e){return e!==null})];case 3:return[4,C()];case 4:r.sent();return[4,I.default.values()];case 5:return[2,r.sent()];case 6:return[3,8];case 7:t=r.sent();return[2,(console.error("❌ [Storage:values] Error getting values:",t),[])];case 8:return[2]}})})()},entries:function e(){return t(function(){var e,r,n,a;return c(this,function(s){switch(s.label){case 0:s.trys.push([0,8,,9]);if(!F)return[3,3];return[4,x.default.keys()];case 1:e=s.sent();return[4,Promise.all(e.map(/*#__PURE__*/function(){var e=t(function(e){var t;return c(this,function(r){switch(r.label){case 0:return[4,x.default.getItem(e)];case 1:t=r.sent();return[2,t!==null?[e,t]:null]}})});return function(t){return e.apply(this,arguments)}}()))];case 2:return[2,s.sent().filter(function(e){return e!==null})];case 3:return[4,C()];case 4:s.sent();return[4,I.default.keys()];case 5:r=s.sent();return[4,I.default.values()];case 6:n=s.sent();return[2,r.map(function(e,t){return[e,n[t]]})];case 7:return[3,9];case 8:a=s.sent();return[2,(console.error("❌ [Storage:entries] Error getting entries:",a),[])];case 9:return[2]}})})()},clear:function e(){return t(function(){var e,t;return c(this,function(r){switch(r.label){case 0:r.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.clear()];case 1:e=r.sent();return[3,5];case 2:return[4,C()];case 3:r.sent();return[4,I.default.clear()];case 4:e=r.sent();r.label=5;case 5:e;return[3,7];case 6:t=r.sent();console.error("❌ [Storage:clear] Error clearing storage:",t);return[3,7];case 7:return[2]}})})()},length:function e(){return t(function(){var e,t;return c(this,function(r){switch(r.label){case 0:r.trys.push([0,6,,7]);if(!F)return[3,2];return[4,x.default.length()];case 1:e=r.sent();return[3,5];case 2:return[4,C()];case 3:r.sent();return[4,I.default.keys()];case 4:e=r.sent().length;r.label=5;case 5:return[2,e];case 6:t=r.sent();return[2,(console.error("❌ [Storage:length] Error getting storage length:",t),0)];case 7:return[2]}})})()}};var J=function(e){return"error_list:".concat(e)};function T(e){return R.apply(this,arguments)}function R(){R=t(function(e){var t,r,n;return c(this,function(a){switch(a.label){case 0:if(!e.length)return[2];t=Date.now(),r=J(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,M.set(r,{errors:e,timestamp:t})];case 2:a.sent(),console.log("✅ Saved ".concat(e.length," errors to storage with key: ").concat(r));return[3,4];case 3:n=a.sent();console.error("❌ Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return R.apply(this,arguments)}var U=E.promisify(P.exec),G=k.default,V=G.gray,$=G.white;function A(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";var r=new Date().toLocaleString();console.log("".concat(t," [").concat(r,"] ").concat($(e)))}function B(e){var t=/^\s*(\d+):(\d+)\s+(error|warning)\s+(\S+)\s+(\S+)$/,r=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,n=/^✖\s+(.*?)\s+\[(.*?)\]$/,a=[],s="",o=[];e.split("\n").forEach(function(e){if(e.startsWith("/"))s=e.trim();else{var c=t.exec(e);if(c&&s)o.push({file:s,position:"".concat(c[1],":").concat(c[2]),type:c[3]==="error"?"error":"warning",message:c[4].trim(),rule:c[5].trim()});else{var u=r.exec(e);if(u)o.push({file:u[1],position:"".concat(u[2],":").concat(u[3]),type:u[4],message:u[5].trim()});else{var i=n.exec(e);i?o.push({file:"commitlint",type:"error",message:i[1].trim(),rule:i[2].trim()}):a.push(e.trim())}}}}),o.length>0&&T(o),a.length>0&&(console.log(V("Unmatched lines:")),a.forEach(function(e){return console.info(e)}))}function K(e){try{var t=JSON.parse(e),r=[];t.forEach(function(e){var t=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,a=e.line,s=e.column,o=e.ruleId,c=e.message;r.push({type:n===2?"error":"warning",file:t,position:"".concat(a,":").concat(s),rule:o,message:c})})}),r.length>0&&T(r)}catch(t){console.log("output",e),B(e)}}function W(e,t){return Y.apply(this,arguments)}function Y(){Y=t(function(e,t){var r,n,a,s,o,u,i,l,f;var d=arguments;return c(this,function(c){switch(c.label){case 0:r=d.length>2&&d[2]!==void 0?d[2]:K;A(t);n=new AbortController;j.default.on("SIGINT",function(){console.log("Terminating process..."),n.abort(),j.default.exit()});c.label=1;case 1:c.trys.push([1,3,,4]);return[4,U(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:a=c.sent(),s=a.stdout,o=a.stderr;[s,o].forEach(function(e){return e&&r(e)});return[3,4];case 3:u=c.sent();i=u.stdout,l=u.stderr,f=u.message;[i,l].forEach(function(e){return e&&r(e)}),!l&&!i&&console.error("Command failed: ".concat(f));return[3,4];case 4:return[2]}})});return Y.apply(this,arguments)}var z=24*60*60*1e3;function H(e){return Q.apply(this,arguments)}function Q(){Q=t(function(e){var t,r,n,a,s,o,u,i,l,f;var d=arguments;return c(this,function(c){switch(c.label){case 0:t=d.length>1&&d[1]!==void 0?d[1]:!1;r="npm_version:".concat(e),n="npm_metadata:".concat(e);return[4,M.get(r)];case 1:a=c.sent();return[4,M.get(n)];case 2:s=c.sent(),o=a&&Date.now()-a.timestamp<z;if(!t&&o)return[2,(console.log("Using cached version for ".concat(e,": ").concat(a.version)),a.version)];u={};(s===null||s===void 0?void 0:s.etag)&&(u["If-None-Match"]=s.etag),(s===null||s===void 0?void 0:s.lastModified)&&(u["If-Modified-Since"]=s.lastModified);c.label=3;case 3:c.trys.push([3,8,,9]);console.log("Fetching latest version for ".concat(e,"..."));return[4,(0,m.default)("https://registry.npmjs.org/".concat(e,"/latest"),{headers:u})];case 4:i=c.sent();if(i.status===304&&a)return[2,(console.log("Cache is still valid for ".concat(e,": ").concat(a.version)),a.version)];if(!i.ok)throw new Error("Failed to fetch latest version: ".concat(i.statusText));return[4,i.json()];case 5:l=c.sent().version;return[4,M.set(r,{version:l,timestamp:Date.now()})];case 6:c.sent();return[4,M.set(n,{etag:i.headers.get("ETag")||void 0,lastModified:i.headers.get("Last-Modified")||void 0})];case 7:return[2,(c.sent(),console.log("Cached latest version for ".concat(e,": ").concat(l)),l)];case 8:f=c.sent();if(console.error("Error fetching latest version for ".concat(e,": ").concat(f.message)),a)return[2,(console.warn("Falling back to cached version for ".concat(e,": ").concat(a.version)),a.version)];throw f;case 9:return[2]}})});return Q.apply(this,arguments)}function X(e){return O.default.join(S.default.cwd(),"node_modules",e,"package.json")}function Z(){return O.default.join(S.default.cwd(),"package.json")}function ee(e){return et.apply(this,arguments)}function et(){et=t(function(e){var t,r,n,a,s;var o=arguments;return c(this,function(c){switch(c.label){case 0:t=o.length>1&&o[1]!==void 0?o[1]:!0;c.label=1;case 1:c.trys.push([1,3,,4]);r=X(e);if(!w.default.existsSync(r))return[2,(console.log("".concat(e," is not installed.")),!0)];n=JSON.parse(w.default.readFileSync(r,"utf-8")).version;return[4,H(e,t)];case 2:a=c.sent();return[2,(console.log("Installed version of ".concat(e,": ").concat(n)),console.log("Latest version of ".concat(e,": ").concat(a)),n!==a)];case 3:s=c.sent();return[2,(console.warn("Failed to check version for ".concat(e,": ").concat(s.message)),!0)];case 4:return[2]}})});return et.apply(this,arguments)}function er(e){return en.apply(this,arguments)}function en(){en=t(function(e){var t,a,o,u;return c(this,function(c){switch(c.label){case 0:c.trys.push([0,4,,5]);return[4,H(e,!0)];case 1:t=c.sent(),a=Z(),o=JSON.parse(w.default.readFileSync(a,"utf-8"));o.dependencies=s(n({},o.dependencies),r({},e,t)),w.default.writeFileSync(a,JSON.stringify(o,null,2)),console.log("Updated ".concat(e," to version ").concat(t));return[4,W("npm i -f","Installing all dependencies with updated ".concat(e,"..."))];case 2:c.sent();return[4,W("npm run lint:fix","Fixing lint issues for ".concat(e,"..."))];case 3:c.sent(),console.log("".concat(e," updated successfully."));return[3,5];case 4:u=c.sent();throw console.error("Failed to update ".concat(e,": ").concat(u.message)),u;case 5:return[2]}})});return en.apply(this,arguments)}function ea(e,t){try{var r=O.default.join(e,"package.json");return w.default.existsSync(r)?JSON.parse(w.default.readFileSync(r,"utf-8")).name===t:!1}catch(e){return console.error("Error reading package.json: ".concat(e.message)),!1}}0&&(module.exports={getLatestPackageVersion:getLatestPackageVersion,isCurrentProject:isCurrentProject,isPackageOutdated:isPackageOutdated,updatePackage:updatePackage});
@@ -0,0 +1,16 @@
1
+ declare function getLatestPackageVersion(packageName: string, forceRefresh?: boolean): Promise<string>;
2
+ /**
3
+ * Check if the installed package is outdated.
4
+ * @param packageName Name of the package.
5
+ * @param forceRefresh Whether to bypass cache and force refresh.
6
+ * @returns True if the installed version is different from the latest version.
7
+ */
8
+ declare function isPackageOutdated(packageName: string, forceRefresh?: boolean): Promise<boolean>;
9
+ /**
10
+ * Update the specified package to the latest version.
11
+ * @param packageName Name of the package.
12
+ */
13
+ declare function updatePackage(packageName: string): Promise<void>;
14
+ declare function isCurrentProject(INIT_CWD: string, PACKAGE_NAME: string): boolean;
15
+
16
+ export { getLatestPackageVersion, isCurrentProject, isPackageOutdated, updatePackage };
@@ -0,0 +1,16 @@
1
+ declare function getLatestPackageVersion(packageName: string, forceRefresh?: boolean): Promise<string>;
2
+ /**
3
+ * Check if the installed package is outdated.
4
+ * @param packageName Name of the package.
5
+ * @param forceRefresh Whether to bypass cache and force refresh.
6
+ * @returns True if the installed version is different from the latest version.
7
+ */
8
+ declare function isPackageOutdated(packageName: string, forceRefresh?: boolean): Promise<boolean>;
9
+ /**
10
+ * Update the specified package to the latest version.
11
+ * @param packageName Name of the package.
12
+ */
13
+ declare function updatePackage(packageName: string): Promise<void>;
14
+ declare function isCurrentProject(INIT_CWD: string, PACKAGE_NAME: string): boolean;
15
+
16
+ export { getLatestPackageVersion, isCurrentProject, isPackageOutdated, updatePackage };
@@ -1 +1 @@
1
- function e(e,r,t,n,s,o,c){try{var a=e[o](c);var i=a.value}catch(e){t(e);return}if(a.done){r(i)}else{Promise.resolve(i).then(n,s)}}function r(r){return function(){var t=this,n=arguments;return new Promise(function(s,o){var c=r.apply(t,n);function a(r){e(c,s,o,a,i,"next",r)}function i(r){e(c,s,o,a,i,"throw",r)}a(undefined)})}}function t(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function n(e){for(var r=1;r<arguments.length;r++){var n=arguments[r]!=null?arguments[r]:{};var s=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){s=s.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}s.forEach(function(r){t(e,r,n[r])})}return e}function s(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(r){n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})}t.push.apply(t,n)}return t}function o(e,r){r=r!=null?r:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(r))}else{s(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function c(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function a(e,r){var t,n,s,o,c={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]};return o={next:a(0),"throw":a(1),"return":a(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(r){return i([e,r])}}function i(o){if(t)throw new TypeError("Generator is already executing.");while(c)try{if(t=1,n&&(s=o[0]&2?n["return"]:o[0]?n["throw"]||((s=n["return"])&&s.call(n),0):n.next)&&!(s=s.call(n,o[1])).done)return s;if(n=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:c.label++;return{value:o[1],done:false};case 5:c.label++;n=o[1];o=[0];continue;case 7:o=c.ops.pop();c.trys.pop();continue;default:if(!(s=c.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){c=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){c.label=o[1];break}if(o[0]===6&&c.label<s[1]){c.label=s[1];s=o;break}if(s&&c.label<s[2]){c.label=s[2];c.ops.push(o);break}if(s[2])c.ops.pop();c.trys.pop();continue}o=r.call(e,c)}catch(e){o=[6,e];n=0}finally{t=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}import i from"node-fetch";import u from"node:fs";import l from"node:path";import f from"node:process";import p from"chalk";import{exec as h}from"node:child_process";import g from"node:process";import*as d from"node:util";import m from"localforage";import y from"node-persist";import v from"node:os";import b from"node:path";import w from"node:process";var S=(typeof window==="undefined"?"undefined":c(window))<"u",O=w.env.CYBERSKILL_STORAGE_DIR||b.join(v.homedir(),".cyberskill-storage");function k(){return j.apply(this,arguments)}function j(){j=r(function(){var e;return a(this,function(r){switch(r.label){case 0:e=!S&&!y.defaultInstance;if(!e)return[3,2];return[4,y.init({dir:O,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=r.sent();r.label=2;case 2:e;return[2]}})});return j.apply(this,arguments)}var E={get:function e(e){return r(function(){var r,t,n;return a(this,function(s){switch(s.label){case 0:s.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.getItem(e)];case 1:t=s.sent();return[3,5];case 2:return[4,k()];case 3:s.sent();return[4,y.getItem(e)];case 4:t=(r=s.sent())!==null&&r!==void 0?r:null;s.label=5;case 5:return[2,t];case 6:n=s.sent();return[2,(console.error('❌ [Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 7:return[2]}})})()},set:function e(e,t){return r(function(){var r,n;return a(this,function(s){switch(s.label){case 0:s.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.setItem(e,t)];case 1:r=s.sent();return[3,5];case 2:return[4,k()];case 3:s.sent();return[4,y.setItem(e,t)];case 4:r=s.sent();s.label=5;case 5:r;return[3,7];case 6:n=s.sent();console.error('❌ [Storage:set] Error setting key "'.concat(e,'":'),n);return[3,7];case 7:return[2]}})})()},remove:function e(e){return r(function(){var r,t;return a(this,function(n){switch(n.label){case 0:n.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.removeItem(e)];case 1:r=n.sent();return[3,5];case 2:return[4,k()];case 3:n.sent();return[4,y.removeItem(e)];case 4:r=n.sent();n.label=5;case 5:r;return[3,7];case 6:t=n.sent();console.error('❌ [Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,7];case 7:return[2]}})})()},keys:function e(){return r(function(){var e,r;return a(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.keys()];case 1:e=t.sent();return[3,5];case 2:return[4,k()];case 3:t.sent();return[4,y.keys()];case 4:e=t.sent()||[];t.label=5;case 5:return[2,e];case 6:r=t.sent();return[2,(console.error("❌ [Storage:keys] Error getting keys:",r),[])];case 7:return[2]}})})()},values:function e(){return r(function(){var e,r;return a(this,function(t){switch(t.label){case 0:t.trys.push([0,7,,8]);if(!S)return[3,3];return[4,m.keys()];case 1:e=t.sent();return[4,Promise.all(e.map(function(e){return m.getItem(e)}))];case 2:return[2,t.sent().filter(function(e){return e!==null})];case 3:return[4,k()];case 4:t.sent();return[4,y.values()];case 5:return[2,t.sent()];case 6:return[3,8];case 7:r=t.sent();return[2,(console.error("❌ [Storage:values] Error getting values:",r),[])];case 8:return[2]}})})()},entries:function e(){return r(function(){var e,t,n,s;return a(this,function(o){switch(o.label){case 0:o.trys.push([0,8,,9]);if(!S)return[3,3];return[4,m.keys()];case 1:e=o.sent();return[4,Promise.all(e.map(/*#__PURE__*/function(){var e=r(function(e){var r;return a(this,function(t){switch(t.label){case 0:return[4,m.getItem(e)];case 1:r=t.sent();return[2,r!==null?[e,r]:null]}})});return function(r){return e.apply(this,arguments)}}()))];case 2:return[2,o.sent().filter(function(e){return e!==null})];case 3:return[4,k()];case 4:o.sent();return[4,y.keys()];case 5:t=o.sent();return[4,y.values()];case 6:n=o.sent();return[2,t.map(function(e,r){return[e,n[r]]})];case 7:return[3,9];case 8:s=o.sent();return[2,(console.error("❌ [Storage:entries] Error getting entries:",s),[])];case 9:return[2]}})})()},clear:function e(){return r(function(){var e,r;return a(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.clear()];case 1:e=t.sent();return[3,5];case 2:return[4,k()];case 3:t.sent();return[4,y.clear()];case 4:e=t.sent();t.label=5;case 5:e;return[3,7];case 6:r=t.sent();console.error("❌ [Storage:clear] Error clearing storage:",r);return[3,7];case 7:return[2]}})})()},length:function e(){return r(function(){var e,r;return a(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.length()];case 1:e=t.sent();return[3,5];case 2:return[4,k()];case 3:t.sent();return[4,y.keys()];case 4:e=t.sent().length;t.label=5;case 5:return[2,e];case 6:r=t.sent();return[2,(console.error("❌ [Storage:length] Error getting storage length:",r),0)];case 7:return[2]}})})()}};var P=function(e){return"error_list:".concat(e)},I=24*60*60*1e3;function x(e){return F.apply(this,arguments)}function F(){F=r(function(e){var r,t,n;return a(this,function(s){switch(s.label){case 0:if(!e.length)return[2];r=Date.now(),t=P(r);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,E.set(t,{errors:e,timestamp:r})];case 2:s.sent(),console.log("✅ Saved ".concat(e.length," errors to storage with key: ").concat(t));return[3,4];case 3:n=s.sent();console.error("❌ Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return F.apply(this,arguments)}var _=d.promisify(h),D=p.gray,N=p.white,T=[];function J(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";var t=new Date().toLocaleString();console.log("".concat(r," [").concat(t,"] ").concat(N(e)))}function C(e){var r=/^\s*(\d+):(\d+)\s+(error|warning)\s+(\S+)\s+(\S+)$/,t=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,n=/^✖\s+(.*?)\s+\[(.*?)\]$/,s=[],o="";e.split("\n").forEach(function(e){if(e.startsWith("/"))o=e.trim();else{var c=r.exec(e);if(c&&o)T.push({file:o,position:"".concat(c[1],":").concat(c[2]),type:c[3]==="error"?"error":"warning",message:c[4].trim(),rule:c[5].trim()});else{var a=t.exec(e);if(a)T.push({file:a[1],position:"".concat(a[2],":").concat(a[3]),type:a[4],message:a[5].trim()});else{var i=n.exec(e);i?T.push({file:"commitlint",type:"error",message:i[1].trim(),rule:i[2].trim()}):s.push(e.trim())}}}}),s.length>0&&(console.log(D("Unmatched lines:")),s.forEach(function(e){return console.info(e)}))}function L(e){try{JSON.parse(e).forEach(function(e){var r=e.filePath,t=e.messages;t.forEach(function(e){var t=e.severity,n=e.line,s=e.column,o=e.ruleId,c=e.message;T.push({type:t===2?"error":"warning",file:r,position:"".concat(n,":").concat(s),rule:o,message:c})})})}catch(r){C(e)}}function M(e,r){return R.apply(this,arguments)}function R(){R=r(function(e,r){var t,n,s,o,c,i,u;var l=arguments;return a(this,function(a){switch(a.label){case 0:t=l.length>2&&l[2]!==void 0?l[2]:L;J(r);n=new AbortController;g.on("SIGINT",function(){console.log("Terminating process..."),n.abort(),g.exit()});a.label=1;case 1:a.trys.push([1,5,,6]);return[4,_(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:s=a.sent(),o=s.stdout,c=s.stderr;[o,c].forEach(function(e){return e&&t(e)});i=T.length;if(!i)return[3,4];return[4,x(T)];case 3:i=a.sent();a.label=4;case 4:i;return[3,6];case 5:u=a.sent();console.error("Command failed: ".concat(u.message));return[3,6];case 6:return[2]}})});return R.apply(this,arguments)}var U=24*60*60*1e3;function G(e){return $.apply(this,arguments)}function $(){$=r(function(e){var r,t,n,s,o,c,u,l,f,p;var h=arguments;return a(this,function(a){switch(a.label){case 0:r=h.length>1&&h[1]!==void 0?h[1]:!1;t="npm_version:".concat(e),n="npm_metadata:".concat(e);return[4,E.get(t)];case 1:s=a.sent();return[4,E.get(n)];case 2:o=a.sent(),c=s&&Date.now()-s.timestamp<U;if(!r&&c)return[2,(console.log("Using cached version for ".concat(e,": ").concat(s.version)),s.version)];u={};(o===null||o===void 0?void 0:o.etag)&&(u["If-None-Match"]=o.etag),(o===null||o===void 0?void 0:o.lastModified)&&(u["If-Modified-Since"]=o.lastModified);a.label=3;case 3:a.trys.push([3,8,,9]);console.log("Fetching latest version for ".concat(e,"..."));return[4,i("https://registry.npmjs.org/".concat(e,"/latest"),{headers:u})];case 4:l=a.sent();if(l.status===304&&s)return[2,(console.log("Cache is still valid for ".concat(e,": ").concat(s.version)),s.version)];if(!l.ok)throw new Error("Failed to fetch latest version: ".concat(l.statusText));return[4,l.json()];case 5:f=a.sent().version;return[4,E.set(t,{version:f,timestamp:Date.now()})];case 6:a.sent();return[4,E.set(n,{etag:l.headers.get("ETag")||void 0,lastModified:l.headers.get("Last-Modified")||void 0})];case 7:return[2,(a.sent(),console.log("Cached latest version for ".concat(e,": ").concat(f)),f)];case 8:p=a.sent();if(console.error("Error fetching latest version for ".concat(e,": ").concat(p.message)),s)return[2,(console.warn("Falling back to cached version for ".concat(e,": ").concat(s.version)),s.version)];throw p;case 9:return[2]}})});return $.apply(this,arguments)}function A(e){return l.join(f.cwd(),"node_modules",e,"package.json")}function B(){return l.join(f.cwd(),"package.json")}function K(e){return V.apply(this,arguments)}function V(){V=r(function(e){var r,t,n,s,o;var c=arguments;return a(this,function(a){switch(a.label){case 0:r=c.length>1&&c[1]!==void 0?c[1]:!0;a.label=1;case 1:a.trys.push([1,3,,4]);t=A(e);if(!u.existsSync(t))return[2,(console.log("".concat(e," is not installed.")),!0)];n=JSON.parse(u.readFileSync(t,"utf-8")).version;return[4,G(e,r)];case 2:s=a.sent();return[2,(console.log("Installed version of ".concat(e,": ").concat(n)),console.log("Latest version of ".concat(e,": ").concat(s)),n!==s)];case 3:o=a.sent();return[2,(console.warn("Failed to check version for ".concat(e,": ").concat(o.message)),!0)];case 4:return[2]}})});return V.apply(this,arguments)}function W(e){return Y.apply(this,arguments)}function Y(){Y=r(function(e){var r,s,c,i;return a(this,function(a){switch(a.label){case 0:a.trys.push([0,4,,5]);return[4,G(e,!0)];case 1:r=a.sent(),s=B(),c=JSON.parse(u.readFileSync(s,"utf-8"));c.dependencies=o(n({},c.dependencies),t({},e,r)),u.writeFileSync(s,JSON.stringify(c,null,2)),console.log("Updated ".concat(e," to version ").concat(r));return[4,M("npm i -f","Installing all dependencies with updated ".concat(e,"..."))];case 2:a.sent();return[4,M("npm run lint:fix","Fixing lint issues for ".concat(e,"..."))];case 3:a.sent(),console.log("".concat(e," updated successfully."));return[3,5];case 4:i=a.sent();throw console.error("Failed to update ".concat(e,": ").concat(i.message)),i;case 5:return[2]}})});return Y.apply(this,arguments)}function q(e,r){try{var t=l.join(e,"package.json");return u.existsSync(t)?JSON.parse(u.readFileSync(t,"utf-8")).name===r:!1}catch(e){return console.error("Error reading package.json: ".concat(e.message)),!1}}export{G as getLatestPackageVersion,q as isCurrentProject,K as isPackageOutdated,W as updatePackage};
1
+ function e(e,r,t,n,s,o,c){try{var a=e[o](c);var i=a.value}catch(e){t(e);return}if(a.done){r(i)}else{Promise.resolve(i).then(n,s)}}function r(r){return function(){var t=this,n=arguments;return new Promise(function(s,o){var c=r.apply(t,n);function a(r){e(c,s,o,a,i,"next",r)}function i(r){e(c,s,o,a,i,"throw",r)}a(undefined)})}}function t(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function n(e){for(var r=1;r<arguments.length;r++){var n=arguments[r]!=null?arguments[r]:{};var s=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){s=s.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}s.forEach(function(r){t(e,r,n[r])})}return e}function s(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(r){n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})}t.push.apply(t,n)}return t}function o(e,r){r=r!=null?r:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(r))}else{s(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function c(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function a(e,r){var t,n,s,o,c={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]};return o={next:a(0),"throw":a(1),"return":a(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function a(e){return function(r){return i([e,r])}}function i(o){if(t)throw new TypeError("Generator is already executing.");while(c)try{if(t=1,n&&(s=o[0]&2?n["return"]:o[0]?n["throw"]||((s=n["return"])&&s.call(n),0):n.next)&&!(s=s.call(n,o[1])).done)return s;if(n=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:c.label++;return{value:o[1],done:false};case 5:c.label++;n=o[1];o=[0];continue;case 7:o=c.ops.pop();c.trys.pop();continue;default:if(!(s=c.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){c=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){c.label=o[1];break}if(o[0]===6&&c.label<s[1]){c.label=s[1];s=o;break}if(s&&c.label<s[2]){c.label=s[2];c.ops.push(o);break}if(s[2])c.ops.pop();c.trys.pop();continue}o=r.call(e,c)}catch(e){o=[6,e];n=0}finally{t=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}import i from"node-fetch";import u from"node:fs";import l from"node:path";import f from"node:process";import p from"chalk";import{exec as h}from"node:child_process";import g from"node:process";import*as d from"node:util";import m from"localforage";import y from"node-persist";import v from"node:os";import b from"node:path";import w from"node:process";var S=(typeof window==="undefined"?"undefined":c(window))<"u",O=w.env.CYBERSKILL_STORAGE_DIR||b.join(v.homedir(),".cyberskill-storage");function k(){return j.apply(this,arguments)}function j(){j=r(function(){var e;return a(this,function(r){switch(r.label){case 0:e=!S&&!y.defaultInstance;if(!e)return[3,2];return[4,y.init({dir:O,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=r.sent();r.label=2;case 2:e;return[2]}})});return j.apply(this,arguments)}var E={get:function e(e){return r(function(){var r,t,n;return a(this,function(s){switch(s.label){case 0:s.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.getItem(e)];case 1:t=s.sent();return[3,5];case 2:return[4,k()];case 3:s.sent();return[4,y.getItem(e)];case 4:t=(r=s.sent())!==null&&r!==void 0?r:null;s.label=5;case 5:return[2,t];case 6:n=s.sent();return[2,(console.error('❌ [Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 7:return[2]}})})()},set:function e(e,t){return r(function(){var r,n;return a(this,function(s){switch(s.label){case 0:s.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.setItem(e,t)];case 1:r=s.sent();return[3,5];case 2:return[4,k()];case 3:s.sent();return[4,y.setItem(e,t)];case 4:r=s.sent();s.label=5;case 5:r;return[3,7];case 6:n=s.sent();console.error('❌ [Storage:set] Error setting key "'.concat(e,'":'),n);return[3,7];case 7:return[2]}})})()},remove:function e(e){return r(function(){var r,t;return a(this,function(n){switch(n.label){case 0:n.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.removeItem(e)];case 1:r=n.sent();return[3,5];case 2:return[4,k()];case 3:n.sent();return[4,y.removeItem(e)];case 4:r=n.sent();n.label=5;case 5:r;return[3,7];case 6:t=n.sent();console.error('❌ [Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,7];case 7:return[2]}})})()},keys:function e(){return r(function(){var e,r;return a(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.keys()];case 1:e=t.sent();return[3,5];case 2:return[4,k()];case 3:t.sent();return[4,y.keys()];case 4:e=t.sent()||[];t.label=5;case 5:return[2,e];case 6:r=t.sent();return[2,(console.error("❌ [Storage:keys] Error getting keys:",r),[])];case 7:return[2]}})})()},values:function e(){return r(function(){var e,r;return a(this,function(t){switch(t.label){case 0:t.trys.push([0,7,,8]);if(!S)return[3,3];return[4,m.keys()];case 1:e=t.sent();return[4,Promise.all(e.map(function(e){return m.getItem(e)}))];case 2:return[2,t.sent().filter(function(e){return e!==null})];case 3:return[4,k()];case 4:t.sent();return[4,y.values()];case 5:return[2,t.sent()];case 6:return[3,8];case 7:r=t.sent();return[2,(console.error("❌ [Storage:values] Error getting values:",r),[])];case 8:return[2]}})})()},entries:function e(){return r(function(){var e,t,n,s;return a(this,function(o){switch(o.label){case 0:o.trys.push([0,8,,9]);if(!S)return[3,3];return[4,m.keys()];case 1:e=o.sent();return[4,Promise.all(e.map(/*#__PURE__*/function(){var e=r(function(e){var r;return a(this,function(t){switch(t.label){case 0:return[4,m.getItem(e)];case 1:r=t.sent();return[2,r!==null?[e,r]:null]}})});return function(r){return e.apply(this,arguments)}}()))];case 2:return[2,o.sent().filter(function(e){return e!==null})];case 3:return[4,k()];case 4:o.sent();return[4,y.keys()];case 5:t=o.sent();return[4,y.values()];case 6:n=o.sent();return[2,t.map(function(e,r){return[e,n[r]]})];case 7:return[3,9];case 8:s=o.sent();return[2,(console.error("❌ [Storage:entries] Error getting entries:",s),[])];case 9:return[2]}})})()},clear:function e(){return r(function(){var e,r;return a(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.clear()];case 1:e=t.sent();return[3,5];case 2:return[4,k()];case 3:t.sent();return[4,y.clear()];case 4:e=t.sent();t.label=5;case 5:e;return[3,7];case 6:r=t.sent();console.error("❌ [Storage:clear] Error clearing storage:",r);return[3,7];case 7:return[2]}})})()},length:function e(){return r(function(){var e,r;return a(this,function(t){switch(t.label){case 0:t.trys.push([0,6,,7]);if(!S)return[3,2];return[4,m.length()];case 1:e=t.sent();return[3,5];case 2:return[4,k()];case 3:t.sent();return[4,y.keys()];case 4:e=t.sent().length;t.label=5;case 5:return[2,e];case 6:r=t.sent();return[2,(console.error("❌ [Storage:length] Error getting storage length:",r),0)];case 7:return[2]}})})()}};var P=function(e){return"error_list:".concat(e)};function I(e){return x.apply(this,arguments)}function x(){x=r(function(e){var r,t,n;return a(this,function(s){switch(s.label){case 0:if(!e.length)return[2];r=Date.now(),t=P(r);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,E.set(t,{errors:e,timestamp:r})];case 2:s.sent(),console.log("✅ Saved ".concat(e.length," errors to storage with key: ").concat(t));return[3,4];case 3:n=s.sent();console.error("❌ Failed to save errors: ".concat(n.message));return[3,4];case 4:return[2]}})});return x.apply(this,arguments)}var F=d.promisify(h),_=p.gray,D=p.white;function N(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";var t=new Date().toLocaleString();console.log("".concat(r," [").concat(t,"] ").concat(D(e)))}function J(e){var r=/^\s*(\d+):(\d+)\s+(error|warning)\s+(\S+)\s+(\S+)$/,t=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,n=/^✖\s+(.*?)\s+\[(.*?)\]$/,s=[],o="",c=[];e.split("\n").forEach(function(e){if(e.startsWith("/"))o=e.trim();else{var a=r.exec(e);if(a&&o)c.push({file:o,position:"".concat(a[1],":").concat(a[2]),type:a[3]==="error"?"error":"warning",message:a[4].trim(),rule:a[5].trim()});else{var i=t.exec(e);if(i)c.push({file:i[1],position:"".concat(i[2],":").concat(i[3]),type:i[4],message:i[5].trim()});else{var u=n.exec(e);u?c.push({file:"commitlint",type:"error",message:u[1].trim(),rule:u[2].trim()}):s.push(e.trim())}}}}),c.length>0&&I(c),s.length>0&&(console.log(_("Unmatched lines:")),s.forEach(function(e){return console.info(e)}))}function T(e){try{var r=JSON.parse(e),t=[];r.forEach(function(e){var r=e.filePath,n=e.messages;n.forEach(function(e){var n=e.severity,s=e.line,o=e.column,c=e.ruleId,a=e.message;t.push({type:n===2?"error":"warning",file:r,position:"".concat(s,":").concat(o),rule:c,message:a})})}),t.length>0&&I(t)}catch(r){console.log("output",e),J(e)}}function C(e,r){return L.apply(this,arguments)}function L(){L=r(function(e,r){var t,n,s,o,c,i,u,l,f;var p=arguments;return a(this,function(a){switch(a.label){case 0:t=p.length>2&&p[2]!==void 0?p[2]:T;N(r);n=new AbortController;g.on("SIGINT",function(){console.log("Terminating process..."),n.abort(),g.exit()});a.label=1;case 1:a.trys.push([1,3,,4]);return[4,F(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:s=a.sent(),o=s.stdout,c=s.stderr;[o,c].forEach(function(e){return e&&t(e)});return[3,4];case 3:i=a.sent();u=i.stdout,l=i.stderr,f=i.message;[u,l].forEach(function(e){return e&&t(e)}),!l&&!u&&console.error("Command failed: ".concat(f));return[3,4];case 4:return[2]}})});return L.apply(this,arguments)}var M=24*60*60*1e3;function R(e){return U.apply(this,arguments)}function U(){U=r(function(e){var r,t,n,s,o,c,u,l,f,p;var h=arguments;return a(this,function(a){switch(a.label){case 0:r=h.length>1&&h[1]!==void 0?h[1]:!1;t="npm_version:".concat(e),n="npm_metadata:".concat(e);return[4,E.get(t)];case 1:s=a.sent();return[4,E.get(n)];case 2:o=a.sent(),c=s&&Date.now()-s.timestamp<M;if(!r&&c)return[2,(console.log("Using cached version for ".concat(e,": ").concat(s.version)),s.version)];u={};(o===null||o===void 0?void 0:o.etag)&&(u["If-None-Match"]=o.etag),(o===null||o===void 0?void 0:o.lastModified)&&(u["If-Modified-Since"]=o.lastModified);a.label=3;case 3:a.trys.push([3,8,,9]);console.log("Fetching latest version for ".concat(e,"..."));return[4,i("https://registry.npmjs.org/".concat(e,"/latest"),{headers:u})];case 4:l=a.sent();if(l.status===304&&s)return[2,(console.log("Cache is still valid for ".concat(e,": ").concat(s.version)),s.version)];if(!l.ok)throw new Error("Failed to fetch latest version: ".concat(l.statusText));return[4,l.json()];case 5:f=a.sent().version;return[4,E.set(t,{version:f,timestamp:Date.now()})];case 6:a.sent();return[4,E.set(n,{etag:l.headers.get("ETag")||void 0,lastModified:l.headers.get("Last-Modified")||void 0})];case 7:return[2,(a.sent(),console.log("Cached latest version for ".concat(e,": ").concat(f)),f)];case 8:p=a.sent();if(console.error("Error fetching latest version for ".concat(e,": ").concat(p.message)),s)return[2,(console.warn("Falling back to cached version for ".concat(e,": ").concat(s.version)),s.version)];throw p;case 9:return[2]}})});return U.apply(this,arguments)}function G(e){return l.join(f.cwd(),"node_modules",e,"package.json")}function $(){return l.join(f.cwd(),"package.json")}function A(e){return B.apply(this,arguments)}function B(){B=r(function(e){var r,t,n,s,o;var c=arguments;return a(this,function(a){switch(a.label){case 0:r=c.length>1&&c[1]!==void 0?c[1]:!0;a.label=1;case 1:a.trys.push([1,3,,4]);t=G(e);if(!u.existsSync(t))return[2,(console.log("".concat(e," is not installed.")),!0)];n=JSON.parse(u.readFileSync(t,"utf-8")).version;return[4,R(e,r)];case 2:s=a.sent();return[2,(console.log("Installed version of ".concat(e,": ").concat(n)),console.log("Latest version of ".concat(e,": ").concat(s)),n!==s)];case 3:o=a.sent();return[2,(console.warn("Failed to check version for ".concat(e,": ").concat(o.message)),!0)];case 4:return[2]}})});return B.apply(this,arguments)}function K(e){return V.apply(this,arguments)}function V(){V=r(function(e){var r,s,c,i;return a(this,function(a){switch(a.label){case 0:a.trys.push([0,4,,5]);return[4,R(e,!0)];case 1:r=a.sent(),s=$(),c=JSON.parse(u.readFileSync(s,"utf-8"));c.dependencies=o(n({},c.dependencies),t({},e,r)),u.writeFileSync(s,JSON.stringify(c,null,2)),console.log("Updated ".concat(e," to version ").concat(r));return[4,C("npm i -f","Installing all dependencies with updated ".concat(e,"..."))];case 2:a.sent();return[4,C("npm run lint:fix","Fixing lint issues for ".concat(e,"..."))];case 3:a.sent(),console.log("".concat(e," updated successfully."));return[3,5];case 4:i=a.sent();throw console.error("Failed to update ".concat(e,": ").concat(i.message)),i;case 5:return[2]}})});return V.apply(this,arguments)}function W(e,r){try{var t=l.join(e,"package.json");return u.existsSync(t)?JSON.parse(u.readFileSync(t,"utf-8")).name===r:!1}catch(e){return console.error("Error reading package.json: ".concat(e.message)),!1}}export{R as getLatestPackageVersion,W as isCurrentProject,A as isPackageOutdated,K as updatePackage};
@@ -0,0 +1,5 @@
1
+ import { I_Serializer } from '../typescript/serializer.cjs';
2
+
3
+ declare const serializer: I_Serializer<any>;
4
+
5
+ export { serializer };
@@ -0,0 +1,5 @@
1
+ import { I_Serializer } from '../typescript/serializer.js';
2
+
3
+ declare const serializer: I_Serializer<any>;
4
+
5
+ export { serializer };
@@ -0,0 +1,12 @@
1
+ declare const storage: {
2
+ get<T = unknown>(key: string): Promise<T | null>;
3
+ set<T = unknown>(key: string, value: T): Promise<void>;
4
+ remove(key: string): Promise<void>;
5
+ keys(): Promise<string[]>;
6
+ values<T = unknown>(): Promise<T[]>;
7
+ entries<T = unknown>(): Promise<[string, T][]>;
8
+ clear(): Promise<void>;
9
+ length(): Promise<number>;
10
+ };
11
+
12
+ export { storage };
@@ -0,0 +1,12 @@
1
+ declare const storage: {
2
+ get<T = unknown>(key: string): Promise<T | null>;
3
+ set<T = unknown>(key: string, value: T): Promise<void>;
4
+ remove(key: string): Promise<void>;
5
+ keys(): Promise<string[]>;
6
+ values<T = unknown>(): Promise<T[]>;
7
+ entries<T = unknown>(): Promise<[string, T][]>;
8
+ clear(): Promise<void>;
9
+ length(): Promise<number>;
10
+ };
11
+
12
+ export { storage };
@@ -0,0 +1,33 @@
1
+ declare const validate: {
2
+ common: {
3
+ /**
4
+ * Check if a value is empty (null, undefined, empty string, empty array, or empty object).
5
+ * @param {unknown} value - The value to check.
6
+ * @returns {boolean} - True if the value is empty; otherwise, false.
7
+ */
8
+ isEmpty(value: unknown): boolean;
9
+ /**
10
+ * Validator to check if a value is not empty.
11
+ * @returns {(value: unknown) => Promise<boolean>} - The validation function.
12
+ */
13
+ isEmptyValidator<T>(): (this: T, value: unknown) => Promise<boolean>;
14
+ /**
15
+ * Validator to check if a value is unique in specified fields.
16
+ * @param {string[]} fields - Fields to check for uniqueness.
17
+ * @returns {(value: unknown) => Promise<boolean>} - The validation function.
18
+ */
19
+ isUniqueValidator<T extends {
20
+ constructor: {
21
+ findOne: (query: Record<string, unknown>) => Promise<unknown>;
22
+ };
23
+ }>(fields: string[]): (this: T, value: unknown) => Promise<boolean>;
24
+ /**
25
+ * Validator to check if a value matches all regex patterns in an array.
26
+ * @param {RegExp[]} regexArray - Array of regex patterns.
27
+ * @returns {(value: string) => Promise<boolean>} - The validation function.
28
+ */
29
+ matchesRegexValidator(regexArray: RegExp[]): (value: string) => Promise<boolean>;
30
+ };
31
+ };
32
+
33
+ export { validate };
@@ -0,0 +1,33 @@
1
+ declare const validate: {
2
+ common: {
3
+ /**
4
+ * Check if a value is empty (null, undefined, empty string, empty array, or empty object).
5
+ * @param {unknown} value - The value to check.
6
+ * @returns {boolean} - True if the value is empty; otherwise, false.
7
+ */
8
+ isEmpty(value: unknown): boolean;
9
+ /**
10
+ * Validator to check if a value is not empty.
11
+ * @returns {(value: unknown) => Promise<boolean>} - The validation function.
12
+ */
13
+ isEmptyValidator<T>(): (this: T, value: unknown) => Promise<boolean>;
14
+ /**
15
+ * Validator to check if a value is unique in specified fields.
16
+ * @param {string[]} fields - Fields to check for uniqueness.
17
+ * @returns {(value: unknown) => Promise<boolean>} - The validation function.
18
+ */
19
+ isUniqueValidator<T extends {
20
+ constructor: {
21
+ findOne: (query: Record<string, unknown>) => Promise<unknown>;
22
+ };
23
+ }>(fields: string[]): (this: T, value: unknown) => Promise<boolean>;
24
+ /**
25
+ * Validator to check if a value matches all regex patterns in an array.
26
+ * @param {RegExp[]} regexArray - Array of regex patterns.
27
+ * @returns {(value: string) => Promise<boolean>} - The validation function.
28
+ */
29
+ matchesRegexValidator(regexArray: RegExp[]): (value: string) => Promise<boolean>;
30
+ };
31
+ };
32
+
33
+ export { validate };