@cyberskill/shared 1.107.0 → 1.109.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 (73) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +19 -0
  2. package/dist/_tsup-dts-rollup.d.ts +19 -0
  3. package/dist/configs/config.util.cjs +1 -1
  4. package/dist/configs/config.util.js +1 -1
  5. package/dist/configs/index.cjs +1 -1
  6. package/dist/configs/index.js +1 -1
  7. package/dist/index.cjs +1 -1
  8. package/dist/index.d.cts +5 -2
  9. package/dist/index.d.ts +5 -2
  10. package/dist/index.js +1 -1
  11. package/dist/nodejs/apollo-server/apollo-server.util.cjs +1 -1
  12. package/dist/nodejs/apollo-server/apollo-server.util.js +1 -1
  13. package/dist/nodejs/apollo-server/index.cjs +1 -1
  14. package/dist/nodejs/apollo-server/index.js +1 -1
  15. package/dist/nodejs/cli/cli.util.cjs +1 -1
  16. package/dist/nodejs/cli/cli.util.js +1 -1
  17. package/dist/nodejs/cli/index.cjs +1 -1
  18. package/dist/nodejs/cli/index.js +1 -1
  19. package/dist/nodejs/command/command.util.cjs +1 -1
  20. package/dist/nodejs/command/command.util.js +1 -1
  21. package/dist/nodejs/command/index.cjs +1 -1
  22. package/dist/nodejs/command/index.js +1 -1
  23. package/dist/nodejs/fs/fs.util.cjs +1 -1
  24. package/dist/nodejs/fs/fs.util.d.cts +4 -2
  25. package/dist/nodejs/fs/fs.util.d.ts +4 -2
  26. package/dist/nodejs/fs/fs.util.js +1 -1
  27. package/dist/nodejs/fs/index.cjs +1 -1
  28. package/dist/nodejs/fs/index.d.cts +4 -2
  29. package/dist/nodejs/fs/index.d.ts +4 -2
  30. package/dist/nodejs/fs/index.js +1 -1
  31. package/dist/nodejs/index.cjs +1 -1
  32. package/dist/nodejs/index.d.cts +5 -2
  33. package/dist/nodejs/index.d.ts +5 -2
  34. package/dist/nodejs/index.js +1 -1
  35. package/dist/nodejs/mongo/index.cjs +1 -1
  36. package/dist/nodejs/mongo/index.js +1 -1
  37. package/dist/nodejs/mongo/mongo.util.cjs +1 -1
  38. package/dist/nodejs/mongo/mongo.util.js +1 -1
  39. package/dist/nodejs/package/index.cjs +1 -1
  40. package/dist/nodejs/package/index.js +1 -1
  41. package/dist/nodejs/package/package.util.cjs +1 -1
  42. package/dist/nodejs/package/package.util.js +1 -1
  43. package/dist/nodejs/path/index.cjs +1 -1
  44. package/dist/nodejs/path/index.d.cts +1 -0
  45. package/dist/nodejs/path/index.d.ts +1 -0
  46. package/dist/nodejs/path/index.js +1 -1
  47. package/dist/nodejs/path/path.constant.cjs +1 -1
  48. package/dist/nodejs/path/path.constant.js +1 -1
  49. package/dist/nodejs/path/path.util.cjs +1 -1
  50. package/dist/nodejs/path/path.util.d.cts +1 -0
  51. package/dist/nodejs/path/path.util.d.ts +1 -0
  52. package/dist/nodejs/path/path.util.js +1 -1
  53. package/dist/nodejs/storage/index.cjs +1 -1
  54. package/dist/nodejs/storage/index.js +1 -1
  55. package/dist/nodejs/storage/storage.util.cjs +1 -1
  56. package/dist/nodejs/storage/storage.util.js +1 -1
  57. package/dist/react/index.cjs +1 -1
  58. package/dist/react/index.js +1 -1
  59. package/dist/react/next-intl/index.cjs +1 -1
  60. package/dist/react/next-intl/index.js +1 -1
  61. package/dist/react/next-intl/next-intl.provider.cjs +1 -1
  62. package/dist/react/next-intl/next-intl.provider.js +1 -1
  63. package/dist/react/storage/index.cjs +1 -1
  64. package/dist/react/storage/index.js +1 -1
  65. package/dist/react/storage/storage.hook.cjs +1 -1
  66. package/dist/react/storage/storage.hook.js +1 -1
  67. package/dist/react/storage/storage.util.cjs +1 -1
  68. package/dist/react/storage/storage.util.js +1 -1
  69. package/dist/react/vitest/index.cjs +1 -1
  70. package/dist/react/vitest/index.js +1 -1
  71. package/dist/react/vitest/vitest.unit.cjs +1 -1
  72. package/dist/react/vitest/vitest.unit.js +1 -1
  73. package/package.json +5 -5
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,s,a,o){try{var c=e[a](o);var u=c.value}catch(e){n(e);return}if(c.done){t(u)}else{Promise.resolve(u).then(r,s)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(s,a){var o=e.apply(t,r);function c(e){n(o,s,a,c,u,"next",e)}function u(e){n(o,s,a,c,u,"throw",e)}c(undefined)})}}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function o(e,t,n){if(t)a(e.prototype,t);if(n)a(e,n);return e}function c(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function u(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function l(){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 f(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){c(e,t,n[t])})}return e}function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function E(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{d(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function g(e){return t(e)||i(e)||v(e)||l()}function h(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function v(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function p(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return u([e,t])}}function u(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(a=0)),a)try{if(n=1,r&&(s=c[0]&2?r["return"]:c[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,c[1])).done)return s;if(r=0,s)c=[c[0]&2,s.value];switch(c[0]){case 0:case 1:s=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){a.label=c[1];break}if(c[0]===6&&a.label<s[1]){a.label=s[1];s=c;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(c);break}if(s[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var m=Object.create;var O=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,_=Object.prototype.hasOwnProperty;var I=function(e,t,n){return t in e?O(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var C=function(e,t){return O(e,"name",{value:t,configurable:!0})};var T=function(e,t){for(var n in t)O(e,n,{get:t[n],enumerable:!0})},A=function(e,t,n,r){var s=true,a=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":h(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!_.call(e,s)&&s!==n&&O(e,s,{get:function(){return t[s]},enumerable:!(r=y(t,s))||r.enumerable})};for(var u=S(t)[Symbol.iterator](),i;!(s=(i=u.next()).done);s=true)c()}catch(e){a=true;o=e}finally{try{if(!s&&u.return!=null){u.return()}}finally{if(a){throw o}}}return e};var D=function(e,t,n){return n=e!=null?m(R(e)):{},A(t||!e||!e.__esModule?O(n,"default",{value:e,enumerable:!0}):n,e)},N=function(e){return A(O({},"__esModule",{value:!0}),e)};var b=function(e,t,n){return I(e,(typeof t==="undefined"?"undefined":h(t))!="symbol"?t+"":t,n)};var G={};T(G,{MongoController:function(){return tq},MongooseController:function(){return tY},aggregatePaginate:function(){return L.default},mongo:function(){return tF},mongoosePaginate:function(){return U.default}});module.exports=N(G);var M=require("date-fns"),w=D(require("migrate-mongo"),1),P=require("mongoose"),L=D(require("mongoose-aggregate-paginate-v2"),1),U=D(require("mongoose-paginate-v2"),1),k=require("uuid");var F={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"}};var j=D(require("crypto-js"),1),q=D(require("slugify"),1);var x=q.default.default||q.default;function Y(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return x(e,f({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))}C(Y,"generateSlug");function B(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return j.default.SHA256(e).toString(j.default.enc.Hex).slice(0,t)}C(B,"generateShortId");var Q={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":h(e))=="object"?u(e,Date)?!1:u(e,Map)||u(e,Set)?e.size===0:u(e,WeakMap)||u(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};var H=D(require("fs-extra"),1),V=require("path");var K=H.default,W=K.appendFileSync,$=K.lstatSync,J=K.mkdirSync,X=K.readFileSync,z=K.unlinkSync,Z=K.writeFileSync,ee=K.statSync,et=H.default.readJsonSync,en=H.default.writeJsonSync;function er(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return H.default.pathExistsSync(e)})}C(er,"pathExistsSync");var es=".cyberskill-storage";var ea=D(require("dotenv"),1),eo=require("envalid"),ec=D(require("os"),1),eu=D(require("path"),1),ei=D(require("process"),1);ea.default.config();function el(){var e={DEBUG:ei.default.env.DEBUG||!1,CWD:ei.default.env.CWD||ei.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:ei.default.env.CYBERSKILL_STORAGE_DIRECTORY||eu.default.join(ec.default.homedir(),es)};return(0,eo.cleanEnv)(e,{DEBUG:(0,eo.bool)(),CWD:(0,eo.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,eo.str)()})}C(el,"getEnv");var ef=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var ed=require("child_process"),eE=D(require("process"),1),eg=D(require("util"),1);var eh=function(e){return e.Error="error",e.Warning="warning",e}({});var ev=D(require("chalk"),1),ep=D(require("consola"),1),em=require("graphql");var eO=el();eO.DEBUG||(ep.default.level=4);function ey(e){var t=ev.default[e];return typeof t=="function"?t:ev.default.green}C(ey,"chalkKeyword");var eS={silent:ep.default.silent,level:ep.default.level,fatal:ep.default.fatal,error:ep.default.error,warn:ep.default.warn,log:ep.default.log,info:ep.default.info,success:ep.default.success,ready:ep.default.ready,start:ep.default.start,box:ep.default.box,debug:ep.default.debug,trace:ep.default.trace,verbose:ep.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){ep.default.box(ev.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;ep.default.log("".concat(ev.default.gray("File:")," ").concat(ev.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&ep.default.log(" ".concat(ey(n)("Rule:")," ").concat(s)),ep.default.log(" ".concat(ey(n)("Message:")," ").concat(a))}),ep.default.box(ey(n)("".concat(e," : ").concat(t.length))),ep.default.log(ev.default.gray("─".repeat(40)))}};var eR={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var e_=D(require("node-fetch"),1);var eI=el();function eC(e){var t=e2(eI.CWD,e7);if(!er(t))return!1;try{var n=et(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,u=r===e,i=e in a,l=e in c;return u||i||l?{path:t,file:n,isCurrentProject:u,isDepend:i,isDevDepend:l}:!1}catch(e){return eS.warn("Failed to read package.json: ".concat(e.message)),!1}}C(eC,"getPackage");function eT(e){return eA.apply(this,arguments)}function eA(){eA=r(function(e){var t,n,r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,e_.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:s=a.sent();throw eS.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})});return eA.apply(this,arguments)}C(eT,"getLatestPackageVersion");function eD(e,t){return eN.apply(this,arguments)}function eN(){eN=r(function(e,t){var n,r,s,a,o,c,u,i,l,d,E,g,h,v,m,O,y,S,R,_,I;return p(this,function(p){switch(p.label){case 0:p.trys.push([0,4,,5]);n=eC(e);if(!n)return[2,f({},eR)];u=n.path,i=n.file,l=n.isCurrentProject,d=n.isDepend,E=n.isDevDepend,g=(r=i.dependencies)!==null&&r!==void 0?r:{},h=(s=i.devDependencies)!==null&&s!==void 0?s:{},v=l?(a=i.version)!==null&&a!==void 0?a:"0.0.0":d?(o=g[e])!==null&&o!==void 0?o:"0.0.0":E?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];y=v;return[3,3];case 1:return[4,eT(e)];case 2:y=p.sent();p.label=3;case 3:m=y,O=l||v===m;if(!O&&(t===null||t===void 0?void 0:t.update)){;R=d?"dependencies":E?"devDependencies":null;R&&((S=i[R])===null||S===void 0?void 0:S[e])!==m&&(i[R]=(_=i[R])!==null&&_!==void 0?_:{},i[R][e]=m,en(u,i),eS.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:O}];case 4:I=p.sent();return[2,(eS.error('Error checking package "'.concat(e,'": ').concat(I.message)),f({},eR))];case 5:return[2]}})});return eN.apply(this,arguments)}C(eD,"checkPackage");function eb(){return eG.apply(this,arguments)}function eG(){eG=r(function(){var e,t,n,r,s,a,o,c,u,i,l,f;return p(this,function(d){switch(d.label){case 0:e=[{command:C(function(){return tk.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:C(function(){return tk.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:C(function(){return tk.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];o=a.value,c=o.command,u=o.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,c()];case 4:i=d.sent();return[4,eX("".concat(u," using: ").concat(i),i)];case 5:d.sent();return[2];case 6:l=d.sent();eS.warn("Installation attempt failed: ".concat(u)),eS.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=d.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return eG.apply(this,arguments)}C(eb,"installDependencies");function eM(e,t){return ew.apply(this,arguments)}function ew(){ew=r(function(e,t){var n,r,s,a,o,c,u,i,l,d,E;return p(this,function(h){switch(h.label){case 0:if(!er(tw.PACKAGE_JSON)){eS.error("package.json not found. Aborting setup.");return[2]}h.label=1;case 1:h.trys.push([1,13,,14]);n=g(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eD(e,f({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=h.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eb()];case 3:r=h.sent();h.label=4;case 4:r;a=true,o=false,c=undefined;h.label=5;case 5:h.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();h.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:h.sent();h.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:d=h.sent();o=true;c=d;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:E=h.sent();throw eS.error('Failed to setup "'.concat(e.join(", "),'": ').concat(E.message)),E;case 14:return[2]}})});return ew.apply(this,arguments)}C(eM,"setupPackages");var eP=D(require("node-persist"),1);var eL=el();function eU(){return ek.apply(this,arguments)}function ek(){ek=r(function(){var e;return p(this,function(t){switch(t.label){case 0:e=eP.default.defaultInstance;if(e)return[3,2];return[4,eP.default.init({dir:eL.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return ek.apply(this,arguments)}C(eU,"initNodePersist");var eF={get:function e(e){return r(function(){var t,n;return p(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eU()];case 1:r.sent();return[4,eP.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eS.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return p(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eU()];case 1:r.sent();return[4,eP.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eS.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return p(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eU()];case 1:n.sent();return[4,eP.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eS.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return p(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eU()];case 1:n.sent();return[4,eP.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eS.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eS.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return p(this,function(t){try{return[2,"".concat(eL.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eS.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var ej=el(),eq=eg.promisify(ed.exec);function ex(e){return"error_list:".concat(e)}C(ex,"getErrorListKey");function eY(e){return eB.apply(this,arguments)}function eB(){eB=r(function(e){var t,n,s;return p(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=ex(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eF.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return p(this,function(t){switch(t.label){case 0:return[4,eF.getLogLink(n)];case 1:e=t.sent();e&&eS.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:s=a.sent();eS.error("Failed to save errors: ".concat(s.message));return[3,4];case 4:return[2]}})});return eB.apply(this,arguments)}C(eY,"saveErrorListToStorage");function eQ(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,u,i,l,f;var d=s.exec(e)||[],E=a.exec(e)||[],g=o.exec(e)||[];var h,v,p,m,O,y;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===eh.Error?eh.Error:eh.Warning,message:(h=d===null||d===void 0?void 0:(c=d[4])===null||c===void 0?void 0:c.trim())!==null&&h!==void 0?h:"",rule:(v=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):E.length?t.push({file:(p=E===null||E===void 0?void 0:E[1])!==null&&p!==void 0?p:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===eh.Error?eh.Error:eh.Warning,message:(m=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):g.length?t.push({file:"commitlint",type:eh.Error,message:(O=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&O!==void 0?O:"",rule:(y=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&y!==void 0?y:""}):n.push(e.trim())}}),t.length&&eY(t),ej.DEBUG&&n.length&&(eS.warn("Unmatched lines:"),n.forEach(function(e){return eS.info(" ".concat(e))}))}C(eQ,"parseTextErrors");function eH(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?eh.Error:eh.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&eY(n)}catch(t){eQ(e)}}C(eH,"parseCommandOutput");function eV(e){return eK.apply(this,arguments)}function eK(){eK=r(function(e){var t,n,r,s,a,o,c,u,i;var l=arguments;return p(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eH;n=new AbortController;eE.default.on("SIGINT",function(){eS.warn("Process interrupted. Terminating..."),n.abort(),eE.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eq(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:o=f.sent();c=o.stdout,u=o.stderr,i=o.message;[c,u].forEach(function(e){return e&&t(e)}),!u&&!c&&eS.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})});return eK.apply(this,arguments)}C(eV,"executeCommand");function eW(e){return{raw:!0,cmd:e}}C(eW,"rawCommand");function e$(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tI," ").concat(e5," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tI," ").concat(tS," ").concat(ti," ").concat(e):"".concat(tI," ").concat(tu," ").concat(e)}C(e$,"formatCLI");function eJ(e,t){return typeof e=="function"?e$(e(t),t):(typeof e==="undefined"?"undefined":h(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e$(e,t):e}C(eJ,"formatCommand");function eX(e,t){return ez.apply(this,arguments)}function ez(){ez=r(function(e,t){var n;return p(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eS.start("".concat(e)),ej.DEBUG&&eS.info("→ ".concat(t));return[4,eV(t)];case 1:r.sent(),eS.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eS.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return ez.apply(this,arguments)}C(eX,"runCommand");var eZ=require("path");var e0=el();function e1(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eZ.resolve).apply(this,[e0.CWD].concat(g(t)))}C(e1,"resolveWorkingPath");function e2(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eZ.join).apply(this,g(t))}C(e2,"join");var e4=el(),e3=e4.CWD,e5="@cyberskill/shared",e6="node_modules",e8="dist",e7="package.json",e9="package-lock.json",te="tsconfig.json",tt=".gitignore",tn=".simple-git-hooks.json",tr="pnpm-lock.yaml",ts=".git/hooks/",ta=".git/COMMIT_EDITMSG",to=".migrate-mongo.config.js",tc=e2(e3,e6,e5,e8),tu="cyberskill",ti="src/nodejs/cli/index.ts",tl="eslint",tf="eslint",td="vitest",tE="playwright",tg="vitest",th="@commitlint/cli",tv="commitlint",tp="lint-staged",tm="lint-staged",tO="typescript",ty="tsc",tS="tsx",tR="git",t_="pnpm",tI="pnpm exec",tC="simple-git-hooks",tT="simple-git-hooks",tA="@eslint/config-inspector",tD="eslint-config-inspector",tN="node-modules-inspector",tb="node-modules-inspector",tG="migrate-mongo",tM="./node_modules/migrate-mongo/bin/migrate-mongo",tw={CYBERSKILL_DIRECTORY:tc,WORKING_DIRECTORY:e3,TS_CONFIG:e1(te),GIT_IGNORE:e1(tt),GIT_HOOK:e1(ts),GIT_COMMIT_MSG:e1(ta),SIMPLE_GIT_HOOKS_JSON:e1(tn),PACKAGE_JSON:e1(e7),PACKAGE_LOCK_JSON:e1(e9),PNPM_LOCK_YAML:e1(tr),NODE_MODULES:e1(e6),MIGRATE_MONGO_CONFIG:e1(to),LINT_STAGED_CONFIG:e1("".concat(tc,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e1("".concat(tc,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e1("".concat(tc,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e1("".concat(tc,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e1("".concat(tc,"/react/vitest/vitest.e2e.js"))};function tP(e,t,n){return tL.apply(this,arguments)}function tL(){tL=r(function(e,t,n){return p(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ef.CLI:return[3,1];case ef.STRING:return[3,3]}return[3,4];case 1:return[4,eM(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eJ(eW("".concat(tI," ").concat(n))))];case 3:return[2,eJ(eW(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tL.apply(this,arguments)}C(tP,"buildCommand");function tU(e,t,n){return /*#__PURE__*/r(function(){return p(this,function(r){return[2,tP(e,t,n)]})})}C(tU,"commandFactory");var tk={simpleGitHooks:tU(ef.CLI,tC,tT),eslintInspect:tU(ef.CLI,tA,tD),nodeModulesInspect:tU(ef.CLI,tN,tb),eslintCheck:tU(ef.CLI,tl,"".concat(tf," ").concat(tw.WORKING_DIRECTORY)),eslintFix:tU(ef.CLI,tl,"".concat(tf," ").concat(tw.WORKING_DIRECTORY," --fix")),typescriptCheck:tU(ef.CLI,tO,"".concat(ty," -p ").concat(tw.TS_CONFIG," --noEmit")),configureGitHook:tU(ef.STRING,"".concat(tR," config core.hooksPath ").concat(tw.GIT_HOOK)),testUnit:tU(ef.CLI,td,"".concat(tg," --config ").concat(tw.UNIT_TEST_CONFIG)),testE2e:tU(ef.CLI,"".concat(td," ").concat(tE),"".concat(tg," --config ").concat(tw.E2E_TEST_CONFIG)),mongoMigrateCreate:C(function(e){return tU(ef.CLI,tG,"".concat(tS," ").concat(tM," create ").concat(e," -f ").concat(tw.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tU(ef.CLI,tG,"".concat(tS," ").concat(tM," up -f ").concat(tw.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tU(ef.CLI,tG,"".concat(tS," ").concat(tM," down -f ").concat(tw.MIGRATE_MONGO_CONFIG)),commitLint:tU(ef.CLI,th,"".concat(tv," --edit ").concat(tw.GIT_COMMIT_MSG," --config ").concat(tw.COMMITLINT_CONFIG)),lintStaged:tU(ef.CLI,tp,"".concat(tm," --config ").concat(tw.LINT_STAGED_CONFIG)),stageBuildDirectory:tU(ef.STRING,"".concat(tR," add ").concat(e8)),build:tU(ef.STRING,"".concat(t_," run build")),pnpmInstallStandard:tU(ef.STRING,"".concat(t_," install")),pnpmInstallLegacy:tU(ef.STRING,"".concat(t_," install --legacy-peer-deps")),pnpmInstallForce:tU(ef.STRING,"".concat(t_," install --force"))};var tF={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,M.format)(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?tF.getDateTime():new Date;return{id:(0,k.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:k.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,o=a===void 0?!1:a;var c=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=c.virtual(t,n);r&&s.get(r)}),o||c.add(tF.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,o=e.aggregate,c=o===void 0?!1:o,u=e.virtuals,i=u===void 0?[]:u,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=tF.createSchema({mongoose:t,schema:r,virtuals:i});return tF.applyPlugins(d,[a&&U.default,c&&L.default]),tF.applyMiddlewares(d,f),t.model(n,d)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return E(f({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=r(function(e){return p(this,function(t){return[2,!Q.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=r(function(t){var n;return p(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return c({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=r(function(t){return p(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!u(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:E(f({},w.default),{setConfig:C(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));Z(tw.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(to,"\n");er(tw.GIT_IGNORE)?X(tw.GIT_IGNORE,"utf-8").split("\n").includes(to)||W(tw.GIT_IGNORE,n,"utf-8"):Z(tw.GIT_IGNORE,n,"utf-8")},"setConfig")})},tj=/*#__PURE__*/function(){function e(t,n){s(this,e);b(this,"collection");this.collection=t.collection(n)}o(e,[{key:"createOne",value:function e(e){var t=this;return r(function(){var n,r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n=f({},tF.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return r(function(){var n,r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n=e.map(function(e){return f({},tF.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=a.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.collection.updateOne(e,{$set:t})];case 1:r=a.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.collection.updateMany(e,{$set:t})];case 1:r=a.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();C(tj,"MongoController");var tq=tj,tx=/*#__PURE__*/function(){function e(t){s(this,e);b(this,"model");this.model=t}o(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var a=this;return r(function(){var r,o,c;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);r=a.model.findOne(e,t,n);s&&r.populate(s);return[4,r.exec()];case 1:o=u.sent();return[2,o?{success:!0,result:o}:{success:!1,message:"No ".concat(a.getModelName()," found."),code:F.NOT_FOUND.CODE}];case 2:c=u.sent();return[2,{success:!1,message:c.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var a=this;return r(function(){var r,o,c;return p(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);r=a.model.find(e,t,n);s&&r.populate(s);o={success:!0};return[4,r.exec()];case 1:return[2,(o.result=u.sent(),o)];case 2:c=u.sent();return[2,{success:!1,message:c.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.paginate(e,t)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.aggregatePaginate(n.model.aggregate(e),t)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.insertMany(e,t)];case 1:return[2,(r.result=a.sent().map(function(e){return u(e,P.Document)?e.toObject():null}).filter(function(e){return e!==null}),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return r(function(){var r,a;return p(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,t,f({new:!0},n)).exec()];case 1:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:F.NOT_FOUND.CODE}];case 2:a=o.sent();return[2,{success:!1,message:a.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return r(function(){var r,a;return p(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);r={success:!0};return[4,s.model.updateMany(e,t,n).exec()];case 1:return[2,(r.result=o.sent(),r)];case 2:a=o.sent();return[2,{success:!1,message:a.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.model.findOneAndDelete(e,t).exec()];case 1:r=a.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"No ".concat(n.getModelName()," found to delete."),code:F.NOT_FOUND.CODE}];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.model.deleteMany(e,t).exec()];case 1:r=a.sent();return[2,r.deletedCount===0?{success:!1,message:"No documents found to delete.",code:F.NOT_FOUND.CODE}:{success:!0,result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var n=this;return r(function(){var r,s,a,o;return p(this,function(c){switch(c.label){case 0:r=new Set;s=0;c.label=1;case 1:if(!(s<10))return[3,5];a=B(e,s+t);o=!r.has(a);if(!o)return[3,3];r.add(a);return[4,n.model.exists({shortId:a})];case 2:o=!c.sent();c.label=3;case 3:if(o)return[2,{success:!0,result:a}];c.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:F.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return r(function(){var a,o,c,u,i,l,f,d,E,g,v;return p(this,function(m){switch(m.label){case 0:m.trys.push([0,8,,9]);a=t[e],o=C(/*#__PURE__*/function(){var e=r(function(e){var r,a,o;return p(this,function(c){switch(c.label){case 0:return[4,s.model.findOne(tF.createSlugQuery(e,n,t.id))];case 1:r=c.sent();if(!r)return[2,e];a=1;c.label=2;case 2:o="".concat(e,"-").concat(a);return[4,s.model.findOne(tF.createSlugQuery(o,n,t.id))];case 3:r=c.sent(),a++;c.label=4;case 4:if(r)return[3,2];c.label=5;case 5:return[2,o]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof a==="undefined"?"undefined":h(a))=="object"))return[3,5];c={};u=[];for(i in a)u.push(i);l=0;m.label=1;case 1:if(!(l<u.length))return[3,4];f=u[l];d=Y(a[f]);return[4,o(d)];case 2:c[f]=m.sent();m.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:c}];case 5:E=Y(a);g={success:!0};return[4,o(E)];case 6:return[2,(g.result=m.sent(),g)];case 7:return[3,9];case 8:v=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(v.message),code:F.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();C(tx,"MongooseController");var tY=tx;0&&(module.exports={MongoController:MongoController,MongooseController:MongooseController,aggregatePaginate:aggregatePaginate,mongo:mongo,mongoosePaginate:mongoosePaginate});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,s,a,c){try{var o=e[a](c);var u=o.value}catch(e){n(e);return}if(o.done){t(u)}else{Promise.resolve(u).then(r,s)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(s,a){var c=e.apply(t,r);function o(e){n(c,s,a,o,u,"next",e)}function u(e){n(c,s,a,o,u,"throw",e)}o(undefined)})}}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)a(e.prototype,t);if(n)a(e,n);return e}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function u(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function l(){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 d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function E(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{f(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function g(e){return t(e)||i(e)||_(e)||l()}function h(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function _(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function v(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=o(0),c["throw"]=o(1),c["return"]=o(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function o(e){return function(t){return u([e,t])}}function u(o){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,o[0]&&(a=0)),a)try{if(n=1,r&&(s=o[0]&2?r["return"]:o[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,o[1])).done)return s;if(r=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:a.label++;return{value:o[1],done:false};case 5:a.label++;r=o[1];o=[0];continue;case 7:o=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){a=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){a.label=o[1];break}if(o[0]===6&&a.label<s[1]){a.label=s[1];s=o;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(o);break}if(s[2])a.ops.pop();a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e];r=0}finally{n=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var m=Object.create;var p=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var I=function(e,t,n){return t in e?p(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var C=function(e,t){return p(e,"name",{value:t,configurable:!0})};var T=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},A=function(e,t,n,r){var s=true,a=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":h(t))=="object"||typeof t=="function")try{var o=function(){var s=i.value;!R.call(e,s)&&s!==n&&p(e,s,{get:function(){return t[s]},enumerable:!(r=O(t,s))||r.enumerable})};for(var u=S(t)[Symbol.iterator](),i;!(s=(i=u.next()).done);s=true)o()}catch(e){a=true;c=e}finally{try{if(!s&&u.return!=null){u.return()}}finally{if(a){throw c}}}return e};var D=function(e,t,n){return n=e!=null?m(y(e)):{},A(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},N=function(e){return A(p({},"__esModule",{value:!0}),e)};var b=function(e,t,n){return I(e,(typeof t==="undefined"?"undefined":h(t))!="symbol"?t+"":t,n)};var G={};T(G,{MongoController:function(){return tM},MongooseController:function(){return tw},aggregatePaginate:function(){return U.default},mongo:function(){return tb},mongoosePaginate:function(){return L.default}});module.exports=N(G);var M=require("date-fns"),P=D(require("migrate-mongo"),1),w=require("mongoose"),U=D(require("mongoose-aggregate-paginate-v2"),1),L=D(require("mongoose-paginate-v2"),1),k=require("uuid");var F={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"}};var j=D(require("crypto-js"),1),q=D(require("slugify"),1);var x=q.default.default||q.default;function Y(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return x(e,d({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))}C(Y,"generateSlug");function B(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return j.default.SHA256(e).toString(j.default.enc.Hex).slice(0,t)}C(B,"generateShortId");var Q={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":h(e))=="object"?u(e,Date)?!1:u(e,Map)||u(e,Set)?e.size===0:u(e,WeakMap)||u(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};var H=D(require("fs-extra"),1),V=require("path");var K=H.default,W=K.lstatSync,$=K.readdirSync,J=K.mkdirSync,X=K.readFileSync,z=K.writeFileSync,Z=K.appendFileSync,ee=K.unlinkSync,et=K.statSync,en=H.default.readJsonSync,er=H.default.writeJsonSync;function es(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return H.default.pathExistsSync(e)})}C(es,"pathExistsSync");var ea=".cyberskill-storage";var ec=D(require("dotenv"),1),eo=require("envalid"),eu=D(require("os"),1),ei=D(require("path"),1),el=D(require("process"),1);ec.default.config();function ed(){var e={DEBUG:el.default.env.DEBUG||!1,CWD:el.default.env.CWD||el.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:el.default.env.CYBERSKILL_STORAGE_DIRECTORY||ei.default.join(eu.default.homedir(),ea)};return(0,eo.cleanEnv)(e,{DEBUG:(0,eo.bool)(),CWD:(0,eo.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,eo.str)()})}C(ed,"getEnv");var ef=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eE=require("child_process"),eg=D(require("process"),1),eh=D(require("util"),1);var e_=function(e){return e.Error="error",e.Warning="warning",e}({});var ev=D(require("chalk"),1),em=D(require("consola"),1),ep=require("graphql");var eO=ed();eO.DEBUG||(em.default.level=4);function eS(e){var t=ev.default[e];return typeof t=="function"?t:ev.default.green}C(eS,"chalkKeyword");var ey={silent:em.default.silent,level:em.default.level,fatal:em.default.fatal,error:em.default.error,warn:em.default.warn,log:em.default.log,info:em.default.info,success:em.default.success,ready:em.default.ready,start:em.default.start,box:em.default.box,debug:em.default.debug,trace:em.default.trace,verbose:em.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){em.default.box(ev.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;em.default.log("".concat(ev.default.gray("File:")," ").concat(ev.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&em.default.log(" ".concat(eS(n)("Rule:")," ").concat(s)),em.default.log(" ".concat(eS(n)("Message:")," ").concat(a))}),em.default.box(eS(n)("".concat(e," : ").concat(t.length))),em.default.log(ev.default.gray("─".repeat(40)))}};var eR={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eI=D(require("node-fetch"),1);var eC=ed();function eT(e){var t=e$(eC.CWD,e1);if(!es(t))return!1;try{var n=en(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,c=n.devDependencies,o=c===void 0?{}:c,u=r===e,i=e in a,l=e in o;return u||i||l?{path:t,file:n,isCurrentProject:u,isDepend:i,isDevDepend:l}:!1}catch(e){return ey.warn("Failed to read package.json: ".concat(e.message)),!1}}C(eT,"getPackage");function eA(e){return /*#__PURE__*/r(function(){var t,n,r,s;return v(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,eI.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:s=a.sent();throw ey.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}C(eA,"getLatestPackageVersion");function eD(e,t){return /*#__PURE__*/r(function(){var n,r,s,a,c,o,u,i,l,f,E,g,h,_,m,p,O,S,y,R,I;return v(this,function(v){switch(v.label){case 0:v.trys.push([0,4,,5]);n=eT(e);if(!n)return[2,d({},eR)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,E=n.isDevDepend,g=(r=i.dependencies)!==null&&r!==void 0?r:{},h=(s=i.devDependencies)!==null&&s!==void 0?s:{},_=l?(a=i.version)!==null&&a!==void 0?a:"0.0.0":f?(c=g[e])!==null&&c!==void 0?c:"0.0.0":E?(o=h[e])!==null&&o!==void 0?o:"0.0.0":"0.0.0";if(!l)return[3,1];O=_;return[3,3];case 1:return[4,eA(e)];case 2:O=v.sent();v.label=3;case 3:m=O,p=l||_===m;if(!p&&(t===null||t===void 0?void 0:t.update)){;y=f?"dependencies":E?"devDependencies":null;y&&((S=i[y])===null||S===void 0?void 0:S[e])!==m&&(i[y]=(R=i[y])!==null&&R!==void 0?R:{},i[y][e]=m,er(u,i),ey.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:p}];case 4:I=v.sent();return[2,(ey.error('Error checking package "'.concat(e,'": ').concat(I.message)),d({},eR))];case 5:return[2]}})})()}C(eD,"checkPackage");function eN(){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c,o,u,i,l,d;return v(this,function(f){switch(f.label){case 0:e=[{command:C(function(){return tN.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:C(function(){return tN.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:C(function(){return tN.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);s=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];c=a.value,o=c.command,u=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,o()];case 4:i=f.sent();return[4,eH("".concat(u," using: ").concat(i),i)];case 5:f.sent();return[2];case 6:l=f.sent();ey.warn("Installation attempt failed: ".concat(u)),ey.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}C(eN,"installDependencies");function eb(e,t){return /*#__PURE__*/r(function(){var n,r,s,a,c,o,u,i,l,f,E;return v(this,function(h){switch(h.label){case 0:if(!es(tT.PACKAGE_JSON)){ey.error("package.json not found. Aborting setup.");return[2]}h.label=1;case 1:h.trys.push([1,13,,14]);n=g(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eD(e,d({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=h.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eN()];case 3:r=h.sent();h.label=4;case 4:r;a=true,c=false,o=undefined;h.label=5;case 5:h.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();h.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:h.sent();h.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=h.sent();c=true;o=f;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(c){throw o}}return[7];case 12:return[3,14];case 13:E=h.sent();throw ey.error('Failed to setup "'.concat(e.join(", "),'": ').concat(E.message)),E;case 14:return[2]}})})()}C(eb,"setupPackages");var eG=D(require("node-persist"),1);var eM=ed();function eP(){return /*#__PURE__*/r(function(){var e;return v(this,function(t){switch(t.label){case 0:e=eG.default.defaultInstance;if(e)return[3,2];return[4,eG.default.init({dir:eM.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}C(eP,"initNodePersist");var ew={get:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eP()];case 1:r.sent();return[4,eG.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ey.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/r(function(){var n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eP()];case 1:r.sent();return[4,eG.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ey.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/r(function(){var t;return v(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eP()];case 1:n.sent();return[4,eG.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ey.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/r(function(){var e,t;return v(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eP()];case 1:n.sent();return[4,eG.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ey.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ey.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/r(function(){return v(this,function(t){try{return[2,"".concat(eM.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ey.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eU=ed(),eL=eh.promisify(eE.exec);function ek(e){return"error_list:".concat(e)}C(ek,"getErrorListKey");function eF(e){return /*#__PURE__*/r(function(){var t,n,s;return v(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=ek(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,ew.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/r(function(){var e;return v(this,function(t){switch(t.label){case 0:return[4,ew.getLogLink(n)];case 1:e=t.sent();e&&ey.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:s=a.sent();ey.error("Failed to save errors: ".concat(s.message));return[3,4];case 4:return[2]}})})()}C(eF,"saveErrorListToStorage");function ej(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var o,u,i,l,d;var f=s.exec(e)||[],E=a.exec(e)||[],g=c.exec(e)||[];var h,_,v,m,p,O;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===e_.Error?e_.Error:e_.Warning,message:(h=f===null||f===void 0?void 0:(o=f[4])===null||o===void 0?void 0:o.trim())!==null&&h!==void 0?h:"",rule:(_=f===null||f===void 0?void 0:(u=f[5])===null||u===void 0?void 0:u.trim())!==null&&_!==void 0?_:""}):E.length?t.push({file:(v=E===null||E===void 0?void 0:E[1])!==null&&v!==void 0?v:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===e_.Error?e_.Error:e_.Warning,message:(m=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):g.length?t.push({file:"commitlint",type:e_.Error,message:(p=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&p!==void 0?p:"",rule:(O=g===null||g===void 0?void 0:(d=g[2])===null||d===void 0?void 0:d.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&eF(t),eU.DEBUG&&n.length&&(ey.warn("Unmatched lines:"),n.forEach(function(e){return ey.info(" ".concat(e))}))}C(ej,"parseTextErrors");function eq(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,c=e.ruleId,o=e.message;n.push({type:r===2?e_.Error:e_.Warning,file:t,position:"".concat(s,":").concat(a),rule:c,message:o})})}),n.length&&eF(n)}catch(t){ej(e)}}C(eq,"parseCommandOutput");function ex(e){return /*#__PURE__*/r(function(e){var t,n,r,s,a,c,o,u,i;var l=arguments;return v(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eq;n=new AbortController;eg.default.on("SIGINT",function(){ey.warn("Process interrupted. Terminating..."),n.abort(),eg.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eL(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:c=d.sent();o=c.stdout,u=c.stderr,i=c.message;[o,u].forEach(function(e){return e&&t(e)}),!u&&!o&&ey.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}C(ex,"executeCommand");function eY(e){return{raw:!0,cmd:e}}C(eY,"rawCommand");function eB(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tv," ").concat(ez," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tv," ").concat(tg," ").concat(tn," ").concat(e):"".concat(tv," ").concat(tt," ").concat(e)}C(eB,"formatCLI");function eQ(e,t){return typeof e=="function"?eB(e(t),t):(typeof e==="undefined"?"undefined":h(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eB(e,t):e}C(eQ,"formatCommand");function eH(e,t){return /*#__PURE__*/r(function(){var n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ey.start("".concat(e)),eU.DEBUG&&ey.info("→ ".concat(t));return[4,ex(t)];case 1:r.sent(),ey.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ey.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}C(eH,"runCommand");var eV=D(require("path"),1);var eK=ed();function eW(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eV.resolve).apply(this,[eK.CWD].concat(g(t)))}C(eW,"resolveWorkingPath");function e$(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eV.join).apply(this,g(t))}C(e$,"join");var eJ=ed(),eX=eJ.CWD,ez="@cyberskill/shared",eZ="node_modules",e0="dist",e1="package.json",e2="package-lock.json",e4="tsconfig.json",e3=".gitignore",e5=".simple-git-hooks.json",e6="pnpm-lock.yaml",e7=".git/hooks/",e8=".git/COMMIT_EDITMSG",e9=".migrate-mongo.config.js",te=e$(eX,eZ,ez,e0),tt="cyberskill",tn="src/nodejs/cli/index.ts",tr="eslint",ts="eslint",ta="vitest",tc="playwright",to="vitest",tu="@commitlint/cli",ti="commitlint",tl="lint-staged",td="lint-staged",tf="typescript",tE="tsc",tg="tsx",th="git",t_="pnpm",tv="pnpm exec",tm="simple-git-hooks",tp="simple-git-hooks",tO="@eslint/config-inspector",tS="eslint-config-inspector",ty="node-modules-inspector",tR="node-modules-inspector",tI="migrate-mongo",tC="./node_modules/migrate-mongo/bin/migrate-mongo",tT={CYBERSKILL_DIRECTORY:te,WORKING_DIRECTORY:eX,TS_CONFIG:eW(e4),GIT_IGNORE:eW(e3),GIT_HOOK:eW(e7),GIT_COMMIT_MSG:eW(e8),SIMPLE_GIT_HOOKS_JSON:eW(e5),PACKAGE_JSON:eW(e1),PACKAGE_LOCK_JSON:eW(e2),PNPM_LOCK_YAML:eW(e6),NODE_MODULES:eW(eZ),MIGRATE_MONGO_CONFIG:eW(e9),LINT_STAGED_CONFIG:eW("".concat(te,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eW("".concat(te,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eW("".concat(te,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eW("".concat(te,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eW("".concat(te,"/react/vitest/vitest.e2e.js"))};function tA(e,t,n){return /*#__PURE__*/r(function(){return v(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ef.CLI:return[3,1];case ef.STRING:return[3,3]}return[3,4];case 1:return[4,eb(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eQ(eY("".concat(tv," ").concat(n))))];case 3:return[2,eQ(eY(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}C(tA,"buildCommand");function tD(e,t,n){return function(){return /*#__PURE__*/r(function(){return v(this,function(r){return[2,tA(e,t,n)]})})()}}C(tD,"commandFactory");var tN={simpleGitHooks:tD(ef.CLI,tm,tp),eslintInspect:tD(ef.CLI,tO,tS),nodeModulesInspect:tD(ef.CLI,ty,tR),eslintCheck:tD(ef.CLI,tr,"".concat(ts," ").concat(tT.WORKING_DIRECTORY)),eslintFix:tD(ef.CLI,tr,"".concat(ts," ").concat(tT.WORKING_DIRECTORY," --fix")),typescriptCheck:tD(ef.CLI,tf,"".concat(tE," -p ").concat(tT.TS_CONFIG," --noEmit")),configureGitHook:tD(ef.STRING,"".concat(th," config core.hooksPath ").concat(tT.GIT_HOOK)),testUnit:tD(ef.CLI,ta,"".concat(to," --config ").concat(tT.UNIT_TEST_CONFIG)),testE2e:tD(ef.CLI,"".concat(ta," ").concat(tc),"".concat(to," --config ").concat(tT.E2E_TEST_CONFIG)),mongoMigrateCreate:C(function(e){return tD(ef.CLI,tI,"".concat(tg," ").concat(tC," create ").concat(e," -f ").concat(tT.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tD(ef.CLI,tI,"".concat(tg," ").concat(tC," up -f ").concat(tT.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tD(ef.CLI,tI,"".concat(tg," ").concat(tC," down -f ").concat(tT.MIGRATE_MONGO_CONFIG)),commitLint:tD(ef.CLI,tu,"".concat(ti," --edit ").concat(tT.GIT_COMMIT_MSG," --config ").concat(tT.COMMITLINT_CONFIG)),lintStaged:tD(ef.CLI,tl,"".concat(td," --config ").concat(tT.LINT_STAGED_CONFIG)),stageBuildDirectory:tD(ef.STRING,"".concat(th," add ").concat(e0)),build:tD(ef.STRING,"".concat(t_," run build")),pnpmInstallStandard:tD(ef.STRING,"".concat(t_," install")),pnpmInstallLegacy:tD(ef.STRING,"".concat(t_," install --legacy-peer-deps")),pnpmInstallForce:tD(ef.STRING,"".concat(t_," install --force"))};var tb={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,M.format)(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?tb.getDateTime():new Date;return{id:(0,k.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:k.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,c=a===void 0?!1:a;var o=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=o.virtual(t,n);r&&s.get(r)}),c||o.add(tb.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,c=e.aggregate,o=c===void 0?!1:c,u=e.virtuals,i=u===void 0?[]:u,l=e.middlewares,d=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=tb.createSchema({mongoose:t,schema:r,virtuals:i});return tb.applyPlugins(f,[a&&L.default,o&&U.default]),tb.applyMiddlewares(f,d),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return E(d({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/r(function(){return v(this,function(t){return[2,!Q.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/r(function(){var n;return v(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/r(function(){return v(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!u(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:E(d({},P.default),{setConfig:C(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));z(tT.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e9,"\n");es(tT.GIT_IGNORE)?X(tT.GIT_IGNORE,"utf-8").split("\n").includes(e9)||Z(tT.GIT_IGNORE,n,"utf-8"):z(tT.GIT_IGNORE,n,"utf-8")},"setConfig")})},tG=/*#__PURE__*/function(){function e(t,n){s(this,e);b(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n,r;return v(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=d({},tb.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/r(function(){var t,n,r;return v(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return d({},tb.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return v(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return v(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return /*#__PURE__*/r(function(){var n,r;return v(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return /*#__PURE__*/r(function(){var n,r;return v(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteMany(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}}]);return e}();C(tG,"MongoController");var tM=tG,tP=/*#__PURE__*/function(){function e(t){s(this,e);b(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c;var o=arguments;return v(this,function(u){switch(u.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;u.label=1;case 1:u.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=u.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:F.NOT_FOUND.CODE}];case 3:c=u.sent();return[2,{success:!1,message:c.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c;var o=arguments;return v(this,function(u){switch(u.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;u.label=1;case 1:u.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=u.sent(),a)];case 3:c=u.sent();return[2,{success:!1,message:c.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/r(function(e){var t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return v(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0};return[4,this.model.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/r(function(e){var t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return u(e,w.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r,s;var a=arguments;return v(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,d({new:!0},n)).exec()];case 2:r=c.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:F.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r,s;var a=arguments;return v(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=c.sent(),r)];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=a.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:F.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=a.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:F.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/r(function(){var n,r,s,a;return v(this,function(c){switch(c.label){case 0:n=new Set;r=0;c.label=1;case 1:if(!(r<10))return[3,5];s=B(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:s}];c.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:F.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t){return /*#__PURE__*/r(function(e,t){var n,s,a,c,o,u,i,l,d,f,E,g,_;var m=arguments;return v(this,function(p){switch(p.label){case 0:n=this;s=m.length>2&&m[2]!==void 0?m[2]:{};p.label=1;case 1:p.trys.push([1,9,,10]);a=t[e],c=C(function(e){return /*#__PURE__*/r(function(){var n,r,a;return v(this,function(c){switch(c.label){case 0:return[4,this.model.findOne(tb.createSlugQuery(e,s,t.id))];case 1:n=c.sent();if(!n)return[2,e];r=1;c.label=2;case 2:a="".concat(e,"-").concat(r);return[4,this.model.findOne(tb.createSlugQuery(a,s,t.id))];case 3:n=c.sent(),r++;c.label=4;case 4:if(n)return[3,2];c.label=5;case 5:return[2,a]}})}).call(n)},"createUniqueSlug");if(!((typeof a==="undefined"?"undefined":h(a))=="object"))return[3,6];o={};u=[];for(i in a)u.push(i);l=0;p.label=2;case 2:if(!(l<u.length))return[3,5];d=u[l];f=Y(a[d]);return[4,c(f)];case 3:o[d]=p.sent();p.label=4;case 4:l++;return[3,2];case 5:return[2,{success:!0,result:o}];case 6:E=Y(a);g={success:!0};return[4,c(E)];case 7:return[2,(g.result=p.sent(),g)];case 8:return[3,10];case 9:_=p.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(_.message),code:F.INTERNAL_SERVER_ERROR.CODE}];case 10:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();C(tP,"MongooseController");var tw=tP;0&&(module.exports={MongoController:MongoController,MongooseController:MongooseController,aggregatePaginate:aggregatePaginate,mongo:mongo,mongoosePaginate:mongoosePaginate});
@@ -1 +1 @@
1
- function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,s,a,o){try{var c=e[a](o);var i=c.value}catch(e){n(e);return}if(c.done){t(i)}else{Promise.resolve(i).then(r,s)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(s,a){var o=e.apply(t,r);function c(e){n(o,s,a,c,i,"next",e)}function i(e){n(o,s,a,c,i,"throw",e)}c(undefined)})}}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function o(e,t,n){if(t)a(e.prototype,t);if(n)a(e,n);return e}function c(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function u(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function l(){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 f(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){c(e,t,n[t])})}return e}function E(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function d(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{E(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function g(e){return t(e)||u(e)||m(e)||l()}function h(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function p(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(a=0)),a)try{if(n=1,r&&(s=c[0]&2?r["return"]:c[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,c[1])).done)return s;if(r=0,s)c=[c[0]&2,s.value];switch(c[0]){case 0:case 1:s=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){a.label=c[1];break}if(c[0]===6&&a.label<s[1]){a.label=s[1];s=c;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(c);break}if(s[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var v=Object.defineProperty;var O=function(e,t,n){return t in e?v(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var S=function(e,t){return v(e,"name",{value:t,configurable:!0})};var y=function(e,t,n){return O(e,(typeof t==="undefined"?"undefined":h(t))!="symbol"?t+"":t,n)};import{format as R}from"date-fns";import I from"migrate-mongo";import{Document as _}from"mongoose";import T from"mongoose-aggregate-paginate-v2";import C from"mongoose-paginate-v2";import{v4 as A}from"uuid";var D={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"}};import N from"crypto-js";import b from"slugify";var G=b.default||b;function M(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return G(e,f({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))}S(M,"generateSlug");function w(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return N.SHA256(e).toString(N.enc.Hex).slice(0,t)}S(w,"generateShortId");var L={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":h(e))=="object"?i(e,Date)?!1:i(e,Map)||i(e,Set)?e.size===0:i(e,WeakMap)||i(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};import P from"fs-extra";var U=P.appendFileSync,k=P.lstatSync,F=P.mkdirSync,j=P.readFileSync,x=P.unlinkSync,Y=P.writeFileSync,q=P.statSync,Q=P.readJsonSync,B=P.writeJsonSync;function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return P.pathExistsSync(e)})}S(H,"pathExistsSync");var V=".cyberskill-storage";import K from"dotenv";import{bool as W,cleanEnv as $,str as J}from"envalid";import X from"node:os";import z from"node:path";import Z from"node:process";K.config();function ee(){var e={DEBUG:Z.env.DEBUG||!1,CWD:Z.env.CWD||Z.cwd(),CYBERSKILL_STORAGE_DIRECTORY:Z.env.CYBERSKILL_STORAGE_DIRECTORY||z.join(X.homedir(),V)};return $(e,{DEBUG:W(),CWD:J(),CYBERSKILL_STORAGE_DIRECTORY:J()})}S(ee,"getEnv");var et=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as en}from"node:child_process";import er from"node:process";import*as es from"node:util";var ea=function(e){return e.Error="error",e.Warning="warning",e}({});import eo from"chalk";import ec from"consola";import{GraphQLError as ei}from"graphql";var eu=ee();eu.DEBUG||(ec.level=4);function el(e){var t=eo[e];return typeof t=="function"?t:eo.green}S(el,"chalkKeyword");var ef={silent:ec.silent,level:ec.level,fatal:ec.fatal,error:ec.error,warn:ec.warn,log:ec.log,info:ec.info,success:ec.success,ready:ec.ready,start:ec.start,box:ec.box,debug:ec.debug,trace:ec.trace,verbose:ec.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){ec.box(eo.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;ec.log("".concat(eo.gray("File:")," ").concat(eo.blue("".concat(t).concat(r?":".concat(r):"")))),s&&ec.log(" ".concat(el(n)("Rule:")," ").concat(s)),ec.log(" ".concat(el(n)("Message:")," ").concat(a))}),ec.box(el(n)("".concat(e," : ").concat(t.length))),ec.log(eo.gray("─".repeat(40)))}};var eE={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import ed from"node-fetch";var eg=ee();function eh(e){var t=eK(eg.CWD,eZ);if(!H(t))return!1;try{var n=Q(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,i=r===e,u=e in a,l=e in c;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return ef.warn("Failed to read package.json: ".concat(e.message)),!1}}S(eh,"getPackage");function em(e){return ep.apply(this,arguments)}function ep(){ep=r(function(e){var t,n,r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,ed("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:s=a.sent();throw ef.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})});return ep.apply(this,arguments)}S(em,"getLatestPackageVersion");function ev(e,t){return eO.apply(this,arguments)}function eO(){eO=r(function(e,t){var n,r,s,a,o,c,i,u,l,E,d,g,h,m,v,O,S,y,R,I,_;return p(this,function(p){switch(p.label){case 0:p.trys.push([0,4,,5]);n=eh(e);if(!n)return[2,f({},eE)];i=n.path,u=n.file,l=n.isCurrentProject,E=n.isDepend,d=n.isDevDepend,g=(r=u.dependencies)!==null&&r!==void 0?r:{},h=(s=u.devDependencies)!==null&&s!==void 0?s:{},m=l?(a=u.version)!==null&&a!==void 0?a:"0.0.0":E?(o=g[e])!==null&&o!==void 0?o:"0.0.0":d?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];S=m;return[3,3];case 1:return[4,em(e)];case 2:S=p.sent();p.label=3;case 3:v=S,O=l||m===v;if(!O&&(t===null||t===void 0?void 0:t.update)){;R=E?"dependencies":d?"devDependencies":null;R&&((y=u[R])===null||y===void 0?void 0:y[e])!==v&&(u[R]=(I=u[R])!==null&&I!==void 0?I:{},u[R][e]=v,B(i,u),ef.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:O}];case 4:_=p.sent();return[2,(ef.error('Error checking package "'.concat(e,'": ').concat(_.message)),f({},eE))];case 5:return[2]}})});return eO.apply(this,arguments)}S(ev,"checkPackage");function eS(){return ey.apply(this,arguments)}function ey(){ey=r(function(){var e,t,n,r,s,a,o,c,i,u,l,f;return p(this,function(E){switch(E.label){case 0:e=[{command:S(function(){return tD.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:S(function(){return tD.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:S(function(){return tD.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;E.label=1;case 1:E.trys.push([1,9,10,11]);s=e[Symbol.iterator]();E.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];o=a.value,c=o.command,i=o.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,c()];case 4:u=E.sent();return[4,eY("".concat(i," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();ef.warn("Installation attempt failed: ".concat(i)),ef.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:f=E.sent();n=true;r=f;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return ey.apply(this,arguments)}S(eS,"installDependencies");function eR(e,t){return eI.apply(this,arguments)}function eI(){eI=r(function(e,t){var n,r,s,a,o,c,i,u,l,E,d;return p(this,function(h){switch(h.label){case 0:if(!H(t_.PACKAGE_JSON)){ef.error("package.json not found. Aborting setup.");return[2]}h.label=1;case 1:h.trys.push([1,13,,14]);n=g(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ev(e,f({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=h.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eS()];case 3:r=h.sent();h.label=4;case 4:r;a=true,o=false,c=undefined;h.label=5;case 5:h.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();h.label=6;case 6:if(!!(a=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:h.sent();h.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:E=h.sent();o=true;c=E;return[3,12];case 11:try{if(!a&&i.return!=null){i.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:d=h.sent();throw ef.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})});return eI.apply(this,arguments)}S(eR,"setupPackages");import e_ from"node-persist";var eT=ee();function eC(){return eA.apply(this,arguments)}function eA(){eA=r(function(){var e;return p(this,function(t){switch(t.label){case 0:e=e_.defaultInstance;if(e)return[3,2];return[4,e_.init({dir:eT.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return eA.apply(this,arguments)}S(eC,"initNodePersist");var eD={get:function e(e){return r(function(){var t,n;return p(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eC()];case 1:r.sent();return[4,e_.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ef.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return p(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eC()];case 1:r.sent();return[4,e_.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ef.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return p(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eC()];case 1:n.sent();return[4,e_.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ef.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return p(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eC()];case 1:n.sent();return[4,e_.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ef.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ef.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return p(this,function(t){try{return[2,"".concat(eT.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ef.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eN=ee(),eb=es.promisify(en);function eG(e){return"error_list:".concat(e)}S(eG,"getErrorListKey");function eM(e){return ew.apply(this,arguments)}function ew(){ew=r(function(e){var t,n,s;return p(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eG(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eD.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return p(this,function(t){switch(t.label){case 0:return[4,eD.getLogLink(n)];case 1:e=t.sent();e&&ef.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:s=a.sent();ef.error("Failed to save errors: ".concat(s.message));return[3,4];case 4:return[2]}})});return ew.apply(this,arguments)}S(eM,"saveErrorListToStorage");function eL(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,f;var E=s.exec(e)||[],d=a.exec(e)||[],g=o.exec(e)||[];var h,m,p,v,O,S;E.length&&r?t.push({file:r,position:"".concat(E[1],":").concat(E[2]),type:E[3]===ea.Error?ea.Error:ea.Warning,message:(h=E===null||E===void 0?void 0:(c=E[4])===null||c===void 0?void 0:c.trim())!==null&&h!==void 0?h:"",rule:(m=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):d.length?t.push({file:(p=d===null||d===void 0?void 0:d[1])!==null&&p!==void 0?p:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===ea.Error?ea.Error:ea.Warning,message:(v=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&v!==void 0?v:""}):g.length?t.push({file:"commitlint",type:ea.Error,message:(O=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&O!==void 0?O:"",rule:(S=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&S!==void 0?S:""}):n.push(e.trim())}}),t.length&&eM(t),eN.DEBUG&&n.length&&(ef.warn("Unmatched lines:"),n.forEach(function(e){return ef.info(" ".concat(e))}))}S(eL,"parseTextErrors");function eP(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,o=e.ruleId,c=e.message;n.push({type:r===2?ea.Error:ea.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&eM(n)}catch(t){eL(e)}}S(eP,"parseCommandOutput");function eU(e){return ek.apply(this,arguments)}function ek(){ek=r(function(e){var t,n,r,s,a,o,c,i,u;var l=arguments;return p(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eP;n=new AbortController;er.on("SIGINT",function(){ef.warn("Process interrupted. Terminating..."),n.abort(),er.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eb(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:o=f.sent();c=o.stdout,i=o.stderr,u=o.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&ef.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return ek.apply(this,arguments)}S(eU,"executeCommand");function eF(e){return{raw:!0,cmd:e}}S(eF,"rawCommand");function ej(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(th," ").concat(eJ," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(th," ").concat(tE," ").concat(te," ").concat(e):"".concat(th," ").concat(e9," ").concat(e)}S(ej,"formatCLI");function ex(e,t){return typeof e=="function"?ej(e(t),t):(typeof e==="undefined"?"undefined":h(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ej(e,t):e}S(ex,"formatCommand");function eY(e,t){return eq.apply(this,arguments)}function eq(){eq=r(function(e,t){var n;return p(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ef.start("".concat(e)),eN.DEBUG&&ef.info("→ ".concat(t));return[4,eU(t)];case 1:r.sent(),ef.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ef.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return eq.apply(this,arguments)}S(eY,"runCommand");import{join as eQ,resolve as eB}from"node:path";var eH=ee();function eV(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eB.apply(void 0,[eH.CWD].concat(g(t)))}S(eV,"resolveWorkingPath");function eK(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eQ.apply(void 0,g(t))}S(eK,"join");var eW=ee(),e$=eW.CWD,eJ="@cyberskill/shared",eX="node_modules",ez="dist",eZ="package.json",e0="package-lock.json",e2="tsconfig.json",e1=".gitignore",e4=".simple-git-hooks.json",e3="pnpm-lock.yaml",e5=".git/hooks/",e6=".git/COMMIT_EDITMSG",e8=".migrate-mongo.config.js",e7=eK(e$,eX,eJ,ez),e9="cyberskill",te="src/nodejs/cli/index.ts",tt="eslint",tn="eslint",tr="vitest",ts="playwright",ta="vitest",to="@commitlint/cli",tc="commitlint",ti="lint-staged",tu="lint-staged",tl="typescript",tf="tsc",tE="tsx",td="git",tg="pnpm",th="pnpm exec",tm="simple-git-hooks",tp="simple-git-hooks",tv="@eslint/config-inspector",tO="eslint-config-inspector",tS="node-modules-inspector",ty="node-modules-inspector",tR="migrate-mongo",tI="./node_modules/migrate-mongo/bin/migrate-mongo",t_={CYBERSKILL_DIRECTORY:e7,WORKING_DIRECTORY:e$,TS_CONFIG:eV(e2),GIT_IGNORE:eV(e1),GIT_HOOK:eV(e5),GIT_COMMIT_MSG:eV(e6),SIMPLE_GIT_HOOKS_JSON:eV(e4),PACKAGE_JSON:eV(eZ),PACKAGE_LOCK_JSON:eV(e0),PNPM_LOCK_YAML:eV(e3),NODE_MODULES:eV(eX),MIGRATE_MONGO_CONFIG:eV(e8),LINT_STAGED_CONFIG:eV("".concat(e7,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eV("".concat(e7,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eV("".concat(e7,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eV("".concat(e7,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eV("".concat(e7,"/react/vitest/vitest.e2e.js"))};function tT(e,t,n){return tC.apply(this,arguments)}function tC(){tC=r(function(e,t,n){return p(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case et.CLI:return[3,1];case et.STRING:return[3,3]}return[3,4];case 1:return[4,eR(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ex(eF("".concat(th," ").concat(n))))];case 3:return[2,ex(eF(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return tC.apply(this,arguments)}S(tT,"buildCommand");function tA(e,t,n){return /*#__PURE__*/r(function(){return p(this,function(r){return[2,tT(e,t,n)]})})}S(tA,"commandFactory");var tD={simpleGitHooks:tA(et.CLI,tm,tp),eslintInspect:tA(et.CLI,tv,tO),nodeModulesInspect:tA(et.CLI,tS,ty),eslintCheck:tA(et.CLI,tt,"".concat(tn," ").concat(t_.WORKING_DIRECTORY)),eslintFix:tA(et.CLI,tt,"".concat(tn," ").concat(t_.WORKING_DIRECTORY," --fix")),typescriptCheck:tA(et.CLI,tl,"".concat(tf," -p ").concat(t_.TS_CONFIG," --noEmit")),configureGitHook:tA(et.STRING,"".concat(td," config core.hooksPath ").concat(t_.GIT_HOOK)),testUnit:tA(et.CLI,tr,"".concat(ta," --config ").concat(t_.UNIT_TEST_CONFIG)),testE2e:tA(et.CLI,"".concat(tr," ").concat(ts),"".concat(ta," --config ").concat(t_.E2E_TEST_CONFIG)),mongoMigrateCreate:S(function(e){return tA(et.CLI,tR,"".concat(tE," ").concat(tI," create ").concat(e," -f ").concat(t_.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tA(et.CLI,tR,"".concat(tE," ").concat(tI," up -f ").concat(t_.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tA(et.CLI,tR,"".concat(tE," ").concat(tI," down -f ").concat(t_.MIGRATE_MONGO_CONFIG)),commitLint:tA(et.CLI,to,"".concat(tc," --edit ").concat(t_.GIT_COMMIT_MSG," --config ").concat(t_.COMMITLINT_CONFIG)),lintStaged:tA(et.CLI,ti,"".concat(tu," --config ").concat(t_.LINT_STAGED_CONFIG)),stageBuildDirectory:tA(et.STRING,"".concat(td," add ").concat(ez)),build:tA(et.STRING,"".concat(tg," run build")),pnpmInstallStandard:tA(et.STRING,"".concat(tg," install")),pnpmInstallLegacy:tA(et.STRING,"".concat(tg," install --legacy-peer-deps")),pnpmInstallForce:tA(et.STRING,"".concat(tg," install --force"))};var tN={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return R(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?tN.getDateTime():new Date;return{id:A(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:A,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,o=a===void 0?!1:a;var c=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=c.virtual(t,n);r&&s.get(r)}),o||c.add(tN.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,o=e.aggregate,c=o===void 0?!1:o,i=e.virtuals,u=i===void 0?[]:i,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var E=tN.createSchema({mongoose:t,schema:r,virtuals:u});return tN.applyPlugins(E,[a&&C,c&&T]),tN.applyMiddlewares(E,f),t.model(n,E)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return d(f({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return /*#__PURE__*/function(){var e=r(function(e){return p(this,function(t){return[2,!L.isEmpty(e)]})});return function(t){return e.apply(this,arguments)}}()},isUnique:function e(e){return /*#__PURE__*/function(){var t=r(function(t){var n;return p(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return c({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})});return function(e){return t.apply(this,arguments)}}()},matchesRegex:function e(e){return /*#__PURE__*/function(){var t=r(function(t){return p(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!i(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})});return function(e){return t.apply(this,arguments)}}()}},migrate:d(f({},I),{setConfig:S(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));Y(t_.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e8,"\n");H(t_.GIT_IGNORE)?j(t_.GIT_IGNORE,"utf-8").split("\n").includes(e8)||U(t_.GIT_IGNORE,n,"utf-8"):Y(t_.GIT_IGNORE,n,"utf-8")},"setConfig")})},tb=/*#__PURE__*/function(){"use strict";function e(t,n){s(this,e);y(this,"collection");this.collection=t.collection(n)}o(e,[{key:"createOne",value:function e(e){var t=this;return r(function(){var n,r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n=f({},tN.createGenericFields(),e);r={success:!0,message:"Document created successfully"};return[4,t.collection.insertOne(n)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=this;return r(function(){var n,r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);n=e.map(function(e){return f({},tN.createGenericFields(),e)});return[4,t.collection.insertMany(n)];case 1:r=a.sent();return[2,r.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(r.insertedCount," documents created successfully"),result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.findOne(e)];case 1:n=s.sent();return[2,n?{success:!0,message:"Document found",result:n}:{success:!1,message:"Document not found"}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Documents retrieved successfully"};return[4,t.collection.find(e).toArray()];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0,message:"Count retrieved successfully"};return[4,t.collection.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,t){var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.collection.updateOne(e,{$set:t})];case 1:r=a.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,t){var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.collection.updateMany(e,{$set:t})];case 1:r=a.sent();return[2,r.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteOne(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,t.collection.deleteMany(e)];case 1:n=s.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})})()}}]);return e}();S(tb,"MongoController");var tG=tb,tM=/*#__PURE__*/function(){"use strict";function e(t){s(this,e);y(this,"model");this.model=t}o(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var a=this;return r(function(){var r,o,c;return p(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);r=a.model.findOne(e,t,n);s&&r.populate(s);return[4,r.exec()];case 1:o=i.sent();return[2,o?{success:!0,result:o}:{success:!1,message:"No ".concat(a.getModelName()," found."),code:D.NOT_FOUND.CODE}];case 2:c=i.sent();return[2,{success:!1,message:c.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var a=this;return r(function(){var r,o,c;return p(this,function(i){switch(i.label){case 0:i.trys.push([0,2,,3]);r=a.model.find(e,t,n);s&&r.populate(s);o={success:!0};return[4,r.exec()];case 1:return[2,(o.result=i.sent(),o)];case 2:c=i.sent();return[2,{success:!1,message:c.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.paginate(e,t)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.aggregatePaginate(n.model.aggregate(e),t)];case 1:return[2,(r.result=a.sent(),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.countDocuments(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.create(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);r={success:!0};return[4,n.model.insertMany(e,t)];case 1:return[2,(r.result=a.sent().map(function(e){return i(e,_)?e.toObject():null}).filter(function(e){return e!==null}),r)];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return r(function(){var r,a;return p(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,t,f({new:!0},n)).exec()];case 1:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:D.NOT_FOUND.CODE}];case 2:a=o.sent();return[2,{success:!1,message:a.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return r(function(){var r,a;return p(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);r={success:!0};return[4,s.model.updateMany(e,t,n).exec()];case 1:return[2,(r.result=o.sent(),r)];case 2:a=o.sent();return[2,{success:!1,message:a.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.model.findOneAndDelete(e,t).exec()];case 1:r=a.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"No ".concat(n.getModelName()," found to delete."),code:D.NOT_FOUND.CODE}];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return r(function(){var r,s;return p(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.model.deleteMany(e,t).exec()];case 1:r=a.sent();return[2,r.deletedCount===0?{success:!1,message:"No documents found to delete.",code:D.NOT_FOUND.CODE}:{success:!0,result:r}];case 2:s=a.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;var n=this;return r(function(){var r,s,a,o;return p(this,function(c){switch(c.label){case 0:r=new Set;s=0;c.label=1;case 1:if(!(s<10))return[3,5];a=w(e,s+t);o=!r.has(a);if(!o)return[3,3];r.add(a);return[4,n.model.exists({shortId:a})];case 2:o=!c.sent();c.label=3;case 3:if(o)return[2,{success:!0,result:a}];c.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:D.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"createSlug",value:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return r(function(){var a,o,c,i,u,l,f,E,d,g,m;return p(this,function(v){switch(v.label){case 0:v.trys.push([0,8,,9]);a=t[e],o=S(/*#__PURE__*/function(){var e=r(function(e){var r,a,o;return p(this,function(c){switch(c.label){case 0:return[4,s.model.findOne(tN.createSlugQuery(e,n,t.id))];case 1:r=c.sent();if(!r)return[2,e];a=1;c.label=2;case 2:o="".concat(e,"-").concat(a);return[4,s.model.findOne(tN.createSlugQuery(o,n,t.id))];case 3:r=c.sent(),a++;c.label=4;case 4:if(r)return[3,2];c.label=5;case 5:return[2,o]}})});return function(t){return e.apply(this,arguments)}}(),"createUniqueSlug");if(!((typeof a==="undefined"?"undefined":h(a))=="object"))return[3,5];c={};i=[];for(u in a)i.push(u);l=0;v.label=1;case 1:if(!(l<i.length))return[3,4];f=i[l];E=M(a[f]);return[4,o(E)];case 2:c[f]=v.sent();v.label=3;case 3:l++;return[3,1];case 4:return[2,{success:!0,result:c}];case 5:d=M(a);g={success:!0};return[4,o(d)];case 6:return[2,(g.result=v.sent(),g)];case 7:return[3,9];case 8:m=v.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(m.message),code:D.INTERNAL_SERVER_ERROR.CODE}];case 9:return[2]}})})()}},{key:"aggregate",value:function e(e){var t=this;return r(function(){var n,r;return p(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);n={success:!0};return[4,t.model.aggregate(e)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();S(tM,"MongooseController");var tw=tM;export{tG as MongoController,tw as MongooseController,T as aggregatePaginate,tN as mongo,C as mongoosePaginate};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,s,a,c){try{var o=e[a](c);var i=o.value}catch(e){n(e);return}if(o.done){t(i)}else{Promise.resolve(i).then(r,s)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(s,a){var c=e.apply(t,r);function o(e){n(c,s,a,o,i,"next",e)}function i(e){n(c,s,a,o,i,"throw",e)}o(undefined)})}}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)a(e.prototype,t);if(n)a(e,n);return e}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function u(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function l(){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 E(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function f(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{d(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function h(e){return t(e)||u(e)||m(e)||l()}function g(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function _(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=o(0),c["throw"]=o(1),c["return"]=o(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function o(e){return function(t){return i([e,t])}}function i(o){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,o[0]&&(a=0)),a)try{if(n=1,r&&(s=o[0]&2?r["return"]:o[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,o[1])).done)return s;if(r=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:a.label++;return{value:o[1],done:false};case 5:a.label++;r=o[1];o=[0];continue;case 7:o=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){a=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){a.label=o[1];break}if(o[0]===6&&a.label<s[1]){a.label=s[1];s=o;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(o);break}if(s[2])a.ops.pop();a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e];r=0}finally{n=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var p=Object.defineProperty;var v=function(e,t,n){return t in e?p(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var O=function(e,t){return p(e,"name",{value:t,configurable:!0})};var S=function(e,t,n){return v(e,(typeof t==="undefined"?"undefined":g(t))!="symbol"?t+"":t,n)};import{format as y}from"date-fns";import R from"migrate-mongo";import{Document as I}from"mongoose";import T from"mongoose-aggregate-paginate-v2";import C from"mongoose-paginate-v2";import{v4 as A}from"uuid";var D={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"}};import N from"crypto-js";import b from"slugify";var G=b.default||b;function M(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return G(e,E({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))}O(M,"generateSlug");function P(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return N.SHA256(e).toString(N.enc.Hex).slice(0,t)}O(P,"generateShortId");var w={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":g(e))=="object"?i(e,Date)?!1:i(e,Map)||i(e,Set)?e.size===0:i(e,WeakMap)||i(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};import U from"fs-extra";var L=U.lstatSync,k=U.readdirSync,F=U.mkdirSync,j=U.readFileSync,x=U.writeFileSync,Y=U.appendFileSync,q=U.unlinkSync,Q=U.statSync,B=U.readJsonSync,H=U.writeJsonSync;function V(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return U.pathExistsSync(e)})}O(V,"pathExistsSync");var K=".cyberskill-storage";import W from"dotenv";import{bool as $,cleanEnv as J,str as X}from"envalid";import z from"node:os";import Z from"node:path";import ee from"node:process";W.config();function et(){var e={DEBUG:ee.env.DEBUG||!1,CWD:ee.env.CWD||ee.cwd(),CYBERSKILL_STORAGE_DIRECTORY:ee.env.CYBERSKILL_STORAGE_DIRECTORY||Z.join(z.homedir(),K)};return J(e,{DEBUG:$(),CWD:X(),CYBERSKILL_STORAGE_DIRECTORY:X()})}O(et,"getEnv");var en=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as er}from"node:child_process";import es from"node:process";import*as ea from"node:util";var ec=function(e){return e.Error="error",e.Warning="warning",e}({});import eo from"chalk";import ei from"consola";import{GraphQLError as eu}from"graphql";var el=et();el.DEBUG||(ei.level=4);function eE(e){var t=eo[e];return typeof t=="function"?t:eo.green}O(eE,"chalkKeyword");var ed={silent:ei.silent,level:ei.level,fatal:ei.fatal,error:ei.error,warn:ei.warn,log:ei.log,info:ei.info,success:ei.success,ready:ei.ready,start:ei.start,box:ei.box,debug:ei.debug,trace:ei.trace,verbose:ei.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){ei.box(eo.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;ei.log("".concat(eo.gray("File:")," ").concat(eo.blue("".concat(t).concat(r?":".concat(r):"")))),s&&ei.log(" ".concat(eE(n)("Rule:")," ").concat(s)),ei.log(" ".concat(eE(n)("Message:")," ").concat(a))}),ei.box(eE(n)("".concat(e," : ").concat(t.length))),ei.log(eo.gray("─".repeat(40)))}};var ef={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import eh from"node-fetch";var eg=et();function em(e){var t=eY(eg.CWD,eK);if(!V(t))return!1;try{var n=B(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,c=n.devDependencies,o=c===void 0?{}:c,i=r===e,u=e in a,l=e in o;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return ed.warn("Failed to read package.json: ".concat(e.message)),!1}}O(em,"getPackage");function e_(e){return /*#__PURE__*/r(function(){var t,n,r,s;return _(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,eh("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:s=a.sent();throw ed.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}O(e_,"getLatestPackageVersion");function ep(e,t){return /*#__PURE__*/r(function(){var n,r,s,a,c,o,i,u,l,d,f,h,g,m,p,v,O,S,y,R,I;return _(this,function(_){switch(_.label){case 0:_.trys.push([0,4,,5]);n=em(e);if(!n)return[2,E({},ef)];i=n.path,u=n.file,l=n.isCurrentProject,d=n.isDepend,f=n.isDevDepend,h=(r=u.dependencies)!==null&&r!==void 0?r:{},g=(s=u.devDependencies)!==null&&s!==void 0?s:{},m=l?(a=u.version)!==null&&a!==void 0?a:"0.0.0":d?(c=h[e])!==null&&c!==void 0?c:"0.0.0":f?(o=g[e])!==null&&o!==void 0?o:"0.0.0":"0.0.0";if(!l)return[3,1];O=m;return[3,3];case 1:return[4,e_(e)];case 2:O=_.sent();_.label=3;case 3:p=O,v=l||m===p;if(!v&&(t===null||t===void 0?void 0:t.update)){;y=d?"dependencies":f?"devDependencies":null;y&&((S=u[y])===null||S===void 0?void 0:S[e])!==p&&(u[y]=(R=u[y])!==null&&R!==void 0?R:{},u[y][e]=p,H(i,u),ed.info('Updated "'.concat(e,'" to version ').concat(p)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:v}];case 4:I=_.sent();return[2,(ed.error('Error checking package "'.concat(e,'": ').concat(I.message)),E({},ef))];case 5:return[2]}})})()}O(ep,"checkPackage");function ev(){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c,o,i,u,l,E;return _(this,function(d){switch(d.label){case 0:e=[{command:O(function(){return tS.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:O(function(){return tS.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:O(function(){return tS.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];c=a.value,o=c.command,i=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,o()];case 4:u=d.sent();return[4,eU("".concat(i," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();ed.warn("Installation attempt failed: ".concat(i)),ed.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:E=d.sent();n=true;r=E;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}O(ev,"installDependencies");function eO(e,t){return /*#__PURE__*/r(function(){var n,r,s,a,c,o,i,u,l,d,f;return _(this,function(g){switch(g.label){case 0:if(!V(tp.PACKAGE_JSON)){ed.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,13,,14]);n=h(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ep(e,E({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=g.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ev()];case 3:r=g.sent();g.label=4;case 4:r;a=true,c=false,o=undefined;g.label=5;case 5:g.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();g.label=6;case 6:if(!!(a=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:g.sent();g.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:d=g.sent();c=true;o=d;return[3,12];case 11:try{if(!a&&i.return!=null){i.return()}}finally{if(c){throw o}}return[7];case 12:return[3,14];case 13:f=g.sent();throw ed.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}O(eO,"setupPackages");import eS from"node-persist";var ey=et();function eR(){return /*#__PURE__*/r(function(){var e;return _(this,function(t){switch(t.label){case 0:e=eS.defaultInstance;if(e)return[3,2];return[4,eS.init({dir:ey.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}O(eR,"initNodePersist");var eI={get:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eR()];case 1:r.sent();return[4,eS.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ed.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/r(function(){var n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eR()];case 1:r.sent();return[4,eS.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ed.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/r(function(){var t;return _(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eR()];case 1:n.sent();return[4,eS.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ed.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/r(function(){var e,t;return _(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eR()];case 1:n.sent();return[4,eS.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ed.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ed.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/r(function(){return _(this,function(t){try{return[2,"".concat(ey.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ed.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eT=et(),eC=ea.promisify(er);function eA(e){return"error_list:".concat(e)}O(eA,"getErrorListKey");function eD(e){return /*#__PURE__*/r(function(){var t,n,s;return _(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eA(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eI.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/r(function(){var e;return _(this,function(t){switch(t.label){case 0:return[4,eI.getLogLink(n)];case 1:e=t.sent();e&&ed.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:s=a.sent();ed.error("Failed to save errors: ".concat(s.message));return[3,4];case 4:return[2]}})})()}O(eD,"saveErrorListToStorage");function eN(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var o,i,u,l,E;var d=s.exec(e)||[],f=a.exec(e)||[],h=c.exec(e)||[];var g,m,_,p,v,O;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===ec.Error?ec.Error:ec.Warning,message:(g=d===null||d===void 0?void 0:(o=d[4])===null||o===void 0?void 0:o.trim())!==null&&g!==void 0?g:"",rule:(m=d===null||d===void 0?void 0:(i=d[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):f.length?t.push({file:(_=f===null||f===void 0?void 0:f[1])!==null&&_!==void 0?_:"",position:"".concat(f[2],":").concat(f[3]),type:f[4]===ec.Error?ec.Error:ec.Warning,message:(p=f===null||f===void 0?void 0:(u=f[5])===null||u===void 0?void 0:u.trim())!==null&&p!==void 0?p:""}):h.length?t.push({file:"commitlint",type:ec.Error,message:(v=h===null||h===void 0?void 0:(l=h[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(O=h===null||h===void 0?void 0:(E=h[2])===null||E===void 0?void 0:E.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&eD(t),eT.DEBUG&&n.length&&(ed.warn("Unmatched lines:"),n.forEach(function(e){return ed.info(" ".concat(e))}))}O(eN,"parseTextErrors");function eb(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,c=e.ruleId,o=e.message;n.push({type:r===2?ec.Error:ec.Warning,file:t,position:"".concat(s,":").concat(a),rule:c,message:o})})}),n.length&&eD(n)}catch(t){eN(e)}}O(eb,"parseCommandOutput");function eG(e){return /*#__PURE__*/r(function(e){var t,n,r,s,a,c,o,i,u;var l=arguments;return _(this,function(E){switch(E.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eb;n=new AbortController;es.on("SIGINT",function(){ed.warn("Process interrupted. Terminating..."),n.abort(),es.exit()});E.label=1;case 1:E.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eC(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=E.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});E.label=3;case 3:return[3,5];case 4:c=E.sent();o=c.stdout,i=c.stderr,u=c.message;[o,i].forEach(function(e){return e&&t(e)}),!i&&!o&&ed.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}O(eG,"executeCommand");function eM(e){return{raw:!0,cmd:e}}O(eM,"rawCommand");function eP(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tu," ").concat(eB," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tu," ").concat(tc," ").concat(e3," ").concat(e):"".concat(tu," ").concat(e4," ").concat(e)}O(eP,"formatCLI");function ew(e,t){return typeof e=="function"?eP(e(t),t):(typeof e==="undefined"?"undefined":g(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eP(e,t):e}O(ew,"formatCommand");function eU(e,t){return /*#__PURE__*/r(function(){var n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ed.start("".concat(e)),eT.DEBUG&&ed.info("→ ".concat(t));return[4,eG(t)];case 1:r.sent(),ed.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ed.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}O(eU,"runCommand");import eL,{join as ek,resolve as eF}from"node:path";var ej=et();function ex(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eF.apply(void 0,[ej.CWD].concat(h(t)))}O(ex,"resolveWorkingPath");function eY(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return ek.apply(void 0,h(t))}O(eY,"join");var eq=et(),eQ=eq.CWD,eB="@cyberskill/shared",eH="node_modules",eV="dist",eK="package.json",eW="package-lock.json",e$="tsconfig.json",eJ=".gitignore",eX=".simple-git-hooks.json",ez="pnpm-lock.yaml",eZ=".git/hooks/",e0=".git/COMMIT_EDITMSG",e1=".migrate-mongo.config.js",e2=eY(eQ,eH,eB,eV),e4="cyberskill",e3="src/nodejs/cli/index.ts",e5="eslint",e6="eslint",e7="vitest",e8="playwright",e9="vitest",te="@commitlint/cli",tt="commitlint",tn="lint-staged",tr="lint-staged",ts="typescript",ta="tsc",tc="tsx",to="git",ti="pnpm",tu="pnpm exec",tl="simple-git-hooks",tE="simple-git-hooks",td="@eslint/config-inspector",tf="eslint-config-inspector",th="node-modules-inspector",tg="node-modules-inspector",tm="migrate-mongo",t_="./node_modules/migrate-mongo/bin/migrate-mongo",tp={CYBERSKILL_DIRECTORY:e2,WORKING_DIRECTORY:eQ,TS_CONFIG:ex(e$),GIT_IGNORE:ex(eJ),GIT_HOOK:ex(eZ),GIT_COMMIT_MSG:ex(e0),SIMPLE_GIT_HOOKS_JSON:ex(eX),PACKAGE_JSON:ex(eK),PACKAGE_LOCK_JSON:ex(eW),PNPM_LOCK_YAML:ex(ez),NODE_MODULES:ex(eH),MIGRATE_MONGO_CONFIG:ex(e1),LINT_STAGED_CONFIG:ex("".concat(e2,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ex("".concat(e2,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ex("".concat(e2,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ex("".concat(e2,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ex("".concat(e2,"/react/vitest/vitest.e2e.js"))};function tv(e,t,n){return /*#__PURE__*/r(function(){return _(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case en.CLI:return[3,1];case en.STRING:return[3,3]}return[3,4];case 1:return[4,eO(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ew(eM("".concat(tu," ").concat(n))))];case 3:return[2,ew(eM(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}O(tv,"buildCommand");function tO(e,t,n){return function(){return /*#__PURE__*/r(function(){return _(this,function(r){return[2,tv(e,t,n)]})})()}}O(tO,"commandFactory");var tS={simpleGitHooks:tO(en.CLI,tl,tE),eslintInspect:tO(en.CLI,td,tf),nodeModulesInspect:tO(en.CLI,th,tg),eslintCheck:tO(en.CLI,e5,"".concat(e6," ").concat(tp.WORKING_DIRECTORY)),eslintFix:tO(en.CLI,e5,"".concat(e6," ").concat(tp.WORKING_DIRECTORY," --fix")),typescriptCheck:tO(en.CLI,ts,"".concat(ta," -p ").concat(tp.TS_CONFIG," --noEmit")),configureGitHook:tO(en.STRING,"".concat(to," config core.hooksPath ").concat(tp.GIT_HOOK)),testUnit:tO(en.CLI,e7,"".concat(e9," --config ").concat(tp.UNIT_TEST_CONFIG)),testE2e:tO(en.CLI,"".concat(e7," ").concat(e8),"".concat(e9," --config ").concat(tp.E2E_TEST_CONFIG)),mongoMigrateCreate:O(function(e){return tO(en.CLI,tm,"".concat(tc," ").concat(t_," create ").concat(e," -f ").concat(tp.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tO(en.CLI,tm,"".concat(tc," ").concat(t_," up -f ").concat(tp.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tO(en.CLI,tm,"".concat(tc," ").concat(t_," down -f ").concat(tp.MIGRATE_MONGO_CONFIG)),commitLint:tO(en.CLI,te,"".concat(tt," --edit ").concat(tp.GIT_COMMIT_MSG," --config ").concat(tp.COMMITLINT_CONFIG)),lintStaged:tO(en.CLI,tn,"".concat(tr," --config ").concat(tp.LINT_STAGED_CONFIG)),stageBuildDirectory:tO(en.STRING,"".concat(to," add ").concat(eV)),build:tO(en.STRING,"".concat(ti," run build")),pnpmInstallStandard:tO(en.STRING,"".concat(ti," install")),pnpmInstallLegacy:tO(en.STRING,"".concat(ti," install --legacy-peer-deps")),pnpmInstallForce:tO(en.STRING,"".concat(ti," install --force"))};var ty={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return y(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?ty.getDateTime():new Date;return{id:A(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:A,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,c=a===void 0?!1:a;var o=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=o.virtual(t,n);r&&s.get(r)}),c||o.add(ty.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,c=e.aggregate,o=c===void 0?!1:c,i=e.virtuals,u=i===void 0?[]:i,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=ty.createSchema({mongoose:t,schema:r,virtuals:u});return ty.applyPlugins(d,[a&&C,o&&T]),ty.applyMiddlewares(d,E),t.model(n,d)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return f(E({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/r(function(){return _(this,function(t){return[2,!w.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/r(function(){var n;return _(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/r(function(){return _(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!i(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:f(E({},R),{setConfig:O(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));x(tp.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e1,"\n");V(tp.GIT_IGNORE)?j(tp.GIT_IGNORE,"utf-8").split("\n").includes(e1)||Y(tp.GIT_IGNORE,n,"utf-8"):x(tp.GIT_IGNORE,n,"utf-8")},"setConfig")})},tR=/*#__PURE__*/function(){"use strict";function e(t,n){s(this,e);S(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n,r;return _(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=E({},ty.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/r(function(){var t,n,r;return _(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return E({},ty.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return _(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return _(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return /*#__PURE__*/r(function(){var n,r;return _(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return /*#__PURE__*/r(function(){var n,r;return _(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteMany(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}}]);return e}();O(tR,"MongoController");var tI=tR,tT=/*#__PURE__*/function(){"use strict";function e(t){s(this,e);S(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c;var o=arguments;return _(this,function(i){switch(i.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=i.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:D.NOT_FOUND.CODE}];case 3:c=i.sent();return[2,{success:!1,message:c.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c;var o=arguments;return _(this,function(i){switch(i.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=i.sent(),a)];case 3:c=i.sent();return[2,{success:!1,message:c.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/r(function(e){var t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return _(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0};return[4,this.model.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/r(function(e){var t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return i(e,I)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r,s;var a=arguments;return _(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,E({new:!0},n)).exec()];case 2:r=c.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:D.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r,s;var a=arguments;return _(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=c.sent(),r)];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=a.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:D.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=a.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:D.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/r(function(){var n,r,s,a;return _(this,function(c){switch(c.label){case 0:n=new Set;r=0;c.label=1;case 1:if(!(r<10))return[3,5];s=P(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:s}];c.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:D.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t){return /*#__PURE__*/r(function(e,t){var n,s,a,c,o,i,u,l,E,d,f,h,m;var p=arguments;return _(this,function(v){switch(v.label){case 0:n=this;s=p.length>2&&p[2]!==void 0?p[2]:{};v.label=1;case 1:v.trys.push([1,9,,10]);a=t[e],c=O(function(e){return /*#__PURE__*/r(function(){var n,r,a;return _(this,function(c){switch(c.label){case 0:return[4,this.model.findOne(ty.createSlugQuery(e,s,t.id))];case 1:n=c.sent();if(!n)return[2,e];r=1;c.label=2;case 2:a="".concat(e,"-").concat(r);return[4,this.model.findOne(ty.createSlugQuery(a,s,t.id))];case 3:n=c.sent(),r++;c.label=4;case 4:if(n)return[3,2];c.label=5;case 5:return[2,a]}})}).call(n)},"createUniqueSlug");if(!((typeof a==="undefined"?"undefined":g(a))=="object"))return[3,6];o={};i=[];for(u in a)i.push(u);l=0;v.label=2;case 2:if(!(l<i.length))return[3,5];E=i[l];d=M(a[E]);return[4,c(d)];case 3:o[E]=v.sent();v.label=4;case 4:l++;return[3,2];case 5:return[2,{success:!0,result:o}];case 6:f=M(a);h={success:!0};return[4,c(f)];case 7:return[2,(h.result=v.sent(),h)];case 8:return[3,10];case 9:m=v.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(m.message),code:D.INTERNAL_SERVER_ERROR.CODE}];case 10:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();O(tT,"MongooseController");var tC=tT;export{tI as MongoController,tC as MongooseController,T as aggregatePaginate,ty as mongo,C as mongoosePaginate};
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,a)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(a,o){var c=e.apply(t,r);function i(e){n(c,a,o,i,s,"next",e)}function s(e){n(c,a,o,i,s,"throw",e)}i(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function s(e){return t(e)||o(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(o=0)),o)try{if(n=1,r&&(a=i[0]&2?r["return"]:i[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;if(r=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var d=Object.create;var p=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,y=Object.prototype.hasOwnProperty;var m=function(e,t){return p(e,"name",{value:t,configurable:!0})};var I=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},b=function(e,t,n,r){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":u(t))=="object"||typeof t=="function")try{var i=function(){var a=l.value;!y.call(e,a)&&a!==n&&p(e,a,{get:function(){return t[a]},enumerable:!(r=g(t,a))||r.enumerable})};for(var s=v(t)[Symbol.iterator](),l;!(a=(l=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var E=function(e,t,n){return n=e!=null?d(h(e)):{},b(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},C=function(e){return b(p({},"__esModule",{value:!0}),e)};var O={};I(O,{CHECK_PACKAGE_EMPTY_RESULT:function(){return S},checkPackage:function(){return tf},getLatestPackageVersion:function(){return tu},getPackage:function(){return ts},installDependencies:function(){return tp},setupPackages:function(){return tv}});module.exports=C(O);var S={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var _=E(require("node-fetch"),1);var T=".cyberskill-storage";var w=E(require("dotenv"),1),G=require("envalid"),k=E(require("os"),1),L=E(require("path"),1),P=E(require("process"),1);w.default.config();function N(){var e={DEBUG:P.default.env.DEBUG||!1,CWD:P.default.env.CWD||P.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:P.default.env.CYBERSKILL_STORAGE_DIRECTORY||L.default.join(k.default.homedir(),T)};return(0,G.cleanEnv)(e,{DEBUG:(0,G.bool)(),CWD:(0,G.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,G.str)()})}m(N,"getEnv");var R=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var D=require("child_process"),j=E(require("process"),1),A=E(require("util"),1);var M=function(e){return e.Error="error",e.Warning="warning",e}({});var x=E(require("chalk"),1),F=E(require("consola"),1),U=require("graphql");var K=N();K.DEBUG||(F.default.level=4);function Y(e){var t=x.default[e];return typeof t=="function"?t:x.default.green}m(Y,"chalkKeyword");var q={silent:F.default.silent,level:F.default.level,fatal:F.default.fatal,error:F.default.error,warn:F.default.warn,log:F.default.log,info:F.default.info,success:F.default.success,ready:F.default.ready,start:F.default.start,box:F.default.box,debug:F.default.debug,trace:F.default.trace,verbose:F.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){F.default.box(x.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;F.default.log("".concat(x.default.gray("File:")," ").concat(x.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&F.default.log(" ".concat(Y(n)("Rule:")," ").concat(a)),F.default.log(" ".concat(Y(n)("Message:")," ").concat(o))}),F.default.box(Y(n)("".concat(e," : ").concat(t.length))),F.default.log(x.default.gray("─".repeat(40)))}};var B=require("path");var W=N();function J(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,B.resolve).apply(this,[W.CWD].concat(s(t)))}m(J,"resolveWorkingPath");function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,B.join).apply(this,s(t))}m(H,"join");var V=N(),$=V.CWD,z="@cyberskill/shared",Q="node_modules",X="dist",Z="package.json",ee="package-lock.json",et="tsconfig.json",en=".gitignore",er=".simple-git-hooks.json",ea="pnpm-lock.yaml",eo=".git/hooks/",ec=".git/COMMIT_EDITMSG",ei=".migrate-mongo.config.js",es=H($,Q,z,X),eu="cyberskill",el="src/nodejs/cli/index.ts",ef="eslint",ed="eslint",ep="vitest",eg="playwright",ev="vitest",eh="@commitlint/cli",ey="commitlint",em="lint-staged",eI="lint-staged",eb="typescript",eE="tsc",eC="tsx",eO="git",eS="pnpm",e_="pnpm exec",eT="simple-git-hooks",ew="simple-git-hooks",eG="@eslint/config-inspector",ek="eslint-config-inspector",eL="node-modules-inspector",eP="node-modules-inspector",eN="migrate-mongo",eR="./node_modules/migrate-mongo/bin/migrate-mongo",eD={CYBERSKILL_DIRECTORY:es,WORKING_DIRECTORY:$,TS_CONFIG:J(et),GIT_IGNORE:J(en),GIT_HOOK:J(eo),GIT_COMMIT_MSG:J(ec),SIMPLE_GIT_HOOKS_JSON:J(er),PACKAGE_JSON:J(Z),PACKAGE_LOCK_JSON:J(ee),PNPM_LOCK_YAML:J(ea),NODE_MODULES:J(Q),MIGRATE_MONGO_CONFIG:J(ei),LINT_STAGED_CONFIG:J("".concat(es,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:J("".concat(es,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:J("".concat(es,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:J("".concat(es,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:J("".concat(es,"/react/vitest/vitest.e2e.js"))};function ej(e,t,n){return eA.apply(this,arguments)}function eA(){eA=r(function(e,t,n){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case R.CLI:return[3,1];case R.STRING:return[3,3]}return[3,4];case 1:return[4,tv(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),e1(eZ("".concat(e_," ").concat(n))))];case 3:return[2,e1(eZ(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})});return eA.apply(this,arguments)}m(ej,"buildCommand");function eM(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,ej(e,t,n)]})})}m(eM,"commandFactory");var ex={simpleGitHooks:eM(R.CLI,eT,ew),eslintInspect:eM(R.CLI,eG,ek),nodeModulesInspect:eM(R.CLI,eL,eP),eslintCheck:eM(R.CLI,ef,"".concat(ed," ").concat(eD.WORKING_DIRECTORY)),eslintFix:eM(R.CLI,ef,"".concat(ed," ").concat(eD.WORKING_DIRECTORY," --fix")),typescriptCheck:eM(R.CLI,eb,"".concat(eE," -p ").concat(eD.TS_CONFIG," --noEmit")),configureGitHook:eM(R.STRING,"".concat(eO," config core.hooksPath ").concat(eD.GIT_HOOK)),testUnit:eM(R.CLI,ep,"".concat(ev," --config ").concat(eD.UNIT_TEST_CONFIG)),testE2e:eM(R.CLI,"".concat(ep," ").concat(eg),"".concat(ev," --config ").concat(eD.E2E_TEST_CONFIG)),mongoMigrateCreate:m(function(e){return eM(R.CLI,eN,"".concat(eC," ").concat(eR," create ").concat(e," -f ").concat(eD.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:eM(R.CLI,eN,"".concat(eC," ").concat(eR," up -f ").concat(eD.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:eM(R.CLI,eN,"".concat(eC," ").concat(eR," down -f ").concat(eD.MIGRATE_MONGO_CONFIG)),commitLint:eM(R.CLI,eh,"".concat(ey," --edit ").concat(eD.GIT_COMMIT_MSG," --config ").concat(eD.COMMITLINT_CONFIG)),lintStaged:eM(R.CLI,em,"".concat(eI," --config ").concat(eD.LINT_STAGED_CONFIG)),stageBuildDirectory:eM(R.STRING,"".concat(eO," add ").concat(X)),build:eM(R.STRING,"".concat(eS," run build")),pnpmInstallStandard:eM(R.STRING,"".concat(eS," install")),pnpmInstallLegacy:eM(R.STRING,"".concat(eS," install --legacy-peer-deps")),pnpmInstallForce:eM(R.STRING,"".concat(eS," install --force"))};var eF=E(require("node-persist"),1);var eU=N();function eK(){return eY.apply(this,arguments)}function eY(){eY=r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=eF.default.defaultInstance;if(e)return[3,2];return[4,eF.default.init({dir:eU.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})});return eY.apply(this,arguments)}m(eK,"initNodePersist");var eq={get:function e(e){return r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eK()];case 1:r.sent();return[4,eF.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(q.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eK()];case 1:r.sent();return[4,eF.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();q.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eK()];case 1:n.sent();return[4,eF.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();q.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eK()];case 1:n.sent();return[4,eF.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(q.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(q.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return r(function(){return f(this,function(t){try{return[2,"".concat(eU.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(q.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eB=N(),eW=A.promisify(D.exec);function eJ(e){return"error_list:".concat(e)}m(eJ,"getErrorListKey");function eH(e){return eV.apply(this,arguments)}function eV(){eV=r(function(e){var t,n,a;return f(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eJ(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eq.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(/*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eq.getLogLink(n)];case 1:e=t.sent();e&&q.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})}),10);return[3,4];case 3:a=o.sent();q.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})});return eV.apply(this,arguments)}m(eH,"saveErrorListToStorage");function e$(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var d=a.exec(e)||[],p=o.exec(e)||[],g=c.exec(e)||[];var v,h,y,m,I,b;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===M.Error?M.Error:M.Warning,message:(v=d===null||d===void 0?void 0:(i=d[4])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:"",rule:(h=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&h!==void 0?h:""}):p.length?t.push({file:(y=p===null||p===void 0?void 0:p[1])!==null&&y!==void 0?y:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===M.Error?M.Error:M.Warning,message:(m=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&m!==void 0?m:""}):g.length?t.push({file:"commitlint",type:M.Error,message:(I=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&I!==void 0?I:"",rule:(b=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&b!==void 0?b:""}):n.push(e.trim())}}),t.length&&eH(t),eB.DEBUG&&n.length&&(q.warn("Unmatched lines:"),n.forEach(function(e){return q.info(" ".concat(e))}))}m(e$,"parseTextErrors");function ez(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?M.Error:M.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&eH(n)}catch(t){e$(e)}}m(ez,"parseCommandOutput");function eQ(e){return eX.apply(this,arguments)}function eX(){eX=r(function(e){var t,n,r,a,o,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ez;n=new AbortController;j.default.on("SIGINT",function(){q.warn("Process interrupted. Terminating..."),n.abort(),j.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eW(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&q.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})});return eX.apply(this,arguments)}m(eQ,"executeCommand");function eZ(e){return{raw:!0,cmd:e}}m(eZ,"rawCommand");function e0(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(e_," ").concat(z," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(e_," ").concat(eC," ").concat(el," ").concat(e):"".concat(e_," ").concat(eu," ").concat(e)}m(e0,"formatCLI");function e1(e,t){return typeof e=="function"?e0(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e0(e,t):e}m(e1,"formatCommand");function e2(e,t){return e3.apply(this,arguments)}function e3(){e3=r(function(e,t){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);q.start("".concat(e)),eB.DEBUG&&q.info("→ ".concat(t));return[4,eQ(t)];case 1:r.sent(),q.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw q.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})});return e3.apply(this,arguments)}m(e2,"runCommand");var e4=E(require("fs-extra"),1),e5=require("path");var e6=e4.default,e7=e6.appendFileSync,e8=e6.lstatSync,e9=e6.mkdirSync,te=e6.readFileSync,tt=e6.unlinkSync,tn=e6.writeFileSync,tr=e6.statSync,ta=e4.default.readJsonSync,to=e4.default.writeJsonSync;function tc(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return e4.default.pathExistsSync(e)})}m(tc,"pathExistsSync");var ti=N();function ts(e){var t=H(ti.CWD,Z);if(!tc(t))return!1;try{var n=ta(t),r=n.name,a=n.dependencies,o=a===void 0?{}:a,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in o,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return q.warn("Failed to read package.json: ".concat(e.message)),!1}}m(ts,"getPackage");function tu(e){return tl.apply(this,arguments)}function tl(){tl=r(function(e){var t,n,r,a;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,_.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=o.sent(),r=n.version;return[2,r];case 3:a=o.sent();throw q.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})});return tl.apply(this,arguments)}m(tu,"getLatestPackageVersion");function tf(e,t){return td.apply(this,arguments)}function td(){td=r(function(e,t){var n,r,a,o,c,s,u,l,d,p,g,v,h,y,m,I,b,E,C,O,_;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=ts(e);if(!n)return[2,i({},S)];u=n.path,l=n.file,d=n.isCurrentProject,p=n.isDepend,g=n.isDevDepend,v=(r=l.dependencies)!==null&&r!==void 0?r:{},h=(a=l.devDependencies)!==null&&a!==void 0?a:{},y=d?(o=l.version)!==null&&o!==void 0?o:"0.0.0":p?(c=v[e])!==null&&c!==void 0?c:"0.0.0":g?(s=h[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!d)return[3,1];b=y;return[3,3];case 1:return[4,tu(e)];case 2:b=f.sent();f.label=3;case 3:m=b,I=d||y===m;if(!I&&(t===null||t===void 0?void 0:t.update)){;C=p?"dependencies":g?"devDependencies":null;C&&((E=l[C])===null||E===void 0?void 0:E[e])!==m&&(l[C]=(O=l[C])!==null&&O!==void 0?O:{},l[C][e]=m,to(u,l),q.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:d,installedPath:u,file:l,isUpToDate:I}];case 4:_=f.sent();return[2,(q.error('Error checking package "'.concat(e,'": ').concat(_.message)),i({},S))];case 5:return[2]}})});return td.apply(this,arguments)}m(tf,"checkPackage");function tp(){return tg.apply(this,arguments)}function tg(){tg=r(function(){var e,t,n,r,a,o,c,i,s,u,l,d;return f(this,function(f){switch(f.label){case 0:e=[{command:m(function(){return ex.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:m(function(){return ex.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:m(function(){return ex.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);a=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,e2("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();q.warn("Installation attempt failed: ".concat(s)),q.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})});return tg.apply(this,arguments)}m(tp,"installDependencies");function tv(e,t){return th.apply(this,arguments)}function th(){th=r(function(e,t){var n,r,a,o,c,u,l,d,p,g,v;return f(this,function(f){switch(f.label){case 0:if(!tc(eD.PACKAGE_JSON)){q.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return tf(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,tp()];case 3:r=f.sent();f.label=4;case 4:r;o=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();f.label=6;case 6:if(!!(o=(d=l.next()).done))return[3,9];p=d.value;return[4,p()];case 7:f.sent();f.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:g=f.sent();c=true;u=g;return[3,12];case 11:try{if(!o&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:v=f.sent();throw q.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})});return th.apply(this,arguments)}m(tv,"setupPackages");0&&(module.exports={CHECK_PACKAGE_EMPTY_RESULT:CHECK_PACKAGE_EMPTY_RESULT,checkPackage:checkPackage,getLatestPackageVersion:getLatestPackageVersion,getPackage:getPackage,installDependencies:installDependencies,setupPackages:setupPackages});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,a,o,c){try{var i=e[o](c);var s=i.value}catch(e){n(e);return}if(i.done){t(s)}else{Promise.resolve(s).then(r,a)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(a,o){var c=e.apply(t,r);function i(e){n(c,a,o,i,s,"next",e)}function s(e){n(c,a,o,i,s,"throw",e)}i(undefined)})}}function a(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function o(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function c(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function i(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){a(e,t,n[t])})}return e}function s(e){return t(e)||o(e)||l(e)||c()}function u(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function l(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function f(e,t){var n,r,a,o={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=i(0),c["throw"]=i(1),c["return"]=i(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function i(e){return function(t){return s([e,t])}}function s(i){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,i[0]&&(o=0)),o)try{if(n=1,r&&(a=i[0]&2?r["return"]:i[0]?r["throw"]||((a=r["return"])&&a.call(r),0):r.next)&&!(a=a.call(r,i[1])).done)return a;if(r=0,a)i=[i[0]&2,a.value];switch(i[0]){case 0:case 1:a=i;break;case 4:o.label++;return{value:i[1],done:false};case 5:o.label++;r=i[1];i=[0];continue;case 7:i=o.ops.pop();o.trys.pop();continue;default:if(!(a=o.trys,a=a.length>0&&a[a.length-1])&&(i[0]===6||i[0]===2)){o=0;continue}if(i[0]===3&&(!a||i[1]>a[0]&&i[1]<a[3])){o.label=i[1];break}if(i[0]===6&&o.label<a[1]){o.label=a[1];a=i;break}if(a&&o.label<a[2]){o.label=a[2];o.ops.push(i);break}if(a[2])o.ops.pop();o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e];r=0}finally{n=a=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}}var d=Object.create;var p=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var m=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var y=function(e,t){return p(e,"name",{value:t,configurable:!0})};var _=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},E=function(e,t,n,r){var a=true,o=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":u(t))=="object"||typeof t=="function")try{var i=function(){var a=l.value;!h.call(e,a)&&a!==n&&p(e,a,{get:function(){return t[a]},enumerable:!(r=g(t,a))||r.enumerable})};for(var s=v(t)[Symbol.iterator](),l;!(a=(l=s.next()).done);a=true)i()}catch(e){o=true;c=e}finally{try{if(!a&&s.return!=null){s.return()}}finally{if(o){throw c}}}return e};var I=function(e,t,n){return n=e!=null?d(m(e)):{},E(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},b=function(e){return E(p({},"__esModule",{value:!0}),e)};var C={};_(C,{CHECK_PACKAGE_EMPTY_RESULT:function(){return O},checkPackage:function(){return tc},getLatestPackageVersion:function(){return to},getPackage:function(){return ta},installDependencies:function(){return ti},setupPackages:function(){return ts}});module.exports=b(C);var O={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var S=I(require("node-fetch"),1);var T=".cyberskill-storage";var w=I(require("dotenv"),1),P=require("envalid"),R=I(require("os"),1),G=I(require("path"),1),k=I(require("process"),1);w.default.config();function L(){var e={DEBUG:k.default.env.DEBUG||!1,CWD:k.default.env.CWD||k.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:k.default.env.CYBERSKILL_STORAGE_DIRECTORY||G.default.join(R.default.homedir(),T)};return(0,P.cleanEnv)(e,{DEBUG:(0,P.bool)(),CWD:(0,P.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,P.str)()})}y(L,"getEnv");var N=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var D=require("child_process"),j=I(require("process"),1),U=I(require("util"),1);var A=function(e){return e.Error="error",e.Warning="warning",e}({});var M=I(require("chalk"),1),x=I(require("consola"),1),F=require("graphql");var K=L();K.DEBUG||(x.default.level=4);function Y(e){var t=M.default[e];return typeof t=="function"?t:M.default.green}y(Y,"chalkKeyword");var q={silent:x.default.silent,level:x.default.level,fatal:x.default.fatal,error:x.default.error,warn:x.default.warn,log:x.default.log,info:x.default.info,success:x.default.success,ready:x.default.ready,start:x.default.start,box:x.default.box,debug:x.default.debug,trace:x.default.trace,verbose:x.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){x.default.box(M.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,a=e.rule,o=e.message;x.default.log("".concat(M.default.gray("File:")," ").concat(M.default.blue("".concat(t).concat(r?":".concat(r):"")))),a&&x.default.log(" ".concat(Y(n)("Rule:")," ").concat(a)),x.default.log(" ".concat(Y(n)("Message:")," ").concat(o))}),x.default.box(Y(n)("".concat(e," : ").concat(t.length))),x.default.log(M.default.gray("─".repeat(40)))}};var B=I(require("path"),1);var W=L();function J(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,B.resolve).apply(this,[W.CWD].concat(s(t)))}y(J,"resolveWorkingPath");function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,B.join).apply(this,s(t))}y(H,"join");var V=L(),$=V.CWD,z="@cyberskill/shared",Q="node_modules",X="dist",Z="package.json",ee="package-lock.json",et="tsconfig.json",en=".gitignore",er=".simple-git-hooks.json",ea="pnpm-lock.yaml",eo=".git/hooks/",ec=".git/COMMIT_EDITMSG",ei=".migrate-mongo.config.js",es=H($,Q,z,X),eu="cyberskill",el="src/nodejs/cli/index.ts",ef="eslint",ed="eslint",ep="vitest",eg="playwright",ev="vitest",em="@commitlint/cli",eh="commitlint",ey="lint-staged",e_="lint-staged",eE="typescript",eI="tsc",eb="tsx",eC="git",eO="pnpm",eS="pnpm exec",eT="simple-git-hooks",ew="simple-git-hooks",eP="@eslint/config-inspector",eR="eslint-config-inspector",eG="node-modules-inspector",ek="node-modules-inspector",eL="migrate-mongo",eN="./node_modules/migrate-mongo/bin/migrate-mongo",eD={CYBERSKILL_DIRECTORY:es,WORKING_DIRECTORY:$,TS_CONFIG:J(et),GIT_IGNORE:J(en),GIT_HOOK:J(eo),GIT_COMMIT_MSG:J(ec),SIMPLE_GIT_HOOKS_JSON:J(er),PACKAGE_JSON:J(Z),PACKAGE_LOCK_JSON:J(ee),PNPM_LOCK_YAML:J(ea),NODE_MODULES:J(Q),MIGRATE_MONGO_CONFIG:J(ei),LINT_STAGED_CONFIG:J("".concat(es,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:J("".concat(es,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:J("".concat(es,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:J("".concat(es,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:J("".concat(es,"/react/vitest/vitest.e2e.js"))};function ej(e,t,n){return /*#__PURE__*/r(function(){return f(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case N.CLI:return[3,1];case N.STRING:return[3,3]}return[3,4];case 1:return[4,ts(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eQ(e$("".concat(eS," ").concat(n))))];case 3:return[2,eQ(e$(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}y(ej,"buildCommand");function eU(e,t,n){return function(){return /*#__PURE__*/r(function(){return f(this,function(r){return[2,ej(e,t,n)]})})()}}y(eU,"commandFactory");var eA={simpleGitHooks:eU(N.CLI,eT,ew),eslintInspect:eU(N.CLI,eP,eR),nodeModulesInspect:eU(N.CLI,eG,ek),eslintCheck:eU(N.CLI,ef,"".concat(ed," ").concat(eD.WORKING_DIRECTORY)),eslintFix:eU(N.CLI,ef,"".concat(ed," ").concat(eD.WORKING_DIRECTORY," --fix")),typescriptCheck:eU(N.CLI,eE,"".concat(eI," -p ").concat(eD.TS_CONFIG," --noEmit")),configureGitHook:eU(N.STRING,"".concat(eC," config core.hooksPath ").concat(eD.GIT_HOOK)),testUnit:eU(N.CLI,ep,"".concat(ev," --config ").concat(eD.UNIT_TEST_CONFIG)),testE2e:eU(N.CLI,"".concat(ep," ").concat(eg),"".concat(ev," --config ").concat(eD.E2E_TEST_CONFIG)),mongoMigrateCreate:y(function(e){return eU(N.CLI,eL,"".concat(eb," ").concat(eN," create ").concat(e," -f ").concat(eD.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:eU(N.CLI,eL,"".concat(eb," ").concat(eN," up -f ").concat(eD.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:eU(N.CLI,eL,"".concat(eb," ").concat(eN," down -f ").concat(eD.MIGRATE_MONGO_CONFIG)),commitLint:eU(N.CLI,em,"".concat(eh," --edit ").concat(eD.GIT_COMMIT_MSG," --config ").concat(eD.COMMITLINT_CONFIG)),lintStaged:eU(N.CLI,ey,"".concat(e_," --config ").concat(eD.LINT_STAGED_CONFIG)),stageBuildDirectory:eU(N.STRING,"".concat(eC," add ").concat(X)),build:eU(N.STRING,"".concat(eO," run build")),pnpmInstallStandard:eU(N.STRING,"".concat(eO," install")),pnpmInstallLegacy:eU(N.STRING,"".concat(eO," install --legacy-peer-deps")),pnpmInstallForce:eU(N.STRING,"".concat(eO," install --force"))};var eM=I(require("node-persist"),1);var ex=L();function eF(){return /*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:e=eM.default.defaultInstance;if(e)return[3,2];return[4,eM.default.init({dir:ex.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}y(eF,"initNodePersist");var eK={get:function e(e){return /*#__PURE__*/r(function(){var t,n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eF()];case 1:r.sent();return[4,eM.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(q.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eF()];case 1:r.sent();return[4,eM.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();q.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/r(function(){var t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eF()];case 1:n.sent();return[4,eM.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();q.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/r(function(){var e,t;return f(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eF()];case 1:n.sent();return[4,eM.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(q.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(q.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/r(function(){return f(this,function(t){try{return[2,"".concat(ex.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(q.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eY=L(),eq=U.promisify(D.exec);function eB(e){return"error_list:".concat(e)}y(eB,"getErrorListKey");function eW(e){return /*#__PURE__*/r(function(){var t,n,a;return f(this,function(o){switch(o.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eB(t);o.label=1;case 1:o.trys.push([1,3,,4]);return[4,eK.set(n,{errors:e,timestamp:t})];case 2:o.sent(),setTimeout(function(){return /*#__PURE__*/r(function(){var e;return f(this,function(t){switch(t.label){case 0:return[4,eK.getLogLink(n)];case 1:e=t.sent();e&&q.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:a=o.sent();q.error("Failed to save errors: ".concat(a.message));return[3,4];case 4:return[2]}})})()}y(eW,"saveErrorListToStorage");function eJ(e){var t=[],n=[],r="",a=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var i,s,u,l,f;var d=a.exec(e)||[],p=o.exec(e)||[],g=c.exec(e)||[];var v,m,h,y,_,E;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===A.Error?A.Error:A.Warning,message:(v=d===null||d===void 0?void 0:(i=d[4])===null||i===void 0?void 0:i.trim())!==null&&v!==void 0?v:"",rule:(m=d===null||d===void 0?void 0:(s=d[5])===null||s===void 0?void 0:s.trim())!==null&&m!==void 0?m:""}):p.length?t.push({file:(h=p===null||p===void 0?void 0:p[1])!==null&&h!==void 0?h:"",position:"".concat(p[2],":").concat(p[3]),type:p[4]===A.Error?A.Error:A.Warning,message:(y=p===null||p===void 0?void 0:(u=p[5])===null||u===void 0?void 0:u.trim())!==null&&y!==void 0?y:""}):g.length?t.push({file:"commitlint",type:A.Error,message:(_=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&_!==void 0?_:"",rule:(E=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&E!==void 0?E:""}):n.push(e.trim())}}),t.length&&eW(t),eY.DEBUG&&n.length&&(q.warn("Unmatched lines:"),n.forEach(function(e){return q.info(" ".concat(e))}))}y(eJ,"parseTextErrors");function eH(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,a=e.line,o=e.column,c=e.ruleId,i=e.message;n.push({type:r===2?A.Error:A.Warning,file:t,position:"".concat(a,":").concat(o),rule:c,message:i})})}),n.length&&eW(n)}catch(t){eJ(e)}}y(eH,"parseCommandOutput");function eV(e){return /*#__PURE__*/r(function(e){var t,n,r,a,o,c,i,s,u;var l=arguments;return f(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eH;n=new AbortController;j.default.on("SIGINT",function(){q.warn("Process interrupted. Terminating..."),n.abort(),j.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eq(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),a=r.stdout,o=r.stderr;[a,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:c=f.sent();i=c.stdout,s=c.stderr,u=c.message;[i,s].forEach(function(e){return e&&t(e)}),!s&&!i&&q.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}y(eV,"executeCommand");function e$(e){return{raw:!0,cmd:e}}y(e$,"rawCommand");function ez(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(eS," ").concat(z," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(eS," ").concat(eb," ").concat(el," ").concat(e):"".concat(eS," ").concat(eu," ").concat(e)}y(ez,"formatCLI");function eQ(e,t){return typeof e=="function"?ez(e(t),t):(typeof e==="undefined"?"undefined":u(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ez(e,t):e}y(eQ,"formatCommand");function eX(e,t){return /*#__PURE__*/r(function(){var n;return f(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);q.start("".concat(e)),eY.DEBUG&&q.info("→ ".concat(t));return[4,eV(t)];case 1:r.sent(),q.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw q.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}y(eX,"runCommand");var eZ=I(require("fs-extra"),1),e0=require("path");var e1=eZ.default,e2=e1.lstatSync,e3=e1.readdirSync,e4=e1.mkdirSync,e5=e1.readFileSync,e6=e1.writeFileSync,e7=e1.appendFileSync,e8=e1.unlinkSync,e9=e1.statSync,te=eZ.default.readJsonSync,tt=eZ.default.writeJsonSync;function tn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eZ.default.pathExistsSync(e)})}y(tn,"pathExistsSync");var tr=L();function ta(e){var t=H(tr.CWD,Z);if(!tn(t))return!1;try{var n=te(t),r=n.name,a=n.dependencies,o=a===void 0?{}:a,c=n.devDependencies,i=c===void 0?{}:c,s=r===e,u=e in o,l=e in i;return s||u||l?{path:t,file:n,isCurrentProject:s,isDepend:u,isDevDepend:l}:!1}catch(e){return q.warn("Failed to read package.json: ".concat(e.message)),!1}}y(ta,"getPackage");function to(e){return /*#__PURE__*/r(function(){var t,n,r,a;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,(0,S.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=o.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=o.sent(),r=n.version;return[2,r];case 3:a=o.sent();throw q.error('Failed to fetch version for "'.concat(e,'": ').concat(a.message)),a;case 4:return[2]}})})()}y(to,"getLatestPackageVersion");function tc(e,t){return /*#__PURE__*/r(function(){var n,r,a,o,c,s,u,l,d,p,g,v,m,h,y,_,E,I,b,C,S;return f(this,function(f){switch(f.label){case 0:f.trys.push([0,4,,5]);n=ta(e);if(!n)return[2,i({},O)];u=n.path,l=n.file,d=n.isCurrentProject,p=n.isDepend,g=n.isDevDepend,v=(r=l.dependencies)!==null&&r!==void 0?r:{},m=(a=l.devDependencies)!==null&&a!==void 0?a:{},h=d?(o=l.version)!==null&&o!==void 0?o:"0.0.0":p?(c=v[e])!==null&&c!==void 0?c:"0.0.0":g?(s=m[e])!==null&&s!==void 0?s:"0.0.0":"0.0.0";if(!d)return[3,1];E=h;return[3,3];case 1:return[4,to(e)];case 2:E=f.sent();f.label=3;case 3:y=E,_=d||h===y;if(!_&&(t===null||t===void 0?void 0:t.update)){;b=p?"dependencies":g?"devDependencies":null;b&&((I=l[b])===null||I===void 0?void 0:I[e])!==y&&(l[b]=(C=l[b])!==null&&C!==void 0?C:{},l[b][e]=y,tt(u,l),q.info('Updated "'.concat(e,'" to version ').concat(y)))}return[2,{isCurrentProject:d,installedPath:u,file:l,isUpToDate:_}];case 4:S=f.sent();return[2,(q.error('Error checking package "'.concat(e,'": ').concat(S.message)),i({},O))];case 5:return[2]}})})()}y(tc,"checkPackage");function ti(){return /*#__PURE__*/r(function(){var e,t,n,r,a,o,c,i,s,u,l,d;return f(this,function(f){switch(f.label){case 0:e=[{command:y(function(){return eA.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:y(function(){return eA.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:y(function(){return eA.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);a=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(o=a.next()).done))return[3,8];c=o.value,i=c.command,s=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,i()];case 4:u=f.sent();return[4,eX("".concat(s," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();q.warn("Installation attempt failed: ".concat(s)),q.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}y(ti,"installDependencies");function ts(e,t){return /*#__PURE__*/r(function(){var n,r,a,o,c,u,l,d,p,g,v;return f(this,function(f){switch(f.label){case 0:if(!tn(eD.PACKAGE_JSON)){q.error("package.json not found. Aborting setup.");return[2]}f.label=1;case 1:f.trys.push([1,13,,14]);n=s(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return tc(e,i({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=f.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ti()];case 3:r=f.sent();f.label=4;case 4:r;o=true,c=false,u=undefined;f.label=5;case 5:f.trys.push([5,10,11,12]);l=((a=t===null||t===void 0?void 0:t.postInstallActions)!==null&&a!==void 0?a:[])[Symbol.iterator]();f.label=6;case 6:if(!!(o=(d=l.next()).done))return[3,9];p=d.value;return[4,p()];case 7:f.sent();f.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:g=f.sent();c=true;u=g;return[3,12];case 11:try{if(!o&&l.return!=null){l.return()}}finally{if(c){throw u}}return[7];case 12:return[3,14];case 13:v=f.sent();throw q.error('Failed to setup "'.concat(e.join(", "),'": ').concat(v.message)),v;case 14:return[2]}})})()}y(ts,"setupPackages");0&&(module.exports={CHECK_PACKAGE_EMPTY_RESULT:CHECK_PACKAGE_EMPTY_RESULT,checkPackage:checkPackage,getLatestPackageVersion:getLatestPackageVersion,getPackage:getPackage,installDependencies:installDependencies,setupPackages:setupPackages});