@cyberskill/shared 1.109.0 → 1.111.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/_tsup-dts-rollup.d.cts +22 -43
  2. package/dist/_tsup-dts-rollup.d.ts +22 -43
  3. package/dist/configs/config.util.cjs +1 -1
  4. package/dist/configs/config.util.js +1 -1
  5. package/dist/configs/index.cjs +1 -1
  6. package/dist/configs/index.js +1 -1
  7. package/dist/index.cjs +1 -1
  8. package/dist/index.d.cts +1 -2
  9. package/dist/index.d.ts +1 -2
  10. package/dist/index.js +1 -1
  11. package/dist/nodejs/cli/cli.util.cjs +1 -1
  12. package/dist/nodejs/cli/cli.util.js +1 -1
  13. package/dist/nodejs/cli/index.cjs +1 -1
  14. package/dist/nodejs/cli/index.js +1 -1
  15. package/dist/nodejs/index.cjs +1 -1
  16. package/dist/nodejs/index.d.cts +0 -1
  17. package/dist/nodejs/index.d.ts +0 -1
  18. package/dist/nodejs/index.js +1 -1
  19. package/dist/nodejs/mongo/index.cjs +1 -1
  20. package/dist/nodejs/mongo/index.d.cts +0 -1
  21. package/dist/nodejs/mongo/index.d.ts +0 -1
  22. package/dist/nodejs/mongo/index.js +1 -1
  23. package/dist/nodejs/mongo/mongo.type.d.cts +0 -1
  24. package/dist/nodejs/mongo/mongo.type.d.ts +0 -1
  25. package/dist/nodejs/mongo/mongo.util.cjs +1 -1
  26. package/dist/nodejs/mongo/mongo.util.js +1 -1
  27. package/dist/utils/index.cjs +1 -1
  28. package/dist/utils/index.d.cts +1 -1
  29. package/dist/utils/index.d.ts +1 -1
  30. package/dist/utils/index.js +1 -1
  31. package/dist/utils/object/index.cjs +1 -1
  32. package/dist/utils/object/index.d.cts +1 -1
  33. package/dist/utils/object/index.d.ts +1 -1
  34. package/dist/utils/object/index.js +1 -1
  35. package/dist/utils/object/object.util.cjs +1 -1
  36. package/dist/utils/object/object.util.d.cts +1 -1
  37. package/dist/utils/object/object.util.d.ts +1 -1
  38. package/dist/utils/object/object.util.js +1 -1
  39. package/dist/utils/string/index.cjs +1 -1
  40. package/dist/utils/string/index.js +1 -1
  41. package/dist/utils/string/string.util.cjs +1 -1
  42. package/dist/utils/string/string.util.js +1 -1
  43. package/package.json +4 -4
  44. package/public/tsconfig.base.json +2 -1
