@cyberskill/shared 1.117.0 → 1.119.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_tsup-dts-rollup.d.cts +7 -1
- package/dist/_tsup-dts-rollup.d.ts +7 -1
- package/dist/configs/config.util.cjs +1 -1
- package/dist/configs/config.util.js +1 -1
- package/dist/configs/env/env.util.cjs +1 -1
- package/dist/configs/env/env.util.d.cts +1 -0
- package/dist/configs/env/env.util.d.ts +1 -0
- package/dist/configs/env/env.util.js +1 -1
- package/dist/configs/env/index.cjs +1 -1
- package/dist/configs/env/index.d.cts +1 -0
- package/dist/configs/env/index.d.ts +1 -0
- package/dist/configs/env/index.js +1 -1
- package/dist/configs/graphql-codegen/graphql-codegen.util.cjs +1 -1
- package/dist/configs/graphql-codegen/graphql-codegen.util.js +1 -1
- package/dist/configs/graphql-codegen/index.cjs +1 -1
- package/dist/configs/graphql-codegen/index.js +1 -1
- package/dist/configs/index.cjs +1 -1
- package/dist/configs/index.d.cts +1 -0
- package/dist/configs/index.d.ts +1 -0
- package/dist/configs/index.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -1
- package/dist/nodejs/apollo-server/apollo-server.util.cjs +1 -1
- package/dist/nodejs/apollo-server/apollo-server.util.js +1 -1
- package/dist/nodejs/apollo-server/index.cjs +1 -1
- package/dist/nodejs/apollo-server/index.js +1 -1
- package/dist/nodejs/cli/cli.util.cjs +1 -1
- package/dist/nodejs/cli/cli.util.js +1 -1
- package/dist/nodejs/cli/index.cjs +1 -1
- package/dist/nodejs/cli/index.js +1 -1
- package/dist/nodejs/command/command.util.cjs +1 -1
- package/dist/nodejs/command/command.util.js +1 -1
- package/dist/nodejs/command/index.cjs +1 -1
- package/dist/nodejs/command/index.js +1 -1
- package/dist/nodejs/index.cjs +1 -1
- package/dist/nodejs/index.js +1 -1
- package/dist/nodejs/log/index.cjs +1 -1
- package/dist/nodejs/log/index.js +1 -1
- package/dist/nodejs/log/log.util.cjs +1 -1
- package/dist/nodejs/log/log.util.js +1 -1
- package/dist/nodejs/mongo/index.cjs +1 -1
- package/dist/nodejs/mongo/index.js +1 -1
- package/dist/nodejs/mongo/mongo.util.cjs +1 -1
- package/dist/nodejs/mongo/mongo.util.js +1 -1
- package/dist/nodejs/package/index.cjs +1 -1
- package/dist/nodejs/package/index.js +1 -1
- package/dist/nodejs/package/package.util.cjs +1 -1
- package/dist/nodejs/package/package.util.js +1 -1
- package/dist/nodejs/path/index.cjs +1 -1
- package/dist/nodejs/path/index.js +1 -1
- package/dist/nodejs/path/path.constant.cjs +1 -1
- package/dist/nodejs/path/path.constant.js +1 -1
- package/dist/nodejs/path/path.util.cjs +1 -1
- package/dist/nodejs/path/path.util.js +1 -1
- package/dist/nodejs/storage/index.cjs +1 -1
- package/dist/nodejs/storage/index.js +1 -1
- package/dist/nodejs/storage/storage.util.cjs +1 -1
- package/dist/nodejs/storage/storage.util.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.js +1 -1
- package/dist/react/vitest/index.cjs +1 -1
- package/dist/react/vitest/index.js +1 -1
- package/dist/react/vitest/vitest.unit.cjs +1 -1
- package/dist/react/vitest/vitest.unit.js +1 -1
- package/package.json +17 -12
- package/dist/configs/env/env.d.cjs +0 -1
- package/dist/configs/env/env.d.d.cts +0 -1
- package/dist/configs/env/env.d.d.ts +0 -1
- package/dist/configs/env/env.d.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(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 a(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var o=e.apply(t,n);function c(e){s(o,r,a,c,u,"next",e)}function u(e){s(o,r,a,c,u,"throw",e)}c(undefined)})}}function o(e,t,n){t=f(t);return y(e,b()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function c(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function u(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 i(e,t,n){if(t)u(e.prototype,t);if(n)u(e,n);return e}function l(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 f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function d(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)S(e,t)}function E(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function _(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function h(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var o,c;try{for(n=n.call(e);!(s=(o=n.next()).done);s=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){a=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw c}}return r}function g(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(){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 p(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){l(e,t,n[t])})}return e}function m(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 O(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{m(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function y(e,t){if(t&&(I(t)==="object"||typeof t==="function")){return t}return r(e)}function S(e,t){S=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return S(e,t)}function R(e,n){return t(e)||h(e,n)||T(e,n)||g()}function C(e){return n(e)||_(e)||T(e)||v()}function I(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function T(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 b(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(b=function(){return!!e})()}function A(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 D=Object.create;var N=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var G=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var U=function(e,t,n){return t in e?N(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var L=function(e,t){return N(e,"name",{value:t,configurable:!0})};var k=function(e,t){for(var n in t)N(e,n,{get:t[n],enumerable:!0})},F=function(e,t,n,r){var s=true,a=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":I(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!w.call(e,s)&&s!==n&&N(e,s,{get:function(){return t[s]},enumerable:!(r=M(t,s))||r.enumerable})};for(var u=P(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 j=function(e,t,n){return n=e!=null?D(G(e)):{},F(t||!e||!e.__esModule?N(n,"default",{value:e,enumerable:!0}):n,e)},x=function(e){return F(N({},"__esModule",{value:!0}),e)};var q=function(e,t,n){return U(e,(typeof t==="undefined"?"undefined":I(t))!="symbol"?t+"":t,n)};var Y={};k(Y,{C_Collection:function(){return Z},C_Db:function(){return K},C_Document:function(){return $},C_Model:function(){return X},MONGO_MIGRATE_OPTIONS:function(){return B},MongoController:function(){return t3},MongooseController:function(){return t6},aggregatePaginate:function(){return er.default},mongo:function(){return t2},mongoosePaginate:function(){return es.default}});module.exports=x(Y);var B="MONGO_MIGRATE_OPTIONS";var H=require("mongodb"),V=require("mongoose");var Q=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(H.Db);L(Q,"C_Db");var K=Q,W=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(V.Document);L(W,"C_Document");var $=W,J=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(V.Model);L(J,"C_Model");var X=J,z=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(H.Collection);L(z,"C_Collection");var Z=z;var ee=require("date-fns"),et=j(require("migrate-mongo"),1),en=require("mongoose"),er=j(require("mongoose-aggregate-paginate-v2"),1),es=j(require("mongoose-paginate-v2"),1),ea=require("uuid");var eo={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 ec=j(require("unorm"),1);var eu={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},ei=Object.entries(eu).reduce(function(e,t){var n=R(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function el(e){return(typeof e==="undefined"?"undefined":I(e))=="object"&&e!==null&&!Array.isArray(e)}L(el,"isObject");var ef=j(require("crypto-js"),1),ed=j(require("slugify"),1);var eE=ed.default.default||ed.default;function e_(e,t){var n=L(function(e){var n,r;return eE(e!==null&&e!==void 0?e:"",p({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))},"slugifyWithOptions");if(el(e)){var r={};var s=true,a=false,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),u;!(s=(u=c.next()).done);s=true){var i=R(u.value,2),l=i[0],f=i[1];r[l]=n(f)}}catch(e){a=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(a){throw o}}}return r}return n(e)}L(e_,"generateSlug");function eh(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return ef.default.SHA256(e).toString(ef.default.enc.Hex).slice(0,t)}L(eh,"generateShortId");var eg={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":I(e))=="object"?E(e,Date)?!1:E(e,Map)||E(e,Set)?e.size===0:E(e,WeakMap)||E(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 ev=j(require("fs-extra"),1),ep=require("path");var em=ev.default,eO=em.lstatSync,ey=em.readdirSync,eS=em.mkdirSync,eR=em.readFileSync,eC=em.writeFileSync,eI=em.appendFileSync,eT=em.unlinkSync,eb=em.statSync,eA=ev.default.readJsonSync,eD=ev.default.writeJsonSync;function eN(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ev.default.pathExistsSync(e)})}L(eN,"pathExistsSync");var eM=".cyberskill-storage";var eP=j(require("@dotenvx/dotenvx"),1),eG=require("envalid"),ew=j(require("os"),1),eU=j(require("path"),1),eL=j(require("process"),1);eP.default.config();function ek(){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||eU.default.join(ew.default.homedir(),eM)};return(0,eG.cleanEnv)(e,{DEBUG:(0,eG.bool)(),CWD:(0,eG.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,eG.str)()})}L(ek,"getEnv");var eF=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var ej=require("child_process"),ex=j(require("process"),1),eq=j(require("util"),1);var eY=function(e){return e.Error="error",e.Warning="warning",e}({});var eB=j(require("chalk"),1),eH=j(require("consola"),1),eV=require("graphql");var eQ=ek();eQ.DEBUG||(eH.default.level=4);function eK(e){var t=eB.default[e];return typeof t=="function"?t:eB.default.green}L(eK,"chalkKeyword");var eW={silent:eH.default.silent,level:eH.default.level,fatal:eH.default.fatal,error:eH.default.error,warn:eH.default.warn,log:eH.default.log,info:eH.default.info,success:eH.default.success,ready:eH.default.ready,start:eH.default.start,box:eH.default.box,debug:eH.default.debug,trace:eH.default.trace,verbose:eH.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)){eH.default.box(eB.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eH.default.log("".concat(eB.default.gray("File:")," ").concat(eB.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eH.default.log(" ".concat(eK(n)("Rule:")," ").concat(s)),eH.default.log(" ".concat(eK(n)("Message:")," ").concat(a))}),eH.default.box(eK(n)("".concat(e," : ").concat(t.length))),eH.default.log(eB.default.gray("─".repeat(40)))}};var e$={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eJ=j(require("node-fetch"),1);var eX=ek();function ez(e){var t=tf(eX.CWD,tv);if(!eN(t))return!1;try{var n=eA(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 eW.warn("Failed to read package.json: ".concat(e.message)),!1}}L(ez,"getPackage");function eZ(e){return /*#__PURE__*/a(function(){var t,n,r,s;return A(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,eJ.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 eW.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}L(eZ,"getLatestPackageVersion");function e0(e,t){return /*#__PURE__*/a(function(){var n,r,s,a,o,c,u,i,l,f,d,E,_,h,g,v,m,O,y,S,R;return A(this,function(C){switch(C.label){case 0:C.trys.push([0,4,,5]);n=ez(e);if(!n)return[2,p({},e$)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,d=n.isDevDepend,E=(r=i.dependencies)!==null&&r!==void 0?r:{},_=(s=i.devDependencies)!==null&&s!==void 0?s:{},h=l?(a=i.version)!==null&&a!==void 0?a:"0.0.0":f?(o=E[e])!==null&&o!==void 0?o:"0.0.0":d?(c=_[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];m=h;return[3,3];case 1:return[4,eZ(e)];case 2:m=C.sent();C.label=3;case 3:g=m,v=l||h===g;if(!v&&(t===null||t===void 0?void 0:t.update)){;y=f?"dependencies":d?"devDependencies":null;y&&((O=i[y])===null||O===void 0?void 0:O[e])!==g&&(i[y]=(S=i[y])!==null&&S!==void 0?S:{},i[y][e]=g,eD(u,i),eW.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:v}];case 4:R=C.sent();return[2,(eW.error('Error checking package "'.concat(e,'": ').concat(R.message)),p({},e$))];case 5:return[2]}})})()}L(e0,"checkPackage");function e1(){return /*#__PURE__*/a(function(){var e,t,n,r,s,a,o,c,u,i,l,f;return A(this,function(d){switch(d.label){case 0:e=[{command:L(function(){return t1.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:L(function(){return t1.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:L(function(){return t1.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,tc("".concat(u," using: ").concat(i),i)];case 5:d.sent();return[2];case 6:l=d.sent();eW.warn("Installation attempt failed: ".concat(u)),eW.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.")}})})()}L(e1,"installDependencies");function e2(e,t){return /*#__PURE__*/a(function(){var n,r,s,a,o,c,u,i,l,f,d;return A(this,function(E){switch(E.label){case 0:if(!eN(tz.PACKAGE_JSON)){eW.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=C(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return e0(e,p({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,e1()];case 3:r=E.sent();E.label=4;case 4:r;a=true,o=false,c=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();E.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:E.sent();E.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=E.sent();o=true;c=f;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:d=E.sent();throw eW.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})})()}L(e2,"setupPackages");var e4=j(require("node-persist"),1);var e3=ek();function e5(){return /*#__PURE__*/a(function(){var e;return A(this,function(t){switch(t.label){case 0:e=e4.default.defaultInstance;if(e)return[3,2];return[4,e4.default.init({dir:e3.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]}})})()}L(e5,"initNodePersist");var e6={get:function e(e){return /*#__PURE__*/a(function(){var t,n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e5()];case 1:r.sent();return[4,e4.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eW.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/a(function(){var n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e5()];case 1:r.sent();return[4,e4.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eW.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/a(function(){var t;return A(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e5()];case 1:n.sent();return[4,e4.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eW.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/a(function(){var e,t;return A(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e5()];case 1:n.sent();return[4,e4.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eW.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eW.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/a(function(){return A(this,function(t){try{return[2,"".concat(e3.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eW.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e7=ek(),e8=eq.promisify(ej.exec);function e9(e){return"error_list:".concat(e)}L(e9,"getErrorListKey");function te(e){return /*#__PURE__*/a(function(){var t,n,r;return A(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e9(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,e6.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return /*#__PURE__*/a(function(){var e;return A(this,function(t){switch(t.label){case 0:return[4,e6.getLogLink(n)];case 1:e=t.sent();e&&eW.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();eW.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}L(te,"saveErrorListToStorage");function tt(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)||[],_=o.exec(e)||[];var h,g,v,p,m,O;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===eY.Error?eY.Error:eY.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:(g=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):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]===eY.Error?eY.Error:eY.Warning,message:(p=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&p!==void 0?p:""}):_.length?t.push({file:"commitlint",type:eY.Error,message:(m=_===null||_===void 0?void 0:(l=_[1])===null||l===void 0?void 0:l.trim())!==null&&m!==void 0?m:"",rule:(O=_===null||_===void 0?void 0:(f=_[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&te(t),e7.DEBUG&&n.length&&(eW.warn("Unmatched lines:"),n.forEach(function(e){return eW.info(" ".concat(e))}))}L(tt,"parseTextErrors");function tn(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?eY.Error:eY.Warning,file:t,position:"".concat(s,":").concat(a),rule:o,message:c})})}),n.length&&te(n)}catch(t){tt(e)}}L(tn,"parseCommandOutput");function tr(e){return /*#__PURE__*/a(function(e){var t,n,r,s,a,o,c,u,i;var l=arguments;return A(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:tn;n=new AbortController;ex.default.on("SIGINT",function(){eW.warn("Process interrupted. Terminating..."),n.abort(),ex.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e8(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&&eW.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}L(tr,"executeCommand");function ts(e){return{raw:!0,cmd:e}}L(ts,"rawCommand");function ta(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tB," ").concat(t_," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tB," ").concat(tx," ").concat(tA," ").concat(e):"".concat(tB," ").concat(tb," ").concat(e)}L(ta,"formatCLI");function to(e,t){return typeof e=="function"?ta(e(t),t):(typeof e==="undefined"?"undefined":I(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ta(e,t):e}L(to,"formatCommand");function tc(e,t){return /*#__PURE__*/a(function(){var n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eW.start("".concat(e)),e7.DEBUG&&eW.info("→ ".concat(t));return[4,tr(t)];case 1:r.sent(),eW.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eW.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}L(tc,"runCommand");var tu=j(require("path"),1);var ti=ek();function tl(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,tu.resolve).apply(this,[ti.CWD].concat(C(t)))}L(tl,"resolveWorkingPath");function tf(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,tu.join).apply(this,C(t))}L(tf,"join");var td=ek(),tE=td.CWD,t_="@cyberskill/shared",th="node_modules",tg="dist",tv="package.json",tp="package-lock.json",tm="tsconfig.json",tO=".gitignore",ty=".simple-git-hooks.json",tS="pnpm-lock.yaml",tR=".git/hooks/",tC=".git/COMMIT_EDITMSG",tI=".migrate-mongo.config.js",tT=tf(tE,th,t_,tg),tb="cyberskill",tA="src/nodejs/cli/index.ts",tD="eslint",tN="eslint",tM="vitest",tP="playwright",tG="vitest",tw="@commitlint/cli",tU="commitlint",tL="lint-staged",tk="lint-staged",tF="typescript",tj="tsc",tx="tsx",tq="git",tY="pnpm",tB="pnpm exec",tH="simple-git-hooks",tV="simple-git-hooks",tQ="@eslint/config-inspector",tK="eslint-config-inspector",tW="node-modules-inspector",t$="node-modules-inspector",tJ="migrate-mongo",tX="./node_modules/migrate-mongo/bin/migrate-mongo",tz={CYBERSKILL_DIRECTORY:tT,WORKING_DIRECTORY:tE,TS_CONFIG:tl(tm),GIT_IGNORE:tl(tO),GIT_HOOK:tl(tR),GIT_COMMIT_MSG:tl(tC),SIMPLE_GIT_HOOKS_JSON:tl(ty),PACKAGE_JSON:tl(tv),PACKAGE_LOCK_JSON:tl(tp),PNPM_LOCK_YAML:tl(tS),NODE_MODULES:tl(th),MIGRATE_MONGO_CONFIG:tl(tI),LINT_STAGED_CONFIG:tl("".concat(tT,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:tl("".concat(tT,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:tl("".concat(tT,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:tl("".concat(tT,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:tl("".concat(tT,"/react/vitest/vitest.e2e.js"))};function tZ(e,t,n){return /*#__PURE__*/a(function(){return A(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,e2(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),to(ts("".concat(tB," ").concat(n))))];case 3:return[2,to(ts(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}L(tZ,"buildCommand");function t0(e,t,n){return function(){return /*#__PURE__*/a(function(){return A(this,function(r){return[2,tZ(e,t,n)]})})()}}L(t0,"commandFactory");var t1={simpleGitHooks:t0(eF.CLI,tH,tV),eslintInspect:t0(eF.CLI,tQ,tK),nodeModulesInspect:t0(eF.CLI,tW,t$),eslintCheck:t0(eF.CLI,tD,"".concat(tN," ").concat(tz.WORKING_DIRECTORY)),eslintFix:t0(eF.CLI,tD,"".concat(tN," ").concat(tz.WORKING_DIRECTORY," --fix")),typescriptCheck:t0(eF.CLI,tF,"".concat(tj," -p ").concat(tz.TS_CONFIG," --noEmit")),configureGitHook:t0(eF.STRING,"".concat(tq," config core.hooksPath ").concat(tz.GIT_HOOK)),testUnit:t0(eF.CLI,tM,"".concat(tG," --config ").concat(tz.UNIT_TEST_CONFIG)),testE2e:t0(eF.CLI,"".concat(tM," ").concat(tP),"".concat(tG," --config ").concat(tz.E2E_TEST_CONFIG)),mongoMigrateCreate:L(function(e){return t0(eF.CLI,tJ,"".concat(tx," ").concat(tX," create ").concat(e," -f ").concat(tz.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:t0(eF.CLI,tJ,"".concat(tx," ").concat(tX," up -f ").concat(tz.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:t0(eF.CLI,tJ,"".concat(tx," ").concat(tX," down -f ").concat(tz.MIGRATE_MONGO_CONFIG)),commitLint:t0(eF.CLI,tw,"".concat(tU," --edit ").concat(tz.GIT_COMMIT_MSG," --config ").concat(tz.COMMITLINT_CONFIG)),lintStaged:t0(eF.CLI,tL,"".concat(tk," --config ").concat(tz.LINT_STAGED_CONFIG)),stageBuildDirectory:t0(eF.STRING,"".concat(tq," add ").concat(tg)),build:t0(eF.STRING,"".concat(tY," run build")),pnpmInstallStandard:t0(eF.STRING,"".concat(tY," install")),pnpmInstallLegacy:t0(eF.STRING,"".concat(tY," install --legacy-peer-deps")),pnpmInstallForce:t0(eF.STRING,"".concat(tY," install --force"))};var t2={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,ee.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"?t2.getDateTime():new Date;return{id:(0,ea.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:ea.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(t2.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=t2.createSchema({mongoose:t,schema:r,virtuals:i});return t2.applyPlugins(d,[a&&es.default,c&&er.default]),t2.applyMiddlewares(d,f),t.model(n,d)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/a(function(){return A(this,function(t){return[2,!eg.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/a(function(){var n;return A(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 l({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/a(function(){return A(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!E(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:O(p({},et.default),{setConfig:L(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eC(tz.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tI,"\n");eN(tz.GIT_IGNORE)?eR(tz.GIT_IGNORE,"utf-8").split("\n").includes(tI)||eI(tz.GIT_IGNORE,n,"utf-8"):eC(tz.GIT_IGNORE,n,"utf-8")},"setConfig")})},t4=/*#__PURE__*/function(){function e(t,n){c(this,e);q(this,"collection");this.collection=t.collection(n)}i(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/a(function(){var t,n,r;return A(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=p({},t2.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__*/a(function(){var t,n,r;return A(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return p({},t2.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__*/a(function(){var t,n;return A(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__*/a(function(){var e,t,n;var r=arguments;return A(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__*/a(function(){var e,t,n;var r=arguments;return A(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__*/a(function(){var n,r;return A(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__*/a(function(){var n,r;return A(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__*/a(function(){var t,n;return A(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__*/a(function(){var t,n;return A(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}();L(t4,"MongoController");var t3=t4,t5=/*#__PURE__*/function(){function e(t){c(this,e);q(this,"model");this.model=t}i(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/a(function(){var e,t,n,r,s,a,o;var c=arguments;return A(this,function(u){switch(u.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[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:eo.NOT_FOUND.CODE}];case 3:o=u.sent();return[2,{success:!1,message:o.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/a(function(){var e,t,n,r,s,a,o;var c=arguments;return A(this,function(u){switch(u.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[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:o=u.sent();return[2,{success:!1,message:o.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r;var s=arguments;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/a(function(e){var t,n,r;var s=arguments;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/a(function(){var e,t,n;var r=arguments;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/a(function(){var t,n;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/a(function(e){var t,n,r;var s=arguments;return A(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 E(e,en.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r,s;var a=arguments;return A(this,function(o){switch(o.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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,p({new:!0},n)).exec()];case 2:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:eo.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r,s;var a=arguments;return A(this,function(o){switch(o.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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=o.sent(),r)];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r;var s=arguments;return A(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:eo.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r;var s=arguments;return A(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:eo.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:eo.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__*/a(function(){var n,r,s,a;return A(this,function(o){switch(o.label){case 0:n=new Set;r=0;o.label=1;case 1:if(!(r<10))return[3,5];s=eh(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=!o.sent();o.label=3;case 3:if(a)return[2,{success:!0,result:s}];o.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:eo.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/a(function(){var r,s,o,c,u,i,f,d,E,_;return A(this,function(h){switch(h.label){case 0:r=this;h.label=1;case 1:h.trys.push([1,5,,6]);s=t[e],o=el(s),c=L(function(t){var r=p({},n!==null&&n!==void 0?n:{});return o?O(p({},r),{$or:[l({},"slug.".concat(e),t),{slugHistory:{$elemMatch:l({},"slug.".concat(e),t)}}]}):O(p({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),u=L(function(e){return /*#__PURE__*/a(function(){var t,n;return A(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(c(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!o)return[3,3];i={success:!0};f=Object.fromEntries;return[4,Promise.all(Object.entries(s).map(function(e){var t=R(e,2),n=t[0],r=t[1];return /*#__PURE__*/a(function(){var e,t;return A(this,function(s){switch(s.label){case 0:e=e_(r);t=[n];return[4,u(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(i.result=f.apply(Object,[h.sent()]),i)];case 3:d=e_(s);E={success:!0};return[4,u(d)];case 4:return[2,(E.result=h.sent(),E)];case 5:_=h.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(_.message),code:eo.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/a(function(){var t,n;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();L(t5,"MongooseController");var t6=t5;0&&(module.exports={C_Collection:C_Collection,C_Db:C_Db,C_Document:C_Document,C_Model:C_Model,MONGO_MIGRATE_OPTIONS:MONGO_MIGRATE_OPTIONS,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(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(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 a(e){return function(){var t=this,n=arguments;return new Promise(function(r,a){var o=e.apply(t,n);function c(e){s(o,r,a,c,u,"next",e)}function u(e){s(o,r,a,c,u,"throw",e)}c(undefined)})}}function o(e,t,n){t=f(t);return y(e,b()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function c(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function u(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 i(e,t,n){if(t)u(e.prototype,t);if(n)u(e,n);return e}function l(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 f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function d(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)S(e,t)}function E(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function _(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function h(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var a=false;var o,c;try{for(n=n.call(e);!(s=(o=n.next()).done);s=true){r.push(o.value);if(t&&r.length===t)break}}catch(e){a=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw c}}return r}function g(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function v(){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 p(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){l(e,t,n[t])})}return e}function m(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 O(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{m(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function y(e,t){if(t&&(I(t)==="object"||typeof t==="function")){return t}return r(e)}function S(e,t){S=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return S(e,t)}function R(e,n){return t(e)||h(e,n)||T(e,n)||g()}function C(e){return n(e)||_(e)||T(e)||v()}function I(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function T(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 b(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(b=function(){return!!e})()}function A(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 D=Object.create;var N=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var G=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var U=function(e,t,n){return t in e?N(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var L=function(e,t){return N(e,"name",{value:t,configurable:!0})};var k=function(e,t){for(var n in t)N(e,n,{get:t[n],enumerable:!0})},F=function(e,t,n,r){var s=true,a=false,o=undefined;if(t&&(typeof t==="undefined"?"undefined":I(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!w.call(e,s)&&s!==n&&N(e,s,{get:function(){return t[s]},enumerable:!(r=M(t,s))||r.enumerable})};for(var u=P(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 j=function(e,t,n){return n=e!=null?D(G(e)):{},F(t||!e||!e.__esModule?N(n,"default",{value:e,enumerable:!0}):n,e)},x=function(e){return F(N({},"__esModule",{value:!0}),e)};var q=function(e,t,n){return U(e,(typeof t==="undefined"?"undefined":I(t))!="symbol"?t+"":t,n)};var Y={};k(Y,{C_Collection:function(){return Z},C_Db:function(){return K},C_Document:function(){return $},C_Model:function(){return X},MONGO_MIGRATE_OPTIONS:function(){return B},MongoController:function(){return t6},MongooseController:function(){return t8},aggregatePaginate:function(){return er.default},mongo:function(){return t3},mongoosePaginate:function(){return es.default}});module.exports=x(Y);var B="MONGO_MIGRATE_OPTIONS";var H=require("mongodb"),V=require("mongoose");var Q=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(H.Db);L(Q,"C_Db");var K=Q,W=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(V.Document);L(W,"C_Document");var $=W,J=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(V.Model);L(J,"C_Model");var X=J,z=/*#__PURE__*/function(e){d(t,e);function t(){c(this,t);return o(this,t,arguments)}return t}(H.Collection);L(z,"C_Collection");var Z=z;var ee=require("date-fns"),et=j(require("migrate-mongo"),1),en=require("mongoose"),er=j(require("mongoose-aggregate-paginate-v2"),1),es=j(require("mongoose-paginate-v2"),1),ea=require("uuid");var eo={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 ec=j(require("unorm"),1);var eu={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},ei=Object.entries(eu).reduce(function(e,t){var n=R(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function el(e){return(typeof e==="undefined"?"undefined":I(e))=="object"&&e!==null&&!Array.isArray(e)}L(el,"isObject");var ef=j(require("crypto-js"),1),ed=j(require("slugify"),1);var eE=ed.default.default||ed.default;function e_(e,t){var n=L(function(e){var n,r;return eE(e!==null&&e!==void 0?e:"",p({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))},"slugifyWithOptions");if(el(e)){var r={};var s=true,a=false,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),u;!(s=(u=c.next()).done);s=true){var i=R(u.value,2),l=i[0],f=i[1];r[l]=n(f)}}catch(e){a=true;o=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(a){throw o}}}return r}return n(e)}L(e_,"generateSlug");function eh(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return ef.default.SHA256(e).toString(ef.default.enc.Hex).slice(0,t)}L(eh,"generateShortId");var eg={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":I(e))=="object"?E(e,Date)?!1:E(e,Map)||E(e,Set)?e.size===0:E(e,WeakMap)||E(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 ev=j(require("fs-extra"),1),ep=require("path");var em=ev.default,eO=em.lstatSync,ey=em.readdirSync,eS=em.mkdirSync,eR=em.readFileSync,eC=em.writeFileSync,eI=em.appendFileSync,eT=em.unlinkSync,eb=em.statSync,eA=ev.default.readJsonSync,eD=ev.default.writeJsonSync;function eN(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ev.default.pathExistsSync(e)})}L(eN,"pathExistsSync");var eM=".cyberskill-storage";var eP=j(require("@dotenvx/dotenvx"),1),eG=require("envalid"),ew=j(require("os"),1),eU=j(require("path"),1),eL=j(require("process"),1);var ek=!1;function eF(){ek||(eP.default.config(),ek=!0)}L(eF,"loadEnvFile");function ej(){eF();var e=(0,eG.cleanEnv)(eL.default.env,{CWD:(0,eG.str)({default:eL.default.cwd()}),DEBUG:(0,eG.bool)({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:(0,eG.str)({default:eU.default.join(ew.default.homedir(),eM)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}L(ej,"getEnv");var ex=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eq=require("child_process"),eY=j(require("process"),1),eB=j(require("util"),1);var eH=function(e){return e.Error="error",e.Warning="warning",e}({});var eV=j(require("chalk"),1),eQ=j(require("consola"),1),eK=require("graphql");var eW=ej();eW.DEBUG||(eQ.default.level=4);function e$(e){var t=eV.default[e];return typeof t=="function"?t:eV.default.green}L(e$,"chalkKeyword");var eJ={silent:eQ.default.silent,level:eQ.default.level,fatal:eQ.default.fatal,error:eQ.default.error,warn:eQ.default.warn,log:eQ.default.log,info:eQ.default.info,success:eQ.default.success,ready:eQ.default.ready,start:eQ.default.start,box:eQ.default.box,debug:eQ.default.debug,trace:eQ.default.trace,verbose:eQ.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)){eQ.default.box(eV.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eQ.default.log("".concat(eV.default.gray("File:")," ").concat(eV.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eQ.default.log(" ".concat(e$(n)("Rule:")," ").concat(s)),eQ.default.log(" ".concat(e$(n)("Message:")," ").concat(a))}),eQ.default.box(e$(n)("".concat(e," : ").concat(t.length))),eQ.default.log(eV.default.gray("─".repeat(40)))}};var eX={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var ez=j(require("node-fetch"),1);var eZ=ej();function e0(e){var t=tE(eZ.CWD,tm);if(!eN(t))return!1;try{var n=eA(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 eJ.warn("Failed to read package.json: ".concat(e.message)),!1}}L(e0,"getPackage");function e1(e){return /*#__PURE__*/a(function(){var t,n,r,s;return A(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,ez.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 eJ.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}L(e1,"getLatestPackageVersion");function e2(e,t){return /*#__PURE__*/a(function(){var n,r,s,a,o,c,u,i,l,f,d,E,_,h,g,v,m,O,y,S,R;return A(this,function(C){switch(C.label){case 0:C.trys.push([0,4,,5]);n=e0(e);if(!n)return[2,p({},eX)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,d=n.isDevDepend,E=(r=i.dependencies)!==null&&r!==void 0?r:{},_=(s=i.devDependencies)!==null&&s!==void 0?s:{},h=l?(a=i.version)!==null&&a!==void 0?a:"0.0.0":f?(o=E[e])!==null&&o!==void 0?o:"0.0.0":d?(c=_[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];m=h;return[3,3];case 1:return[4,e1(e)];case 2:m=C.sent();C.label=3;case 3:g=m,v=l||h===g;if(!v&&(t===null||t===void 0?void 0:t.update)){;y=f?"dependencies":d?"devDependencies":null;y&&((O=i[y])===null||O===void 0?void 0:O[e])!==g&&(i[y]=(S=i[y])!==null&&S!==void 0?S:{},i[y][e]=g,eD(u,i),eJ.info('Updated "'.concat(e,'" to version ').concat(g)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:v}];case 4:R=C.sent();return[2,(eJ.error('Error checking package "'.concat(e,'": ').concat(R.message)),p({},eX))];case 5:return[2]}})})()}L(e2,"checkPackage");function e4(){return /*#__PURE__*/a(function(){var e,t,n,r,s,a,o,c,u,i,l,f;return A(this,function(d){switch(d.label){case 0:e=[{command:L(function(){return t4.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:L(function(){return t4.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:L(function(){return t4.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,ti("".concat(u," using: ").concat(i),i)];case 5:d.sent();return[2];case 6:l=d.sent();eJ.warn("Installation attempt failed: ".concat(u)),eJ.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.")}})})()}L(e4,"installDependencies");function e3(e,t){return /*#__PURE__*/a(function(){var n,r,s,a,o,c,u,i,l,f,d;return A(this,function(E){switch(E.label){case 0:if(!eN(t0.PACKAGE_JSON)){eJ.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=C(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return e2(e,p({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=E.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,e4()];case 3:r=E.sent();E.label=4;case 4:r;a=true,o=false,c=undefined;E.label=5;case 5:E.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();E.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:E.sent();E.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=E.sent();o=true;c=f;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:d=E.sent();throw eJ.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})})()}L(e3,"setupPackages");var e5=j(require("node-persist"),1);var e6=ej();function e7(){return /*#__PURE__*/a(function(){var e;return A(this,function(t){switch(t.label){case 0:e=e5.default.defaultInstance;if(e)return[3,2];return[4,e5.default.init({dir:e6.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]}})})()}L(e7,"initNodePersist");var e8={get:function e(e){return /*#__PURE__*/a(function(){var t,n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e7()];case 1:r.sent();return[4,e5.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eJ.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/a(function(){var n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,e7()];case 1:r.sent();return[4,e5.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eJ.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/a(function(){var t;return A(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e7()];case 1:n.sent();return[4,e5.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eJ.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/a(function(){var e,t;return A(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,e7()];case 1:n.sent();return[4,e5.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eJ.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eJ.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/a(function(){return A(this,function(t){try{return[2,"".concat(e6.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eJ.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e9=ej(),te=eB.promisify(eq.exec);function tt(e){return"error_list:".concat(e)}L(tt,"getErrorListKey");function tn(e){return /*#__PURE__*/a(function(){var t,n,r;return A(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=tt(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,e8.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return /*#__PURE__*/a(function(){var e;return A(this,function(t){switch(t.label){case 0:return[4,e8.getLogLink(n)];case 1:e=t.sent();e&&eJ.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();eJ.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}L(tn,"saveErrorListToStorage");function tr(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)||[],_=o.exec(e)||[];var h,g,v,p,m,O;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:(g=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):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]===eH.Error?eH.Error:eH.Warning,message:(p=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&p!==void 0?p:""}):_.length?t.push({file:"commitlint",type:eH.Error,message:(m=_===null||_===void 0?void 0:(l=_[1])===null||l===void 0?void 0:l.trim())!==null&&m!==void 0?m:"",rule:(O=_===null||_===void 0?void 0:(f=_[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&tn(t),e9.DEBUG&&n.length&&(eJ.warn("Unmatched lines:"),n.forEach(function(e){return eJ.info(" ".concat(e))}))}L(tr,"parseTextErrors");function ts(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&&tn(n)}catch(t){tr(e)}}L(ts,"parseCommandOutput");function ta(e){return /*#__PURE__*/a(function(e){var t,n,r,s,a,o,c,u,i;var l=arguments;return A(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:ts;n=new AbortController;eY.default.on("SIGINT",function(){eJ.warn("Process interrupted. Terminating..."),n.abort(),eY.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,te(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&&eJ.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}L(ta,"executeCommand");function to(e){return{raw:!0,cmd:e}}L(to,"rawCommand");function tc(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tV," ").concat(tg," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tV," ").concat(tY," ").concat(tN," ").concat(e):"".concat(tV," ").concat(tD," ").concat(e)}L(tc,"formatCLI");function tu(e,t){return typeof e=="function"?tc(e(t),t):(typeof e==="undefined"?"undefined":I(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?tc(e,t):e}L(tu,"formatCommand");function ti(e,t){return /*#__PURE__*/a(function(){var n;return A(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eJ.start("".concat(e)),e9.DEBUG&&eJ.info("→ ".concat(t));return[4,ta(t)];case 1:r.sent(),eJ.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eJ.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}L(ti,"runCommand");var tl=j(require("path"),1);var tf=ej();function td(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,tl.resolve).apply(this,[tf.CWD].concat(C(t)))}L(td,"resolveWorkingPath");function tE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,tl.join).apply(this,C(t))}L(tE,"join");var t_=ej(),th=t_.CWD,tg="@cyberskill/shared",tv="node_modules",tp="dist",tm="package.json",tO="package-lock.json",ty="tsconfig.json",tS=".gitignore",tR=".simple-git-hooks.json",tC="pnpm-lock.yaml",tI=".git/hooks/",tT=".git/COMMIT_EDITMSG",tb=".migrate-mongo.config.js",tA=tE(th,tv,tg,tp),tD="cyberskill",tN="src/nodejs/cli/index.ts",tM="eslint",tP="eslint",tG="vitest",tw="playwright",tU="vitest",tL="@commitlint/cli",tk="commitlint",tF="lint-staged",tj="lint-staged",tx="typescript",tq="tsc",tY="tsx",tB="git",tH="pnpm",tV="pnpm exec",tQ="simple-git-hooks",tK="simple-git-hooks",tW="@eslint/config-inspector",t$="eslint-config-inspector",tJ="node-modules-inspector",tX="node-modules-inspector",tz="migrate-mongo",tZ="./node_modules/migrate-mongo/bin/migrate-mongo",t0={CYBERSKILL_DIRECTORY:tA,WORKING_DIRECTORY:th,TS_CONFIG:td(ty),GIT_IGNORE:td(tS),GIT_HOOK:td(tI),GIT_COMMIT_MSG:td(tT),SIMPLE_GIT_HOOKS_JSON:td(tR),PACKAGE_JSON:td(tm),PACKAGE_LOCK_JSON:td(tO),PNPM_LOCK_YAML:td(tC),NODE_MODULES:td(tv),MIGRATE_MONGO_CONFIG:td(tb),LINT_STAGED_CONFIG:td("".concat(tA,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:td("".concat(tA,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:td("".concat(tA,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:td("".concat(tA,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:td("".concat(tA,"/react/vitest/vitest.e2e.js"))};function t1(e,t,n){return /*#__PURE__*/a(function(){return A(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ex.CLI:return[3,1];case ex.STRING:return[3,3]}return[3,4];case 1:return[4,e3(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),tu(to("".concat(tV," ").concat(n))))];case 3:return[2,tu(to(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}L(t1,"buildCommand");function t2(e,t,n){return function(){return /*#__PURE__*/a(function(){return A(this,function(r){return[2,t1(e,t,n)]})})()}}L(t2,"commandFactory");var t4={simpleGitHooks:t2(ex.CLI,tQ,tK),eslintInspect:t2(ex.CLI,tW,t$),nodeModulesInspect:t2(ex.CLI,tJ,tX),eslintCheck:t2(ex.CLI,tM,"".concat(tP," ").concat(t0.WORKING_DIRECTORY)),eslintFix:t2(ex.CLI,tM,"".concat(tP," ").concat(t0.WORKING_DIRECTORY," --fix")),typescriptCheck:t2(ex.CLI,tx,"".concat(tq," -p ").concat(t0.TS_CONFIG," --noEmit")),configureGitHook:t2(ex.STRING,"".concat(tB," config core.hooksPath ").concat(t0.GIT_HOOK)),testUnit:t2(ex.CLI,tG,"".concat(tU," --config ").concat(t0.UNIT_TEST_CONFIG)),testE2e:t2(ex.CLI,"".concat(tG," ").concat(tw),"".concat(tU," --config ").concat(t0.E2E_TEST_CONFIG)),mongoMigrateCreate:L(function(e){return t2(ex.CLI,tz,"".concat(tY," ").concat(tZ," create ").concat(e," -f ").concat(t0.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:t2(ex.CLI,tz,"".concat(tY," ").concat(tZ," up -f ").concat(t0.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:t2(ex.CLI,tz,"".concat(tY," ").concat(tZ," down -f ").concat(t0.MIGRATE_MONGO_CONFIG)),commitLint:t2(ex.CLI,tL,"".concat(tk," --edit ").concat(t0.GIT_COMMIT_MSG," --config ").concat(t0.COMMITLINT_CONFIG)),lintStaged:t2(ex.CLI,tF,"".concat(tj," --config ").concat(t0.LINT_STAGED_CONFIG)),stageBuildDirectory:t2(ex.STRING,"".concat(tB," add ").concat(tp)),build:t2(ex.STRING,"".concat(tH," run build")),pnpmInstallStandard:t2(ex.STRING,"".concat(tH," install")),pnpmInstallLegacy:t2(ex.STRING,"".concat(tH," install --legacy-peer-deps")),pnpmInstallForce:t2(ex.STRING,"".concat(tH," install --force"))};var t3={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,ee.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"?t3.getDateTime():new Date;return{id:(0,ea.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:ea.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(t3.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=t3.createSchema({mongoose:t,schema:r,virtuals:i});return t3.applyPlugins(d,[a&&es.default,c&&er.default]),t3.applyMiddlewares(d,f),t.model(n,d)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/a(function(){return A(this,function(t){return[2,!eg.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/a(function(){var n;return A(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 l({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/a(function(){return A(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!E(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:O(p({},et.default),{setConfig:L(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eC(t0.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tb,"\n");eN(t0.GIT_IGNORE)?eR(t0.GIT_IGNORE,"utf-8").split("\n").includes(tb)||eI(t0.GIT_IGNORE,n,"utf-8"):eC(t0.GIT_IGNORE,n,"utf-8")},"setConfig")})},t5=/*#__PURE__*/function(){function e(t,n){c(this,e);q(this,"collection");this.collection=t.collection(n)}i(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/a(function(){var t,n,r;return A(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=p({},t3.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__*/a(function(){var t,n,r;return A(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return p({},t3.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__*/a(function(){var t,n;return A(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__*/a(function(){var e,t,n;var r=arguments;return A(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__*/a(function(){var e,t,n;var r=arguments;return A(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__*/a(function(){var n,r;return A(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__*/a(function(){var n,r;return A(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__*/a(function(){var t,n;return A(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__*/a(function(){var t,n;return A(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}();L(t5,"MongoController");var t6=t5,t7=/*#__PURE__*/function(){function e(t){c(this,e);q(this,"model");this.model=t}i(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/a(function(){var e,t,n,r,s,a,o;var c=arguments;return A(this,function(u){switch(u.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[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:eo.NOT_FOUND.CODE}];case 3:o=u.sent();return[2,{success:!1,message:o.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/a(function(){var e,t,n,r,s,a,o;var c=arguments;return A(this,function(u){switch(u.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[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:o=u.sent();return[2,{success:!1,message:o.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r;var s=arguments;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/a(function(e){var t,n,r;var s=arguments;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/a(function(){var e,t,n;var r=arguments;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/a(function(){var t,n;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/a(function(e){var t,n,r;var s=arguments;return A(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 E(e,en.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r,s;var a=arguments;return A(this,function(o){switch(o.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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,p({new:!0},n)).exec()];case 2:r=o.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:eo.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r,s;var a=arguments;return A(this,function(o){switch(o.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]:{};o.label=1;case 1:o.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=o.sent(),r)];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r;var s=arguments;return A(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:eo.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:eo.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/a(function(){var e,t,n,r;var s=arguments;return A(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:eo.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:eo.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__*/a(function(){var n,r,s,a;return A(this,function(o){switch(o.label){case 0:n=new Set;r=0;o.label=1;case 1:if(!(r<10))return[3,5];s=eh(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=!o.sent();o.label=3;case 3:if(a)return[2,{success:!0,result:s}];o.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:eo.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/a(function(){var r,s,o,c,u,i,f,d,E,_;return A(this,function(h){switch(h.label){case 0:r=this;h.label=1;case 1:h.trys.push([1,5,,6]);s=t[e],o=el(s),c=L(function(t){var r=p({},n!==null&&n!==void 0?n:{});return o?O(p({},r),{$or:[l({},"slug.".concat(e),t),{slugHistory:{$elemMatch:l({},"slug.".concat(e),t)}}]}):O(p({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),u=L(function(e){return /*#__PURE__*/a(function(){var t,n;return A(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(c(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!o)return[3,3];i={success:!0};f=Object.fromEntries;return[4,Promise.all(Object.entries(s).map(function(e){var t=R(e,2),n=t[0],r=t[1];return /*#__PURE__*/a(function(){var e,t;return A(this,function(s){switch(s.label){case 0:e=e_(r);t=[n];return[4,u(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(i.result=f.apply(Object,[h.sent()]),i)];case 3:d=e_(s);E={success:!0};return[4,u(d)];case 4:return[2,(E.result=h.sent(),E)];case 5:_=h.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(_.message),code:eo.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/a(function(){var t,n;return A(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:eo.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();L(t7,"MongooseController");var t8=t7;0&&(module.exports={C_Collection:C_Collection,C_Db:C_Db,C_Document:C_Document,C_Model:C_Model,MONGO_MIGRATE_OPTIONS:MONGO_MIGRATE_OPTIONS,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(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e,t,n,r,s,o,a){try{var c=e[o](a);var i=c.value}catch(e){n(e);return}if(c.done){t(i)}else{Promise.resolve(i).then(r,s)}}function o(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function c(e){s(a,r,o,c,i,"next",e)}function i(e){s(a,r,o,c,i,"throw",e)}c(undefined)})}}function a(e,t,n){t=f(t);return y(e,A()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function c(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function i(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 u(e,t,n){if(t)i(e.prototype,t);if(n)i(e,n);return e}function l(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 f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function E(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)S(e,t)}function d(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function h(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function m(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var o=false;var a,c;try{for(n=n.call(e);!(s=(a=n.next()).done);s=true){r.push(a.value);if(t&&r.length===t)break}}catch(e){o=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(o)throw c}}return r}function _(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function p(){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 g(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){l(e,t,n[t])})}return e}function v(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 O(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{v(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function y(e,t){if(t&&(C(t)==="object"||typeof t==="function")){return t}return r(e)}function S(e,t){S=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return S(e,t)}function R(e,n){return t(e)||m(e,n)||T(e,n)||_()}function I(e){return n(e)||h(e)||T(e)||p()}function C(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function T(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 A(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(A=function(){return!!e})()}function b(e,t){var n,r,s,o={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=c(0),a["throw"]=c(1),a["return"]=c(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,c[0]&&(o=0)),o)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:o.label++;return{value:c[1],done:false};case 5:o.label++;r=c[1];c=[0];continue;case 7:c=o.ops.pop();o.trys.pop();continue;default:if(!(s=o.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){o=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){o.label=c[1];break}if(c[0]===6&&o.label<s[1]){o.label=s[1];s=c;break}if(s&&o.label<s[2]){o.label=s[2];o.ops.push(c);break}if(s[2])o.ops.pop();o.trys.pop();continue}c=t.call(e,o)}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 D=Object.defineProperty;var N=function(e,t,n){return t in e?D(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var G=function(e,t){return D(e,"name",{value:t,configurable:!0})};var P=function(e,t,n){return N(e,(typeof t==="undefined"?"undefined":C(t))!="symbol"?t+"":t,n)};var M="MONGO_MIGRATE_OPTIONS";import{Collection as w,Db as U}from"mongodb";import{Document as L,Model as k}from"mongoose";var F=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return a(this,t,arguments)}return t}(U);G(F,"C_Db");var j=F,x=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return a(this,t,arguments)}return t}(L);G(x,"C_Document");var Y=x,B=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return a(this,t,arguments)}return t}(k);G(B,"C_Model");var q=B,H=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return a(this,t,arguments)}return t}(w);G(H,"C_Collection");var Q=H;import{format as V}from"date-fns";import K from"migrate-mongo";import{Document as W}from"mongoose";import $ from"mongoose-aggregate-paginate-v2";import J from"mongoose-paginate-v2";import{v4 as X}from"uuid";var z={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 Z from"unorm";var ee={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},et=Object.entries(ee).reduce(function(e,t){var n=R(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function en(e){return(typeof e==="undefined"?"undefined":C(e))=="object"&&e!==null&&!Array.isArray(e)}G(en,"isObject");import er from"crypto-js";import es from"slugify";var eo=es.default||es;function ea(e,t){var n=G(function(e){var n,r;return eo(e!==null&&e!==void 0?e:"",g({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))},"slugifyWithOptions");if(en(e)){var r={};var s=true,o=false,a=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true){var u=R(i.value,2),l=u[0],f=u[1];r[l]=n(f)}}catch(e){o=true;a=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(o){throw a}}}return r}return n(e)}G(ea,"generateSlug");function ec(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return er.SHA256(e).toString(er.enc.Hex).slice(0,t)}G(ec,"generateShortId");var ei={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":C(e))=="object"?d(e,Date)?!1:d(e,Map)||d(e,Set)?e.size===0:d(e,WeakMap)||d(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 eu from"fs-extra";var el=eu.lstatSync,ef=eu.readdirSync,eE=eu.mkdirSync,ed=eu.readFileSync,eh=eu.writeFileSync,em=eu.appendFileSync,e_=eu.unlinkSync,ep=eu.statSync,eg=eu.readJsonSync,ev=eu.writeJsonSync;function eO(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eu.pathExistsSync(e)})}G(eO,"pathExistsSync");var ey=".cyberskill-storage";import eS from"@dotenvx/dotenvx";import{bool as eR,cleanEnv as eI,str as eC}from"envalid";import eT from"node:os";import eA from"node:path";import eb from"node:process";eS.config();function eD(){var e={DEBUG:eb.env.DEBUG||!1,CWD:eb.env.CWD||eb.cwd(),CYBERSKILL_STORAGE_DIRECTORY:eb.env.CYBERSKILL_STORAGE_DIRECTORY||eA.join(eT.homedir(),ey)};return eI(e,{DEBUG:eR(),CWD:eC(),CYBERSKILL_STORAGE_DIRECTORY:eC()})}G(eD,"getEnv");var eN=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eG}from"node:child_process";import eP from"node:process";import*as eM from"node:util";var ew=function(e){return e.Error="error",e.Warning="warning",e}({});import eU from"chalk";import eL from"consola";import{GraphQLError as ek}from"graphql";var eF=eD();eF.DEBUG||(eL.level=4);function ej(e){var t=eU[e];return typeof t=="function"?t:eU.green}G(ej,"chalkKeyword");var ex={silent:eL.silent,level:eL.level,fatal:eL.fatal,error:eL.error,warn:eL.warn,log:eL.log,info:eL.info,success:eL.success,ready:eL.ready,start:eL.start,box:eL.box,debug:eL.debug,trace:eL.trace,verbose:eL.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)){eL.box(eU.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,o=e.message;eL.log("".concat(eU.gray("File:")," ").concat(eU.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eL.log(" ".concat(ej(n)("Rule:")," ").concat(s)),eL.log(" ".concat(ej(n)("Message:")," ").concat(o))}),eL.box(ej(n)("".concat(e," : ").concat(t.length))),eL.log(eU.gray("─".repeat(40)))}};var eY={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import eB from"node-fetch";var eq=eD();function eH(e){var t=to(eq.CWD,tf);if(!eO(t))return!1;try{var n=eg(t),r=n.name,s=n.dependencies,o=s===void 0?{}:s,a=n.devDependencies,c=a===void 0?{}:a,i=r===e,u=e in o,l=e in c;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return ex.warn("Failed to read package.json: ".concat(e.message)),!1}}G(eH,"getPackage");function eQ(e){return /*#__PURE__*/o(function(){var t,n,r,s;return b(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,eB("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:s=o.sent();throw ex.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}G(eQ,"getLatestPackageVersion");function eV(e,t){return /*#__PURE__*/o(function(){var n,r,s,o,a,c,i,u,l,f,E,d,h,m,_,p,v,O,y,S,R;return b(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=eH(e);if(!n)return[2,g({},eY)];i=n.path,u=n.file,l=n.isCurrentProject,f=n.isDepend,E=n.isDevDepend,d=(r=u.dependencies)!==null&&r!==void 0?r:{},h=(s=u.devDependencies)!==null&&s!==void 0?s:{},m=l?(o=u.version)!==null&&o!==void 0?o:"0.0.0":f?(a=d[e])!==null&&a!==void 0?a:"0.0.0":E?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];v=m;return[3,3];case 1:return[4,eQ(e)];case 2:v=I.sent();I.label=3;case 3:_=v,p=l||m===_;if(!p&&(t===null||t===void 0?void 0:t.update)){;y=f?"dependencies":E?"devDependencies":null;y&&((O=u[y])===null||O===void 0?void 0:O[e])!==_&&(u[y]=(S=u[y])!==null&&S!==void 0?S:{},u[y][e]=_,ev(i,u),ex.info('Updated "'.concat(e,'" to version ').concat(_)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:p}];case 4:R=I.sent();return[2,(ex.error('Error checking package "'.concat(e,'": ').concat(R.message)),g({},eY))];case 5:return[2]}})})()}G(eV,"checkPackage");function eK(){return /*#__PURE__*/o(function(){var e,t,n,r,s,o,a,c,i,u,l,f;return b(this,function(E){switch(E.label){case 0:e=[{command:G(function(){return t$.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:G(function(){return t$.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:G(function(){return t$.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=(o=s.next()).done))return[3,8];a=o.value,c=a.command,i=a.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,c()];case 4:u=E.sent();return[4,e9("".concat(i," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();ex.warn("Installation attempt failed: ".concat(i)),ex.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.")}})})()}G(eK,"installDependencies");function eW(e,t){return /*#__PURE__*/o(function(){var n,r,s,o,a,c,i,u,l,f,E;return b(this,function(d){switch(d.label){case 0:if(!eO(tV.PACKAGE_JSON)){ex.error("package.json not found. Aborting setup.");return[2]}d.label=1;case 1:d.trys.push([1,13,,14]);n=I(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eV(e,g({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=d.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eK()];case 3:r=d.sent();d.label=4;case 4:r;o=true,a=false,c=undefined;d.label=5;case 5:d.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();d.label=6;case 6:if(!!(o=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:d.sent();d.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:f=d.sent();a=true;c=f;return[3,12];case 11:try{if(!o&&i.return!=null){i.return()}}finally{if(a){throw c}}return[7];case 12:return[3,14];case 13:E=d.sent();throw ex.error('Failed to setup "'.concat(e.join(", "),'": ').concat(E.message)),E;case 14:return[2]}})})()}G(eW,"setupPackages");import e$ from"node-persist";var eJ=eD();function eX(){return /*#__PURE__*/o(function(){var e;return b(this,function(t){switch(t.label){case 0:e=e$.defaultInstance;if(e)return[3,2];return[4,e$.init({dir:eJ.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]}})})()}G(eX,"initNodePersist");var ez={get:function e(e){return /*#__PURE__*/o(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eX()];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,(ex.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/o(function(){var n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eX()];case 1:r.sent();return[4,e$.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ex.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/o(function(){var t;return b(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eX()];case 1:n.sent();return[4,e$.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ex.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/o(function(){var e,t;return b(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eX()];case 1:n.sent();return[4,e$.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ex.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ex.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/o(function(){return b(this,function(t){try{return[2,"".concat(eJ.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ex.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eZ=eD(),e0=eM.promisify(eG);function e1(e){return"error_list:".concat(e)}G(e1,"getErrorListKey");function e2(e){return /*#__PURE__*/o(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e1(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,ez.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return /*#__PURE__*/o(function(){var e;return b(this,function(t){switch(t.label){case 0:return[4,ez.getLogLink(n)];case 1:e=t.sent();e&&ex.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();ex.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}G(e2,"saveErrorListToStorage");function e4(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,f;var E=s.exec(e)||[],d=o.exec(e)||[],h=a.exec(e)||[];var m,_,p,g,v,O;E.length&&r?t.push({file:r,position:"".concat(E[1],":").concat(E[2]),type:E[3]===ew.Error?ew.Error:ew.Warning,message:(m=E===null||E===void 0?void 0:(c=E[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(_=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&_!==void 0?_:""}):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]===ew.Error?ew.Error:ew.Warning,message:(g=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):h.length?t.push({file:"commitlint",type:ew.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:(f=h[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&e2(t),eZ.DEBUG&&n.length&&(ex.warn("Unmatched lines:"),n.forEach(function(e){return ex.info(" ".concat(e))}))}G(e4,"parseTextErrors");function e3(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,o=e.column,a=e.ruleId,c=e.message;n.push({type:r===2?ew.Error:ew.Warning,file:t,position:"".concat(s,":").concat(o),rule:a,message:c})})}),n.length&&e2(n)}catch(t){e4(e)}}G(e3,"parseCommandOutput");function e5(e){return /*#__PURE__*/o(function(e){var t,n,r,s,o,a,c,i,u;var l=arguments;return b(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e3;n=new AbortController;eP.on("SIGINT",function(){ex.warn("Process interrupted. Terminating..."),n.abort(),eP.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e0(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,o=r.stderr;[s,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:a=f.sent();c=a.stdout,i=a.stderr,u=a.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&ex.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}G(e5,"executeCommand");function e6(e){return{raw:!0,cmd:e}}G(e6,"rawCommand");function e7(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tk," ").concat(ti," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tk," ").concat(tw," ").concat(tS," ").concat(e):"".concat(tk," ").concat(ty," ").concat(e)}G(e7,"formatCLI");function e8(e,t){return typeof e=="function"?e7(e(t),t):(typeof e==="undefined"?"undefined":C(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e7(e,t):e}G(e8,"formatCommand");function e9(e,t){return /*#__PURE__*/o(function(){var n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ex.start("".concat(e)),eZ.DEBUG&&ex.info("→ ".concat(t));return[4,e5(t)];case 1:r.sent(),ex.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ex.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}G(e9,"runCommand");import te,{join as tt,resolve as tn}from"node:path";var tr=eD();function ts(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return tn.apply(void 0,[tr.CWD].concat(I(t)))}G(ts,"resolveWorkingPath");function to(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return tt.apply(void 0,I(t))}G(to,"join");var ta=eD(),tc=ta.CWD,ti="@cyberskill/shared",tu="node_modules",tl="dist",tf="package.json",tE="package-lock.json",td="tsconfig.json",th=".gitignore",tm=".simple-git-hooks.json",t_="pnpm-lock.yaml",tp=".git/hooks/",tg=".git/COMMIT_EDITMSG",tv=".migrate-mongo.config.js",tO=to(tc,tu,ti,tl),ty="cyberskill",tS="src/nodejs/cli/index.ts",tR="eslint",tI="eslint",tC="vitest",tT="playwright",tA="vitest",tb="@commitlint/cli",tD="commitlint",tN="lint-staged",tG="lint-staged",tP="typescript",tM="tsc",tw="tsx",tU="git",tL="pnpm",tk="pnpm exec",tF="simple-git-hooks",tj="simple-git-hooks",tx="@eslint/config-inspector",tY="eslint-config-inspector",tB="node-modules-inspector",tq="node-modules-inspector",tH="migrate-mongo",tQ="./node_modules/migrate-mongo/bin/migrate-mongo",tV={CYBERSKILL_DIRECTORY:tO,WORKING_DIRECTORY:tc,TS_CONFIG:ts(td),GIT_IGNORE:ts(th),GIT_HOOK:ts(tp),GIT_COMMIT_MSG:ts(tg),SIMPLE_GIT_HOOKS_JSON:ts(tm),PACKAGE_JSON:ts(tf),PACKAGE_LOCK_JSON:ts(tE),PNPM_LOCK_YAML:ts(t_),NODE_MODULES:ts(tu),MIGRATE_MONGO_CONFIG:ts(tv),LINT_STAGED_CONFIG:ts("".concat(tO,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ts("".concat(tO,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ts("".concat(tO,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ts("".concat(tO,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ts("".concat(tO,"/react/vitest/vitest.e2e.js"))};function tK(e,t,n){return /*#__PURE__*/o(function(){return b(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,eW(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),e8(e6("".concat(tk," ").concat(n))))];case 3:return[2,e8(e6(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}G(tK,"buildCommand");function tW(e,t,n){return function(){return /*#__PURE__*/o(function(){return b(this,function(r){return[2,tK(e,t,n)]})})()}}G(tW,"commandFactory");var t$={simpleGitHooks:tW(eN.CLI,tF,tj),eslintInspect:tW(eN.CLI,tx,tY),nodeModulesInspect:tW(eN.CLI,tB,tq),eslintCheck:tW(eN.CLI,tR,"".concat(tI," ").concat(tV.WORKING_DIRECTORY)),eslintFix:tW(eN.CLI,tR,"".concat(tI," ").concat(tV.WORKING_DIRECTORY," --fix")),typescriptCheck:tW(eN.CLI,tP,"".concat(tM," -p ").concat(tV.TS_CONFIG," --noEmit")),configureGitHook:tW(eN.STRING,"".concat(tU," config core.hooksPath ").concat(tV.GIT_HOOK)),testUnit:tW(eN.CLI,tC,"".concat(tA," --config ").concat(tV.UNIT_TEST_CONFIG)),testE2e:tW(eN.CLI,"".concat(tC," ").concat(tT),"".concat(tA," --config ").concat(tV.E2E_TEST_CONFIG)),mongoMigrateCreate:G(function(e){return tW(eN.CLI,tH,"".concat(tw," ").concat(tQ," create ").concat(e," -f ").concat(tV.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tW(eN.CLI,tH,"".concat(tw," ").concat(tQ," up -f ").concat(tV.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tW(eN.CLI,tH,"".concat(tw," ").concat(tQ," down -f ").concat(tV.MIGRATE_MONGO_CONFIG)),commitLint:tW(eN.CLI,tb,"".concat(tD," --edit ").concat(tV.GIT_COMMIT_MSG," --config ").concat(tV.COMMITLINT_CONFIG)),lintStaged:tW(eN.CLI,tN,"".concat(tG," --config ").concat(tV.LINT_STAGED_CONFIG)),stageBuildDirectory:tW(eN.STRING,"".concat(tU," add ").concat(tl)),build:tW(eN.STRING,"".concat(tL," run build")),pnpmInstallStandard:tW(eN.STRING,"".concat(tL," install")),pnpmInstallLegacy:tW(eN.STRING,"".concat(tL," install --legacy-peer-deps")),pnpmInstallForce:tW(eN.STRING,"".concat(tL," install --force"))};var tJ={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return V(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"?tJ.getDateTime():new Date;return{id:X(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,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:X,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,o=e.standalone,a=o===void 0?!1:o;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)}),a||c.add(tJ.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,o=s===void 0?!1:s,a=e.aggregate,c=a===void 0?!1:a,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=tJ.createSchema({mongoose:t,schema:r,virtuals:u});return tJ.applyPlugins(E,[o&&J,c&&$]),tJ.applyMiddlewares(E,f),t.model(n,E)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/o(function(){return b(this,function(t){return[2,!ei.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/o(function(){var n;return b(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 l({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/o(function(){return b(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!d(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:O(g({},K),{setConfig:G(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eh(tV.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tv,"\n");eO(tV.GIT_IGNORE)?ed(tV.GIT_IGNORE,"utf-8").split("\n").includes(tv)||em(tV.GIT_IGNORE,n,"utf-8"):eh(tV.GIT_IGNORE,n,"utf-8")},"setConfig")})},tX=/*#__PURE__*/function(){"use strict";function e(t,n){c(this,e);P(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/o(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=g({},tJ.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__*/o(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return g({},tJ.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__*/o(function(){var t,n;return b(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__*/o(function(){var e,t,n;var r=arguments;return b(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__*/o(function(){var e,t,n;var r=arguments;return b(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__*/o(function(){var n,r;return b(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__*/o(function(){var n,r;return b(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__*/o(function(){var t,n;return b(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__*/o(function(){var t,n;return b(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}();G(tX,"MongoController");var tz=tX,tZ=/*#__PURE__*/function(){"use strict";function e(t){c(this,e);P(this,"model");this.model=t}u(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/o(function(){var e,t,n,r,s,o,a;var c=arguments;return b(this,function(i){switch(i.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[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:o=i.sent();return[2,o?{success:!0,result:o}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:z.NOT_FOUND.CODE}];case 3:a=i.sent();return[2,{success:!1,message:a.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/o(function(){var e,t,n,r,s,o,a;var c=arguments;return b(this,function(i){switch(i.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[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);o={success:!0};return[4,s.exec()];case 2:return[2,(o.result=i.sent(),o)];case 3:a=i.sent();return[2,{success:!1,message:a.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=o.sent(),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/o(function(e){var t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=o.sent(),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/o(function(){var e,t,n;var r=arguments;return b(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:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/o(function(){var t,n;return b(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:z.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/o(function(e){var t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=o.sent().map(function(e){return d(e,W)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r,s;var o=arguments;return b(this,function(a){switch(a.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]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,g({new:!0},n)).exec()];case 2:r=a.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:z.NOT_FOUND.CODE}];case 3:s=a.sent();return[2,{success:!1,message:s.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r,s;var o=arguments;return b(this,function(a){switch(a.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]:{};a.label=1;case 1:a.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=a.sent(),r)];case 3:s=a.sent();return[2,{success:!1,message:s.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=o.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:z.NOT_FOUND.CODE}];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=o.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:z.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.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__*/o(function(){var n,r,s,o;return b(this,function(a){switch(a.label){case 0:n=new Set;r=0;a.label=1;case 1:if(!(r<10))return[3,5];s=ec(e,r+t);o=!n.has(s);if(!o)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:o=!a.sent();a.label=3;case 3:if(o)return[2,{success:!0,result:s}];a.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:z.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/o(function(){var r,s,a,c,i,u,f,E,d,h;return b(this,function(m){switch(m.label){case 0:r=this;m.label=1;case 1:m.trys.push([1,5,,6]);s=t[e],a=en(s),c=G(function(t){var r=g({},n!==null&&n!==void 0?n:{});return a?O(g({},r),{$or:[l({},"slug.".concat(e),t),{slugHistory:{$elemMatch:l({},"slug.".concat(e),t)}}]}):O(g({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),i=G(function(e){return /*#__PURE__*/o(function(){var t,n;return b(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(c(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!a)return[3,3];u={success:!0};f=Object.fromEntries;return[4,Promise.all(Object.entries(s).map(function(e){var t=R(e,2),n=t[0],r=t[1];return /*#__PURE__*/o(function(){var e,t;return b(this,function(s){switch(s.label){case 0:e=ea(r);t=[n];return[4,i(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(u.result=f.apply(Object,[m.sent()]),u)];case 3:E=ea(s);d={success:!0};return[4,i(E)];case 4:return[2,(d.result=m.sent(),d)];case 5:h=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(h.message),code:z.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/o(function(){var t,n;return b(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:z.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();G(tZ,"MongooseController");var t0=tZ;export{Q as C_Collection,j as C_Db,Y as C_Document,q as C_Model,M as MONGO_MIGRATE_OPTIONS,tz as MongoController,t0 as MongooseController,$ as aggregatePaginate,tJ as mongo,J 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(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function s(e,t,n,r,s,o,a){try{var c=e[o](a);var i=c.value}catch(e){n(e);return}if(c.done){t(i)}else{Promise.resolve(i).then(r,s)}}function o(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function c(e){s(a,r,o,c,i,"next",e)}function i(e){s(a,r,o,c,i,"throw",e)}c(undefined)})}}function a(e,t,n){t=f(t);return y(e,A()?Reflect.construct(t,n||[],f(e).constructor):t.apply(e,n))}function c(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function i(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 u(e,t,n){if(t)i(e.prototype,t);if(n)i(e,n);return e}function l(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 f(e){f=Object.setPrototypeOf?Object.getPrototypeOf:function e(e){return e.__proto__||Object.getPrototypeOf(e)};return f(e)}function E(e,t){if(typeof t!=="function"&&t!==null){throw new TypeError("Super expression must either be null or a function")}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:true,configurable:true}});if(t)S(e,t)}function d(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function h(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function m(e,t){var n=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(n==null)return;var r=[];var s=true;var o=false;var a,c;try{for(n=n.call(e);!(s=(a=n.next()).done);s=true){r.push(a.value);if(t&&r.length===t)break}}catch(e){o=true;c=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(o)throw c}}return r}function _(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function p(){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 g(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){l(e,t,n[t])})}return e}function v(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 O(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{v(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function y(e,t){if(t&&(C(t)==="object"||typeof t==="function")){return t}return r(e)}function S(e,t){S=Object.setPrototypeOf||function e(e,t){e.__proto__=t;return e};return S(e,t)}function R(e,n){return t(e)||m(e,n)||T(e,n)||_()}function I(e){return n(e)||h(e)||T(e)||p()}function C(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function T(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 A(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(A=function(){return!!e})()}function b(e,t){var n,r,s,o={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=c(0),a["throw"]=c(1),a["return"]=c(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(a&&(a=0,c[0]&&(o=0)),o)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:o.label++;return{value:c[1],done:false};case 5:o.label++;r=c[1];c=[0];continue;case 7:c=o.ops.pop();o.trys.pop();continue;default:if(!(s=o.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){o=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){o.label=c[1];break}if(c[0]===6&&o.label<s[1]){o.label=s[1];s=c;break}if(s&&o.label<s[2]){o.label=s[2];o.ops.push(c);break}if(s[2])o.ops.pop();o.trys.pop();continue}c=t.call(e,o)}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 D=Object.defineProperty;var N=function(e,t,n){return t in e?D(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var G=function(e,t){return D(e,"name",{value:t,configurable:!0})};var P=function(e,t,n){return N(e,(typeof t==="undefined"?"undefined":C(t))!="symbol"?t+"":t,n)};var M="MONGO_MIGRATE_OPTIONS";import{Collection as w,Db as U}from"mongodb";import{Document as L,Model as k}from"mongoose";var F=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return a(this,t,arguments)}return t}(U);G(F,"C_Db");var j=F,x=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return a(this,t,arguments)}return t}(L);G(x,"C_Document");var Y=x,B=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return a(this,t,arguments)}return t}(k);G(B,"C_Model");var q=B,H=/*#__PURE__*/function(e){"use strict";E(t,e);function t(){c(this,t);return a(this,t,arguments)}return t}(w);G(H,"C_Collection");var Q=H;import{format as V}from"date-fns";import K from"migrate-mongo";import{Document as W}from"mongoose";import $ from"mongoose-aggregate-paginate-v2";import J from"mongoose-paginate-v2";import{v4 as X}from"uuid";var z={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 Z from"unorm";var ee={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},et=Object.entries(ee).reduce(function(e,t){var n=R(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function en(e){return(typeof e==="undefined"?"undefined":C(e))=="object"&&e!==null&&!Array.isArray(e)}G(en,"isObject");import er from"crypto-js";import es from"slugify";var eo=es.default||es;function ea(e,t){var n=G(function(e){var n,r;return eo(e!==null&&e!==void 0?e:"",g({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))},"slugifyWithOptions");if(en(e)){var r={};var s=true,o=false,a=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true){var u=R(i.value,2),l=u[0],f=u[1];r[l]=n(f)}}catch(e){o=true;a=e}finally{try{if(!s&&c.return!=null){c.return()}}finally{if(o){throw a}}}return r}return n(e)}G(ea,"generateSlug");function ec(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return er.SHA256(e).toString(er.enc.Hex).slice(0,t)}G(ec,"generateShortId");var ei={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":C(e))=="object"?d(e,Date)?!1:d(e,Map)||d(e,Set)?e.size===0:d(e,WeakMap)||d(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 eu from"fs-extra";var el=eu.lstatSync,ef=eu.readdirSync,eE=eu.mkdirSync,ed=eu.readFileSync,eh=eu.writeFileSync,em=eu.appendFileSync,e_=eu.unlinkSync,ep=eu.statSync,eg=eu.readJsonSync,ev=eu.writeJsonSync;function eO(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return eu.pathExistsSync(e)})}G(eO,"pathExistsSync");var ey=".cyberskill-storage";import eS from"@dotenvx/dotenvx";import{bool as eR,cleanEnv as eI,str as eC}from"envalid";import eT from"node:os";import eA from"node:path";import eb from"node:process";var eD=!1;function eN(){eD||(eS.config(),eD=!0)}G(eN,"loadEnvFile");function eG(){eN();var e=eI(eb.env,{CWD:eC({default:eb.cwd()}),DEBUG:eR({default:!1}),CYBERSKILL_STORAGE_DIRECTORY:eC({default:eA.join(eT.homedir(),ey)})});return{CWD:e.CWD,DEBUG:e.DEBUG,CYBERSKILL_STORAGE_DIRECTORY:e.CYBERSKILL_STORAGE_DIRECTORY}}G(eG,"getEnv");var eP=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eM}from"node:child_process";import ew from"node:process";import*as eU from"node:util";var eL=function(e){return e.Error="error",e.Warning="warning",e}({});import ek from"chalk";import eF from"consola";import{GraphQLError as ej}from"graphql";var ex=eG();ex.DEBUG||(eF.level=4);function eY(e){var t=ek[e];return typeof t=="function"?t:ek.green}G(eY,"chalkKeyword");var eB={silent:eF.silent,level:eF.level,fatal:eF.fatal,error:eF.error,warn:eF.warn,log:eF.log,info:eF.info,success:eF.success,ready:eF.ready,start:eF.start,box:eF.box,debug:eF.debug,trace:eF.trace,verbose:eF.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)){eF.box(ek.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,o=e.message;eF.log("".concat(ek.gray("File:")," ").concat(ek.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eF.log(" ".concat(eY(n)("Rule:")," ").concat(s)),eF.log(" ".concat(eY(n)("Message:")," ").concat(o))}),eF.box(eY(n)("".concat(e," : ").concat(t.length))),eF.log(ek.gray("─".repeat(40)))}};var eq={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import eH from"node-fetch";var eQ=eG();function eV(e){var t=tc(eQ.CWD,td);if(!eO(t))return!1;try{var n=eg(t),r=n.name,s=n.dependencies,o=s===void 0?{}:s,a=n.devDependencies,c=a===void 0?{}:a,i=r===e,u=e in o,l=e in c;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return eB.warn("Failed to read package.json: ".concat(e.message)),!1}}G(eV,"getPackage");function eK(e){return /*#__PURE__*/o(function(){var t,n,r,s;return b(this,function(o){switch(o.label){case 0:o.trys.push([0,3,,4]);return[4,eH("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:s=o.sent();throw eB.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}G(eK,"getLatestPackageVersion");function eW(e,t){return /*#__PURE__*/o(function(){var n,r,s,o,a,c,i,u,l,f,E,d,h,m,_,p,v,O,y,S,R;return b(this,function(I){switch(I.label){case 0:I.trys.push([0,4,,5]);n=eV(e);if(!n)return[2,g({},eq)];i=n.path,u=n.file,l=n.isCurrentProject,f=n.isDepend,E=n.isDevDepend,d=(r=u.dependencies)!==null&&r!==void 0?r:{},h=(s=u.devDependencies)!==null&&s!==void 0?s:{},m=l?(o=u.version)!==null&&o!==void 0?o:"0.0.0":f?(a=d[e])!==null&&a!==void 0?a:"0.0.0":E?(c=h[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];v=m;return[3,3];case 1:return[4,eK(e)];case 2:v=I.sent();I.label=3;case 3:_=v,p=l||m===_;if(!p&&(t===null||t===void 0?void 0:t.update)){;y=f?"dependencies":E?"devDependencies":null;y&&((O=u[y])===null||O===void 0?void 0:O[e])!==_&&(u[y]=(S=u[y])!==null&&S!==void 0?S:{},u[y][e]=_,ev(i,u),eB.info('Updated "'.concat(e,'" to version ').concat(_)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:p}];case 4:R=I.sent();return[2,(eB.error('Error checking package "'.concat(e,'": ').concat(R.message)),g({},eq))];case 5:return[2]}})})()}G(eW,"checkPackage");function e$(){return /*#__PURE__*/o(function(){var e,t,n,r,s,o,a,c,i,u,l,f;return b(this,function(E){switch(E.label){case 0:e=[{command:G(function(){return tX.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:G(function(){return tX.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:G(function(){return tX.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=(o=s.next()).done))return[3,8];a=o.value,c=a.command,i=a.message;E.label=3;case 3:E.trys.push([3,6,,7]);return[4,c()];case 4:u=E.sent();return[4,tt("".concat(i," using: ").concat(u),u)];case 5:E.sent();return[2];case 6:l=E.sent();eB.warn("Installation attempt failed: ".concat(i)),eB.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.")}})})()}G(e$,"installDependencies");function eJ(e,t){return /*#__PURE__*/o(function(){var n,r,s,o,a,c,i,u,l,f,E;return b(this,function(d){switch(d.label){case 0:if(!eO(tW.PACKAGE_JSON)){eB.error("package.json not found. Aborting setup.");return[2]}d.label=1;case 1:d.trys.push([1,13,,14]);n=I(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eW(e,g({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=d.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,e$()];case 3:r=d.sent();d.label=4;case 4:r;o=true,a=false,c=undefined;d.label=5;case 5:d.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();d.label=6;case 6:if(!!(o=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:d.sent();d.label=8;case 8:o=true;return[3,6];case 9:return[3,12];case 10:f=d.sent();a=true;c=f;return[3,12];case 11:try{if(!o&&i.return!=null){i.return()}}finally{if(a){throw c}}return[7];case 12:return[3,14];case 13:E=d.sent();throw eB.error('Failed to setup "'.concat(e.join(", "),'": ').concat(E.message)),E;case 14:return[2]}})})()}G(eJ,"setupPackages");import eX from"node-persist";var ez=eG();function eZ(){return /*#__PURE__*/o(function(){var e;return b(this,function(t){switch(t.label){case 0:e=eX.defaultInstance;if(e)return[3,2];return[4,eX.init({dir:ez.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]}})})()}G(eZ,"initNodePersist");var e0={get:function e(e){return /*#__PURE__*/o(function(){var t,n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,eX.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eB.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/o(function(){var n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eZ()];case 1:r.sent();return[4,eX.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eB.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/o(function(){var t;return b(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eZ()];case 1:n.sent();return[4,eX.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eB.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/o(function(){var e,t;return b(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eZ()];case 1:n.sent();return[4,eX.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eB.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eB.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/o(function(){return b(this,function(t){try{return[2,"".concat(ez.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eB.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var e1=eG(),e2=eU.promisify(eM);function e4(e){return"error_list:".concat(e)}G(e4,"getErrorListKey");function e3(e){return /*#__PURE__*/o(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:if(e.length===0)return[2];t=Date.now(),n=e4(t);s.label=1;case 1:s.trys.push([1,3,,4]);return[4,e0.set(n,{errors:e,timestamp:t})];case 2:s.sent(),setTimeout(function(){return /*#__PURE__*/o(function(){var e;return b(this,function(t){switch(t.label){case 0:return[4,e0.getLogLink(n)];case 1:e=t.sent();e&&eB.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=s.sent();eB.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}G(e3,"saveErrorListToStorage");function e5(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,o=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,a=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,f;var E=s.exec(e)||[],d=o.exec(e)||[],h=a.exec(e)||[];var m,_,p,g,v,O;E.length&&r?t.push({file:r,position:"".concat(E[1],":").concat(E[2]),type:E[3]===eL.Error?eL.Error:eL.Warning,message:(m=E===null||E===void 0?void 0:(c=E[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(_=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&_!==void 0?_:""}):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]===eL.Error?eL.Error:eL.Warning,message:(g=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&g!==void 0?g:""}):h.length?t.push({file:"commitlint",type:eL.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:(f=h[2])===null||f===void 0?void 0:f.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&e3(t),e1.DEBUG&&n.length&&(eB.warn("Unmatched lines:"),n.forEach(function(e){return eB.info(" ".concat(e))}))}G(e5,"parseTextErrors");function e6(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,o=e.column,a=e.ruleId,c=e.message;n.push({type:r===2?eL.Error:eL.Warning,file:t,position:"".concat(s,":").concat(o),rule:a,message:c})})}),n.length&&e3(n)}catch(t){e5(e)}}G(e6,"parseCommandOutput");function e7(e){return /*#__PURE__*/o(function(e){var t,n,r,s,o,a,c,i,u;var l=arguments;return b(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e6;n=new AbortController;ew.on("SIGINT",function(){eB.warn("Process interrupted. Terminating..."),n.abort(),ew.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,e2(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=f.sent(),s=r.stdout,o=r.stderr;[s,o].forEach(function(e){return e&&t(e)});f.label=3;case 3:return[3,5];case 4:a=f.sent();c=a.stdout,i=a.stderr,u=a.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&eB.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}G(e7,"executeCommand");function e8(e){return{raw:!0,cmd:e}}G(e8,"rawCommand");function e9(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tj," ").concat(tl," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tj," ").concat(tL," ").concat(tI," ").concat(e):"".concat(tj," ").concat(tR," ").concat(e)}G(e9,"formatCLI");function te(e,t){return typeof e=="function"?e9(e(t),t):(typeof e==="undefined"?"undefined":C(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?e9(e,t):e}G(te,"formatCommand");function tt(e,t){return /*#__PURE__*/o(function(){var n;return b(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eB.start("".concat(e)),e1.DEBUG&&eB.info("→ ".concat(t));return[4,e7(t)];case 1:r.sent(),eB.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eB.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}G(tt,"runCommand");import tn,{join as tr,resolve as ts}from"node:path";var to=eG();function ta(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return ts.apply(void 0,[to.CWD].concat(I(t)))}G(ta,"resolveWorkingPath");function tc(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return tr.apply(void 0,I(t))}G(tc,"join");var ti=eG(),tu=ti.CWD,tl="@cyberskill/shared",tf="node_modules",tE="dist",td="package.json",th="package-lock.json",tm="tsconfig.json",t_=".gitignore",tp=".simple-git-hooks.json",tg="pnpm-lock.yaml",tv=".git/hooks/",tO=".git/COMMIT_EDITMSG",ty=".migrate-mongo.config.js",tS=tc(tu,tf,tl,tE),tR="cyberskill",tI="src/nodejs/cli/index.ts",tC="eslint",tT="eslint",tA="vitest",tb="playwright",tD="vitest",tN="@commitlint/cli",tG="commitlint",tP="lint-staged",tM="lint-staged",tw="typescript",tU="tsc",tL="tsx",tk="git",tF="pnpm",tj="pnpm exec",tx="simple-git-hooks",tY="simple-git-hooks",tB="@eslint/config-inspector",tq="eslint-config-inspector",tH="node-modules-inspector",tQ="node-modules-inspector",tV="migrate-mongo",tK="./node_modules/migrate-mongo/bin/migrate-mongo",tW={CYBERSKILL_DIRECTORY:tS,WORKING_DIRECTORY:tu,TS_CONFIG:ta(tm),GIT_IGNORE:ta(t_),GIT_HOOK:ta(tv),GIT_COMMIT_MSG:ta(tO),SIMPLE_GIT_HOOKS_JSON:ta(tp),PACKAGE_JSON:ta(td),PACKAGE_LOCK_JSON:ta(th),PNPM_LOCK_YAML:ta(tg),NODE_MODULES:ta(tf),MIGRATE_MONGO_CONFIG:ta(ty),LINT_STAGED_CONFIG:ta("".concat(tS,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ta("".concat(tS,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ta("".concat(tS,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ta("".concat(tS,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ta("".concat(tS,"/react/vitest/vitest.e2e.js"))};function t$(e,t,n){return /*#__PURE__*/o(function(){return b(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eP.CLI:return[3,1];case eP.STRING:return[3,3]}return[3,4];case 1:return[4,eJ(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),te(e8("".concat(tj," ").concat(n))))];case 3:return[2,te(e8(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}G(t$,"buildCommand");function tJ(e,t,n){return function(){return /*#__PURE__*/o(function(){return b(this,function(r){return[2,t$(e,t,n)]})})()}}G(tJ,"commandFactory");var tX={simpleGitHooks:tJ(eP.CLI,tx,tY),eslintInspect:tJ(eP.CLI,tB,tq),nodeModulesInspect:tJ(eP.CLI,tH,tQ),eslintCheck:tJ(eP.CLI,tC,"".concat(tT," ").concat(tW.WORKING_DIRECTORY)),eslintFix:tJ(eP.CLI,tC,"".concat(tT," ").concat(tW.WORKING_DIRECTORY," --fix")),typescriptCheck:tJ(eP.CLI,tw,"".concat(tU," -p ").concat(tW.TS_CONFIG," --noEmit")),configureGitHook:tJ(eP.STRING,"".concat(tk," config core.hooksPath ").concat(tW.GIT_HOOK)),testUnit:tJ(eP.CLI,tA,"".concat(tD," --config ").concat(tW.UNIT_TEST_CONFIG)),testE2e:tJ(eP.CLI,"".concat(tA," ").concat(tb),"".concat(tD," --config ").concat(tW.E2E_TEST_CONFIG)),mongoMigrateCreate:G(function(e){return tJ(eP.CLI,tV,"".concat(tL," ").concat(tK," create ").concat(e," -f ").concat(tW.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tJ(eP.CLI,tV,"".concat(tL," ").concat(tK," up -f ").concat(tW.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tJ(eP.CLI,tV,"".concat(tL," ").concat(tK," down -f ").concat(tW.MIGRATE_MONGO_CONFIG)),commitLint:tJ(eP.CLI,tN,"".concat(tG," --edit ").concat(tW.GIT_COMMIT_MSG," --config ").concat(tW.COMMITLINT_CONFIG)),lintStaged:tJ(eP.CLI,tP,"".concat(tM," --config ").concat(tW.LINT_STAGED_CONFIG)),stageBuildDirectory:tJ(eP.STRING,"".concat(tk," add ").concat(tE)),build:tJ(eP.STRING,"".concat(tF," run build")),pnpmInstallStandard:tJ(eP.STRING,"".concat(tF," install")),pnpmInstallLegacy:tJ(eP.STRING,"".concat(tF," install --legacy-peer-deps")),pnpmInstallForce:tJ(eP.STRING,"".concat(tF," install --force"))};var tz={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return V(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"?tz.getDateTime():new Date;return{id:X(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,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:X,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,o=e.standalone,a=o===void 0?!1:o;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)}),a||c.add(tz.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,o=s===void 0?!1:s,a=e.aggregate,c=a===void 0?!1:a,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=tz.createSchema({mongoose:t,schema:r,virtuals:u});return tz.applyPlugins(E,[o&&J,c&&$]),tz.applyMiddlewares(E,f),t.model(n,E)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/o(function(){return b(this,function(t){return[2,!ei.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/o(function(){var n;return b(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 l({},e,t)})};return[4,this.constructor.exists(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/o(function(){return b(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!d(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:O(g({},K),{setConfig:G(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eh(tW.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(ty,"\n");eO(tW.GIT_IGNORE)?ed(tW.GIT_IGNORE,"utf-8").split("\n").includes(ty)||em(tW.GIT_IGNORE,n,"utf-8"):eh(tW.GIT_IGNORE,n,"utf-8")},"setConfig")})},tZ=/*#__PURE__*/function(){"use strict";function e(t,n){c(this,e);P(this,"collection");this.collection=t.collection(n)}u(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/o(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=g({},tz.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__*/o(function(){var t,n,r;return b(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return g({},tz.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__*/o(function(){var t,n;return b(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__*/o(function(){var e,t,n;var r=arguments;return b(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__*/o(function(){var e,t,n;var r=arguments;return b(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__*/o(function(){var n,r;return b(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__*/o(function(){var n,r;return b(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__*/o(function(){var t,n;return b(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__*/o(function(){var t,n;return b(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}();G(tZ,"MongoController");var t0=tZ,t1=/*#__PURE__*/function(){"use strict";function e(t){c(this,e);P(this,"model");this.model=t}u(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/o(function(){var e,t,n,r,s,o,a;var c=arguments;return b(this,function(i){switch(i.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[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:o=i.sent();return[2,o?{success:!0,result:o}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:z.NOT_FOUND.CODE}];case 3:a=i.sent();return[2,{success:!1,message:a.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/o(function(){var e,t,n,r,s,o,a;var c=arguments;return b(this,function(i){switch(i.label){case 0:e=c.length>0&&c[0]!==void 0?c[0]:{},t=c.length>1&&c[1]!==void 0?c[1]:{},n=c.length>2&&c[2]!==void 0?c[2]:{},r=c.length>3?c[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);o={success:!0};return[4,s.exec()];case 2:return[2,(o.result=i.sent(),o)];case 3:a=i.sent();return[2,{success:!1,message:a.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=o.sent(),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/o(function(e){var t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=o.sent(),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/o(function(){var e,t,n;var r=arguments;return b(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:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/o(function(){var t,n;return b(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:z.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/o(function(e){var t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=o.sent().map(function(e){return d(e,W)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r,s;var o=arguments;return b(this,function(a){switch(a.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]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,g({new:!0},n)).exec()];case 2:r=a.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:z.NOT_FOUND.CODE}];case 3:s=a.sent();return[2,{success:!1,message:s.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r,s;var o=arguments;return b(this,function(a){switch(a.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]:{};a.label=1;case 1:a.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=a.sent(),r)];case 3:s=a.sent();return[2,{success:!1,message:s.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=o.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:z.NOT_FOUND.CODE}];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/o(function(){var e,t,n,r;var s=arguments;return b(this,function(o){switch(o.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};o.label=1;case 1:o.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=o.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:z.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=o.sent();return[2,{success:!1,message:r.message,code:z.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__*/o(function(){var n,r,s,o;return b(this,function(a){switch(a.label){case 0:n=new Set;r=0;a.label=1;case 1:if(!(r<10))return[3,5];s=ec(e,r+t);o=!n.has(s);if(!o)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:o=!a.sent();a.label=3;case 3:if(o)return[2,{success:!0,result:s}];a.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:z.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/o(function(){var r,s,a,c,i,u,f,E,d,h;return b(this,function(m){switch(m.label){case 0:r=this;m.label=1;case 1:m.trys.push([1,5,,6]);s=t[e],a=en(s),c=G(function(t){var r=g({},n!==null&&n!==void 0?n:{});return a?O(g({},r),{$or:[l({},"slug.".concat(e),t),{slugHistory:{$elemMatch:l({},"slug.".concat(e),t)}}]}):O(g({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),i=G(function(e){return /*#__PURE__*/o(function(){var t,n;return b(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(c(t))];case 2:if(!r.sent())return[3,4];t="".concat(e,"-").concat(n++);r.label=3;case 3:return[3,1];case 4:return[2,t]}})}).call(r)},"generateUniqueSlug");if(!a)return[3,3];u={success:!0};f=Object.fromEntries;return[4,Promise.all(Object.entries(s).map(function(e){var t=R(e,2),n=t[0],r=t[1];return /*#__PURE__*/o(function(){var e,t;return b(this,function(s){switch(s.label){case 0:e=ea(r);t=[n];return[4,i(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(u.result=f.apply(Object,[m.sent()]),u)];case 3:E=ea(s);d={success:!0};return[4,i(E)];case 4:return[2,(d.result=m.sent(),d)];case 5:h=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(h.message),code:z.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/o(function(){var t,n;return b(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:z.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();G(t1,"MongooseController");var t2=t1;export{Q as C_Collection,j as C_Db,Y as C_Document,q as C_Model,M as MONGO_MIGRATE_OPTIONS,t0 as MongoController,t2 as MongooseController,$ as aggregatePaginate,tz as mongo,J as mongoosePaginate};
|