@@ -1 +1 @@
1
- "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,s,a,c){try{var o=e[a](c);var u=o.value}catch(e){n(e);return}if(o.done){t(u)}else{Promise.resolve(u).then(r,s)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(s,a){var c=e.apply(t,r);function o(e){n(c,s,a,o,u,"next",e)}function u(e){n(c,s,a,o,u,"throw",e)}o(undefined)})}}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)a(e.prototype,t);if(n)a(e,n);return e}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function u(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function i(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function E(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{f(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function g(e){return t(e)||i(e)||_(e)||l()}function h(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function _(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function v(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=o(0),c["throw"]=o(1),c["return"]=o(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function o(e){return function(t){return u([e,t])}}function u(o){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,o[0]&&(a=0)),a)try{if(n=1,r&&(s=o[0]&2?r["return"]:o[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,o[1])).done)return s;if(r=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:a.label++;return{value:o[1],done:false};case 5:a.label++;r=o[1];o=[0];continue;case 7:o=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){a=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){a.label=o[1];break}if(o[0]===6&&a.label<s[1]){a.label=s[1];s=o;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(o);break}if(s[2])a.ops.pop();a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e];r=0}finally{n=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var m=Object.create;var p=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var I=function(e,t,n){return t in e?p(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var C=function(e,t){return p(e,"name",{value:t,configurable:!0})};var T=function(e,t){for(var n in t)p(e,n,{get:t[n],enumerable:!0})},A=function(e,t,n,r){var s=true,a=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":h(t))=="object"||typeof t=="function")try{var o=function(){var s=i.value;!R.call(e,s)&&s!==n&&p(e,s,{get:function(){return t[s]},enumerable:!(r=O(t,s))||r.enumerable})};for(var u=S(t)[Symbol.iterator](),i;!(s=(i=u.next()).done);s=true)o()}catch(e){a=true;c=e}finally{try{if(!s&&u.return!=null){u.return()}}finally{if(a){throw c}}}return e};var D=function(e,t,n){return n=e!=null?m(y(e)):{},A(t||!e||!e.__esModule?p(n,"default",{value:e,enumerable:!0}):n,e)},N=function(e){return A(p({},"__esModule",{value:!0}),e)};var b=function(e,t,n){return I(e,(typeof t==="undefined"?"undefined":h(t))!="symbol"?t+"":t,n)};var G={};T(G,{MongoController:function(){return tM},MongooseController:function(){return tw},aggregatePaginate:function(){return U.default},mongo:function(){return tb},mongoosePaginate:function(){return L.default}});module.exports=N(G);var M=require("date-fns"),P=D(require("migrate-mongo"),1),w=require("mongoose"),U=D(require("mongoose-aggregate-paginate-v2"),1),L=D(require("mongoose-paginate-v2"),1),k=require("uuid");var F={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};var j=D(require("crypto-js"),1),q=D(require("slugify"),1);var x=q.default.default||q.default;function Y(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return x(e,d({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))}C(Y,"generateSlug");function B(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return j.default.SHA256(e).toString(j.default.enc.Hex).slice(0,t)}C(B,"generateShortId");var Q={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":h(e))=="object"?u(e,Date)?!1:u(e,Map)||u(e,Set)?e.size===0:u(e,WeakMap)||u(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};var H=D(require("fs-extra"),1),V=require("path");var K=H.default,W=K.lstatSync,$=K.readdirSync,J=K.mkdirSync,X=K.readFileSync,z=K.writeFileSync,Z=K.appendFileSync,ee=K.unlinkSync,et=K.statSync,en=H.default.readJsonSync,er=H.default.writeJsonSync;function es(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return H.default.pathExistsSync(e)})}C(es,"pathExistsSync");var ea=".cyberskill-storage";var ec=D(require("dotenv"),1),eo=require("envalid"),eu=D(require("os"),1),ei=D(require("path"),1),el=D(require("process"),1);ec.default.config();function ed(){var e={DEBUG:el.default.env.DEBUG||!1,CWD:el.default.env.CWD||el.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:el.default.env.CYBERSKILL_STORAGE_DIRECTORY||ei.default.join(eu.default.homedir(),ea)};return(0,eo.cleanEnv)(e,{DEBUG:(0,eo.bool)(),CWD:(0,eo.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,eo.str)()})}C(ed,"getEnv");var ef=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eE=require("child_process"),eg=D(require("process"),1),eh=D(require("util"),1);var e_=function(e){return e.Error="error",e.Warning="warning",e}({});var ev=D(require("chalk"),1),em=D(require("consola"),1),ep=require("graphql");var eO=ed();eO.DEBUG||(em.default.level=4);function eS(e){var t=ev.default[e];return typeof t=="function"?t:ev.default.green}C(eS,"chalkKeyword");var ey={silent:em.default.silent,level:em.default.level,fatal:em.default.fatal,error:em.default.error,warn:em.default.warn,log:em.default.log,info:em.default.info,success:em.default.success,ready:em.default.ready,start:em.default.start,box:em.default.box,debug:em.default.debug,trace:em.default.trace,verbose:em.default.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){em.default.box(ev.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;em.default.log("".concat(ev.default.gray("File:")," ").concat(ev.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&em.default.log(" ".concat(eS(n)("Rule:")," ").concat(s)),em.default.log(" ".concat(eS(n)("Message:")," ").concat(a))}),em.default.box(eS(n)("".concat(e," : ").concat(t.length))),em.default.log(ev.default.gray("─".repeat(40)))}};var eR={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eI=D(require("node-fetch"),1);var eC=ed();function eT(e){var t=e$(eC.CWD,e1);if(!es(t))return!1;try{var n=en(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,c=n.devDependencies,o=c===void 0?{}:c,u=r===e,i=e in a,l=e in o;return u||i||l?{path:t,file:n,isCurrentProject:u,isDepend:i,isDevDepend:l}:!1}catch(e){return ey.warn("Failed to read package.json: ".concat(e.message)),!1}}C(eT,"getPackage");function eA(e){return /*#__PURE__*/r(function(){var t,n,r,s;return v(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,eI.default)("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:s=a.sent();throw ey.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}C(eA,"getLatestPackageVersion");function eD(e,t){return /*#__PURE__*/r(function(){var n,r,s,a,c,o,u,i,l,f,E,g,h,_,m,p,O,S,y,R,I;return v(this,function(v){switch(v.label){case 0:v.trys.push([0,4,,5]);n=eT(e);if(!n)return[2,d({},eR)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,E=n.isDevDepend,g=(r=i.dependencies)!==null&&r!==void 0?r:{},h=(s=i.devDependencies)!==null&&s!==void 0?s:{},_=l?(a=i.version)!==null&&a!==void 0?a:"0.0.0":f?(c=g[e])!==null&&c!==void 0?c:"0.0.0":E?(o=h[e])!==null&&o!==void 0?o:"0.0.0":"0.0.0";if(!l)return[3,1];O=_;return[3,3];case 1:return[4,eA(e)];case 2:O=v.sent();v.label=3;case 3:m=O,p=l||_===m;if(!p&&(t===null||t===void 0?void 0:t.update)){;y=f?"dependencies":E?"devDependencies":null;y&&((S=i[y])===null||S===void 0?void 0:S[e])!==m&&(i[y]=(R=i[y])!==null&&R!==void 0?R:{},i[y][e]=m,er(u,i),ey.info('Updated "'.concat(e,'" to version ').concat(m)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:p}];case 4:I=v.sent();return[2,(ey.error('Error checking package "'.concat(e,'": ').concat(I.message)),d({},eR))];case 5:return[2]}})})()}C(eD,"checkPackage");function eN(){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c,o,u,i,l,d;return v(this,function(f){switch(f.label){case 0:e=[{command:C(function(){return tN.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:C(function(){return tN.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:C(function(){return tN.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);s=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];c=a.value,o=c.command,u=c.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,o()];case 4:i=f.sent();return[4,eH("".concat(u," using: ").concat(i),i)];case 5:f.sent();return[2];case 6:l=f.sent();ey.warn("Installation attempt failed: ".concat(u)),ey.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:d=f.sent();n=true;r=d;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}C(eN,"installDependencies");function eb(e,t){return /*#__PURE__*/r(function(){var n,r,s,a,c,o,u,i,l,f,E;return v(this,function(h){switch(h.label){case 0:if(!es(tT.PACKAGE_JSON)){ey.error("package.json not found. Aborting setup.");return[2]}h.label=1;case 1:h.trys.push([1,13,,14]);n=g(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eD(e,d({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=h.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,eN()];case 3:r=h.sent();h.label=4;case 4:r;a=true,c=false,o=undefined;h.label=5;case 5:h.trys.push([5,10,11,12]);u=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();h.label=6;case 6:if(!!(a=(i=u.next()).done))return[3,9];l=i.value;return[4,l()];case 7:h.sent();h.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:f=h.sent();c=true;o=f;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(c){throw o}}return[7];case 12:return[3,14];case 13:E=h.sent();throw ey.error('Failed to setup "'.concat(e.join(", "),'": ').concat(E.message)),E;case 14:return[2]}})})()}C(eb,"setupPackages");var eG=D(require("node-persist"),1);var eM=ed();function eP(){return /*#__PURE__*/r(function(){var e;return v(this,function(t){switch(t.label){case 0:e=eG.default.defaultInstance;if(e)return[3,2];return[4,eG.default.init({dir:eM.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}C(eP,"initNodePersist");var ew={get:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eP()];case 1:r.sent();return[4,eG.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ey.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/r(function(){var n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eP()];case 1:r.sent();return[4,eG.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ey.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/r(function(){var t;return v(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eP()];case 1:n.sent();return[4,eG.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ey.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/r(function(){var e,t;return v(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eP()];case 1:n.sent();return[4,eG.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ey.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ey.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/r(function(){return v(this,function(t){try{return[2,"".concat(eM.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ey.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eU=ed(),eL=eh.promisify(eE.exec);function ek(e){return"error_list:".concat(e)}C(ek,"getErrorListKey");function eF(e){return /*#__PURE__*/r(function(){var t,n,s;return v(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=ek(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,ew.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/r(function(){var e;return v(this,function(t){switch(t.label){case 0:return[4,ew.getLogLink(n)];case 1:e=t.sent();e&&ey.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:s=a.sent();ey.error("Failed to save errors: ".concat(s.message));return[3,4];case 4:return[2]}})})()}C(eF,"saveErrorListToStorage");function ej(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var o,u,i,l,d;var f=s.exec(e)||[],E=a.exec(e)||[],g=c.exec(e)||[];var h,_,v,m,p,O;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===e_.Error?e_.Error:e_.Warning,message:(h=f===null||f===void 0?void 0:(o=f[4])===null||o===void 0?void 0:o.trim())!==null&&h!==void 0?h:"",rule:(_=f===null||f===void 0?void 0:(u=f[5])===null||u===void 0?void 0:u.trim())!==null&&_!==void 0?_:""}):E.length?t.push({file:(v=E===null||E===void 0?void 0:E[1])!==null&&v!==void 0?v:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===e_.Error?e_.Error:e_.Warning,message:(m=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):g.length?t.push({file:"commitlint",type:e_.Error,message:(p=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&p!==void 0?p:"",rule:(O=g===null||g===void 0?void 0:(d=g[2])===null||d===void 0?void 0:d.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&eF(t),eU.DEBUG&&n.length&&(ey.warn("Unmatched lines:"),n.forEach(function(e){return ey.info(" ".concat(e))}))}C(ej,"parseTextErrors");function eq(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,c=e.ruleId,o=e.message;n.push({type:r===2?e_.Error:e_.Warning,file:t,position:"".concat(s,":").concat(a),rule:c,message:o})})}),n.length&&eF(n)}catch(t){ej(e)}}C(eq,"parseCommandOutput");function ex(e){return /*#__PURE__*/r(function(e){var t,n,r,s,a,c,o,u,i;var l=arguments;return v(this,function(d){switch(d.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eq;n=new AbortController;eg.default.on("SIGINT",function(){ey.warn("Process interrupted. Terminating..."),n.abort(),eg.default.exit()});d.label=1;case 1:d.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eL(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=d.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});d.label=3;case 3:return[3,5];case 4:c=d.sent();o=c.stdout,u=c.stderr,i=c.message;[o,u].forEach(function(e){return e&&t(e)}),!u&&!o&&ey.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}C(ex,"executeCommand");function eY(e){return{raw:!0,cmd:e}}C(eY,"rawCommand");function eB(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tv," ").concat(ez," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tv," ").concat(tg," ").concat(tn," ").concat(e):"".concat(tv," ").concat(tt," ").concat(e)}C(eB,"formatCLI");function eQ(e,t){return typeof e=="function"?eB(e(t),t):(typeof e==="undefined"?"undefined":h(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eB(e,t):e}C(eQ,"formatCommand");function eH(e,t){return /*#__PURE__*/r(function(){var n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ey.start("".concat(e)),eU.DEBUG&&ey.info("→ ".concat(t));return[4,ex(t)];case 1:r.sent(),ey.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ey.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}C(eH,"runCommand");var eV=D(require("path"),1);var eK=ed();function eW(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eV.resolve).apply(this,[eK.CWD].concat(g(t)))}C(eW,"resolveWorkingPath");function e$(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,eV.join).apply(this,g(t))}C(e$,"join");var eJ=ed(),eX=eJ.CWD,ez="@cyberskill/shared",eZ="node_modules",e0="dist",e1="package.json",e2="package-lock.json",e4="tsconfig.json",e3=".gitignore",e5=".simple-git-hooks.json",e6="pnpm-lock.yaml",e7=".git/hooks/",e8=".git/COMMIT_EDITMSG",e9=".migrate-mongo.config.js",te=e$(eX,eZ,ez,e0),tt="cyberskill",tn="src/nodejs/cli/index.ts",tr="eslint",ts="eslint",ta="vitest",tc="playwright",to="vitest",tu="@commitlint/cli",ti="commitlint",tl="lint-staged",td="lint-staged",tf="typescript",tE="tsc",tg="tsx",th="git",t_="pnpm",tv="pnpm exec",tm="simple-git-hooks",tp="simple-git-hooks",tO="@eslint/config-inspector",tS="eslint-config-inspector",ty="node-modules-inspector",tR="node-modules-inspector",tI="migrate-mongo",tC="./node_modules/migrate-mongo/bin/migrate-mongo",tT={CYBERSKILL_DIRECTORY:te,WORKING_DIRECTORY:eX,TS_CONFIG:eW(e4),GIT_IGNORE:eW(e3),GIT_HOOK:eW(e7),GIT_COMMIT_MSG:eW(e8),SIMPLE_GIT_HOOKS_JSON:eW(e5),PACKAGE_JSON:eW(e1),PACKAGE_LOCK_JSON:eW(e2),PNPM_LOCK_YAML:eW(e6),NODE_MODULES:eW(eZ),MIGRATE_MONGO_CONFIG:eW(e9),LINT_STAGED_CONFIG:eW("".concat(te,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eW("".concat(te,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eW("".concat(te,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eW("".concat(te,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eW("".concat(te,"/react/vitest/vitest.e2e.js"))};function tA(e,t,n){return /*#__PURE__*/r(function(){return v(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case ef.CLI:return[3,1];case ef.STRING:return[3,3]}return[3,4];case 1:return[4,eb(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eQ(eY("".concat(tv," ").concat(n))))];case 3:return[2,eQ(eY(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}C(tA,"buildCommand");function tD(e,t,n){return function(){return /*#__PURE__*/r(function(){return v(this,function(r){return[2,tA(e,t,n)]})})()}}C(tD,"commandFactory");var tN={simpleGitHooks:tD(ef.CLI,tm,tp),eslintInspect:tD(ef.CLI,tO,tS),nodeModulesInspect:tD(ef.CLI,ty,tR),eslintCheck:tD(ef.CLI,tr,"".concat(ts," ").concat(tT.WORKING_DIRECTORY)),eslintFix:tD(ef.CLI,tr,"".concat(ts," ").concat(tT.WORKING_DIRECTORY," --fix")),typescriptCheck:tD(ef.CLI,tf,"".concat(tE," -p ").concat(tT.TS_CONFIG," --noEmit")),configureGitHook:tD(ef.STRING,"".concat(th," config core.hooksPath ").concat(tT.GIT_HOOK)),testUnit:tD(ef.CLI,ta,"".concat(to," --config ").concat(tT.UNIT_TEST_CONFIG)),testE2e:tD(ef.CLI,"".concat(ta," ").concat(tc),"".concat(to," --config ").concat(tT.E2E_TEST_CONFIG)),mongoMigrateCreate:C(function(e){return tD(ef.CLI,tI,"".concat(tg," ").concat(tC," create ").concat(e," -f ").concat(tT.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tD(ef.CLI,tI,"".concat(tg," ").concat(tC," up -f ").concat(tT.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tD(ef.CLI,tI,"".concat(tg," ").concat(tC," down -f ").concat(tT.MIGRATE_MONGO_CONFIG)),commitLint:tD(ef.CLI,tu,"".concat(ti," --edit ").concat(tT.GIT_COMMIT_MSG," --config ").concat(tT.COMMITLINT_CONFIG)),lintStaged:tD(ef.CLI,tl,"".concat(td," --config ").concat(tT.LINT_STAGED_CONFIG)),stageBuildDirectory:tD(ef.STRING,"".concat(th," add ").concat(e0)),build:tD(ef.STRING,"".concat(t_," run build")),pnpmInstallStandard:tD(ef.STRING,"".concat(t_," install")),pnpmInstallLegacy:tD(ef.STRING,"".concat(t_," install --legacy-peer-deps")),pnpmInstallForce:tD(ef.STRING,"".concat(t_," install --force"))};var tb={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,M.format)(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?tb.getDateTime():new Date;return{id:(0,k.v4)(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:k.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,c=a===void 0?!1:a;var o=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=o.virtual(t,n);r&&s.get(r)}),c||o.add(tb.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,c=e.aggregate,o=c===void 0?!1:c,u=e.virtuals,i=u===void 0?[]:u,l=e.middlewares,d=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=tb.createSchema({mongoose:t,schema:r,virtuals:i});return tb.applyPlugins(f,[a&&L.default,o&&U.default]),tb.applyMiddlewares(f,d),t.model(n,f)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return E(d({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/r(function(){return v(this,function(t){return[2,!Q.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/r(function(){var n;return v(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/r(function(){return v(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!u(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:E(d({},P.default),{setConfig:C(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));z(tT.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e9,"\n");es(tT.GIT_IGNORE)?X(tT.GIT_IGNORE,"utf-8").split("\n").includes(e9)||Z(tT.GIT_IGNORE,n,"utf-8"):z(tT.GIT_IGNORE,n,"utf-8")},"setConfig")})},tG=/*#__PURE__*/function(){function e(t,n){s(this,e);b(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n,r;return v(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=d({},tb.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/r(function(){var t,n,r;return v(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return d({},tb.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return v(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return v(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return /*#__PURE__*/r(function(){var n,r;return v(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return /*#__PURE__*/r(function(){var n,r;return v(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteMany(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}}]);return e}();C(tG,"MongoController");var tM=tG,tP=/*#__PURE__*/function(){function e(t){s(this,e);b(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c;var o=arguments;return v(this,function(u){switch(u.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;u.label=1;case 1:u.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=u.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:F.NOT_FOUND.CODE}];case 3:c=u.sent();return[2,{success:!1,message:c.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c;var o=arguments;return v(this,function(u){switch(u.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;u.label=1;case 1:u.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=u.sent(),a)];case 3:c=u.sent();return[2,{success:!1,message:c.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/r(function(e){var t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return v(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0};return[4,this.model.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/r(function(e){var t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return u(e,w.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r,s;var a=arguments;return v(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,d({new:!0},n)).exec()];case 2:r=c.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:F.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r,s;var a=arguments;return v(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=c.sent(),r)];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=a.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:F.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return v(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=a.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:F.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/r(function(){var n,r,s,a;return v(this,function(c){switch(c.label){case 0:n=new Set;r=0;c.label=1;case 1:if(!(r<10))return[3,5];s=B(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:s}];c.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:F.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t){return /*#__PURE__*/r(function(e,t){var n,s,a,c,o,u,i,l,d,f,E,g,_;var m=arguments;return v(this,function(p){switch(p.label){case 0:n=this;s=m.length>2&&m[2]!==void 0?m[2]:{};p.label=1;case 1:p.trys.push([1,9,,10]);a=t[e],c=C(function(e){return /*#__PURE__*/r(function(){var n,r,a;return v(this,function(c){switch(c.label){case 0:return[4,this.model.findOne(tb.createSlugQuery(e,s,t.id))];case 1:n=c.sent();if(!n)return[2,e];r=1;c.label=2;case 2:a="".concat(e,"-").concat(r);return[4,this.model.findOne(tb.createSlugQuery(a,s,t.id))];case 3:n=c.sent(),r++;c.label=4;case 4:if(n)return[3,2];c.label=5;case 5:return[2,a]}})}).call(n)},"createUniqueSlug");if(!((typeof a==="undefined"?"undefined":h(a))=="object"))return[3,6];o={};u=[];for(i in a)u.push(i);l=0;p.label=2;case 2:if(!(l<u.length))return[3,5];d=u[l];f=Y(a[d]);return[4,c(f)];case 3:o[d]=p.sent();p.label=4;case 4:l++;return[3,2];case 5:return[2,{success:!0,result:o}];case 6:E=Y(a);g={success:!0};return[4,c(E)];case 7:return[2,(g.result=p.sent(),g)];case 8:return[3,10];case 9:_=p.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(_.message),code:F.INTERNAL_SERVER_ERROR.CODE}];case 10:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return v(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:F.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();C(tP,"MongooseController");var tw=tP;0&&(module.exports={MongoController:MongoController,MongooseController:MongooseController,aggregatePaginate:aggregatePaginate,mongo:mongo,mongoosePaginate:mongoosePaginate});
1
+ "use strict";function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,s,a,c){try{var o=e[a](c);var u=o.value}catch(e){n(e);return}if(o.done){t(u)}else{Promise.resolve(u).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,a){var c=e.apply(t,n);function o(e){r(c,s,a,o,u,"next",e)}function u(e){r(c,s,a,o,u,"throw",e)}o(undefined)})}}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function c(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function o(e,t,n){if(t)c(e.prototype,t);if(n)c(e,n);return e}function u(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function l(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function f(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 c,o;try{for(n=n.call(e);!(s=(c=n.next()).done);s=true){r.push(c.value);if(t&&r.length===t)break}}catch(e){a=true;o=e}finally{try{if(!s&&n["return"]!=null)n["return"]()}finally{if(a)throw o}}return r}function d(){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 E(){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){u(e,t,n[t])})}return e}function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function _(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{h(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function v(e,n){return t(e)||f(e,n)||y(e,n)||d()}function m(e){return n(e)||l(e)||y(e)||E()}function p(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(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 O(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=o(0),c["throw"]=o(1),c["return"]=o(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function o(e){return function(t){return u([e,t])}}function u(o){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,o[0]&&(a=0)),a)try{if(n=1,r&&(s=o[0]&2?r["return"]:o[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,o[1])).done)return s;if(r=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:a.label++;return{value:o[1],done:false};case 5:a.label++;r=o[1];o=[0];continue;case 7:o=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){a=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){a.label=o[1];break}if(o[0]===6&&a.label<s[1]){a.label=s[1];s=o;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(o);break}if(s[2])a.ops.pop();a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e];r=0}finally{n=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var S=Object.create;var R=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var C=Object.getOwnPropertyNames;var T=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty;var b=function(e,t,n){return t in e?R(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var D=function(e,t){return R(e,"name",{value:t,configurable:!0})};var N=function(e,t){for(var n in t)R(e,n,{get:t[n],enumerable:!0})},G=function(e,t,n,r){var s=true,a=false,c=undefined;if(t&&(typeof t==="undefined"?"undefined":p(t))=="object"||typeof t=="function")try{var o=function(){var s=i.value;!A.call(e,s)&&s!==n&&R(e,s,{get:function(){return t[s]},enumerable:!(r=I(t,s))||r.enumerable})};for(var u=C(t)[Symbol.iterator](),i;!(s=(i=u.next()).done);s=true)o()}catch(e){a=true;c=e}finally{try{if(!s&&u.return!=null){u.return()}}finally{if(a){throw c}}}return e};var M=function(e,t,n){return n=e!=null?S(T(e)):{},G(t||!e||!e.__esModule?R(n,"default",{value:e,enumerable:!0}):n,e)},P=function(e){return G(R({},"__esModule",{value:!0}),e)};var w=function(e,t,n){return b(e,(typeof t==="undefined"?"undefined":p(t))!="symbol"?t+"":t,n)};var U={};N(U,{MongoController:function(){return tx},MongooseController:function(){return tB},aggregatePaginate:function(){return j.default},mongo:function(){return tj},mongoosePaginate:function(){return q.default}});module.exports=P(U);var L=require("date-fns"),k=M(require("migrate-mongo"),1),F=require("mongoose"),j=M(require("mongoose-aggregate-paginate-v2"),1),q=M(require("mongoose-paginate-v2"),1),x=require("uuid");var Y={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 B=M(require("unorm"),1);var H={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},V=Object.entries(H).reduce(function(e,t){var n=v(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function Q(e){return(typeof e==="undefined"?"undefined":p(e))=="object"&&e!==null&&!Array.isArray(e)}D(Q,"isObject");var K=require("buffer");var W=M(require("crypto-js"),1),$=M(require("slugify"),1);var J=$.default.default||$.default;function X(e,t){var n=D(function(e){var n,r;return J(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(Q(e)){var r={};var s=true,a=false,c=undefined;try{for(var o=Object.entries(e)[Symbol.iterator](),u;!(s=(u=o.next()).done);s=true){var i=v(u.value,2),l=i[0],f=i[1];r[l]=n(f)}}catch(e){a=true;c=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(a){throw c}}}return r}return n(e)}D(X,"generateSlug");function z(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return W.default.SHA256(e).toString(W.default.enc.Hex).slice(0,t)}D(z,"generateShortId");var Z={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":p(e))=="object"?i(e,Date)?!1:i(e,Map)||i(e,Set)?e.size===0:i(e,WeakMap)||i(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};var ee=M(require("fs-extra"),1),et=require("path");var en=ee.default,er=en.lstatSync,es=en.readdirSync,ea=en.mkdirSync,ec=en.readFileSync,eo=en.writeFileSync,eu=en.appendFileSync,ei=en.unlinkSync,el=en.statSync,ef=ee.default.readJsonSync,ed=ee.default.writeJsonSync;function eE(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return ee.default.pathExistsSync(e)})}D(eE,"pathExistsSync");var eg=".cyberskill-storage";var eh=M(require("dotenv"),1),e_=require("envalid"),ev=M(require("os"),1),em=M(require("path"),1),ep=M(require("process"),1);eh.default.config();function ey(){var e={DEBUG:ep.default.env.DEBUG||!1,CWD:ep.default.env.CWD||ep.default.cwd(),CYBERSKILL_STORAGE_DIRECTORY:ep.default.env.CYBERSKILL_STORAGE_DIRECTORY||em.default.join(ev.default.homedir(),eg)};return(0,e_.cleanEnv)(e,{DEBUG:(0,e_.bool)(),CWD:(0,e_.str)(),CYBERSKILL_STORAGE_DIRECTORY:(0,e_.str)()})}D(ey,"getEnv");var eO=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});var eS=require("child_process"),eR=M(require("process"),1),eI=M(require("util"),1);var eC=function(e){return e.Error="error",e.Warning="warning",e}({});var eT=M(require("chalk"),1),eA=M(require("consola"),1),eb=require("graphql");var eD=ey();eD.DEBUG||(eA.default.level=4);function eN(e){var t=eT.default[e];return typeof t=="function"?t:eT.default.green}D(eN,"chalkKeyword");var eG={silent:eA.default.silent,level:eA.default.level,fatal:eA.default.fatal,error:eA.default.error,warn:eA.default.warn,log:eA.default.log,info:eA.default.info,success:eA.default.success,ready:eA.default.ready,start:eA.default.start,box:eA.default.box,debug:eA.default.debug,trace:eA.default.trace,verbose:eA.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)){eA.default.box(eT.default.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eA.default.log("".concat(eT.default.gray("File:")," ").concat(eT.default.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eA.default.log(" ".concat(eN(n)("Rule:")," ").concat(s)),eA.default.log(" ".concat(eN(n)("Message:")," ").concat(a))}),eA.default.box(eN(n)("".concat(e," : ").concat(t.length))),eA.default.log(eT.default.gray("─".repeat(40)))}};var eM={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};var eP=M(require("node-fetch"),1);var ew=ey();function eU(e){var t=e3(ew.CWD,te);if(!eE(t))return!1;try{var n=ef(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,c=n.devDependencies,o=c===void 0?{}:c,u=r===e,i=e in a,l=e in o;return u||i||l?{path:t,file:n,isCurrentProject:u,isDepend:i,isDevDepend:l}:!1}catch(e){return eG.warn("Failed to read package.json: ".concat(e.message)),!1}}D(eU,"getPackage");function eL(e){return /*#__PURE__*/s(function(){var t,n,r,s;return O(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,(0,eP.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 eG.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}D(eL,"getLatestPackageVersion");function ek(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,c,o,u,i,l,f,d,E,h,_,v,m,p,y,S,R,I;return O(this,function(O){switch(O.label){case 0:O.trys.push([0,4,,5]);n=eU(e);if(!n)return[2,g({},eM)];u=n.path,i=n.file,l=n.isCurrentProject,f=n.isDepend,d=n.isDevDepend,E=(r=i.dependencies)!==null&&r!==void 0?r:{},h=(s=i.devDependencies)!==null&&s!==void 0?s:{},_=l?(a=i.version)!==null&&a!==void 0?a:"0.0.0":f?(c=E[e])!==null&&c!==void 0?c:"0.0.0":d?(o=h[e])!==null&&o!==void 0?o:"0.0.0":"0.0.0";if(!l)return[3,1];p=_;return[3,3];case 1:return[4,eL(e)];case 2:p=O.sent();O.label=3;case 3:v=p,m=l||_===v;if(!m&&(t===null||t===void 0?void 0:t.update)){;S=f?"dependencies":d?"devDependencies":null;S&&((y=i[S])===null||y===void 0?void 0:y[e])!==v&&(i[S]=(R=i[S])!==null&&R!==void 0?R:{},i[S][e]=v,ed(u,i),eG.info('Updated "'.concat(e,'" to version ').concat(v)))}return[2,{isCurrentProject:l,installedPath:u,file:i,isUpToDate:m}];case 4:I=O.sent();return[2,(eG.error('Error checking package "'.concat(e,'": ').concat(I.message)),g({},eM))];case 5:return[2]}})})()}D(ek,"checkPackage");function eF(){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c,o,u,i,l,f;return O(this,function(d){switch(d.label){case 0:e=[{command:D(function(){return tF.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:D(function(){return tF.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:D(function(){return tF.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];c=a.value,o=c.command,u=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,o()];case 4:i=d.sent();return[4,e0("".concat(u," using: ").concat(i),i)];case 5:d.sent();return[2];case 6:l=d.sent();eG.warn("Installation attempt failed: ".concat(u)),eG.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.")}})})()}D(eF,"installDependencies");function ej(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,c,o,u,i,l,f,d;return O(this,function(E){switch(E.label){case 0:if(!eE(tU.PACKAGE_JSON)){eG.error("package.json not found. Aborting setup.");return[2]}E.label=1;case 1:E.trys.push([1,13,,14]);n=m(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ek(e,g({},(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,eF()];case 3:r=E.sent();E.label=4;case 4:r;a=true,c=false,o=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();c=true;o=f;return[3,12];case 11:try{if(!a&&u.return!=null){u.return()}}finally{if(c){throw o}}return[7];case 12:return[3,14];case 13:d=E.sent();throw eG.error('Failed to setup "'.concat(e.join(", "),'": ').concat(d.message)),d;case 14:return[2]}})})()}D(ej,"setupPackages");var eq=M(require("node-persist"),1);var ex=ey();function eY(){return /*#__PURE__*/s(function(){var e;return O(this,function(t){switch(t.label){case 0:e=eq.default.defaultInstance;if(e)return[3,2];return[4,eq.default.init({dir:ex.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}D(eY,"initNodePersist");var eB={get:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eY()];case 1:r.sent();return[4,eq.default.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eG.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/s(function(){var n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eY()];case 1:r.sent();return[4,eq.default.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eG.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/s(function(){var t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eY()];case 1:n.sent();return[4,eq.default.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eG.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/s(function(){var e,t;return O(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eY()];case 1:n.sent();return[4,eq.default.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eG.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eG.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/s(function(){return O(this,function(t){try{return[2,"".concat(ex.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eG.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eH=ey(),eV=eI.promisify(eS.exec);function eQ(e){return"error_list:".concat(e)}D(eQ,"getErrorListKey");function eK(e){return /*#__PURE__*/s(function(){var t,n,r;return O(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eQ(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eB.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/s(function(){var e;return O(this,function(t){switch(t.label){case 0:return[4,eB.getLogLink(n)];case 1:e=t.sent();e&&eG.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();eG.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}D(eK,"saveErrorListToStorage");function eW(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var o,u,i,l,f;var d=s.exec(e)||[],E=a.exec(e)||[],g=c.exec(e)||[];var h,_,v,m,p,y;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===eC.Error?eC.Error:eC.Warning,message:(h=d===null||d===void 0?void 0:(o=d[4])===null||o===void 0?void 0:o.trim())!==null&&h!==void 0?h:"",rule:(_=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&_!==void 0?_:""}):E.length?t.push({file:(v=E===null||E===void 0?void 0:E[1])!==null&&v!==void 0?v:"",position:"".concat(E[2],":").concat(E[3]),type:E[4]===eC.Error?eC.Error:eC.Warning,message:(m=E===null||E===void 0?void 0:(i=E[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):g.length?t.push({file:"commitlint",type:eC.Error,message:(p=g===null||g===void 0?void 0:(l=g[1])===null||l===void 0?void 0:l.trim())!==null&&p!==void 0?p:"",rule:(y=g===null||g===void 0?void 0:(f=g[2])===null||f===void 0?void 0:f.trim())!==null&&y!==void 0?y:""}):n.push(e.trim())}}),t.length&&eK(t),eH.DEBUG&&n.length&&(eG.warn("Unmatched lines:"),n.forEach(function(e){return eG.info(" ".concat(e))}))}D(eW,"parseTextErrors");function e$(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,c=e.ruleId,o=e.message;n.push({type:r===2?eC.Error:eC.Warning,file:t,position:"".concat(s,":").concat(a),rule:c,message:o})})}),n.length&&eK(n)}catch(t){eW(e)}}D(e$,"parseCommandOutput");function eJ(e){return /*#__PURE__*/s(function(e){var t,n,r,s,a,c,o,u,i;var l=arguments;return O(this,function(f){switch(f.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:e$;n=new AbortController;eR.default.on("SIGINT",function(){eG.warn("Process interrupted. Terminating..."),n.abort(),eR.default.exit()});f.label=1;case 1:f.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eV(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:c=f.sent();o=c.stdout,u=c.stderr,i=c.message;[o,u].forEach(function(e){return e&&t(e)}),!u&&!o&&eG.error("Command failed: ".concat(i));return[3,5];case 5:return[2]}})}).apply(this,arguments)}D(eJ,"executeCommand");function eX(e){return{raw:!0,cmd:e}}D(eX,"rawCommand");function ez(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tT," ").concat(e7," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tT," ").concat(tR," ").concat(tf," ").concat(e):"".concat(tT," ").concat(tl," ").concat(e)}D(ez,"formatCLI");function eZ(e,t){return typeof e=="function"?ez(e(t),t):(typeof e==="undefined"?"undefined":p(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?ez(e,t):e}D(eZ,"formatCommand");function e0(e,t){return /*#__PURE__*/s(function(){var n;return O(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eG.start("".concat(e)),eH.DEBUG&&eG.info("→ ".concat(t));return[4,eJ(t)];case 1:r.sent(),eG.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eG.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}D(e0,"runCommand");var e1=M(require("path"),1);var e2=ey();function e4(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,e1.resolve).apply(this,[e2.CWD].concat(m(t)))}D(e4,"resolveWorkingPath");function e3(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return(0,e1.join).apply(this,m(t))}D(e3,"join");var e5=ey(),e6=e5.CWD,e7="@cyberskill/shared",e8="node_modules",e9="dist",te="package.json",tt="package-lock.json",tn="tsconfig.json",tr=".gitignore",ts=".simple-git-hooks.json",ta="pnpm-lock.yaml",tc=".git/hooks/",to=".git/COMMIT_EDITMSG",tu=".migrate-mongo.config.js",ti=e3(e6,e8,e7,e9),tl="cyberskill",tf="src/nodejs/cli/index.ts",td="eslint",tE="eslint",tg="vitest",th="playwright",t_="vitest",tv="@commitlint/cli",tm="commitlint",tp="lint-staged",ty="lint-staged",tO="typescript",tS="tsc",tR="tsx",tI="git",tC="pnpm",tT="pnpm exec",tA="simple-git-hooks",tb="simple-git-hooks",tD="@eslint/config-inspector",tN="eslint-config-inspector",tG="node-modules-inspector",tM="node-modules-inspector",tP="migrate-mongo",tw="./node_modules/migrate-mongo/bin/migrate-mongo",tU={CYBERSKILL_DIRECTORY:ti,WORKING_DIRECTORY:e6,TS_CONFIG:e4(tn),GIT_IGNORE:e4(tr),GIT_HOOK:e4(tc),GIT_COMMIT_MSG:e4(to),SIMPLE_GIT_HOOKS_JSON:e4(ts),PACKAGE_JSON:e4(te),PACKAGE_LOCK_JSON:e4(tt),PNPM_LOCK_YAML:e4(ta),NODE_MODULES:e4(e8),MIGRATE_MONGO_CONFIG:e4(tu),LINT_STAGED_CONFIG:e4("".concat(ti,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:e4("".concat(ti,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:e4("".concat(ti,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:e4("".concat(ti,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:e4("".concat(ti,"/react/vitest/vitest.e2e.js"))};function tL(e,t,n){return /*#__PURE__*/s(function(){return O(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case eO.CLI:return[3,1];case eO.STRING:return[3,3]}return[3,4];case 1:return[4,ej(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eZ(eX("".concat(tT," ").concat(n))))];case 3:return[2,eZ(eX(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}D(tL,"buildCommand");function tk(e,t,n){return function(){return /*#__PURE__*/s(function(){return O(this,function(r){return[2,tL(e,t,n)]})})()}}D(tk,"commandFactory");var tF={simpleGitHooks:tk(eO.CLI,tA,tb),eslintInspect:tk(eO.CLI,tD,tN),nodeModulesInspect:tk(eO.CLI,tG,tM),eslintCheck:tk(eO.CLI,td,"".concat(tE," ").concat(tU.WORKING_DIRECTORY)),eslintFix:tk(eO.CLI,td,"".concat(tE," ").concat(tU.WORKING_DIRECTORY," --fix")),typescriptCheck:tk(eO.CLI,tO,"".concat(tS," -p ").concat(tU.TS_CONFIG," --noEmit")),configureGitHook:tk(eO.STRING,"".concat(tI," config core.hooksPath ").concat(tU.GIT_HOOK)),testUnit:tk(eO.CLI,tg,"".concat(t_," --config ").concat(tU.UNIT_TEST_CONFIG)),testE2e:tk(eO.CLI,"".concat(tg," ").concat(th),"".concat(t_," --config ").concat(tU.E2E_TEST_CONFIG)),mongoMigrateCreate:D(function(e){return tk(eO.CLI,tP,"".concat(tR," ").concat(tw," create ").concat(e," -f ").concat(tU.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tk(eO.CLI,tP,"".concat(tR," ").concat(tw," up -f ").concat(tU.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tk(eO.CLI,tP,"".concat(tR," ").concat(tw," down -f ").concat(tU.MIGRATE_MONGO_CONFIG)),commitLint:tk(eO.CLI,tv,"".concat(tm," --edit ").concat(tU.GIT_COMMIT_MSG," --config ").concat(tU.COMMITLINT_CONFIG)),lintStaged:tk(eO.CLI,tp,"".concat(ty," --config ").concat(tU.LINT_STAGED_CONFIG)),stageBuildDirectory:tk(eO.STRING,"".concat(tI," add ").concat(e9)),build:tk(eO.STRING,"".concat(tC," run build")),pnpmInstallStandard:tk(eO.STRING,"".concat(tC," install")),pnpmInstallLegacy:tk(eO.STRING,"".concat(tC," install --legacy-peer-deps")),pnpmInstallForce:tk(eO.STRING,"".concat(tC," install --force"))};var tj={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return(0,L.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"?tj.getDateTime():new Date;return{id:(0,x.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:x.v4,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,c=a===void 0?!1:a;var o=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=o.virtual(t,n);r&&s.get(r)}),c||o.add(tj.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,c=e.aggregate,o=c===void 0?!1:c,u=e.virtuals,i=u===void 0?[]:u,l=e.middlewares,f=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=tj.createSchema({mongoose:t,schema:r,virtuals:i});return tj.applyPlugins(d,[a&&q.default,o&&j.default]),tj.applyMiddlewares(d,f),t.model(n,d)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/s(function(){return O(this,function(t){return[2,!Z.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/s(function(){var n;return O(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 u({},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__*/s(function(){return O(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!i(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:_(g({},k.default),{setConfig:D(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));eo(tU.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(tu,"\n");eE(tU.GIT_IGNORE)?ec(tU.GIT_IGNORE,"utf-8").split("\n").includes(tu)||eu(tU.GIT_IGNORE,n,"utf-8"):eo(tU.GIT_IGNORE,n,"utf-8")},"setConfig")})},tq=/*#__PURE__*/function(){function e(t,n){a(this,e);w(this,"collection");this.collection=t.collection(n)}o(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return O(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__*/s(function(){var t,n,r;return O(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__*/s(function(){var t,n;return O(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__*/s(function(){var e,t,n;var r=arguments;return O(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__*/s(function(){var e,t,n;var r=arguments;return O(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__*/s(function(){var n,r;return O(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__*/s(function(){var n,r;return O(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__*/s(function(){var t,n;return O(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__*/s(function(){var t,n;return O(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}();D(tq,"MongoController");var tx=tq,tY=/*#__PURE__*/function(){function e(t){a(this,e);w(this,"model");this.model=t}o(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c;var o=arguments;return O(this,function(u){switch(u.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;u.label=1;case 1:u.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=u.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:Y.NOT_FOUND.CODE}];case 3:c=u.sent();return[2,{success:!1,message:c.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,c;var o=arguments;return O(this,function(u){switch(u.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;u.label=1;case 1:u.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=u.sent(),a)];case 3:c=u.sent();return[2,{success:!1,message:c.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return O(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return i(e,F.Document)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return O(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,g({new:!0},n)).exec()];case 2:r=c.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:Y.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return O(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=c.sent(),r)];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return O(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:Y.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:Y.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__*/s(function(){var n,r,s,a;return O(this,function(c){switch(c.label){case 0:n=new Set;r=0;c.label=1;case 1:if(!(r<10))return[3,5];s=z(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:s}];c.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:Y.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/s(function(){var r,a,c,o,i,l,f,d,E,h;return O(this,function(m){switch(m.label){case 0:r=this;m.label=1;case 1:m.trys.push([1,5,,6]);a=t[e],c=Q(a),o=D(function(t){var r=g({},n!==null&&n!==void 0?n:{});return c?_(g({},r),{$or:[u({},"slug.".concat(e),t),{slugHistory:{$elemMatch:u({},"slug.".concat(e),t)}}]}):_(g({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),i=D(function(e){return /*#__PURE__*/s(function(){var t,n;return O(this,function(r){switch(r.label){case 0:t=e,n=1;r.label=1;case 1:return[4,this.model.exists(o(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(!c)return[3,3];l={success:!0};f=Object.fromEntries;return[4,Promise.all(Object.entries(a).map(function(e){var t=v(e,2),n=t[0],r=t[1];return /*#__PURE__*/s(function(){var e,t;return O(this,function(s){switch(s.label){case 0:e=X(r);t=[n];return[4,i(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(l.result=f.apply(Object,[m.sent()]),l)];case 3:d=X(a);E={success:!0};return[4,i(d)];case 4:return[2,(E.result=m.sent(),E)];case 5:h=m.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(h.message),code:Y.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return O(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:Y.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();D(tY,"MongooseController");var tB=tY;0&&(module.exports={MongoController:MongoController,MongooseController:MongooseController,aggregatePaginate:aggregatePaginate,mongo:mongo,mongoosePaginate:mongoosePaginate});
@@ -1 +1 @@
1
- function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t){if(Array.isArray(t))return e(t)}function n(e,t,n,r,s,a,c){try{var o=e[a](c);var i=o.value}catch(e){n(e);return}if(o.done){t(i)}else{Promise.resolve(i).then(r,s)}}function r(e){return function(){var t=this,r=arguments;return new Promise(function(s,a){var c=e.apply(t,r);function o(e){n(c,s,a,o,i,"next",e)}function i(e){n(c,s,a,o,i,"throw",e)}o(undefined)})}}function s(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)a(e.prototype,t);if(n)a(e,n);return e}function o(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function i(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function u(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function E(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};var r=Object.keys(n);if(typeof Object.getOwnPropertySymbols==="function"){r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))}r.forEach(function(t){o(e,t,n[t])})}return e}function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);if(t){r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}n.push.apply(n,r)}return n}function f(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{d(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))})}return e}function h(e){return t(e)||u(e)||m(e)||l()}function g(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function m(t,n){if(!t)return;if(typeof t==="string")return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor)r=t.constructor.name;if(r==="Map"||r==="Set")return Array.from(r);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return e(t,n)}function _(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},c=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return c.next=o(0),c["throw"]=o(1),c["return"]=o(2),typeof Symbol==="function"&&(c[Symbol.iterator]=function(){return this}),c;function o(e){return function(t){return i([e,t])}}function i(o){if(n)throw new TypeError("Generator is already executing.");while(c&&(c=0,o[0]&&(a=0)),a)try{if(n=1,r&&(s=o[0]&2?r["return"]:o[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,o[1])).done)return s;if(r=0,s)o=[o[0]&2,s.value];switch(o[0]){case 0:case 1:s=o;break;case 4:a.label++;return{value:o[1],done:false};case 5:a.label++;r=o[1];o=[0];continue;case 7:o=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(o[0]===6||o[0]===2)){a=0;continue}if(o[0]===3&&(!s||o[1]>s[0]&&o[1]<s[3])){a.label=o[1];break}if(o[0]===6&&a.label<s[1]){a.label=s[1];s=o;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(o);break}if(s[2])a.ops.pop();a.trys.pop();continue}o=t.call(e,a)}catch(e){o=[6,e];r=0}finally{n=s=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}}var p=Object.defineProperty;var v=function(e,t,n){return t in e?p(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var O=function(e,t){return p(e,"name",{value:t,configurable:!0})};var S=function(e,t,n){return v(e,(typeof t==="undefined"?"undefined":g(t))!="symbol"?t+"":t,n)};import{format as y}from"date-fns";import R from"migrate-mongo";import{Document as I}from"mongoose";import T from"mongoose-aggregate-paginate-v2";import C from"mongoose-paginate-v2";import{v4 as A}from"uuid";var D={GRAPHQL_PARSE_FAILED:{CODE:"GRAPHQL_PARSE_FAILED",MESSAGE:"The GraphQL operation string contains a syntax error."},GRAPHQL_VALIDATION_FAILED:{CODE:"GRAPHQL_VALIDATION_FAILED",MESSAGE:"The GraphQL operation is not valid against the server's schema."},BAD_USER_INPUT:{CODE:"BAD_USER_INPUT",MESSAGE:"The GraphQL operation includes an invalid value for a field argument."},PERSISTED_QUERY_NOT_FOUND:{CODE:"PERSISTED_QUERY_NOT_FOUND",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the query was not in the APQ cache."},PERSISTED_QUERY_NOT_SUPPORTED:{CODE:"PERSISTED_QUERY_NOT_SUPPORTED",MESSAGE:"A client sent the hash of a query string to execute via automatic persisted queries, but the server has disabled APQ."},OPERATION_RESOLUTION_FAILURE:{CODE:"OPERATION_RESOLUTION_FAILURE",MESSAGE:"The request was parsed successfully and is valid against the server's schema, but the server couldn't resolve which operation to run. This occurs when a request containing multiple named operations doesn't specify which operation to run (i.e.,operationName), or if the named operation isn't included in the request."},CONTINUE:{CODE:100,MESSAGE:"Continue"},SWITCHING_PROTOCOLS:{CODE:101,MESSAGE:"Switching Protocols"},PROCESSING:{CODE:102,MESSAGE:"Processing"},OK:{CODE:200,MESSAGE:"OK"},CREATED:{CODE:201,MESSAGE:"Created"},ACCEPTED:{CODE:202,MESSAGE:"Accepted"},NON_AUTHORITATIVE_INFORMATION:{CODE:203,MESSAGE:"Non Authoritative Information"},NO_CONTENT:{CODE:204,MESSAGE:"No Content"},RESET_CONTENT:{CODE:205,MESSAGE:"Reset Content"},PARTIAL_CONTENT:{CODE:206,MESSAGE:"Partial Content"},MULTI_STATUS:{CODE:207,MESSAGE:"Multi-Status"},MULTIPLE_CHOICES:{CODE:300,MESSAGE:"Multiple Choices"},MOVED_PERMANENTLY:{CODE:301,MESSAGE:"Moved Permanently"},MOVED_TEMPORARILY:{CODE:302,MESSAGE:"Moved Temporarily"},SEE_OTHER:{CODE:303,MESSAGE:"See Other"},NOT_MODIFIED:{CODE:304,MESSAGE:"Not Modified"},USE_PROXY:{CODE:305,MESSAGE:"Use Proxy"},TEMPORARY_REDIRECT:{CODE:307,MESSAGE:"Temporary Redirect"},PERMANENT_REDIRECT:{CODE:308,MESSAGE:"Permanent Redirect"},BAD_REQUEST:{CODE:400,MESSAGE:"Bad Request"},UNAUTHORIZED:{CODE:401,MESSAGE:"Unauthorized"},PAYMENT_REQUIRED:{CODE:402,MESSAGE:"Payment Required"},FORBIDDEN:{CODE:403,MESSAGE:"Forbidden"},NOT_FOUND:{CODE:404,MESSAGE:"Not Found"},METHOD_NOT_ALLOWED:{CODE:405,MESSAGE:"Method Not Allowed"},NOT_ACCEPTABLE:{CODE:406,MESSAGE:"Not Acceptable"},PROXY_AUTHENTICATION_REQUIRED:{CODE:407,MESSAGE:"Proxy Authentication Required"},REQUEST_TIMEOUT:{CODE:408,MESSAGE:"Request Timeout"},CONFLICT:{CODE:409,MESSAGE:"Conflict"},GONE:{CODE:410,MESSAGE:"Gone"},LENGTH_REQUIRED:{CODE:411,MESSAGE:"Length Required"},PRECONDITION_FAILED:{CODE:412,MESSAGE:"Precondition Failed"},REQUEST_TOO_LONG:{CODE:413,MESSAGE:"Request Entity Too Large"},REQUEST_URI_TOO_LONG:{CODE:414,MESSAGE:"Request-URI Too Long"},UNSUPPORTED_MEDIA_TYPE:{CODE:415,MESSAGE:"Unsupported Media Type"},REQUESTED_RANGE_NOT_SATISFIABLE:{CODE:416,MESSAGE:"Requested Range Not Satisfiable"},EXPECTATION_FAILED:{CODE:417,MESSAGE:"Expectation Failed"},IM_A_TEAPOT:{CODE:418,MESSAGE:"I'm a teapot"},INSUFFICIENT_SPACE_ON_RESOURCE:{CODE:419,MESSAGE:"Insufficient Space on Resource"},METHOD_FAILURE:{CODE:420,MESSAGE:"Method Failure"},MISDIRECTED_REQUEST:{CODE:421,MESSAGE:"Misdirected Request"},UNPROCESSABLE_ENTITY:{CODE:422,MESSAGE:"Unprocessable Entity"},LOCKED:{CODE:423,MESSAGE:"Locked"},FAILED_DEPENDENCY:{CODE:424,MESSAGE:"Failed Dependency"},PRECONDITION_REQUIRED:{CODE:428,MESSAGE:"Precondition Required"},TOO_MANY_REQUESTS:{CODE:429,MESSAGE:"Too Many Requests"},REQUEST_HEADER_FIELDS_TOO_LARGE:{CODE:431,MESSAGE:"Request Header Fields Too Large"},UNAVAILABLE_FOR_LEGAL_REASONS:{CODE:451,MESSAGE:"Unavailable For Legal Reasons"},INTERNAL_SERVER_ERROR:{CODE:500,MESSAGE:"Internal Server Error"},NOT_IMPLEMENTED:{CODE:501,MESSAGE:"Not Implemented"},BAD_GATEWAY:{CODE:502,MESSAGE:"Bad Gateway"},SERVICE_UNAVAILABLE:{CODE:503,MESSAGE:"Service Unavailable"},GATEWAY_TIMEOUT:{CODE:504,MESSAGE:"Gateway Timeout"},HTTP_VERSION_NOT_SUPPORTED:{CODE:505,MESSAGE:"HTTP Version Not Supported"},INSUFFICIENT_STORAGE:{CODE:507,MESSAGE:"Insufficient Storage"},NETWORK_AUTHENTICATION_REQUIRED:{CODE:511,MESSAGE:"Network Authentication Required"}};import N from"crypto-js";import b from"slugify";var G=b.default||b;function M(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var n,r;return G(e,E({lower:(n=t===null||t===void 0?void 0:t.lower)!==null&&n!==void 0?n:!0,locale:(r=t===null||t===void 0?void 0:t.locale)!==null&&r!==void 0?r:"vi"},t))}O(M,"generateSlug");function P(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return N.SHA256(e).toString(N.enc.Hex).slice(0,t)}O(P,"generateShortId");var w={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":g(e))=="object"?i(e,Date)?!1:i(e,Map)||i(e,Set)?e.size===0:i(e,WeakMap)||i(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};import U from"fs-extra";var L=U.lstatSync,k=U.readdirSync,F=U.mkdirSync,j=U.readFileSync,x=U.writeFileSync,Y=U.appendFileSync,q=U.unlinkSync,Q=U.statSync,B=U.readJsonSync,H=U.writeJsonSync;function V(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return U.pathExistsSync(e)})}O(V,"pathExistsSync");var K=".cyberskill-storage";import W from"dotenv";import{bool as $,cleanEnv as J,str as X}from"envalid";import z from"node:os";import Z from"node:path";import ee from"node:process";W.config();function et(){var e={DEBUG:ee.env.DEBUG||!1,CWD:ee.env.CWD||ee.cwd(),CYBERSKILL_STORAGE_DIRECTORY:ee.env.CYBERSKILL_STORAGE_DIRECTORY||Z.join(z.homedir(),K)};return J(e,{DEBUG:$(),CWD:X(),CYBERSKILL_STORAGE_DIRECTORY:X()})}O(et,"getEnv");var en=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as er}from"node:child_process";import es from"node:process";import*as ea from"node:util";var ec=function(e){return e.Error="error",e.Warning="warning",e}({});import eo from"chalk";import ei from"consola";import{GraphQLError as eu}from"graphql";var el=et();el.DEBUG||(ei.level=4);function eE(e){var t=eo[e];return typeof t=="function"?t:eo.green}O(eE,"chalkKeyword");var ed={silent:ei.silent,level:ei.level,fatal:ei.fatal,error:ei.error,warn:ei.warn,log:ei.log,info:ei.info,success:ei.success,ready:ei.ready,start:ei.start,box:ei.box,debug:ei.debug,trace:ei.trace,verbose:ei.verbose,printBoxedLog:function e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"red";if(!(t===null||t===void 0?void 0:t.length)){ei.box(eo.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;ei.log("".concat(eo.gray("File:")," ").concat(eo.blue("".concat(t).concat(r?":".concat(r):"")))),s&&ei.log(" ".concat(eE(n)("Rule:")," ").concat(s)),ei.log(" ".concat(eE(n)("Message:")," ").concat(a))}),ei.box(eE(n)("".concat(e," : ").concat(t.length))),ei.log(eo.gray("─".repeat(40)))}};var ef={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import eh from"node-fetch";var eg=et();function em(e){var t=eY(eg.CWD,eK);if(!V(t))return!1;try{var n=B(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,c=n.devDependencies,o=c===void 0?{}:c,i=r===e,u=e in a,l=e in o;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return ed.warn("Failed to read package.json: ".concat(e.message)),!1}}O(em,"getPackage");function e_(e){return /*#__PURE__*/r(function(){var t,n,r,s;return _(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,eh("https://registry.npmjs.org/".concat(e,"/latest"))];case 1:t=a.sent();if(!t.ok)throw new Error("Failed to fetch latest version: ".concat(t.status," ").concat(t.statusText));return[4,t.json()];case 2:n=a.sent(),r=n.version;return[2,r];case 3:s=a.sent();throw ed.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}O(e_,"getLatestPackageVersion");function ep(e,t){return /*#__PURE__*/r(function(){var n,r,s,a,c,o,i,u,l,d,f,h,g,m,p,v,O,S,y,R,I;return _(this,function(_){switch(_.label){case 0:_.trys.push([0,4,,5]);n=em(e);if(!n)return[2,E({},ef)];i=n.path,u=n.file,l=n.isCurrentProject,d=n.isDepend,f=n.isDevDepend,h=(r=u.dependencies)!==null&&r!==void 0?r:{},g=(s=u.devDependencies)!==null&&s!==void 0?s:{},m=l?(a=u.version)!==null&&a!==void 0?a:"0.0.0":d?(c=h[e])!==null&&c!==void 0?c:"0.0.0":f?(o=g[e])!==null&&o!==void 0?o:"0.0.0":"0.0.0";if(!l)return[3,1];O=m;return[3,3];case 1:return[4,e_(e)];case 2:O=_.sent();_.label=3;case 3:p=O,v=l||m===p;if(!v&&(t===null||t===void 0?void 0:t.update)){;y=d?"dependencies":f?"devDependencies":null;y&&((S=u[y])===null||S===void 0?void 0:S[e])!==p&&(u[y]=(R=u[y])!==null&&R!==void 0?R:{},u[y][e]=p,H(i,u),ed.info('Updated "'.concat(e,'" to version ').concat(p)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:v}];case 4:I=_.sent();return[2,(ed.error('Error checking package "'.concat(e,'": ').concat(I.message)),E({},ef))];case 5:return[2]}})})()}O(ep,"checkPackage");function ev(){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c,o,i,u,l,E;return _(this,function(d){switch(d.label){case 0:e=[{command:O(function(){return tS.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:O(function(){return tS.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:O(function(){return tS.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;d.label=1;case 1:d.trys.push([1,9,10,11]);s=e[Symbol.iterator]();d.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];c=a.value,o=c.command,i=c.message;d.label=3;case 3:d.trys.push([3,6,,7]);return[4,o()];case 4:u=d.sent();return[4,eU("".concat(i," using: ").concat(u),u)];case 5:d.sent();return[2];case 6:l=d.sent();ed.warn("Installation attempt failed: ".concat(i)),ed.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:E=d.sent();n=true;r=E;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}O(ev,"installDependencies");function eO(e,t){return /*#__PURE__*/r(function(){var n,r,s,a,c,o,i,u,l,d,f;return _(this,function(g){switch(g.label){case 0:if(!V(tp.PACKAGE_JSON)){ed.error("package.json not found. Aborting setup.");return[2]}g.label=1;case 1:g.trys.push([1,13,,14]);n=h(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return ep(e,E({},(t===null||t===void 0?void 0:t.update)&&{update:t.update}))}))];case 2:r=g.sent().every(function(e){return e.isUpToDate});if(r)return[3,4];return[4,ev()];case 3:r=g.sent();g.label=4;case 4:r;a=true,c=false,o=undefined;g.label=5;case 5:g.trys.push([5,10,11,12]);i=((s=t===null||t===void 0?void 0:t.postInstallActions)!==null&&s!==void 0?s:[])[Symbol.iterator]();g.label=6;case 6:if(!!(a=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:g.sent();g.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:d=g.sent();c=true;o=d;return[3,12];case 11:try{if(!a&&i.return!=null){i.return()}}finally{if(c){throw o}}return[7];case 12:return[3,14];case 13:f=g.sent();throw ed.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}O(eO,"setupPackages");import eS from"node-persist";var ey=et();function eR(){return /*#__PURE__*/r(function(){var e;return _(this,function(t){switch(t.label){case 0:e=eS.defaultInstance;if(e)return[3,2];return[4,eS.init({dir:ey.CYBERSKILL_STORAGE_DIRECTORY,stringify:JSON.stringify,parse:JSON.parse,encoding:"utf8",logging:!1,forgiveParseErrors:!0})];case 1:e=t.sent();t.label=2;case 2:e;return[2]}})})()}O(eR,"initNodePersist");var eI={get:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eR()];case 1:r.sent();return[4,eS.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(ed.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/r(function(){var n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eR()];case 1:r.sent();return[4,eS.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();ed.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/r(function(){var t;return _(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eR()];case 1:n.sent();return[4,eS.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();ed.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/r(function(){var e,t;return _(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eR()];case 1:n.sent();return[4,eS.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(ed.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(ed.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/r(function(){return _(this,function(t){try{return[2,"".concat(ey.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(ed.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eT=et(),eC=ea.promisify(er);function eA(e){return"error_list:".concat(e)}O(eA,"getErrorListKey");function eD(e){return /*#__PURE__*/r(function(){var t,n,s;return _(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eA(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eI.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/r(function(){var e;return _(this,function(t){switch(t.label){case 0:return[4,eI.getLogLink(n)];case 1:e=t.sent();e&&ed.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:s=a.sent();ed.error("Failed to save errors: ".concat(s.message));return[3,4];case 4:return[2]}})})()}O(eD,"saveErrorListToStorage");function eN(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,c=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var o,i,u,l,E;var d=s.exec(e)||[],f=a.exec(e)||[],h=c.exec(e)||[];var g,m,_,p,v,O;d.length&&r?t.push({file:r,position:"".concat(d[1],":").concat(d[2]),type:d[3]===ec.Error?ec.Error:ec.Warning,message:(g=d===null||d===void 0?void 0:(o=d[4])===null||o===void 0?void 0:o.trim())!==null&&g!==void 0?g:"",rule:(m=d===null||d===void 0?void 0:(i=d[5])===null||i===void 0?void 0:i.trim())!==null&&m!==void 0?m:""}):f.length?t.push({file:(_=f===null||f===void 0?void 0:f[1])!==null&&_!==void 0?_:"",position:"".concat(f[2],":").concat(f[3]),type:f[4]===ec.Error?ec.Error:ec.Warning,message:(p=f===null||f===void 0?void 0:(u=f[5])===null||u===void 0?void 0:u.trim())!==null&&p!==void 0?p:""}):h.length?t.push({file:"commitlint",type:ec.Error,message:(v=h===null||h===void 0?void 0:(l=h[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(O=h===null||h===void 0?void 0:(E=h[2])===null||E===void 0?void 0:E.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&eD(t),eT.DEBUG&&n.length&&(ed.warn("Unmatched lines:"),n.forEach(function(e){return ed.info(" ".concat(e))}))}O(eN,"parseTextErrors");function eb(e){try{var t=JSON.parse(e),n=[];t.forEach(function(e){var t=e.filePath,r=e.messages;r.forEach(function(e){var r=e.severity,s=e.line,a=e.column,c=e.ruleId,o=e.message;n.push({type:r===2?ec.Error:ec.Warning,file:t,position:"".concat(s,":").concat(a),rule:c,message:o})})}),n.length&&eD(n)}catch(t){eN(e)}}O(eb,"parseCommandOutput");function eG(e){return /*#__PURE__*/r(function(e){var t,n,r,s,a,c,o,i,u;var l=arguments;return _(this,function(E){switch(E.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eb;n=new AbortController;es.on("SIGINT",function(){ed.warn("Process interrupted. Terminating..."),n.abort(),es.exit()});E.label=1;case 1:E.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,eC(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=E.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});E.label=3;case 3:return[3,5];case 4:c=E.sent();o=c.stdout,i=c.stderr,u=c.message;[o,i].forEach(function(e){return e&&t(e)}),!i&&!o&&ed.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}O(eG,"executeCommand");function eM(e){return{raw:!0,cmd:e}}O(eM,"rawCommand");function eP(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(tu," ").concat(eB," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(tu," ").concat(tc," ").concat(e3," ").concat(e):"".concat(tu," ").concat(e4," ").concat(e)}O(eP,"formatCLI");function ew(e,t){return typeof e=="function"?eP(e(t),t):(typeof e==="undefined"?"undefined":g(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eP(e,t):e}O(ew,"formatCommand");function eU(e,t){return /*#__PURE__*/r(function(){var n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);ed.start("".concat(e)),eT.DEBUG&&ed.info("→ ".concat(t));return[4,eG(t)];case 1:r.sent(),ed.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw ed.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}O(eU,"runCommand");import eL,{join as ek,resolve as eF}from"node:path";var ej=et();function ex(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eF.apply(void 0,[ej.CWD].concat(h(t)))}O(ex,"resolveWorkingPath");function eY(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return ek.apply(void 0,h(t))}O(eY,"join");var eq=et(),eQ=eq.CWD,eB="@cyberskill/shared",eH="node_modules",eV="dist",eK="package.json",eW="package-lock.json",e$="tsconfig.json",eJ=".gitignore",eX=".simple-git-hooks.json",ez="pnpm-lock.yaml",eZ=".git/hooks/",e0=".git/COMMIT_EDITMSG",e1=".migrate-mongo.config.js",e2=eY(eQ,eH,eB,eV),e4="cyberskill",e3="src/nodejs/cli/index.ts",e5="eslint",e6="eslint",e7="vitest",e8="playwright",e9="vitest",te="@commitlint/cli",tt="commitlint",tn="lint-staged",tr="lint-staged",ts="typescript",ta="tsc",tc="tsx",to="git",ti="pnpm",tu="pnpm exec",tl="simple-git-hooks",tE="simple-git-hooks",td="@eslint/config-inspector",tf="eslint-config-inspector",th="node-modules-inspector",tg="node-modules-inspector",tm="migrate-mongo",t_="./node_modules/migrate-mongo/bin/migrate-mongo",tp={CYBERSKILL_DIRECTORY:e2,WORKING_DIRECTORY:eQ,TS_CONFIG:ex(e$),GIT_IGNORE:ex(eJ),GIT_HOOK:ex(eZ),GIT_COMMIT_MSG:ex(e0),SIMPLE_GIT_HOOKS_JSON:ex(eX),PACKAGE_JSON:ex(eK),PACKAGE_LOCK_JSON:ex(eW),PNPM_LOCK_YAML:ex(ez),NODE_MODULES:ex(eH),MIGRATE_MONGO_CONFIG:ex(e1),LINT_STAGED_CONFIG:ex("".concat(e2,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:ex("".concat(e2,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:ex("".concat(e2,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:ex("".concat(e2,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:ex("".concat(e2,"/react/vitest/vitest.e2e.js"))};function tv(e,t,n){return /*#__PURE__*/r(function(){return _(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case en.CLI:return[3,1];case en.STRING:return[3,3]}return[3,4];case 1:return[4,eO(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),ew(eM("".concat(tu," ").concat(n))))];case 3:return[2,ew(eM(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}O(tv,"buildCommand");function tO(e,t,n){return function(){return /*#__PURE__*/r(function(){return _(this,function(r){return[2,tv(e,t,n)]})})()}}O(tO,"commandFactory");var tS={simpleGitHooks:tO(en.CLI,tl,tE),eslintInspect:tO(en.CLI,td,tf),nodeModulesInspect:tO(en.CLI,th,tg),eslintCheck:tO(en.CLI,e5,"".concat(e6," ").concat(tp.WORKING_DIRECTORY)),eslintFix:tO(en.CLI,e5,"".concat(e6," ").concat(tp.WORKING_DIRECTORY," --fix")),typescriptCheck:tO(en.CLI,ts,"".concat(ta," -p ").concat(tp.TS_CONFIG," --noEmit")),configureGitHook:tO(en.STRING,"".concat(to," config core.hooksPath ").concat(tp.GIT_HOOK)),testUnit:tO(en.CLI,e7,"".concat(e9," --config ").concat(tp.UNIT_TEST_CONFIG)),testE2e:tO(en.CLI,"".concat(e7," ").concat(e8),"".concat(e9," --config ").concat(tp.E2E_TEST_CONFIG)),mongoMigrateCreate:O(function(e){return tO(en.CLI,tm,"".concat(tc," ").concat(t_," create ").concat(e," -f ").concat(tp.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tO(en.CLI,tm,"".concat(tc," ").concat(t_," up -f ").concat(tp.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tO(en.CLI,tm,"".concat(tc," ").concat(t_," down -f ").concat(tp.MIGRATE_MONGO_CONFIG)),commitLint:tO(en.CLI,te,"".concat(tt," --edit ").concat(tp.GIT_COMMIT_MSG," --config ").concat(tp.COMMITLINT_CONFIG)),lintStaged:tO(en.CLI,tn,"".concat(tr," --config ").concat(tp.LINT_STAGED_CONFIG)),stageBuildDirectory:tO(en.STRING,"".concat(to," add ").concat(eV)),build:tO(en.STRING,"".concat(ti," run build")),pnpmInstallStandard:tO(en.STRING,"".concat(ti," install")),pnpmInstallLegacy:tO(en.STRING,"".concat(ti," install --legacy-peer-deps")),pnpmInstallForce:tO(en.STRING,"".concat(ti," install --force"))};var ty={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return y(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?ty.getDateTime():new Date;return{id:A(),isDel:!1,createdAt:r,updatedAt:r}},applyPlugins:function e(e,t){t.filter(function(e){return typeof e=="function"}).forEach(function(t){return e.plugin(t)})},applyMiddlewares:function e(e,t){t.forEach(function(t){var n=t.method,r=t.pre,s=t.post;n&&r&&e.pre(n,r),n&&s&&e.post(n,s)})},createGenericSchema:function e(e){return new e.Schema({id:{type:String,default:A,required:!0,unique:!0},isDel:{type:Boolean,default:!1,required:!0}},{timestamps:!0})},createSchema:function e(e){var t=e.mongoose,n=e.schema,r=e.virtuals,s=r===void 0?[]:r,a=e.standalone,c=a===void 0?!1:a;var o=new t.Schema(n,{strict:!0});return s.forEach(function(e){var t=e.name,n=e.options,r=e.get;var s=o.virtual(t,n);r&&s.get(r)}),c||o.add(ty.createGenericSchema(t)),o},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,c=e.aggregate,o=c===void 0?!1:c,i=e.virtuals,u=i===void 0?[]:i,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var d=ty.createSchema({mongoose:t,schema:r,virtuals:u});return ty.applyPlugins(d,[a&&C,o&&T]),ty.applyMiddlewares(d,E),t.model(n,d)},createSlugQuery:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;return f(E({},t,n&&{id:{$ne:n}}),{$or:[{slug:e},{slugHistory:e}]})},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/r(function(){return _(this,function(t){return[2,!w.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/r(function(){var n;return _(this,function(r){switch(r.label){case 0:if(!Array.isArray(e)||e.length===0)throw new Error("Fields must be a non-empty array of strings.");n={$or:e.map(function(e){return o({},e,t)})};return[4,this.constructor.findOne(n)];case 1:return[2,!r.sent()]}})}).call(this)}},matchesRegex:function e(e){return function(t){return /*#__PURE__*/r(function(){return _(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!i(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:f(E({},R),{setConfig:O(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));x(tp.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e1,"\n");V(tp.GIT_IGNORE)?j(tp.GIT_IGNORE,"utf-8").split("\n").includes(e1)||Y(tp.GIT_IGNORE,n,"utf-8"):x(tp.GIT_IGNORE,n,"utf-8")},"setConfig")})},tR=/*#__PURE__*/function(){"use strict";function e(t,n){s(this,e);S(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n,r;return _(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=E({},ty.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/r(function(){var t,n,r;return _(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return E({},ty.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.findOne(e)];case 1:t=r.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"findAll",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return _(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Documents retrieved successfully"};return[4,this.collection.find(e).toArray()];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return _(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0,message:"Count retrieved successfully"};return[4,this.collection.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(e,t){return /*#__PURE__*/r(function(){var n,r;return _(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateOne(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"updateMany",value:function e(e,t){return /*#__PURE__*/r(function(){var n,r;return _(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,this.collection.updateMany(e,{$set:t})];case 1:n=s.sent();return[2,n.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"deleteOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteOne(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}},{key:"deleteMany",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);return[4,this.collection.deleteMany(e)];case 1:t=r.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:n=r.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})}).call(this)}}]);return e}();O(tR,"MongoController");var tI=tR,tT=/*#__PURE__*/function(){"use strict";function e(t){s(this,e);S(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c;var o=arguments;return _(this,function(i){switch(i.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.findOne(e,t,n);r&&s.populate(r);return[4,s.exec()];case 2:a=i.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:D.NOT_FOUND.CODE}];case 3:c=i.sent();return[2,{success:!1,message:c.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/r(function(){var e,t,n,r,s,a,c;var o=arguments;return _(this,function(i){switch(i.label){case 0:e=o.length>0&&o[0]!==void 0?o[0]:{},t=o.length>1&&o[1]!==void 0?o[1]:{},n=o.length>2&&o[2]!==void 0?o[2]:{},r=o.length>3?o[3]:void 0;i.label=1;case 1:i.trys.push([1,3,,4]);s=this.model.find(e,t,n);r&&s.populate(r);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=i.sent(),a)];case 3:c=i.sent();return[2,{success:!1,message:c.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.paginate(e,t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/r(function(e){var t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.aggregatePaginate(this.model.aggregate(e),t)];case 2:return[2,(n.result=a.sent(),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/r(function(){var e,t,n;var r=arguments;return _(this,function(s){switch(s.label){case 0:e=r.length>0&&r[0]!==void 0?r[0]:{};s.label=1;case 1:s.trys.push([1,3,,4]);t={success:!0};return[4,this.model.countDocuments(e)];case 2:return[2,(t.result=s.sent(),t)];case 3:n=s.sent();return[2,{success:!1,message:n.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.create(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/r(function(e){var t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return i(e,I)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r,s;var a=arguments;return _(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);return[4,this.model.findOneAndUpdate(e,t,E({new:!0},n)).exec()];case 2:r=c.sent();return[2,r?{success:!0,result:r}:{success:!1,message:"Failed to update ".concat(this.getModelName(),"."),code:D.NOT_FOUND.CODE}];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r,s;var a=arguments;return _(this,function(c){switch(c.label){case 0:e=a.length>0&&a[0]!==void 0?a[0]:{},t=a.length>1&&a[1]!==void 0?a[1]:{},n=a.length>2&&a[2]!==void 0?a[2]:{};c.label=1;case 1:c.trys.push([1,3,,4]);r={success:!0};return[4,this.model.updateMany(e,t,n).exec()];case 2:return[2,(r.result=c.sent(),r)];case 3:s=c.sent();return[2,{success:!1,message:s.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.findOneAndDelete(e,t).exec()];case 2:n=a.sent();return[2,n?{success:!0,result:n}:{success:!1,message:"No ".concat(this.getModelName()," found to delete."),code:D.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/r(function(){var e,t,n,r;var s=arguments;return _(this,function(a){switch(a.label){case 0:e=s.length>0&&s[0]!==void 0?s[0]:{},t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);return[4,this.model.deleteMany(e,t).exec()];case 2:n=a.sent();return[2,n.deletedCount===0?{success:!1,message:"No documents found to delete.",code:D.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createShortId",value:function e(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return /*#__PURE__*/r(function(){var n,r,s,a;return _(this,function(c){switch(c.label){case 0:n=new Set;r=0;c.label=1;case 1:if(!(r<10))return[3,5];s=P(e,r+t);a=!n.has(s);if(!a)return[3,3];n.add(s);return[4,this.model.exists({shortId:s})];case 2:a=!c.sent();c.label=3;case 3:if(a)return[2,{success:!0,result:s}];c.label=4;case 4:r++;return[3,1];case 5:return[2,{success:!1,message:"Failed to create a unique shortId",code:D.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t){return /*#__PURE__*/r(function(e,t){var n,s,a,c,o,i,u,l,E,d,f,h,m;var p=arguments;return _(this,function(v){switch(v.label){case 0:n=this;s=p.length>2&&p[2]!==void 0?p[2]:{};v.label=1;case 1:v.trys.push([1,9,,10]);a=t[e],c=O(function(e){return /*#__PURE__*/r(function(){var n,r,a;return _(this,function(c){switch(c.label){case 0:return[4,this.model.findOne(ty.createSlugQuery(e,s,t.id))];case 1:n=c.sent();if(!n)return[2,e];r=1;c.label=2;case 2:a="".concat(e,"-").concat(r);return[4,this.model.findOne(ty.createSlugQuery(a,s,t.id))];case 3:n=c.sent(),r++;c.label=4;case 4:if(n)return[3,2];c.label=5;case 5:return[2,a]}})}).call(n)},"createUniqueSlug");if(!((typeof a==="undefined"?"undefined":g(a))=="object"))return[3,6];o={};i=[];for(u in a)i.push(u);l=0;v.label=2;case 2:if(!(l<i.length))return[3,5];E=i[l];d=M(a[E]);return[4,c(d)];case 3:o[E]=v.sent();v.label=4;case 4:l++;return[3,2];case 5:return[2,{success:!0,result:o}];case 6:f=M(a);h={success:!0};return[4,c(f)];case 7:return[2,(h.result=v.sent(),h)];case 8:return[3,10];case 9:m=v.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(m.message),code:D.INTERNAL_SERVER_ERROR.CODE}];case 10:return[2]}})}).apply(this,arguments)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/r(function(){var t,n;return _(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);t={success:!0};return[4,this.model.aggregate(e)];case 1:return[2,(t.result=r.sent(),t)];case 2:n=r.sent();return[2,{success:!1,message:n.message,code:D.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();O(tT,"MongooseController");var tC=tT;export{tI as MongoController,tC as MongooseController,T as aggregatePaginate,ty as mongo,C as mongoosePaginate};
1
+ function e(e,t){if(t==null||t>e.length)t=e.length;for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(e){if(Array.isArray(e))return e}function n(t){if(Array.isArray(t))return e(t)}function r(e,t,n,r,s,a,o){try{var c=e[a](o);var i=c.value}catch(e){n(e);return}if(c.done){t(i)}else{Promise.resolve(i).then(r,s)}}function s(e){return function(){var t=this,n=arguments;return new Promise(function(s,a){var o=e.apply(t,n);function c(e){r(o,s,a,c,i,"next",e)}function i(e){r(o,s,a,c,i,"throw",e)}c(undefined)})}}function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function o(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}function c(e,t,n){if(t)o(e.prototype,t);if(n)o(e,n);return e}function i(e,t,n){if(t in e){Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true})}else{e[t]=n}return e}function u(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function l(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function E(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 f(){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 d(){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 h(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){i(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 g(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 _(e,n){return t(e)||E(e,n)||O(e,n)||f()}function p(e){return n(e)||l(e)||O(e)||d()}function v(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function O(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 y(e,t){var n,r,s,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(t){return i([e,t])}}function i(c){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(a=0)),a)try{if(n=1,r&&(s=c[0]&2?r["return"]:c[0]?r["throw"]||((s=r["return"])&&s.call(r),0):r.next)&&!(s=s.call(r,c[1])).done)return s;if(r=0,s)c=[c[0]&2,s.value];switch(c[0]){case 0:case 1:s=c;break;case 4:a.label++;return{value:c[1],done:false};case 5:a.label++;r=c[1];c=[0];continue;case 7:c=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(c[0]===6||c[0]===2)){a=0;continue}if(c[0]===3&&(!s||c[1]>s[0]&&c[1]<s[3])){a.label=c[1];break}if(c[0]===6&&a.label<s[1]){a.label=s[1];s=c;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(c);break}if(s[2])a.ops.pop();a.trys.pop();continue}c=t.call(e,a)}catch(e){c=[6,e];r=0}finally{n=s=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}}var S=Object.defineProperty;var R=function(e,t,n){return t in e?S(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n};var I=function(e,t){return S(e,"name",{value:t,configurable:!0})};var T=function(e,t,n){return R(e,(typeof t==="undefined"?"undefined":v(t))!="symbol"?t+"":t,n)};import{format as C}from"date-fns";import A from"migrate-mongo";import{Document as D}from"mongoose";import N from"mongoose-aggregate-paginate-v2";import b from"mongoose-paginate-v2";import{v4 as G}from"uuid";var M={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 P from"unorm";var w={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},U=Object.entries(w).reduce(function(e,t){var n=_(t,2),r=n[0],s=n[1];return e[r.toUpperCase()]=s.map(function(e){return e.toUpperCase()}),e},{});function L(e){return(typeof e==="undefined"?"undefined":v(e))=="object"&&e!==null&&!Array.isArray(e)}I(L,"isObject");import k from"crypto-js";import F from"slugify";var j=F.default||F;function x(e,t){var n=I(function(e){var n,r;return j(e!==null&&e!==void 0?e:"",h({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(L(e)){var r={};var s=true,a=false,o=undefined;try{for(var c=Object.entries(e)[Symbol.iterator](),i;!(s=(i=c.next()).done);s=true){var u=_(i.value,2),l=u[0],E=u[1];r[l]=n(E)}}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)}I(x,"generateSlug");function Y(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return k.SHA256(e).toString(k.enc.Hex).slice(0,t)}I(Y,"generateShortId");var q={isEmpty:function e(e){return e==null?!0:typeof e=="string"?e.trim().length===0:Array.isArray(e)?e.length===0:(typeof e==="undefined"?"undefined":v(e))=="object"?u(e,Date)?!1:u(e,Map)||u(e,Set)?e.size===0:u(e,WeakMap)||u(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var t=e.split(".");return t.length===4&&t.every(function(e){return/^\d+$/.test(e)&&Number(e)>=0&&Number(e)<=255})?!0:/^(([a-f\d]{1,4}:){7}[a-f\d]{1,4}|((?:[a-f\d]{1,4}:){1,7}:)|((?:[a-f\d]{1,4}:){1,6}:[a-f\d]{1,4})|::)$/i.test(e)}};import B from"fs-extra";var H=B.lstatSync,Q=B.readdirSync,V=B.mkdirSync,K=B.readFileSync,W=B.writeFileSync,$=B.appendFileSync,J=B.unlinkSync,X=B.statSync,z=B.readJsonSync,Z=B.writeJsonSync;function ee(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return t.every(function(e){return B.pathExistsSync(e)})}I(ee,"pathExistsSync");var et=".cyberskill-storage";import en from"dotenv";import{bool as er,cleanEnv as es,str as ea}from"envalid";import eo from"node:os";import ec from"node:path";import ei from"node:process";en.config();function eu(){var e={DEBUG:ei.env.DEBUG||!1,CWD:ei.env.CWD||ei.cwd(),CYBERSKILL_STORAGE_DIRECTORY:ei.env.CYBERSKILL_STORAGE_DIRECTORY||ec.join(eo.homedir(),et)};return es(e,{DEBUG:er(),CWD:ea(),CYBERSKILL_STORAGE_DIRECTORY:ea()})}I(eu,"getEnv");var el=function(e){return e.CLI="CLI",e.STRING="STRING",e.FUNCTION="FUNCTION",e}({});import{exec as eE}from"node:child_process";import ef from"node:process";import*as ed from"node:util";var eh=function(e){return e.Error="error",e.Warning="warning",e}({});import em from"chalk";import eg from"consola";import{GraphQLError as e_}from"graphql";var ep=eu();ep.DEBUG||(eg.level=4);function ev(e){var t=em[e];return typeof t=="function"?t:em.green}I(ev,"chalkKeyword");var eO={silent:eg.silent,level:eg.level,fatal:eg.fatal,error:eg.error,warn:eg.warn,log:eg.log,info:eg.info,success:eg.success,ready:eg.ready,start:eg.start,box:eg.box,debug:eg.debug,trace:eg.trace,verbose:eg.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)){eg.box(em.green(e));return}t.forEach(function(e){var t=e.file,r=e.position,s=e.rule,a=e.message;eg.log("".concat(em.gray("File:")," ").concat(em.blue("".concat(t).concat(r?":".concat(r):"")))),s&&eg.log(" ".concat(ev(n)("Rule:")," ").concat(s)),eg.log(" ".concat(ev(n)("Message:")," ").concat(a))}),eg.box(ev(n)("".concat(e," : ").concat(t.length))),eg.log(em.gray("─".repeat(40)))}};var ey={isCurrentProject:!1,installedPath:"",file:{},isUpToDate:!1};import eS from"node-fetch";var eR=eu();function eI(e){var t=e$(eR.CWD,e1);if(!ee(t))return!1;try{var n=z(t),r=n.name,s=n.dependencies,a=s===void 0?{}:s,o=n.devDependencies,c=o===void 0?{}:o,i=r===e,u=e in a,l=e in c;return i||u||l?{path:t,file:n,isCurrentProject:i,isDepend:u,isDevDepend:l}:!1}catch(e){return eO.warn("Failed to read package.json: ".concat(e.message)),!1}}I(eI,"getPackage");function eT(e){return /*#__PURE__*/s(function(){var t,n,r,s;return y(this,function(a){switch(a.label){case 0:a.trys.push([0,3,,4]);return[4,eS("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 eO.error('Failed to fetch version for "'.concat(e,'": ').concat(s.message)),s;case 4:return[2]}})})()}I(eT,"getLatestPackageVersion");function eC(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,o,c,i,u,l,E,f,d,m,g,_,p,v,O,S,R,I;return y(this,function(y){switch(y.label){case 0:y.trys.push([0,4,,5]);n=eI(e);if(!n)return[2,h({},ey)];i=n.path,u=n.file,l=n.isCurrentProject,E=n.isDepend,f=n.isDevDepend,d=(r=u.dependencies)!==null&&r!==void 0?r:{},m=(s=u.devDependencies)!==null&&s!==void 0?s:{},g=l?(a=u.version)!==null&&a!==void 0?a:"0.0.0":E?(o=d[e])!==null&&o!==void 0?o:"0.0.0":f?(c=m[e])!==null&&c!==void 0?c:"0.0.0":"0.0.0";if(!l)return[3,1];v=g;return[3,3];case 1:return[4,eT(e)];case 2:v=y.sent();y.label=3;case 3:_=v,p=l||g===_;if(!p&&(t===null||t===void 0?void 0:t.update)){;S=E?"dependencies":f?"devDependencies":null;S&&((O=u[S])===null||O===void 0?void 0:O[e])!==_&&(u[S]=(R=u[S])!==null&&R!==void 0?R:{},u[S][e]=_,Z(i,u),eO.info('Updated "'.concat(e,'" to version ').concat(_)))}return[2,{isCurrentProject:l,installedPath:i,file:u,isUpToDate:p}];case 4:I=y.sent();return[2,(eO.error('Error checking package "'.concat(e,'": ').concat(I.message)),h({},ey))];case 5:return[2]}})})()}I(eC,"checkPackage");function eA(){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o,c,i,u,l,E;return y(this,function(f){switch(f.label){case 0:e=[{command:I(function(){return tN.pnpmInstallStandard()},"command"),message:"Installing dependencies (standard)"},{command:I(function(){return tN.pnpmInstallLegacy()},"command"),message:"Retrying with legacy peer dependencies"},{command:I(function(){return tN.pnpmInstallForce()},"command"),message:"Retrying with force install"}];t=true,n=false,r=undefined;f.label=1;case 1:f.trys.push([1,9,10,11]);s=e[Symbol.iterator]();f.label=2;case 2:if(!!(t=(a=s.next()).done))return[3,8];o=a.value,c=o.command,i=o.message;f.label=3;case 3:f.trys.push([3,6,,7]);return[4,c()];case 4:u=f.sent();return[4,eB("".concat(i," using: ").concat(u),u)];case 5:f.sent();return[2];case 6:l=f.sent();eO.warn("Installation attempt failed: ".concat(i)),eO.error("Details: ".concat(l.message));return[3,7];case 7:t=true;return[3,2];case 8:return[3,11];case 9:E=f.sent();n=true;r=E;return[3,11];case 10:try{if(!t&&s.return!=null){s.return()}}finally{if(n){throw r}}return[7];case 11:throw new Error("All dependency installation strategies failed.")}})})()}I(eA,"installDependencies");function eD(e,t){return /*#__PURE__*/s(function(){var n,r,s,a,o,c,i,u,l,E,f;return y(this,function(d){switch(d.label){case 0:if(!ee(tC.PACKAGE_JSON)){eO.error("package.json not found. Aborting setup.");return[2]}d.label=1;case 1:d.trys.push([1,13,,14]);n=p(new Set(e)).sort();return[4,Promise.all(n.map(function(e){return eC(e,h({},(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,eA()];case 3:r=d.sent();d.label=4;case 4:r;a=true,o=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(!!(a=(u=i.next()).done))return[3,9];l=u.value;return[4,l()];case 7:d.sent();d.label=8;case 8:a=true;return[3,6];case 9:return[3,12];case 10:E=d.sent();o=true;c=E;return[3,12];case 11:try{if(!a&&i.return!=null){i.return()}}finally{if(o){throw c}}return[7];case 12:return[3,14];case 13:f=d.sent();throw eO.error('Failed to setup "'.concat(e.join(", "),'": ').concat(f.message)),f;case 14:return[2]}})})()}I(eD,"setupPackages");import eN from"node-persist";var eb=eu();function eG(){return /*#__PURE__*/s(function(){var e;return y(this,function(t){switch(t.label){case 0:e=eN.defaultInstance;if(e)return[3,2];return[4,eN.init({dir:eb.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]}})})()}I(eG,"initNodePersist");var eM={get:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eG()];case 1:r.sent();return[4,eN.getItem(e)];case 2:return[2,(t=r.sent())!==null&&t!==void 0?t:null];case 3:n=r.sent();return[2,(eO.error('[Storage:get] Error getting key "'.concat(e,'":'),n),null)];case 4:return[2]}})})()},set:function e(e,t){return /*#__PURE__*/s(function(){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,3,,4]);return[4,eG()];case 1:r.sent();return[4,eN.setItem(e,t)];case 2:r.sent();return[3,4];case 3:n=r.sent();eO.error('[Storage:set] Error setting key "'.concat(e,'":'),n);return[3,4];case 4:return[2]}})})()},remove:function e(e){return /*#__PURE__*/s(function(){var t;return y(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eG()];case 1:n.sent();return[4,eN.removeItem(e)];case 2:n.sent();return[3,4];case 3:t=n.sent();eO.error('[Storage:remove] Error removing key "'.concat(e,'":'),t);return[3,4];case 4:return[2]}})})()},keys:function e(){return /*#__PURE__*/s(function(){var e,t;return y(this,function(n){switch(n.label){case 0:n.trys.push([0,3,,4]);return[4,eG()];case 1:n.sent();return[4,eN.keys()];case 2:e=n.sent();return[2,Array.isArray(e)?e:(eO.warn("[Storage:keys] Invalid keys response:",e),[])];case 3:t=n.sent();return[2,(eO.error("[Storage:keys] Error getting keys:",t),[])];case 4:return[2]}})})()},getLogLink:function e(e){return /*#__PURE__*/s(function(){return y(this,function(t){try{return[2,"".concat(eb.CYBERSKILL_STORAGE_DIRECTORY," (key: ").concat(e,")")]}catch(e){return[2,(eO.error("[Storage:getLogLink] Error getting log link:",e),null)]}return[2]})})()}};var eP=eu(),ew=ed.promisify(eE);function eU(e){return"error_list:".concat(e)}I(eU,"getErrorListKey");function eL(e){return /*#__PURE__*/s(function(){var t,n,r;return y(this,function(a){switch(a.label){case 0:if(e.length===0)return[2];t=Date.now(),n=eU(t);a.label=1;case 1:a.trys.push([1,3,,4]);return[4,eM.set(n,{errors:e,timestamp:t})];case 2:a.sent(),setTimeout(function(){return /*#__PURE__*/s(function(){var e;return y(this,function(t){switch(t.label){case 0:return[4,eM.getLogLink(n)];case 1:e=t.sent();e&&eO.info("\uD83D\uDCC2 Open the error list manually: ".concat(e));return[2]}})})()},10);return[3,4];case 3:r=a.sent();eO.error("Failed to save errors: ".concat(r.message));return[3,4];case 4:return[2]}})})()}I(eL,"saveErrorListToStorage");function ek(e){var t=[],n=[],r="",s=/^\s*(\d+):(\d+)\s+(error|warning)\s+(.+?)\s+(\S+)$/,a=/^(.+?)\((\d+),(\d+)\):\s+(error|warning)\s+TS\d+:\s+(\S.+)$/,o=/^✖\s+(.*?)\s+\[(.*?)\]$/;e.split("\n").forEach(function(e){if(e.startsWith("/"))r=e.trim();else{var c,i,u,l,E;var f=s.exec(e)||[],d=a.exec(e)||[],h=o.exec(e)||[];var m,g,_,p,v,O;f.length&&r?t.push({file:r,position:"".concat(f[1],":").concat(f[2]),type:f[3]===eh.Error?eh.Error:eh.Warning,message:(m=f===null||f===void 0?void 0:(c=f[4])===null||c===void 0?void 0:c.trim())!==null&&m!==void 0?m:"",rule:(g=f===null||f===void 0?void 0:(i=f[5])===null||i===void 0?void 0:i.trim())!==null&&g!==void 0?g:""}):d.length?t.push({file:(_=d===null||d===void 0?void 0:d[1])!==null&&_!==void 0?_:"",position:"".concat(d[2],":").concat(d[3]),type:d[4]===eh.Error?eh.Error:eh.Warning,message:(p=d===null||d===void 0?void 0:(u=d[5])===null||u===void 0?void 0:u.trim())!==null&&p!==void 0?p:""}):h.length?t.push({file:"commitlint",type:eh.Error,message:(v=h===null||h===void 0?void 0:(l=h[1])===null||l===void 0?void 0:l.trim())!==null&&v!==void 0?v:"",rule:(O=h===null||h===void 0?void 0:(E=h[2])===null||E===void 0?void 0:E.trim())!==null&&O!==void 0?O:""}):n.push(e.trim())}}),t.length&&eL(t),eP.DEBUG&&n.length&&(eO.warn("Unmatched lines:"),n.forEach(function(e){return eO.info(" ".concat(e))}))}I(ek,"parseTextErrors");function eF(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&&eL(n)}catch(t){ek(e)}}I(eF,"parseCommandOutput");function ej(e){return /*#__PURE__*/s(function(e){var t,n,r,s,a,o,c,i,u;var l=arguments;return y(this,function(E){switch(E.label){case 0:t=l.length>1&&l[1]!==void 0?l[1]:eF;n=new AbortController;ef.on("SIGINT",function(){eO.warn("Process interrupted. Terminating..."),n.abort(),ef.exit()});E.label=1;case 1:E.trys.push([1,4,,5]);if(!(typeof e=="string"))return[3,3];return[4,ew(e,{maxBuffer:0x6400000,signal:n.signal})];case 2:r=E.sent(),s=r.stdout,a=r.stderr;[s,a].forEach(function(e){return e&&t(e)});E.label=3;case 3:return[3,5];case 4:o=E.sent();c=o.stdout,i=o.stderr,u=o.message;[c,i].forEach(function(e){return e&&t(e)}),!i&&!c&&eO.error("Command failed: ".concat(u));return[3,5];case 5:return[2]}})}).apply(this,arguments)}I(ej,"executeCommand");function ex(e){return{raw:!0,cmd:e}}I(ex,"rawCommand");function eY(e,t){return(t===null||t===void 0?void 0:t.isRemote)?"".concat(t_," ").concat(ez," ").concat(e):(t===null||t===void 0?void 0:t.isCurrentProject)?"".concat(t_," ").concat(th," ").concat(tn," ").concat(e):"".concat(t_," ").concat(tt," ").concat(e)}I(eY,"formatCLI");function eq(e,t){return typeof e=="function"?eY(e(t),t):(typeof e==="undefined"?"undefined":v(e))=="object"&&(e===null||e===void 0?void 0:e.raw)===!0?e.cmd:typeof e=="string"?eY(e,t):e}I(eq,"formatCommand");function eB(e,t){return /*#__PURE__*/s(function(){var n;return y(this,function(r){switch(r.label){case 0:r.trys.push([0,2,,3]);eO.start("".concat(e)),eP.DEBUG&&eO.info("→ ".concat(t));return[4,ej(t)];case 1:r.sent(),eO.success("".concat(e," done."));return[3,3];case 2:n=r.sent();throw eO.error("".concat(e," failed: ").concat(n.message)),n;case 3:return[2]}})})()}I(eB,"runCommand");import eH,{join as eQ,resolve as eV}from"node:path";var eK=eu();function eW(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eV.apply(void 0,[eK.CWD].concat(p(t)))}I(eW,"resolveWorkingPath");function e$(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++){t[n]=arguments[n]}return eQ.apply(void 0,p(t))}I(e$,"join");var eJ=eu(),eX=eJ.CWD,ez="@cyberskill/shared",eZ="node_modules",e0="dist",e1="package.json",e2="package-lock.json",e4="tsconfig.json",e3=".gitignore",e5=".simple-git-hooks.json",e6="pnpm-lock.yaml",e7=".git/hooks/",e8=".git/COMMIT_EDITMSG",e9=".migrate-mongo.config.js",te=e$(eX,eZ,ez,e0),tt="cyberskill",tn="src/nodejs/cli/index.ts",tr="eslint",ts="eslint",ta="vitest",to="playwright",tc="vitest",ti="@commitlint/cli",tu="commitlint",tl="lint-staged",tE="lint-staged",tf="typescript",td="tsc",th="tsx",tm="git",tg="pnpm",t_="pnpm exec",tp="simple-git-hooks",tv="simple-git-hooks",tO="@eslint/config-inspector",ty="eslint-config-inspector",tS="node-modules-inspector",tR="node-modules-inspector",tI="migrate-mongo",tT="./node_modules/migrate-mongo/bin/migrate-mongo",tC={CYBERSKILL_DIRECTORY:te,WORKING_DIRECTORY:eX,TS_CONFIG:eW(e4),GIT_IGNORE:eW(e3),GIT_HOOK:eW(e7),GIT_COMMIT_MSG:eW(e8),SIMPLE_GIT_HOOKS_JSON:eW(e5),PACKAGE_JSON:eW(e1),PACKAGE_LOCK_JSON:eW(e2),PNPM_LOCK_YAML:eW(e6),NODE_MODULES:eW(eZ),MIGRATE_MONGO_CONFIG:eW(e9),LINT_STAGED_CONFIG:eW("".concat(te,"/configs/lint-staged/base.js")),COMMITLINT_CONFIG:eW("".concat(te,"/configs/commitlint/base.js")),UNIT_TEST_CONFIG:eW("".concat(te,"/react/vitest/vitest.unit.js")),UNIT_TEST_SETUP_CONFIG:eW("".concat(te,"/react/vitest/vitest.unit.setup.js")),E2E_TEST_CONFIG:eW("".concat(te,"/react/vitest/vitest.e2e.js"))};function tA(e,t,n){return /*#__PURE__*/s(function(){return y(this,function(r){switch(r.label){case 0:if(!t)throw new Error("'first' argument is undefined");switch(e){case el.CLI:return[3,1];case el.STRING:return[3,3]}return[3,4];case 1:return[4,eD(t.split(" "),{update:!0})];case 2:return[2,(r.sent(),eq(ex("".concat(t_," ").concat(n))))];case 3:return[2,eq(ex(t))];case 4:throw new Error("Unsupported command type");case 5:return[2]}})})()}I(tA,"buildCommand");function tD(e,t,n){return function(){return /*#__PURE__*/s(function(){return y(this,function(r){return[2,tA(e,t,n)]})})()}}I(tD,"commandFactory");var tN={simpleGitHooks:tD(el.CLI,tp,tv),eslintInspect:tD(el.CLI,tO,ty),nodeModulesInspect:tD(el.CLI,tS,tR),eslintCheck:tD(el.CLI,tr,"".concat(ts," ").concat(tC.WORKING_DIRECTORY)),eslintFix:tD(el.CLI,tr,"".concat(ts," ").concat(tC.WORKING_DIRECTORY," --fix")),typescriptCheck:tD(el.CLI,tf,"".concat(td," -p ").concat(tC.TS_CONFIG," --noEmit")),configureGitHook:tD(el.STRING,"".concat(tm," config core.hooksPath ").concat(tC.GIT_HOOK)),testUnit:tD(el.CLI,ta,"".concat(tc," --config ").concat(tC.UNIT_TEST_CONFIG)),testE2e:tD(el.CLI,"".concat(ta," ").concat(to),"".concat(tc," --config ").concat(tC.E2E_TEST_CONFIG)),mongoMigrateCreate:I(function(e){return tD(el.CLI,tI,"".concat(th," ").concat(tT," create ").concat(e," -f ").concat(tC.MIGRATE_MONGO_CONFIG))()},"mongoMigrateCreate"),mongoMigrateUp:tD(el.CLI,tI,"".concat(th," ").concat(tT," up -f ").concat(tC.MIGRATE_MONGO_CONFIG)),mongoMigrateDown:tD(el.CLI,tI,"".concat(th," ").concat(tT," down -f ").concat(tC.MIGRATE_MONGO_CONFIG)),commitLint:tD(el.CLI,ti,"".concat(tu," --edit ").concat(tC.GIT_COMMIT_MSG," --config ").concat(tC.COMMITLINT_CONFIG)),lintStaged:tD(el.CLI,tl,"".concat(tE," --config ").concat(tC.LINT_STAGED_CONFIG)),stageBuildDirectory:tD(el.STRING,"".concat(tm," add ").concat(e0)),build:tD(el.STRING,"".concat(tg," run build")),pnpmInstallStandard:tD(el.STRING,"".concat(tg," install")),pnpmInstallLegacy:tD(el.STRING,"".concat(tg," install --legacy-peer-deps")),pnpmInstallForce:tD(el.STRING,"".concat(tg," install --force"))};var tb={getDateTime:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new Date;return C(e,"yyyy-MM-dd HH:mm:ss.SSS")},createGenericFields:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.returnDateAs,n=t===void 0?"string":t;var r=n==="string"?tb.getDateTime():new Date;return{id:G(),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:G,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(tb.createGenericSchema(t)),c},createModel:function e(e){var t=e.mongoose,n=e.name,r=e.schema,s=e.pagination,a=s===void 0?!1:s,o=e.aggregate,c=o===void 0?!1:o,i=e.virtuals,u=i===void 0?[]:i,l=e.middlewares,E=l===void 0?[]:l;if(!n)throw new Error("Model name is required.");if(t.models[n])return t.models[n];var f=tb.createSchema({mongoose:t,schema:r,virtuals:u});return tb.applyPlugins(f,[a&&b,c&&N]),tb.applyMiddlewares(f,E),t.model(n,f)},validator:{isEmpty:function e(){return function(e){return /*#__PURE__*/s(function(){return y(this,function(t){return[2,!q.isEmpty(e)]})})()}},isUnique:function e(e){return function(t){return /*#__PURE__*/s(function(){var n;return y(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 i({},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__*/s(function(){return y(this,function(n){if(!Array.isArray(e)||e.some(function(e){return!u(e,RegExp)}))throw new Error("regexArray must be an array of valid RegExp objects.");return[2,e.every(function(e){return e.test(t)})]})})()}}},migrate:g(h({},A),{setConfig:I(function(e){var t="// This file is automatically generated by the Cyberskill CLI.\nmodule.exports = ".concat(JSON.stringify(e,null,4));W(tC.MIGRATE_MONGO_CONFIG,t);var n="\n".concat(e9,"\n");ee(tC.GIT_IGNORE)?K(tC.GIT_IGNORE,"utf-8").split("\n").includes(e9)||$(tC.GIT_IGNORE,n,"utf-8"):W(tC.GIT_IGNORE,n,"utf-8")},"setConfig")})},tG=/*#__PURE__*/function(){"use strict";function e(t,n){a(this,e);T(this,"collection");this.collection=t.collection(n)}c(e,[{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=h({},tb.createGenericFields(),e);n={success:!0,message:"Document created successfully"};return[4,this.collection.insertOne(t)];case 1:return[2,(n.result=s.sent(),n)];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(){var t,n,r;return y(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t=e.map(function(e){return h({},tb.createGenericFields(),e)});return[4,this.collection.insertMany(t)];case 1:n=s.sent();return[2,n.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(n.insertedCount," documents created successfully"),result:n}];case 2:r=s.sent();return[2,{success:!1,message:r.message}];case 3:return[2]}})}).call(this)}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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__*/s(function(){var e,t,n;var r=arguments;return y(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__*/s(function(){var e,t,n;var r=arguments;return y(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__*/s(function(){var n,r;return y(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__*/s(function(){var n,r;return y(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__*/s(function(){var t,n;return y(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__*/s(function(){var t,n;return y(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}();I(tG,"MongoController");var tM=tG,tP=/*#__PURE__*/function(){"use strict";function e(t){a(this,e);T(this,"model");this.model=t}c(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o;var c=arguments;return y(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:a=i.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(this.getModelName()," found."),code:M.NOT_FOUND.CODE}];case 3:o=i.sent();return[2,{success:!1,message:o.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findAll",value:function e(e){return /*#__PURE__*/s(function(){var e,t,n,r,s,a,o;var c=arguments;return y(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);a={success:!0};return[4,s.exec()];case 2:return[2,(a.result=i.sent(),a)];case 3:o=i.sent();return[2,{success:!1,message:o.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPaging",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"findPagingAggregate",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"count",value:function e(){return /*#__PURE__*/s(function(){var e,t,n;var r=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"createOne",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}},{key:"createMany",value:function e(e){return /*#__PURE__*/s(function(e){var t,n,r;var s=arguments;return y(this,function(a){switch(a.label){case 0:t=s.length>1&&s[1]!==void 0?s[1]:{};a.label=1;case 1:a.trys.push([1,3,,4]);n={success:!0};return[4,this.model.insertMany(e,t)];case 2:return[2,(n.result=a.sent().map(function(e){return u(e,D)?e.toObject():null}).filter(function(e){return e!==null}),n)];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return y(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,h({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:M.NOT_FOUND.CODE}];case 3:s=o.sent();return[2,{success:!1,message:s.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"updateMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r,s;var a=arguments;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteOne",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.NOT_FOUND.CODE}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.INTERNAL_SERVER_ERROR.CODE}];case 4:return[2]}})}).apply(this,arguments)}},{key:"deleteMany",value:function e(){return /*#__PURE__*/s(function(){var e,t,n,r;var s=arguments;return y(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:M.NOT_FOUND.CODE}:{success:!0,result:n}];case 3:r=a.sent();return[2,{success:!1,message:r.message,code:M.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__*/s(function(){var n,r,s,a;return y(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=Y(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:M.INTERNAL_SERVER_ERROR.CODE}]}})}).call(this)}},{key:"createSlug",value:function e(e,t,n){return /*#__PURE__*/s(function(){var r,a,o,c,u,l,E,f,d,m;return y(this,function(p){switch(p.label){case 0:r=this;p.label=1;case 1:p.trys.push([1,5,,6]);a=t[e],o=L(a),c=I(function(t){var r=h({},n!==null&&n!==void 0?n:{});return o?g(h({},r),{$or:[i({},"slug.".concat(e),t),{slugHistory:{$elemMatch:i({},"slug.".concat(e),t)}}]}):g(h({},r),{$or:[{slug:t},{slugHistory:t}]})},"generateSlugQuery"),u=I(function(e){return /*#__PURE__*/s(function(){var t,n;return y(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];l={success:!0};E=Object.fromEntries;return[4,Promise.all(Object.entries(a).map(function(e){var t=_(e,2),n=t[0],r=t[1];return /*#__PURE__*/s(function(){var e,t;return y(this,function(s){switch(s.label){case 0:e=x(r);t=[n];return[4,u(e)];case 1:return[2,t.concat([s.sent()])]}})})()}))];case 2:return[2,(l.result=E.apply(Object,[p.sent()]),l)];case 3:f=x(a);d={success:!0};return[4,u(f)];case 4:return[2,(d.result=p.sent(),d)];case 5:m=p.sent();return[2,{success:!1,message:"Failed to create a unique slug: ".concat(m.message),code:M.INTERNAL_SERVER_ERROR.CODE}];case 6:return[2]}})}).call(this)}},{key:"aggregate",value:function e(e){return /*#__PURE__*/s(function(){var t,n;return y(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:M.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})}).call(this)}}]);return e}();I(tP,"MongooseController");var tw=tP;export{tM as MongoController,tw as MongooseController,N as aggregatePaginate,tb as mongo,b as mongoosePaginate};
@@ -1 +1 @@
1
- "use strict";function e(e,r){if(r==null||r>e.length)r=e.length;for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function r(e){if(Array.isArray(e))return e}function t(r){if(Array.isArray(r))return e(r)}function n(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function i(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function u(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var i=true;var a=false;var u,o;try{for(t=t.call(e);!(i=(u=t.next()).done);i=true){n.push(u.value);if(r&&n.length===r)break}}catch(e){a=true;o=e}finally{try{if(!i&&t["return"]!=null)t["return"]()}finally{if(a)throw o}}return n}function o(){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 l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function f(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var i=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){i=i.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}i.forEach(function(r){n(e,r,t[r])})}return e}function c(e,t){return r(e)||u(e,t)||y(e,t)||o()}function s(e){return t(e)||a(e)||y(e)||l()}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(r,t){if(!r)return;if(typeof r==="string")return e(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);if(n==="Object"&&r.constructor)n=r.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,t)}var v=Object.create;var p=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var m=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var S=function(e,r){return p(e,"name",{value:r,configurable:!0})};var w=function(e,r){for(var t in r)p(e,t,{get:r[t],enumerable:!0})},O=function(e,r,t,n){var i=true,a=false,u=undefined;if(r&&(typeof r==="undefined"?"undefined":d(r))=="object"||typeof r=="function")try{var o=function(){var i=f.value;!h.call(e,i)&&i!==t&&p(e,i,{get:function(){return r[i]},enumerable:!(n=g(r,i))||n.enumerable})};for(var l=b(r)[Symbol.iterator](),f;!(i=(f=l.next()).done);i=true)o()}catch(e){a=true;u=e}finally{try{if(!i&&l.return!=null){l.return()}}finally{if(a){throw u}}}return e};var z=function(e,r,t){return t=e!=null?v(m(e)):{},O(r||!e||!e.__esModule?p(t,"default",{value:e,enumerable:!0}):t,e)},j=function(e){return O(p({},"__esModule",{value:!0}),e)};var A={};w(A,{deepMerge:function(){return E},generateRandomPassword:function(){return $},generateShortId:function(){return U},generateSlug:function(){return C},getFileName:function(){return H},isJson:function(){return B},isPlainObject:function(){return N},regexSearchMapper:function(){return I},removeAccent:function(){return P},serializer:function(){return k},substringBetween:function(){return T},validate:function(){return V}});module.exports=j(A);var x=z(require("unorm"),1);var _={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},M=Object.entries(_).reduce(function(e,r){var t=c(r,2),n=t[0],i=t[1];return e[n.toUpperCase()]=i.map(function(e){return e.toUpperCase()}),e},{});function I(e){e=x.default.nfkc(e);var r=f({},_,M);var t=true,n=false,i=undefined;try{for(var a=Object.entries(r)[Symbol.iterator](),u;!(t=(u=a.next()).done);t=true){var o=c(u.value,2),l=o[0],d=o[1];var y="[".concat(l).concat(d.join(""),"]"),v="(".concat([l].concat(s(d)).join("|"),")");e=e.replace(new RegExp(y,"g"),v)}}catch(e){n=true;i=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw i}}}return e}S(I,"regexSearchMapper");function P(e){return e.normalize("NFD").replace(RegExp("\\p{Diacritic}","gu"),"")}S(P,"removeAccent");function B(e){try{return JSON.parse(e),!0}catch(e){return!1}}S(B,"isJson");function N(e){return(typeof e==="undefined"?"undefined":d(e))=="object"&&e!==null&&!Array.isArray(e)}S(N,"isPlainObject");function E(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n={};var i=true,a=false,u=undefined,o=true,l=false,f=undefined;try{for(var d=r.flat()[Symbol.iterator](),y;!(o=(y=d.next()).done);o=true){var v=y.value;try{for(var p=Object.entries(v)[Symbol.iterator](),g;!(i=(g=p.next()).done);i=true){var b=c(g.value,2),m=b[0],h=b[1];var S=n[m];if(Array.isArray(h)){var w=Array.isArray(S)?S:[];n[m]=s(new Set(s(w).concat(s(h))));continue}if(N(h)){n[m]=E(N(S)?S:{},h);continue}n[m]=h}}catch(e){a=true;u=e}finally{try{if(!i&&p.return!=null){p.return()}}finally{if(a){throw u}}}}}catch(e){l=true;f=e}finally{try{if(!o&&d.return!=null){d.return()}}finally{if(l){throw f}}}return n}S(E,"deepMerge");var R=require("buffer");var D={Date:{is:S(function(e){return i(e,Date)},"is"),serialize:S(function(e){return{__type:"Date",value:e.toISOString()}},"serialize"),deserialize:S(function(e){return new Date(e)},"deserialize")},Map:{is:S(function(e){return i(e,Map)},"is"),serialize:S(function(e){return{__type:"Map",value:Array.from(e.entries())}},"serialize"),deserialize:S(function(e){return new Map(e)},"deserialize")},Set:{is:S(function(e){return i(e,Set)},"is"),serialize:S(function(e){return{__type:"Set",value:Array.from(e)}},"serialize"),deserialize:S(function(e){return new Set(e)},"deserialize")},RegExp:{is:S(function(e){return i(e,RegExp)},"is"),serialize:S(function(e){return{__type:"RegExp",value:{source:e.source,flags:e.flags}}},"serialize"),deserialize:S(function(e){var r=e.source,t=e.flags;return new RegExp(r,t)},"deserialize")},BigInt:{is:S(function(e){return(typeof e==="undefined"?"undefined":d(e))=="bigint"},"is"),serialize:S(function(e){return{__type:"BigInt",value:e.toString()}},"serialize"),deserialize:S(function(e){return BigInt(e)},"deserialize")},Buffer:{is:S(function(e){return R.Buffer.isBuffer(e)},"is"),serialize:S(function(e){return{__type:"Buffer",value:e.toString("base64")}},"serialize"),deserialize:S(function(e){return R.Buffer.from(e,"base64")},"deserialize")}},k={serialize:function e(e){return JSON.stringify(e,function(e,r){var t=true,n=false,i=undefined;try{for(var a=Object.keys(D)[Symbol.iterator](),u;!(t=(u=a.next()).done);t=true){var o=u.value;var l=D[o];if(l.is(r))return l.serialize(r)}}catch(e){n=true;i=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw i}}}return r})},deserialize:function e(e){return JSON.parse(e,function(e,r){if(r&&(typeof r==="undefined"?"undefined":d(r))=="object"&&"__type"in r&&typeof r.__type=="string"){var t=r.__type,n=D[t];if(n)return n.deserialize(r.value)}return r})}};var J=z(require("crypto-js"),1),F=z(require("slugify"),1);var q=F.default.default||F.default;function C(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1?arguments[1]:void 0;var t,n;return q(e,f({lower:(t=r===null||r===void 0?void 0:r.lower)!==null&&t!==void 0?t:!0,locale:(n=r===null||r===void 0?void 0:r.locale)!==null&&n!==void 0?n:"vi"},r))}S(C,"generateSlug");function U(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return J.default.SHA256(e).toString(J.default.enc.Hex).slice(0,r)}S(U,"generateShortId");function $(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:8;var r="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+[]{}|;:,.<>?",t="";for(var n=0;n<e;n++){var i=Math.floor(Math.random()*r.length);t+=r.charAt(i)}return t}S($,"generateRandomPassword");function H(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;var t=e.split(/[?#]/)[0]||"",n=t.substring(t.lastIndexOf("/")+1);if(r)return n;var i=n.lastIndexOf(".");return i>0?n.slice(0,i):n}S(H,"getFileName");function T(e,r,t){var n=e.indexOf(r);if(n===-1)return"";var i=n+r.length,a=e.indexOf(t,i);return a===-1?"":e.slice(i,a)}S(T,"substringBetween");var V={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":d(e))=="object"?i(e,Date)?!1:i(e,Map)||i(e,Set)?e.size===0:i(e,WeakMap)||i(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var r=e.split(".");return r.length===4&&r.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)}};0&&(module.exports={deepMerge:deepMerge,generateRandomPassword:generateRandomPassword,generateShortId:generateShortId,generateSlug:generateSlug,getFileName:getFileName,isJson:isJson,isPlainObject:isPlainObject,regexSearchMapper:regexSearchMapper,removeAccent:removeAccent,serializer:serializer,substringBetween:substringBetween,validate:validate});
1
+ "use strict";function e(e,r){if(r==null||r>e.length)r=e.length;for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function r(e){if(Array.isArray(e))return e}function t(r){if(Array.isArray(r))return e(r)}function n(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function i(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function u(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var i=true;var a=false;var u,o;try{for(t=t.call(e);!(i=(u=t.next()).done);i=true){n.push(u.value);if(r&&n.length===r)break}}catch(e){a=true;o=e}finally{try{if(!i&&t["return"]!=null)t["return"]()}finally{if(a)throw o}}return n}function o(){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 l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function f(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var i=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){i=i.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}i.forEach(function(r){n(e,r,t[r])})}return e}function c(e,t){return r(e)||u(e,t)||y(e,t)||o()}function s(e){return t(e)||a(e)||y(e)||l()}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function y(r,t){if(!r)return;if(typeof r==="string")return e(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);if(n==="Object"&&r.constructor)n=r.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,t)}var v=Object.create;var p=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var m=Object.getPrototypeOf,h=Object.prototype.hasOwnProperty;var S=function(e,r){return p(e,"name",{value:r,configurable:!0})};var O=function(e,r){for(var t in r)p(e,t,{get:r[t],enumerable:!0})},w=function(e,r,t,n){var i=true,a=false,u=undefined;if(r&&(typeof r==="undefined"?"undefined":d(r))=="object"||typeof r=="function")try{var o=function(){var i=f.value;!h.call(e,i)&&i!==t&&p(e,i,{get:function(){return r[i]},enumerable:!(n=g(r,i))||n.enumerable})};for(var l=b(r)[Symbol.iterator](),f;!(i=(f=l.next()).done);i=true)o()}catch(e){a=true;u=e}finally{try{if(!i&&l.return!=null){l.return()}}finally{if(a){throw u}}}return e};var z=function(e,r,t){return t=e!=null?v(m(e)):{},w(r||!e||!e.__esModule?p(t,"default",{value:e,enumerable:!0}):t,e)},j=function(e){return w(p({},"__esModule",{value:!0}),e)};var A={};O(A,{deepMerge:function(){return E},generateRandomPassword:function(){return W},generateShortId:function(){return U},generateSlug:function(){return C},getFileName:function(){return $},isJson:function(){return B},isObject:function(){return N},regexSearchMapper:function(){return I},removeAccent:function(){return P},serializer:function(){return k},substringBetween:function(){return H},validate:function(){return T}});module.exports=j(A);var x=z(require("unorm"),1);var _={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},M=Object.entries(_).reduce(function(e,r){var t=c(r,2),n=t[0],i=t[1];return e[n.toUpperCase()]=i.map(function(e){return e.toUpperCase()}),e},{});function I(e){e=x.default.nfkc(e);var r=f({},_,M);var t=true,n=false,i=undefined;try{for(var a=Object.entries(r)[Symbol.iterator](),u;!(t=(u=a.next()).done);t=true){var o=c(u.value,2),l=o[0],d=o[1];var y="[".concat(l).concat(d.join(""),"]"),v="(".concat([l].concat(s(d)).join("|"),")");e=e.replace(new RegExp(y,"g"),v)}}catch(e){n=true;i=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw i}}}return e}S(I,"regexSearchMapper");function P(e){return e.normalize("NFD").replace(RegExp("\\p{Diacritic}","gu"),"")}S(P,"removeAccent");function B(e){try{return JSON.parse(e),!0}catch(e){return!1}}S(B,"isJson");function N(e){return(typeof e==="undefined"?"undefined":d(e))=="object"&&e!==null&&!Array.isArray(e)}S(N,"isObject");function E(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n={};var i=true,a=false,u=undefined,o=true,l=false,f=undefined;try{for(var d=r.flat()[Symbol.iterator](),y;!(o=(y=d.next()).done);o=true){var v=y.value;try{for(var p=Object.entries(v)[Symbol.iterator](),g;!(i=(g=p.next()).done);i=true){var b=c(g.value,2),m=b[0],h=b[1];var S=n[m];if(Array.isArray(h)){var O=Array.isArray(S)?S:[];n[m]=s(new Set(s(O).concat(s(h))));continue}if(N(h)){n[m]=E(N(S)?S:{},h);continue}n[m]=h}}catch(e){a=true;u=e}finally{try{if(!i&&p.return!=null){p.return()}}finally{if(a){throw u}}}}}catch(e){l=true;f=e}finally{try{if(!o&&d.return!=null){d.return()}}finally{if(l){throw f}}}return n}S(E,"deepMerge");var R=require("buffer");var D={Date:{is:S(function(e){return i(e,Date)},"is"),serialize:S(function(e){return{__type:"Date",value:e.toISOString()}},"serialize"),deserialize:S(function(e){return new Date(e)},"deserialize")},Map:{is:S(function(e){return i(e,Map)},"is"),serialize:S(function(e){return{__type:"Map",value:Array.from(e.entries())}},"serialize"),deserialize:S(function(e){return new Map(e)},"deserialize")},Set:{is:S(function(e){return i(e,Set)},"is"),serialize:S(function(e){return{__type:"Set",value:Array.from(e)}},"serialize"),deserialize:S(function(e){return new Set(e)},"deserialize")},RegExp:{is:S(function(e){return i(e,RegExp)},"is"),serialize:S(function(e){return{__type:"RegExp",value:{source:e.source,flags:e.flags}}},"serialize"),deserialize:S(function(e){var r=e.source,t=e.flags;return new RegExp(r,t)},"deserialize")},BigInt:{is:S(function(e){return(typeof e==="undefined"?"undefined":d(e))=="bigint"},"is"),serialize:S(function(e){return{__type:"BigInt",value:e.toString()}},"serialize"),deserialize:S(function(e){return BigInt(e)},"deserialize")},Buffer:{is:S(function(e){return R.Buffer.isBuffer(e)},"is"),serialize:S(function(e){return{__type:"Buffer",value:e.toString("base64")}},"serialize"),deserialize:S(function(e){return R.Buffer.from(e,"base64")},"deserialize")}},k={serialize:function e(e){return JSON.stringify(e,function(e,r){var t=true,n=false,i=undefined;try{for(var a=Object.keys(D)[Symbol.iterator](),u;!(t=(u=a.next()).done);t=true){var o=u.value;var l=D[o];if(l.is(r))return l.serialize(r)}}catch(e){n=true;i=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw i}}}return r})},deserialize:function e(e){return JSON.parse(e,function(e,r){if(r&&(typeof r==="undefined"?"undefined":d(r))=="object"&&"__type"in r&&typeof r.__type=="string"){var t=r.__type,n=D[t];if(n)return n.deserialize(r.value)}return r})}};var J=z(require("crypto-js"),1),F=z(require("slugify"),1);var q=F.default.default||F.default;function C(e,r){var t=S(function(e){var t,n;return q(e!==null&&e!==void 0?e:"",f({lower:(t=r===null||r===void 0?void 0:r.lower)!==null&&t!==void 0?t:!0,locale:(n=r===null||r===void 0?void 0:r.locale)!==null&&n!==void 0?n:"vi"},r))},"slugifyWithOptions");if(N(e)){var n={};var i=true,a=false,u=undefined;try{for(var o=Object.entries(e)[Symbol.iterator](),l;!(i=(l=o.next()).done);i=true){var s=c(l.value,2),d=s[0],y=s[1];n[d]=t(y)}}catch(e){a=true;u=e}finally{try{if(!i&&o.return!=null){o.return()}}finally{if(a){throw u}}}return n}return t(e)}S(C,"generateSlug");function U(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return J.default.SHA256(e).toString(J.default.enc.Hex).slice(0,r)}S(U,"generateShortId");function W(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:8;var r="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+[]{}|;:,.<>?",t="";for(var n=0;n<e;n++){var i=Math.floor(Math.random()*r.length);t+=r.charAt(i)}return t}S(W,"generateRandomPassword");function $(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;var t=e.split(/[?#]/)[0]||"",n=t.substring(t.lastIndexOf("/")+1);if(r)return n;var i=n.lastIndexOf(".");return i>0?n.slice(0,i):n}S($,"getFileName");function H(e,r,t){var n=e.indexOf(r);if(n===-1)return"";var i=n+r.length,a=e.indexOf(t,i);return a===-1?"":e.slice(i,a)}S(H,"substringBetween");var T={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":d(e))=="object"?i(e,Date)?!1:i(e,Map)||i(e,Set)?e.size===0:i(e,WeakMap)||i(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var r=e.split(".");return r.length===4&&r.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)}};0&&(module.exports={deepMerge:deepMerge,generateRandomPassword:generateRandomPassword,generateShortId:generateShortId,generateSlug:generateSlug,getFileName:getFileName,isJson:isJson,isObject:isObject,regexSearchMapper:regexSearchMapper,removeAccent:removeAccent,serializer:serializer,substringBetween:substringBetween,validate:validate});
@@ -1,7 +1,7 @@
1
1
  export { regexSearchMapper_alias_1 as regexSearchMapper } from '../_tsup-dts-rollup.cjs';
2
2
  export { removeAccent_alias_1 as removeAccent } from '../_tsup-dts-rollup.cjs';
3
3
  export { isJson_alias_1 as isJson } from '../_tsup-dts-rollup.cjs';
4
- export { isPlainObject_alias_1 as isPlainObject } from '../_tsup-dts-rollup.cjs';
4
+ export { isObject_alias_1 as isObject } from '../_tsup-dts-rollup.cjs';
5
5
  export { deepMerge_alias_1 as deepMerge } from '../_tsup-dts-rollup.cjs';
6
6
  export { T_SerializerKnownTypes_alias_1 as T_SerializerKnownTypes } from '../_tsup-dts-rollup.cjs';
7
7
  export { T_SerializerValueMap_alias_1 as T_SerializerValueMap } from '../_tsup-dts-rollup.cjs';
@@ -1,7 +1,7 @@
1
1
  export { regexSearchMapper_alias_1 as regexSearchMapper } from '../_tsup-dts-rollup.js';
2
2
  export { removeAccent_alias_1 as removeAccent } from '../_tsup-dts-rollup.js';
3
3
  export { isJson_alias_1 as isJson } from '../_tsup-dts-rollup.js';
4
- export { isPlainObject_alias_1 as isPlainObject } from '../_tsup-dts-rollup.js';
4
+ export { isObject_alias_1 as isObject } from '../_tsup-dts-rollup.js';
5
5
  export { deepMerge_alias_1 as deepMerge } from '../_tsup-dts-rollup.js';
6
6
  export { T_SerializerKnownTypes_alias_1 as T_SerializerKnownTypes } from '../_tsup-dts-rollup.js';
7
7
  export { T_SerializerValueMap_alias_1 as T_SerializerValueMap } from '../_tsup-dts-rollup.js';
@@ -1 +1 @@
1
- function e(e,r){if(r==null||r>e.length)r=e.length;for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function r(e){if(Array.isArray(e))return e}function t(r){if(Array.isArray(r))return e(r)}function n(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function i(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function u(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var i=true;var a=false;var u,o;try{for(t=t.call(e);!(i=(u=t.next()).done);i=true){n.push(u.value);if(r&&n.length===r)break}}catch(e){a=true;o=e}finally{try{if(!i&&t["return"]!=null)t["return"]()}finally{if(a)throw o}}return n}function o(){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 l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function f(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var i=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){i=i.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}i.forEach(function(r){n(e,r,t[r])})}return e}function s(e,t){return r(e)||u(e,t)||d(e,t)||o()}function c(e){return t(e)||a(e)||d(e)||l()}function y(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(r,t){if(!r)return;if(typeof r==="string")return e(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);if(n==="Object"&&r.constructor)n=r.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,t)}var v=Object.defineProperty;var p=function(e,r){return v(e,"name",{value:r,configurable:!0})};import g from"unorm";var b={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},m=Object.entries(b).reduce(function(e,r){var t=s(r,2),n=t[0],i=t[1];return e[n.toUpperCase()]=i.map(function(e){return e.toUpperCase()}),e},{});function h(e){e=g.nfkc(e);var r=f({},b,m);var t=true,n=false,i=undefined;try{for(var a=Object.entries(r)[Symbol.iterator](),u;!(t=(u=a.next()).done);t=true){var o=s(u.value,2),l=o[0],y=o[1];var d="[".concat(l).concat(y.join(""),"]"),v="(".concat([l].concat(c(y)).join("|"),")");e=e.replace(new RegExp(d,"g"),v)}}catch(e){n=true;i=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw i}}}return e}p(h,"regexSearchMapper");function S(e){return e.normalize("NFD").replace(RegExp("\\p{Diacritic}","gu"),"")}p(S,"removeAccent");function z(e){try{return JSON.parse(e),!0}catch(e){return!1}}p(z,"isJson");function w(e){return(typeof e==="undefined"?"undefined":y(e))=="object"&&e!==null&&!Array.isArray(e)}p(w,"isPlainObject");function A(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n={};var i=true,a=false,u=undefined,o=true,l=false,f=undefined;try{for(var y=r.flat()[Symbol.iterator](),d;!(o=(d=y.next()).done);o=true){var v=d.value;try{for(var p=Object.entries(v)[Symbol.iterator](),g;!(i=(g=p.next()).done);i=true){var b=s(g.value,2),m=b[0],h=b[1];var S=n[m];if(Array.isArray(h)){var z=Array.isArray(S)?S:[];n[m]=c(new Set(c(z).concat(c(h))));continue}if(w(h)){n[m]=A(w(S)?S:{},h);continue}n[m]=h}}catch(e){a=true;u=e}finally{try{if(!i&&p.return!=null){p.return()}}finally{if(a){throw u}}}}}catch(e){l=true;f=e}finally{try{if(!o&&y.return!=null){y.return()}}finally{if(l){throw f}}}return n}p(A,"deepMerge");import{Buffer as O}from"node:buffer";var j={Date:{is:p(function(e){return i(e,Date)},"is"),serialize:p(function(e){return{__type:"Date",value:e.toISOString()}},"serialize"),deserialize:p(function(e){return new Date(e)},"deserialize")},Map:{is:p(function(e){return i(e,Map)},"is"),serialize:p(function(e){return{__type:"Map",value:Array.from(e.entries())}},"serialize"),deserialize:p(function(e){return new Map(e)},"deserialize")},Set:{is:p(function(e){return i(e,Set)},"is"),serialize:p(function(e){return{__type:"Set",value:Array.from(e)}},"serialize"),deserialize:p(function(e){return new Set(e)},"deserialize")},RegExp:{is:p(function(e){return i(e,RegExp)},"is"),serialize:p(function(e){return{__type:"RegExp",value:{source:e.source,flags:e.flags}}},"serialize"),deserialize:p(function(e){var r=e.source,t=e.flags;return new RegExp(r,t)},"deserialize")},BigInt:{is:p(function(e){return(typeof e==="undefined"?"undefined":y(e))=="bigint"},"is"),serialize:p(function(e){return{__type:"BigInt",value:e.toString()}},"serialize"),deserialize:p(function(e){return BigInt(e)},"deserialize")},Buffer:{is:p(function(e){return O.isBuffer(e)},"is"),serialize:p(function(e){return{__type:"Buffer",value:e.toString("base64")}},"serialize"),deserialize:p(function(e){return O.from(e,"base64")},"deserialize")}},x={serialize:function e(e){return JSON.stringify(e,function(e,r){var t=true,n=false,i=undefined;try{for(var a=Object.keys(j)[Symbol.iterator](),u;!(t=(u=a.next()).done);t=true){var o=u.value;var l=j[o];if(l.is(r))return l.serialize(r)}}catch(e){n=true;i=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw i}}}return r})},deserialize:function e(e){return JSON.parse(e,function(e,r){if(r&&(typeof r==="undefined"?"undefined":y(r))=="object"&&"__type"in r&&typeof r.__type=="string"){var t=r.__type,n=j[t];if(n)return n.deserialize(r.value)}return r})}};import _ from"crypto-js";import I from"slugify";var M=I.default||I;function B(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1?arguments[1]:void 0;var t,n;return M(e,f({lower:(t=r===null||r===void 0?void 0:r.lower)!==null&&t!==void 0?t:!0,locale:(n=r===null||r===void 0?void 0:r.locale)!==null&&n!==void 0?n:"vi"},r))}p(B,"generateSlug");function E(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return _.SHA256(e).toString(_.enc.Hex).slice(0,r)}p(E,"generateShortId");function P(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:8;var r="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+[]{}|;:,.<>?",t="";for(var n=0;n<e;n++){var i=Math.floor(Math.random()*r.length);t+=r.charAt(i)}return t}p(P,"generateRandomPassword");function k(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;var t=e.split(/[?#]/)[0]||"",n=t.substring(t.lastIndexOf("/")+1);if(r)return n;var i=n.lastIndexOf(".");return i>0?n.slice(0,i):n}p(k,"getFileName");function D(e,r,t){var n=e.indexOf(r);if(n===-1)return"";var i=n+r.length,a=e.indexOf(t,i);return a===-1?"":e.slice(i,a)}p(D,"substringBetween");var N={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":y(e))=="object"?i(e,Date)?!1:i(e,Map)||i(e,Set)?e.size===0:i(e,WeakMap)||i(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var r=e.split(".");return r.length===4&&r.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)}};export{A as deepMerge,P as generateRandomPassword,E as generateShortId,B as generateSlug,k as getFileName,z as isJson,w as isPlainObject,h as regexSearchMapper,S as removeAccent,x as serializer,D as substringBetween,N as validate};
1
+ function e(e,r){if(r==null||r>e.length)r=e.length;for(var t=0,n=new Array(r);t<r;t++)n[t]=e[t];return n}function r(e){if(Array.isArray(e))return e}function t(r){if(Array.isArray(r))return e(r)}function n(e,r,t){if(r in e){Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true})}else{e[r]=t}return e}function i(e,r){if(r!=null&&typeof Symbol!=="undefined"&&r[Symbol.hasInstance]){return!!r[Symbol.hasInstance](e)}else{return e instanceof r}}function a(e){if(typeof Symbol!=="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function u(e,r){var t=e==null?null:typeof Symbol!=="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(t==null)return;var n=[];var i=true;var a=false;var u,o;try{for(t=t.call(e);!(i=(u=t.next()).done);i=true){n.push(u.value);if(r&&n.length===r)break}}catch(e){a=true;o=e}finally{try{if(!i&&t["return"]!=null)t["return"]()}finally{if(a)throw o}}return n}function o(){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 l(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function f(e){for(var r=1;r<arguments.length;r++){var t=arguments[r]!=null?arguments[r]:{};var i=Object.keys(t);if(typeof Object.getOwnPropertySymbols==="function"){i=i.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))}i.forEach(function(r){n(e,r,t[r])})}return e}function s(e,t){return r(e)||u(e,t)||d(e,t)||o()}function c(e){return t(e)||a(e)||d(e)||l()}function y(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function d(r,t){if(!r)return;if(typeof r==="string")return e(r,t);var n=Object.prototype.toString.call(r).slice(8,-1);if(n==="Object"&&r.constructor)n=r.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,t)}var v=Object.defineProperty;var p=function(e,r){return v(e,"name",{value:r,configurable:!0})};import g from"unorm";var b={a:["\xe0","\xe1","ạ","ả","\xe3","\xe2","ầ","ấ","ậ","ẩ","ẫ","ă","ằ","ắ","ặ","ẳ","ẵ"],e:["\xe8","\xe9","ẹ","ẻ","ẽ","\xea","ề","ế","ệ","ể","ễ"],i:["\xec","\xed","ị","ỉ","ĩ"],o:["\xf2","\xf3","ọ","ỏ","\xf5","\xf4","ồ","ố","ộ","ổ","ỗ","ơ","ờ","ớ","ợ","ở","ỡ"],u:["\xf9","\xfa","ụ","ủ","ũ","ư","ừ","ứ","ự","ử","ữ"],y:["ỳ","\xfd","ỵ","ỷ","ỹ"],d:["đ"]},m=Object.entries(b).reduce(function(e,r){var t=s(r,2),n=t[0],i=t[1];return e[n.toUpperCase()]=i.map(function(e){return e.toUpperCase()}),e},{});function h(e){e=g.nfkc(e);var r=f({},b,m);var t=true,n=false,i=undefined;try{for(var a=Object.entries(r)[Symbol.iterator](),u;!(t=(u=a.next()).done);t=true){var o=s(u.value,2),l=o[0],y=o[1];var d="[".concat(l).concat(y.join(""),"]"),v="(".concat([l].concat(c(y)).join("|"),")");e=e.replace(new RegExp(d,"g"),v)}}catch(e){n=true;i=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw i}}}return e}p(h,"regexSearchMapper");function S(e){return e.normalize("NFD").replace(RegExp("\\p{Diacritic}","gu"),"")}p(S,"removeAccent");function w(e){try{return JSON.parse(e),!0}catch(e){return!1}}p(w,"isJson");function z(e){return(typeof e==="undefined"?"undefined":y(e))=="object"&&e!==null&&!Array.isArray(e)}p(z,"isObject");function O(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++){r[t]=arguments[t]}var n={};var i=true,a=false,u=undefined,o=true,l=false,f=undefined;try{for(var y=r.flat()[Symbol.iterator](),d;!(o=(d=y.next()).done);o=true){var v=d.value;try{for(var p=Object.entries(v)[Symbol.iterator](),g;!(i=(g=p.next()).done);i=true){var b=s(g.value,2),m=b[0],h=b[1];var S=n[m];if(Array.isArray(h)){var w=Array.isArray(S)?S:[];n[m]=c(new Set(c(w).concat(c(h))));continue}if(z(h)){n[m]=O(z(S)?S:{},h);continue}n[m]=h}}catch(e){a=true;u=e}finally{try{if(!i&&p.return!=null){p.return()}}finally{if(a){throw u}}}}}catch(e){l=true;f=e}finally{try{if(!o&&y.return!=null){y.return()}}finally{if(l){throw f}}}return n}p(O,"deepMerge");import{Buffer as A}from"node:buffer";var j={Date:{is:p(function(e){return i(e,Date)},"is"),serialize:p(function(e){return{__type:"Date",value:e.toISOString()}},"serialize"),deserialize:p(function(e){return new Date(e)},"deserialize")},Map:{is:p(function(e){return i(e,Map)},"is"),serialize:p(function(e){return{__type:"Map",value:Array.from(e.entries())}},"serialize"),deserialize:p(function(e){return new Map(e)},"deserialize")},Set:{is:p(function(e){return i(e,Set)},"is"),serialize:p(function(e){return{__type:"Set",value:Array.from(e)}},"serialize"),deserialize:p(function(e){return new Set(e)},"deserialize")},RegExp:{is:p(function(e){return i(e,RegExp)},"is"),serialize:p(function(e){return{__type:"RegExp",value:{source:e.source,flags:e.flags}}},"serialize"),deserialize:p(function(e){var r=e.source,t=e.flags;return new RegExp(r,t)},"deserialize")},BigInt:{is:p(function(e){return(typeof e==="undefined"?"undefined":y(e))=="bigint"},"is"),serialize:p(function(e){return{__type:"BigInt",value:e.toString()}},"serialize"),deserialize:p(function(e){return BigInt(e)},"deserialize")},Buffer:{is:p(function(e){return A.isBuffer(e)},"is"),serialize:p(function(e){return{__type:"Buffer",value:e.toString("base64")}},"serialize"),deserialize:p(function(e){return A.from(e,"base64")},"deserialize")}},x={serialize:function e(e){return JSON.stringify(e,function(e,r){var t=true,n=false,i=undefined;try{for(var a=Object.keys(j)[Symbol.iterator](),u;!(t=(u=a.next()).done);t=true){var o=u.value;var l=j[o];if(l.is(r))return l.serialize(r)}}catch(e){n=true;i=e}finally{try{if(!t&&a.return!=null){a.return()}}finally{if(n){throw i}}}return r})},deserialize:function e(e){return JSON.parse(e,function(e,r){if(r&&(typeof r==="undefined"?"undefined":y(r))=="object"&&"__type"in r&&typeof r.__type=="string"){var t=r.__type,n=j[t];if(n)return n.deserialize(r.value)}return r})}};import _ from"crypto-js";import I from"slugify";var M=I.default||I;function B(e,r){var t=p(function(e){var t,n;return M(e!==null&&e!==void 0?e:"",f({lower:(t=r===null||r===void 0?void 0:r.lower)!==null&&t!==void 0?t:!0,locale:(n=r===null||r===void 0?void 0:r.locale)!==null&&n!==void 0?n:"vi"},r))},"slugifyWithOptions");if(z(e)){var n={};var i=true,a=false,u=undefined;try{for(var o=Object.entries(e)[Symbol.iterator](),l;!(i=(l=o.next()).done);i=true){var c=s(l.value,2),y=c[0],d=c[1];n[y]=t(d)}}catch(e){a=true;u=e}finally{try{if(!i&&o.return!=null){o.return()}}finally{if(a){throw u}}}return n}return t(e)}p(B,"generateSlug");function E(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return _.SHA256(e).toString(_.enc.Hex).slice(0,r)}p(E,"generateShortId");function P(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:8;var r="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()_+[]{}|;:,.<>?",t="";for(var n=0;n<e;n++){var i=Math.floor(Math.random()*r.length);t+=r.charAt(i)}return t}p(P,"generateRandomPassword");function R(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;var t=e.split(/[?#]/)[0]||"",n=t.substring(t.lastIndexOf("/")+1);if(r)return n;var i=n.lastIndexOf(".");return i>0?n.slice(0,i):n}p(R,"getFileName");function D(e,r,t){var n=e.indexOf(r);if(n===-1)return"";var i=n+r.length,a=e.indexOf(t,i);return a===-1?"":e.slice(i,a)}p(D,"substringBetween");var N={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":y(e))=="object"?i(e,Date)?!1:i(e,Map)||i(e,Set)?e.size===0:i(e,WeakMap)||i(e,WeakSet)?!0:ArrayBuffer.isView(e)?e.byteLength===0:Object.keys(e).length===0:!1},isValidIP:function e(e){var r=e.split(".");return r.length===4&&r.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)}};export{O as deepMerge,P as generateRandomPassword,E as generateShortId,B as generateSlug,R as getFileName,w as isJson,z as isObject,h as regexSearchMapper,S as removeAccent,x as serializer,D as substringBetween,N as validate};