@cyberskill/shared 1.14.0 → 1.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/dist/commands.cjs +1 -1
  2. package/dist/commands.d.cts +1 -0
  3. package/dist/commands.d.ts +1 -0
  4. package/dist/commands.js +1 -1
  5. package/dist/components/react/index.d.cts +2 -0
  6. package/dist/components/react/index.d.ts +2 -0
  7. package/dist/components/react/loading/index.d.cts +11 -0
  8. package/dist/components/react/loading/index.d.ts +11 -0
  9. package/dist/components/react/loading/loading.module.d.cts +2 -0
  10. package/dist/components/react/loading/loading.module.d.ts +2 -0
  11. package/dist/configs/commitlint/base.d.cts +5 -0
  12. package/dist/configs/commitlint/base.d.ts +5 -0
  13. package/dist/configs/eslint/base.d.cts +1154 -0
  14. package/dist/configs/eslint/base.d.ts +1154 -0
  15. package/dist/configs/eslint/nestjs.d.cts +1156 -0
  16. package/dist/configs/eslint/nestjs.d.ts +1156 -0
  17. package/dist/configs/eslint/nextjs.d.cts +1156 -0
  18. package/dist/configs/eslint/nextjs.d.ts +1156 -0
  19. package/dist/configs/eslint/nodejs.d.cts +1156 -0
  20. package/dist/configs/eslint/nodejs.d.ts +1156 -0
  21. package/dist/configs/eslint/vite-react.d.cts +1157 -0
  22. package/dist/configs/eslint/vite-react.d.ts +1157 -0
  23. package/dist/configs/graphql/graphql-codegen.d.cts +8 -0
  24. package/dist/configs/graphql/graphql-codegen.d.ts +8 -0
  25. package/dist/configs/graphql/index.d.cts +5 -0
  26. package/dist/configs/graphql/index.d.ts +5 -0
  27. package/dist/configs/i18n/react/i18next.d.cts +6 -0
  28. package/dist/configs/i18n/react/i18next.d.ts +6 -0
  29. package/dist/configs/i18n/react/index.d.cts +2 -0
  30. package/dist/configs/i18n/react/index.d.ts +2 -0
  31. package/dist/configs/index.cjs +1 -1
  32. package/dist/configs/index.d.cts +9 -0
  33. package/dist/configs/index.d.ts +9 -0
  34. package/dist/configs/index.js +1 -1
  35. package/dist/configs/lint-staged/base.d.cts +5 -0
  36. package/dist/configs/lint-staged/base.d.ts +5 -0
  37. package/dist/configs/vitest/react/e2e.d.cts +6 -0
  38. package/dist/configs/vitest/react/e2e.d.ts +6 -0
  39. package/dist/configs/vitest/react/unit.d.cts +6 -0
  40. package/dist/configs/vitest/react/unit.d.ts +6 -0
  41. package/dist/configs/vitest/react/unit.setup.d.cts +2 -0
  42. package/dist/configs/vitest/react/unit.setup.d.ts +2 -0
  43. package/dist/constants/dirname.d.cts +3 -0
  44. package/dist/constants/dirname.d.ts +3 -0
  45. package/dist/constants/index.d.cts +2 -0
  46. package/dist/constants/index.d.ts +2 -0
  47. package/dist/constants/response-status.d.cts +252 -0
  48. package/dist/constants/response-status.d.ts +252 -0
  49. package/dist/contexts/react/index.d.cts +4 -0
  50. package/dist/contexts/react/index.d.ts +4 -0
  51. package/dist/contexts/react/loading.d.cts +7 -0
  52. package/dist/contexts/react/loading.d.ts +7 -0
  53. package/dist/controllers/index.cjs +1 -1
  54. package/dist/controllers/index.d.cts +5 -0
  55. package/dist/controllers/index.d.ts +5 -0
  56. package/dist/controllers/index.js +1 -1
  57. package/dist/controllers/migration.d.cts +55 -0
  58. package/dist/controllers/migration.d.ts +55 -0
  59. package/dist/controllers/mongoose.cjs +1 -1
  60. package/dist/controllers/mongoose.d.cts +25 -0
  61. package/dist/controllers/mongoose.d.ts +25 -0
  62. package/dist/controllers/mongoose.js +1 -1
  63. package/dist/hooks/react/index.cjs +1 -1
  64. package/dist/hooks/react/index.d.cts +6 -0
  65. package/dist/hooks/react/index.d.ts +6 -0
  66. package/dist/hooks/react/index.js +1 -1
  67. package/dist/hooks/react/use-loading.d.cts +7 -0
  68. package/dist/hooks/react/use-loading.d.ts +7 -0
  69. package/dist/hooks/react/use-storage.cjs +1 -1
  70. package/dist/hooks/react/use-storage.d.cts +5 -0
  71. package/dist/hooks/react/use-storage.d.ts +5 -0
  72. package/dist/hooks/react/use-storage.js +1 -1
  73. package/dist/index.cjs +1 -1
  74. package/dist/index.d.cts +32 -716
  75. package/dist/index.d.ts +32 -716
  76. package/dist/index.js +1 -1
  77. package/dist/providers/react/apollo-client.d.cts +11 -0
  78. package/dist/providers/react/apollo-client.d.ts +11 -0
  79. package/dist/providers/react/index.d.cts +6 -0
  80. package/dist/providers/react/index.d.ts +6 -0
  81. package/dist/providers/react/loading.d.cts +10 -0
  82. package/dist/providers/react/loading.d.ts +10 -0
  83. package/dist/typescript/command.cjs +1 -1
  84. package/dist/typescript/command.d.cts +39 -0
  85. package/dist/typescript/command.d.ts +39 -0
  86. package/dist/typescript/command.js +1 -1
  87. package/dist/typescript/config.d.cts +5 -0
  88. package/dist/typescript/config.d.ts +5 -0
  89. package/dist/typescript/index.cjs +1 -1
  90. package/dist/typescript/index.d.cts +10 -0
  91. package/dist/typescript/index.d.ts +10 -0
  92. package/dist/typescript/index.js +1 -1
  93. package/dist/typescript/log.d.cts +10 -0
  94. package/dist/typescript/log.d.ts +10 -0
  95. package/dist/typescript/mongoose.d.cts +163 -0
  96. package/dist/typescript/mongoose.d.ts +163 -0
  97. package/dist/typescript/react.d.cts +26 -0
  98. package/dist/typescript/react.d.ts +26 -0
  99. package/dist/typescript/serializer.d.cts +6 -0
  100. package/dist/typescript/serializer.d.ts +6 -0
  101. package/dist/utils/command-error.cjs +1 -1
  102. package/dist/utils/command-error.d.cts +15 -0
  103. package/dist/utils/command-error.d.ts +15 -0
  104. package/dist/utils/command-error.js +1 -1
  105. package/dist/utils/command-log.cjs +1 -1
  106. package/dist/utils/command-log.d.cts +3 -0
  107. package/dist/utils/command-log.d.ts +3 -0
  108. package/dist/utils/command-log.js +1 -1
  109. package/dist/utils/command-spinner.cjs +1 -1
  110. package/dist/utils/command-spinner.d.cts +11 -0
  111. package/dist/utils/command-spinner.d.ts +11 -0
  112. package/dist/utils/command-spinner.js +1 -1
  113. package/dist/utils/command.cjs +1 -1
  114. package/dist/utils/command.d.cts +5 -0
  115. package/dist/utils/command.d.ts +5 -0
  116. package/dist/utils/command.js +1 -1
  117. package/dist/utils/index.cjs +1 -1
  118. package/dist/utils/index.d.cts +26 -0
  119. package/dist/utils/index.d.ts +26 -0
  120. package/dist/utils/index.js +1 -1
  121. package/dist/utils/log.d.cts +5 -0
  122. package/dist/utils/log.d.ts +5 -0
  123. package/dist/utils/mongoose.d.cts +34 -0
  124. package/dist/utils/mongoose.d.ts +34 -0
  125. package/dist/utils/npm-package.cjs +1 -1
  126. package/dist/utils/npm-package.d.cts +16 -0
  127. package/dist/utils/npm-package.d.ts +16 -0
  128. package/dist/utils/npm-package.js +1 -1
  129. package/dist/utils/serializer.d.cts +5 -0
  130. package/dist/utils/serializer.d.ts +5 -0
  131. package/dist/utils/storage.d.cts +12 -0
  132. package/dist/utils/storage.d.ts +12 -0
  133. package/dist/utils/validate.d.cts +33 -0
  134. package/dist/utils/validate.d.ts +33 -0
  135. package/package.json +23 -1
@@ -0,0 +1,252 @@
1
+ declare const RESPONSE_STATUS: {
2
+ GRAPHQL_PARSE_FAILED: {
3
+ CODE: string;
4
+ MESSAGE: string;
5
+ };
6
+ GRAPHQL_VALIDATION_FAILED: {
7
+ CODE: string;
8
+ MESSAGE: string;
9
+ };
10
+ BAD_USER_INPUT: {
11
+ CODE: string;
12
+ MESSAGE: string;
13
+ };
14
+ PERSISTED_QUERY_NOT_FOUND: {
15
+ CODE: string;
16
+ MESSAGE: string;
17
+ };
18
+ PERSISTED_QUERY_NOT_SUPPORTED: {
19
+ CODE: string;
20
+ MESSAGE: string;
21
+ };
22
+ OPERATION_RESOLUTION_FAILURE: {
23
+ CODE: string;
24
+ MESSAGE: string;
25
+ };
26
+ CONTINUE: {
27
+ CODE: number;
28
+ MESSAGE: string;
29
+ };
30
+ SWITCHING_PROTOCOLS: {
31
+ CODE: number;
32
+ MESSAGE: string;
33
+ };
34
+ PROCESSING: {
35
+ CODE: number;
36
+ MESSAGE: string;
37
+ };
38
+ OK: {
39
+ CODE: number;
40
+ MESSAGE: string;
41
+ };
42
+ CREATED: {
43
+ CODE: number;
44
+ MESSAGE: string;
45
+ };
46
+ ACCEPTED: {
47
+ CODE: number;
48
+ MESSAGE: string;
49
+ };
50
+ NON_AUTHORITATIVE_INFORMATION: {
51
+ CODE: number;
52
+ MESSAGE: string;
53
+ };
54
+ NO_CONTENT: {
55
+ CODE: number;
56
+ MESSAGE: string;
57
+ };
58
+ RESET_CONTENT: {
59
+ CODE: number;
60
+ MESSAGE: string;
61
+ };
62
+ PARTIAL_CONTENT: {
63
+ CODE: number;
64
+ MESSAGE: string;
65
+ };
66
+ MULTI_STATUS: {
67
+ CODE: number;
68
+ MESSAGE: string;
69
+ };
70
+ MULTIPLE_CHOICES: {
71
+ CODE: number;
72
+ MESSAGE: string;
73
+ };
74
+ MOVED_PERMANENTLY: {
75
+ CODE: number;
76
+ MESSAGE: string;
77
+ };
78
+ MOVED_TEMPORARILY: {
79
+ CODE: number;
80
+ MESSAGE: string;
81
+ };
82
+ SEE_OTHER: {
83
+ CODE: number;
84
+ MESSAGE: string;
85
+ };
86
+ NOT_MODIFIED: {
87
+ CODE: number;
88
+ MESSAGE: string;
89
+ };
90
+ USE_PROXY: {
91
+ CODE: number;
92
+ MESSAGE: string;
93
+ };
94
+ TEMPORARY_REDIRECT: {
95
+ CODE: number;
96
+ MESSAGE: string;
97
+ };
98
+ PERMANENT_REDIRECT: {
99
+ CODE: number;
100
+ MESSAGE: string;
101
+ };
102
+ BAD_REQUEST: {
103
+ CODE: number;
104
+ MESSAGE: string;
105
+ };
106
+ UNAUTHORIZED: {
107
+ CODE: number;
108
+ MESSAGE: string;
109
+ };
110
+ PAYMENT_REQUIRED: {
111
+ CODE: number;
112
+ MESSAGE: string;
113
+ };
114
+ FORBIDDEN: {
115
+ CODE: number;
116
+ MESSAGE: string;
117
+ };
118
+ NOT_FOUND: {
119
+ CODE: number;
120
+ MESSAGE: string;
121
+ };
122
+ METHOD_NOT_ALLOWED: {
123
+ CODE: number;
124
+ MESSAGE: string;
125
+ };
126
+ NOT_ACCEPTABLE: {
127
+ CODE: number;
128
+ MESSAGE: string;
129
+ };
130
+ PROXY_AUTHENTICATION_REQUIRED: {
131
+ CODE: number;
132
+ MESSAGE: string;
133
+ };
134
+ REQUEST_TIMEOUT: {
135
+ CODE: number;
136
+ MESSAGE: string;
137
+ };
138
+ CONFLICT: {
139
+ CODE: number;
140
+ MESSAGE: string;
141
+ };
142
+ GONE: {
143
+ CODE: number;
144
+ MESSAGE: string;
145
+ };
146
+ LENGTH_REQUIRED: {
147
+ CODE: number;
148
+ MESSAGE: string;
149
+ };
150
+ PRECONDITION_FAILED: {
151
+ CODE: number;
152
+ MESSAGE: string;
153
+ };
154
+ REQUEST_TOO_LONG: {
155
+ CODE: number;
156
+ MESSAGE: string;
157
+ };
158
+ REQUEST_URI_TOO_LONG: {
159
+ CODE: number;
160
+ MESSAGE: string;
161
+ };
162
+ UNSUPPORTED_MEDIA_TYPE: {
163
+ CODE: number;
164
+ MESSAGE: string;
165
+ };
166
+ REQUESTED_RANGE_NOT_SATISFIABLE: {
167
+ CODE: number;
168
+ MESSAGE: string;
169
+ };
170
+ EXPECTATION_FAILED: {
171
+ CODE: number;
172
+ MESSAGE: string;
173
+ };
174
+ IM_A_TEAPOT: {
175
+ CODE: number;
176
+ MESSAGE: string;
177
+ };
178
+ INSUFFICIENT_SPACE_ON_RESOURCE: {
179
+ CODE: number;
180
+ MESSAGE: string;
181
+ };
182
+ METHOD_FAILURE: {
183
+ CODE: number;
184
+ MESSAGE: string;
185
+ };
186
+ MISDIRECTED_REQUEST: {
187
+ CODE: number;
188
+ MESSAGE: string;
189
+ };
190
+ UNPROCESSABLE_ENTITY: {
191
+ CODE: number;
192
+ MESSAGE: string;
193
+ };
194
+ LOCKED: {
195
+ CODE: number;
196
+ MESSAGE: string;
197
+ };
198
+ FAILED_DEPENDENCY: {
199
+ CODE: number;
200
+ MESSAGE: string;
201
+ };
202
+ PRECONDITION_REQUIRED: {
203
+ CODE: number;
204
+ MESSAGE: string;
205
+ };
206
+ TOO_MANY_REQUESTS: {
207
+ CODE: number;
208
+ MESSAGE: string;
209
+ };
210
+ REQUEST_HEADER_FIELDS_TOO_LARGE: {
211
+ CODE: number;
212
+ MESSAGE: string;
213
+ };
214
+ UNAVAILABLE_FOR_LEGAL_REASONS: {
215
+ CODE: number;
216
+ MESSAGE: string;
217
+ };
218
+ INTERNAL_SERVER_ERROR: {
219
+ CODE: number;
220
+ MESSAGE: string;
221
+ };
222
+ NOT_IMPLEMENTED: {
223
+ CODE: number;
224
+ MESSAGE: string;
225
+ };
226
+ BAD_GATEWAY: {
227
+ CODE: number;
228
+ MESSAGE: string;
229
+ };
230
+ SERVICE_UNAVAILABLE: {
231
+ CODE: number;
232
+ MESSAGE: string;
233
+ };
234
+ GATEWAY_TIMEOUT: {
235
+ CODE: number;
236
+ MESSAGE: string;
237
+ };
238
+ HTTP_VERSION_NOT_SUPPORTED: {
239
+ CODE: number;
240
+ MESSAGE: string;
241
+ };
242
+ INSUFFICIENT_STORAGE: {
243
+ CODE: number;
244
+ MESSAGE: string;
245
+ };
246
+ NETWORK_AUTHENTICATION_REQUIRED: {
247
+ CODE: number;
248
+ MESSAGE: string;
249
+ };
250
+ };
251
+
252
+ export { RESPONSE_STATUS };
@@ -0,0 +1,4 @@
1
+ export { LoadingContext } from './loading.cjs';
2
+ import 'react';
3
+ import '../../typescript/react.cjs';
4
+ import '@apollo/client';
@@ -0,0 +1,4 @@
1
+ export { LoadingContext } from './loading.js';
2
+ import 'react';
3
+ import '../../typescript/react.js';
4
+ import '@apollo/client';
@@ -0,0 +1,7 @@
1
+ import * as react from 'react';
2
+ import { I_LoadingContext } from '../../typescript/react.cjs';
3
+ import '@apollo/client';
4
+
5
+ declare const LoadingContext: react.Context<I_LoadingContext | undefined>;
6
+
7
+ export { LoadingContext };
@@ -0,0 +1,7 @@
1
+ import * as react from 'react';
2
+ import { I_LoadingContext } from '../../typescript/react.js';
3
+ import '@apollo/client';
4
+
5
+ declare const LoadingContext: react.Context<I_LoadingContext | undefined>;
6
+
7
+ export { LoadingContext };
@@ -1 +1 @@
1
- "use strict";function e(e,t,r,n,s,u,a){try{var c=e[u](a);var o=c.value}catch(e){r(e);return}if(c.done){t(o)}else{Promise.resolve(o).then(n,s)}}function t(t){return function(){var r=this,n=arguments;return new Promise(function(s,u){var a=t.apply(r,n);function c(t){e(a,s,u,c,o,"next",t)}function o(t){e(a,s,u,c,o,"throw",t)}c(undefined)})}}function r(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function n(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if("value"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}function s(e,t,r){if(t)n(e.prototype,t);if(r)n(e,r);return e}function u(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function a(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function c(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){u(e,t,r[t])})}return e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(t){n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,n)}return r}function i(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{o(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function l(e,t){if(e==null)return{};var r=E(e,t);var n,s;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(s=0;s<u.length;s++){n=u[s];if(t.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;r[n]=e[n]}}return r}function E(e,t){if(e==null)return{};var r={};var n=Object.keys(e);var s,u;for(u=0;u<n.length;u++){s=n[u];if(t.indexOf(s)>=0)continue;r[s]=e[s]}return r}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function f(e,t){var r,n,s,u,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]};return u={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(e){return function(t){return o([e,t])}}function o(u){if(r)throw new TypeError("Generator is already executing.");while(a)try{if(r=1,n&&(s=u[0]&2?n["return"]:u[0]?n["throw"]||((s=n["return"])&&s.call(n),0):n.next)&&!(s=s.call(n,u[1])).done)return s;if(n=0,s)u=[u[0]&2,s.value];switch(u[0]){case 0:case 1:s=u;break;case 4:a.label++;return{value:u[1],done:false};case 5:a.label++;n=u[1];u=[0];continue;case 7:u=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(u[0]===6||u[0]===2)){a=0;continue}if(u[0]===3&&(!s||u[1]>s[0]&&u[1]<s[3])){a.label=u[1];break}if(u[0]===6&&a.label<s[1]){a.label=s[1];s=u;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(u);break}if(s[2])a.ops.pop();a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e];n=0}finally{r=s=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}}var O=Object.create;var h=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var m=function(e,t){for(var r in t)h(e,r,{get:t[r],enumerable:!0})},A=function(e,t,r,n){var s=true,u=false,a=undefined;if(t&&(typeof t==="undefined"?"undefined":d(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!g.call(e,s)&&s!==r&&h(e,s,{get:function(){return t[s]},enumerable:!(n=S(t,s))||n.enumerable})};for(var o=v(t)[Symbol.iterator](),i;!(s=(i=o.next()).done);s=true)c()}catch(e){u=true;a=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(u){throw a}}}return e};var y=function(e,t,r){return r=e!=null?O(R(e)):{},A(t||!e||!e.__esModule?h(r,"default",{value:e,enumerable:!0}):r,e)},D=function(e){return A(h({},"__esModule",{value:!0}),e)};var p={};m(p,{MigrationController:function(){return N},MongooseController:function(){return ey}});module.exports=D(p);var _=function(){return(typeof document==="undefined"?"undefined":d(document))>"u"?new URL("file:".concat(__filename)).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href},T=_();var N=/*#__PURE__*/function(){function e(t,n){r(this,e);this.collection=t.collection(n)}s(e,[{key:"createOne",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Document created successfully"};return[4,r.collection.insertOne(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.insertMany(e)];case 1:t=s.sent();return[2,t.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(t.insertedCount," documents created successfully"),result:t}];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.findOne(e)];case 1:t=s.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Documents retrieved successfully"};return[4,r.collection.find(e).toArray()];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Count retrieved successfully"};return[4,r.collection.countDocuments(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,r){var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.collection.updateOne(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,r){var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.collection.updateMany(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.deleteOne(e)];case 1:t=s.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=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.deleteMany(e)];case 1:t=s.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=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}}]);return e}();var C=require("mongoose");var M=require("path"),b=require("url"),I=(0,b.fileURLToPath)(T),G=(0,M.dirname)(I);var P={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 w=y(require("unorm"),1);var L=y(require("localforage"),1),U=y(require("node-persist"),1),q=y(require("os"),1),F=y(require("path"),1),k=y(require("process"),1);var j=k.default.env.CYBERSKILL_STORAGE_DIR||F.default.join(q.default.homedir(),".cyberskill-storage");var Q=24*60*60*1e3;var x=y(require("boxen"),1),V=y(require("chalk"),1);var H=V.default,Y=H.blue,B=H.red,K=H.yellow,W=H.green,$=H.gray,X=H.bold;var z=y(require("process"),1),Z=y(require("ora"),1);var J=y(require("chalk"),1),ee=require("child_process"),et=y(require("process"),1),er=y(require("util"),1);var en=er.promisify(ee.exec),es=J.default,eu=es.gray,ea=es.white;var ec=require("graphql");var eo=y(require("crypto-js"),1),ei=y(require("mongoose-aggregate-paginate-v2"),1),el=y(require("mongoose-paginate-v2"),1),eE=y(require("slugify"),1),ed=require("uuid");var ef=eE.default.default||eE.default;function eO(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var r=t||{},n=r.lower,s=n===void 0?!0:n,u=r.locale,a=u===void 0?"vi":u,o=l(r,["lower","locale"]);return ef(e,c({lower:s,locale:a},o))}function eh(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return eo.default.SHA256(e).toString(eo.default.enc.Hex).slice(0,t)}function eS(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0;return i(c({},t,r&&{id:{$ne:r}}),{$or:[{slug:e},{slugHistory:e}]})}var ev=y(require("node-fetch"),1),eR=y(require("fs"),1),eg=y(require("path"),1),em=y(require("process"),1);var eA=24*60*60*1e3;var ey=/*#__PURE__*/function(){function e(t){r(this,e);this.model=t}s(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.findOne(e,r,n);s&&t.populate(s);return[4,t.exec()];case 1:a=o.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:P.NOT_FOUND.CODE}];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.find(e,r,n);s&&t.populate(s);a={success:!0};return[4,t.exec()];case 1:return[2,(a.result=o.sent(),a)];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.paginate(e,r)];case 1:return[2,(t.result=u.sent(),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.aggregatePaginate(n.model.aggregate(e),r)];case 1:return[2,(t.result=u.sent(),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.countDocuments(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.create(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.insertMany(e,r)];case 1:return[2,(t.result=u.sent().map(function(e){return a(e,C.Document)?e.toObject():null}).filter(function(e){return e!==null}),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,r,c({new:!0},n)).exec()];case 1:t=a.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:P.NOT_FOUND.CODE}];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);t={success:!0};return[4,s.model.updateMany(e,r,n).exec()];case 1:return[2,(t.result=a.sent(),t)];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.model.findOneAndDelete(e,r).exec()];case 1:t=u.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"No ".concat(n.getModelName()," found to delete."),code:P.NOT_FOUND.CODE}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.model.deleteMany(e,r).exec()];case 1:t=u.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents found to delete.",code:P.NOT_FOUND.CODE}:{success:!0,result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"generateShortId",value:function e(e){var r=this;return t(function(){var t,n,s,u;return f(this,function(a){switch(a.label){case 0:t=new Set;n=0;a.label=1;case 1:if(!(n<10))return[3,5];s=eh(e,n+4);u=!t.has(s);if(!u)return[3,3];t.add(s);return[4,r.model.exists({shortId:s})];case 2:u=!a.sent();a.label=3;case 3:if(u)return[2,{success:!0,result:s}];a.label=4;case 4:n++;return[3,1];case 5:return[2,{success:!1,message:"Failed to generate a unique shortId",code:P.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"generateSlug",value:function e(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u,a,c,o;return f(this,function(i){switch(i.label){case 0:i.trys.push([0,6,,7]);t=eO(r[e]);return[4,s.model.findOne(eS(t,n,r.id))];case 1:u=i.sent();if(!u)return[2,{success:!0,result:t}];a=1;i.label=2;case 2:c="".concat(t,"-").concat(a);return[4,s.model.findOne(eS(c,n,r.id))];case 3:u=i.sent(),a++;i.label=4;case 4:if(u)return[3,2];i.label=5;case 5:return[2,{success:!0,result:c}];case 6:o=i.sent();return[2,{success:!1,message:"Failed to generate a unique slug: ".concat(o.message),code:P.INTERNAL_SERVER_ERROR.CODE}];case 7:return[2]}})})()}},{key:"aggregate",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.aggregate(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();0&&(module.exports={MigrationController:MigrationController,MongooseController:MongooseController});
1
+ "use strict";function e(e,t,r,n,s,u,a){try{var c=e[u](a);var o=c.value}catch(e){r(e);return}if(c.done){t(o)}else{Promise.resolve(o).then(n,s)}}function t(t){return function(){var r=this,n=arguments;return new Promise(function(s,u){var a=t.apply(r,n);function c(t){e(a,s,u,c,o,"next",t)}function o(t){e(a,s,u,c,o,"throw",t)}c(undefined)})}}function r(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function n(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if("value"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}function s(e,t,r){if(t)n(e.prototype,t);if(r)n(e,r);return e}function u(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function a(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function c(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){u(e,t,r[t])})}return e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(t){n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,n)}return r}function i(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{o(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function l(e,t){if(e==null)return{};var r=E(e,t);var n,s;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(s=0;s<u.length;s++){n=u[s];if(t.indexOf(n)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,n))continue;r[n]=e[n]}}return r}function E(e,t){if(e==null)return{};var r={};var n=Object.keys(e);var s,u;for(u=0;u<n.length;u++){s=n[u];if(t.indexOf(s)>=0)continue;r[s]=e[s]}return r}function d(e){"@swc/helpers - typeof";return e&&typeof Symbol!=="undefined"&&e.constructor===Symbol?"symbol":typeof e}function f(e,t){var r,n,s,u,a={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]};return u={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(e){return function(t){return o([e,t])}}function o(u){if(r)throw new TypeError("Generator is already executing.");while(a)try{if(r=1,n&&(s=u[0]&2?n["return"]:u[0]?n["throw"]||((s=n["return"])&&s.call(n),0):n.next)&&!(s=s.call(n,u[1])).done)return s;if(n=0,s)u=[u[0]&2,s.value];switch(u[0]){case 0:case 1:s=u;break;case 4:a.label++;return{value:u[1],done:false};case 5:a.label++;n=u[1];u=[0];continue;case 7:u=a.ops.pop();a.trys.pop();continue;default:if(!(s=a.trys,s=s.length>0&&s[s.length-1])&&(u[0]===6||u[0]===2)){a=0;continue}if(u[0]===3&&(!s||u[1]>s[0]&&u[1]<s[3])){a.label=u[1];break}if(u[0]===6&&a.label<s[1]){a.label=s[1];s=u;break}if(s&&a.label<s[2]){a.label=s[2];a.ops.push(u);break}if(s[2])a.ops.pop();a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e];n=0}finally{r=s=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}}var O=Object.create;var h=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var R=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var m=function(e,t){for(var r in t)h(e,r,{get:t[r],enumerable:!0})},A=function(e,t,r,n){var s=true,u=false,a=undefined;if(t&&(typeof t==="undefined"?"undefined":d(t))=="object"||typeof t=="function")try{var c=function(){var s=i.value;!g.call(e,s)&&s!==r&&h(e,s,{get:function(){return t[s]},enumerable:!(n=S(t,s))||n.enumerable})};for(var o=v(t)[Symbol.iterator](),i;!(s=(i=o.next()).done);s=true)c()}catch(e){u=true;a=e}finally{try{if(!s&&o.return!=null){o.return()}}finally{if(u){throw a}}}return e};var y=function(e,t,r){return r=e!=null?O(R(e)):{},A(t||!e||!e.__esModule?h(r,"default",{value:e,enumerable:!0}):r,e)},D=function(e){return A(h({},"__esModule",{value:!0}),e)};var p={};m(p,{MigrationController:function(){return N},MongooseController:function(){return eA}});module.exports=D(p);var _=function(){return(typeof document==="undefined"?"undefined":d(document))>"u"?new URL("file:".concat(__filename)).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href},T=_();var N=/*#__PURE__*/function(){function e(t,n){r(this,e);this.collection=t.collection(n)}s(e,[{key:"createOne",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Document created successfully"};return[4,r.collection.insertOne(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.insertMany(e)];case 1:t=s.sent();return[2,t.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(t.insertedCount," documents created successfully"),result:t}];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.findOne(e)];case 1:t=s.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Documents retrieved successfully"};return[4,r.collection.find(e).toArray()];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0,message:"Count retrieved successfully"};return[4,r.collection.countDocuments(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,r){var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.collection.updateOne(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,r){var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.collection.updateMany(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.deleteOne(e)];case 1:t=s.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=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);return[4,r.collection.deleteMany(e)];case 1:t=s.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=s.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}}]);return e}();var C=require("mongoose");var M=require("path"),b=require("url"),I=(0,b.fileURLToPath)(T),G=(0,M.dirname)(I);var P={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 w=y(require("unorm"),1);var L=y(require("localforage"),1),U=y(require("node-persist"),1),q=y(require("os"),1),F=y(require("path"),1),k=y(require("process"),1);var j=k.default.env.CYBERSKILL_STORAGE_DIR||F.default.join(q.default.homedir(),".cyberskill-storage");var Q=y(require("boxen"),1),x=y(require("chalk"),1);var V=x.default,H=V.blue,Y=V.red,B=V.yellow,K=V.green,W=V.gray,$=V.bold;var X=y(require("process"),1),z=y(require("ora"),1);var Z=y(require("chalk"),1),J=require("child_process"),ee=y(require("process"),1),et=y(require("util"),1);var er=et.promisify(J.exec),en=Z.default,es=en.gray,eu=en.white;var ea=require("graphql");var ec=y(require("crypto-js"),1),eo=y(require("mongoose-aggregate-paginate-v2"),1),ei=y(require("mongoose-paginate-v2"),1),el=y(require("slugify"),1),eE=require("uuid");var ed=el.default.default||el.default;function ef(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var r=t||{},n=r.lower,s=n===void 0?!0:n,u=r.locale,a=u===void 0?"vi":u,o=l(r,["lower","locale"]);return ed(e,c({lower:s,locale:a},o))}function eO(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return ec.default.SHA256(e).toString(ec.default.enc.Hex).slice(0,t)}function eh(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0;return i(c({},t,r&&{id:{$ne:r}}),{$or:[{slug:e},{slugHistory:e}]})}var eS=y(require("node-fetch"),1),ev=y(require("fs"),1),eR=y(require("path"),1),eg=y(require("process"),1);var em=24*60*60*1e3;var eA=/*#__PURE__*/function(){function e(t){r(this,e);this.model=t}s(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.findOne(e,r,n);s&&t.populate(s);return[4,t.exec()];case 1:a=o.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:P.NOT_FOUND.CODE}];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return f(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.find(e,r,n);s&&t.populate(s);a={success:!0};return[4,t.exec()];case 1:return[2,(a.result=o.sent(),a)];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.paginate(e,r)];case 1:return[2,(t.result=u.sent(),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.aggregatePaginate(n.model.aggregate(e),r)];case 1:return[2,(t.result=u.sent(),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.countDocuments(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.create(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,n.model.insertMany(e,r)];case 1:return[2,(t.result=u.sent().map(function(e){return a(e,C.Document)?e.toObject():null}).filter(function(e){return e!==null}),t)];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,s.model.findOneAndUpdate(e,r,c({new:!0},n)).exec()];case 1:t=a.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"Failed to update ".concat(s.getModelName(),"."),code:P.NOT_FOUND.CODE}];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u;return f(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);t={success:!0};return[4,s.model.updateMany(e,r,n).exec()];case 1:return[2,(t.result=a.sent(),t)];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.model.findOneAndDelete(e,r).exec()];case 1:t=u.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"No ".concat(n.getModelName()," found to delete."),code:P.NOT_FOUND.CODE}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var n=this;return t(function(){var t,s;return f(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,n.model.deleteMany(e,r).exec()];case 1:t=u.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents found to delete.",code:P.NOT_FOUND.CODE}:{success:!0,result:t}];case 2:s=u.sent();return[2,{success:!1,message:s.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"generateShortId",value:function e(e){var r=this;return t(function(){var t,n,s,u;return f(this,function(a){switch(a.label){case 0:t=new Set;n=0;a.label=1;case 1:if(!(n<10))return[3,5];s=eO(e,n+4);u=!t.has(s);if(!u)return[3,3];t.add(s);return[4,r.model.exists({shortId:s})];case 2:u=!a.sent();a.label=3;case 3:if(u)return[2,{success:!0,result:s}];a.label=4;case 4:n++;return[3,1];case 5:return[2,{success:!1,message:"Failed to generate a unique shortId",code:P.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"generateSlug",value:function e(e,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var s=this;return t(function(){var t,u,a,c,o;return f(this,function(i){switch(i.label){case 0:i.trys.push([0,6,,7]);t=ef(r[e]);return[4,s.model.findOne(eh(t,n,r.id))];case 1:u=i.sent();if(!u)return[2,{success:!0,result:t}];a=1;i.label=2;case 2:c="".concat(t,"-").concat(a);return[4,s.model.findOne(eh(c,n,r.id))];case 3:u=i.sent(),a++;i.label=4;case 4:if(u)return[3,2];i.label=5;case 5:return[2,{success:!0,result:c}];case 6:o=i.sent();return[2,{success:!1,message:"Failed to generate a unique slug: ".concat(o.message),code:P.INTERNAL_SERVER_ERROR.CODE}];case 7:return[2]}})})()}},{key:"aggregate",value:function e(e){var r=this;return t(function(){var t,n;return f(this,function(s){switch(s.label){case 0:s.trys.push([0,2,,3]);t={success:!0};return[4,r.model.aggregate(e)];case 1:return[2,(t.result=s.sent(),t)];case 2:n=s.sent();return[2,{success:!1,message:n.message,code:P.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();0&&(module.exports={MigrationController:MigrationController,MongooseController:MongooseController});
@@ -0,0 +1,5 @@
1
+ export { MigrationController } from './migration.cjs';
2
+ export { MongooseController } from './mongoose.cjs';
3
+ import '../typescript/mongoose.cjs';
4
+ import 'mongodb';
5
+ import 'mongoose';
@@ -0,0 +1,5 @@
1
+ export { MigrationController } from './migration.js';
2
+ export { MongooseController } from './mongoose.js';
3
+ import '../typescript/mongoose.js';
4
+ import 'mongodb';
5
+ import 'mongoose';
@@ -1 +1 @@
1
- function e(e,t,r,s,n,u,a){try{var c=e[u](a);var o=c.value}catch(e){r(e);return}if(c.done){t(o)}else{Promise.resolve(o).then(s,n)}}function t(t){return function(){var r=this,s=arguments;return new Promise(function(n,u){var a=t.apply(r,s);function c(t){e(a,n,u,c,o,"next",t)}function o(t){e(a,n,u,c,o,"throw",t)}c(undefined)})}}function r(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function s(e,t){for(var r=0;r<t.length;r++){var s=t[r];s.enumerable=s.enumerable||false;s.configurable=true;if("value"in s)s.writable=true;Object.defineProperty(e,s.key,s)}}function n(e,t,r){if(t)s(e.prototype,t);if(r)s(e,r);return e}function u(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function a(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function c(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var s=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){s=s.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}s.forEach(function(t){u(e,t,r[t])})}return e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);if(t){s=s.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,s)}return r}function i(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{o(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function E(e,t){if(e==null)return{};var r=l(e,t);var s,n;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n<u.length;n++){s=u[n];if(t.indexOf(s)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,s))continue;r[s]=e[s]}}return r}function l(e,t){if(e==null)return{};var r={};var s=Object.keys(e);var n,u;for(u=0;u<s.length;u++){n=s[u];if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function d(e,t){var r,s,n,u,a={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]};return u={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(e){return function(t){return o([e,t])}}function o(u){if(r)throw new TypeError("Generator is already executing.");while(a)try{if(r=1,s&&(n=u[0]&2?s["return"]:u[0]?s["throw"]||((n=s["return"])&&n.call(s),0):s.next)&&!(n=n.call(s,u[1])).done)return n;if(s=0,n)u=[u[0]&2,n.value];switch(u[0]){case 0:case 1:n=u;break;case 4:a.label++;return{value:u[1],done:false};case 5:a.label++;s=u[1];u=[0];continue;case 7:u=a.ops.pop();a.trys.pop();continue;default:if(!(n=a.trys,n=n.length>0&&n[n.length-1])&&(u[0]===6||u[0]===2)){a=0;continue}if(u[0]===3&&(!n||u[1]>n[0]&&u[1]<n[3])){a.label=u[1];break}if(u[0]===6&&a.label<n[1]){a.label=n[1];n=u;break}if(n&&a.label<n[2]){a.label=n[2];a.ops.push(u);break}if(n[2])a.ops.pop();a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e];s=0}finally{r=n=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}}var O=/*#__PURE__*/function(){"use strict";function e(t,s){r(this,e);this.collection=t.collection(s)}n(e,[{key:"createOne",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0,message:"Document created successfully"};return[4,r.collection.insertOne(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,r.collection.insertMany(e)];case 1:t=n.sent();return[2,t.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(t.insertedCount," documents created successfully"),result:t}];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,r.collection.findOne(e)];case 1:t=n.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0,message:"Documents retrieved successfully"};return[4,r.collection.find(e).toArray()];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0,message:"Count retrieved successfully"};return[4,r.collection.countDocuments(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,r){var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,s.collection.updateOne(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:t}];case 2:n=u.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,r){var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,s.collection.updateMany(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:t}];case 2:n=u.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,r.collection.deleteOne(e)];case 1:t=n.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,r.collection.deleteMany(e)];case 1:t=n.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}}]);return e}();import{Document as f}from"mongoose";import{dirname as h}from"node:path";import{fileURLToPath as S}from"node:url";var m=S(import.meta.url),R=h(m);var g={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 v from"unorm";import A from"localforage";import D from"node-persist";import p from"node:os";import T from"node:path";import y from"node:process";var _=y.env.CYBERSKILL_STORAGE_DIR||T.join(p.homedir(),".cyberskill-storage");var N=24*60*60*1e3;import C from"boxen";import M from"chalk";var I=M.blue,b=M.red,G=M.yellow,P=M.green,L=M.gray,U=M.bold;import w from"ora";import F from"chalk";import{exec as k}from"node:child_process";import*as Q from"node:util";var V=Q.promisify(k),q=F.gray,j=F.white;import{GraphQLError as x}from"graphql";import H from"crypto-js";import Y from"mongoose-aggregate-paginate-v2";import B from"mongoose-paginate-v2";import K from"slugify";import{v4 as W}from"uuid";var $=K.default||K;function X(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var r=t||{},s=r.lower,n=s===void 0?!0:s,u=r.locale,a=u===void 0?"vi":u,o=E(r,["lower","locale"]);return $(e,c({lower:n,locale:a},o))}function z(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return H.SHA256(e).toString(H.enc.Hex).slice(0,t)}function Z(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0;return i(c({},t,r&&{id:{$ne:r}}),{$or:[{slug:e},{slugHistory:e}]})}import J from"node-fetch";var ee=24*60*60*1e3;var et=/*#__PURE__*/function(){"use strict";function e(t){r(this,e);this.model=t}n(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return d(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.findOne(e,r,s);n&&t.populate(n);return[4,t.exec()];case 1:a=o.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:g.NOT_FOUND.CODE}];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return d(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.find(e,r,s);n&&t.populate(n);a={success:!0};return[4,t.exec()];case 1:return[2,(a.result=o.sent(),a)];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,s.model.paginate(e,r)];case 1:return[2,(t.result=u.sent(),t)];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,s.model.aggregatePaginate(s.model.aggregate(e),r)];case 1:return[2,(t.result=u.sent(),t)];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0};return[4,r.model.countDocuments(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0};return[4,r.model.create(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,s.model.insertMany(e,r)];case 1:return[2,(t.result=u.sent().map(function(e){return a(e,f)?e.toObject():null}).filter(function(e){return e!==null}),t)];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=this;return t(function(){var t,u;return d(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.model.findOneAndUpdate(e,r,c({new:!0},s)).exec()];case 1:t=a.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"Failed to update ".concat(n.getModelName(),"."),code:g.NOT_FOUND.CODE}];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=this;return t(function(){var t,u;return d(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);t={success:!0};return[4,n.model.updateMany(e,r,s).exec()];case 1:return[2,(t.result=a.sent(),t)];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,s.model.findOneAndDelete(e,r).exec()];case 1:t=u.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"No ".concat(s.getModelName()," found to delete."),code:g.NOT_FOUND.CODE}];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,s.model.deleteMany(e,r).exec()];case 1:t=u.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents found to delete.",code:g.NOT_FOUND.CODE}:{success:!0,result:t}];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"generateShortId",value:function e(e){var r=this;return t(function(){var t,s,n,u;return d(this,function(a){switch(a.label){case 0:t=new Set;s=0;a.label=1;case 1:if(!(s<10))return[3,5];n=z(e,s+4);u=!t.has(n);if(!u)return[3,3];t.add(n);return[4,r.model.exists({shortId:n})];case 2:u=!a.sent();a.label=3;case 3:if(u)return[2,{success:!0,result:n}];a.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to generate a unique shortId",code:g.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"generateSlug",value:function e(e,r){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=this;return t(function(){var t,u,a,c,o;return d(this,function(i){switch(i.label){case 0:i.trys.push([0,6,,7]);t=X(r[e]);return[4,n.model.findOne(Z(t,s,r.id))];case 1:u=i.sent();if(!u)return[2,{success:!0,result:t}];a=1;i.label=2;case 2:c="".concat(t,"-").concat(a);return[4,n.model.findOne(Z(c,s,r.id))];case 3:u=i.sent(),a++;i.label=4;case 4:if(u)return[3,2];i.label=5;case 5:return[2,{success:!0,result:c}];case 6:o=i.sent();return[2,{success:!1,message:"Failed to generate a unique slug: ".concat(o.message),code:g.INTERNAL_SERVER_ERROR.CODE}];case 7:return[2]}})})()}},{key:"aggregate",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0};return[4,r.model.aggregate(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();export{O as MigrationController,et as MongooseController};
1
+ function e(e,t,r,s,n,u,a){try{var c=e[u](a);var o=c.value}catch(e){r(e);return}if(c.done){t(o)}else{Promise.resolve(o).then(s,n)}}function t(t){return function(){var r=this,s=arguments;return new Promise(function(n,u){var a=t.apply(r,s);function c(t){e(a,n,u,c,o,"next",t)}function o(t){e(a,n,u,c,o,"throw",t)}c(undefined)})}}function r(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}function s(e,t){for(var r=0;r<t.length;r++){var s=t[r];s.enumerable=s.enumerable||false;s.configurable=true;if("value"in s)s.writable=true;Object.defineProperty(e,s.key,s)}}function n(e,t,r){if(t)s(e.prototype,t);if(r)s(e,r);return e}function u(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}function a(e,t){if(t!=null&&typeof Symbol!=="undefined"&&t[Symbol.hasInstance]){return!!t[Symbol.hasInstance](e)}else{return e instanceof t}}function c(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var s=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){s=s.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}s.forEach(function(t){u(e,t,r[t])})}return e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);if(t){s=s.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,s)}return r}function i(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(e,Object.getOwnPropertyDescriptors(t))}else{o(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function E(e,t){if(e==null)return{};var r=l(e,t);var s,n;if(Object.getOwnPropertySymbols){var u=Object.getOwnPropertySymbols(e);for(n=0;n<u.length;n++){s=u[n];if(t.indexOf(s)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,s))continue;r[s]=e[s]}}return r}function l(e,t){if(e==null)return{};var r={};var s=Object.keys(e);var n,u;for(u=0;u<s.length;u++){n=s[u];if(t.indexOf(n)>=0)continue;r[n]=e[n]}return r}function d(e,t){var r,s,n,u,a={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]};return u={next:c(0),"throw":c(1),"return":c(2)},typeof Symbol==="function"&&(u[Symbol.iterator]=function(){return this}),u;function c(e){return function(t){return o([e,t])}}function o(u){if(r)throw new TypeError("Generator is already executing.");while(a)try{if(r=1,s&&(n=u[0]&2?s["return"]:u[0]?s["throw"]||((n=s["return"])&&n.call(s),0):s.next)&&!(n=n.call(s,u[1])).done)return n;if(s=0,n)u=[u[0]&2,n.value];switch(u[0]){case 0:case 1:n=u;break;case 4:a.label++;return{value:u[1],done:false};case 5:a.label++;s=u[1];u=[0];continue;case 7:u=a.ops.pop();a.trys.pop();continue;default:if(!(n=a.trys,n=n.length>0&&n[n.length-1])&&(u[0]===6||u[0]===2)){a=0;continue}if(u[0]===3&&(!n||u[1]>n[0]&&u[1]<n[3])){a.label=u[1];break}if(u[0]===6&&a.label<n[1]){a.label=n[1];n=u;break}if(n&&a.label<n[2]){a.label=n[2];a.ops.push(u);break}if(n[2])a.ops.pop();a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e];s=0}finally{r=n=0}if(u[0]&5)throw u[1];return{value:u[0]?u[1]:void 0,done:true}}}var O=/*#__PURE__*/function(){"use strict";function e(t,s){r(this,e);this.collection=t.collection(s)}n(e,[{key:"createOne",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0,message:"Document created successfully"};return[4,r.collection.insertOne(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,r.collection.insertMany(e)];case 1:t=n.sent();return[2,t.insertedCount===0?{success:!1,message:"No documents were inserted"}:{success:!0,message:"".concat(t.insertedCount," documents created successfully"),result:t}];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findOne",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,r.collection.findOne(e)];case 1:t=n.sent();return[2,t?{success:!0,message:"Document found",result:t}:{success:!1,message:"Document not found"}];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0,message:"Documents retrieved successfully"};return[4,r.collection.find(e).toArray()];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0,message:"Count retrieved successfully"};return[4,r.collection.countDocuments(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(e,r){var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,s.collection.updateOne(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document updated successfully",result:t}];case 2:n=u.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(e,r){var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,s.collection.updateMany(e,{$set:r})];case 1:t=u.sent();return[2,t.matchedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents updated successfully",result:t}];case 2:n=u.sent();return[2,{success:!1,message:n.message}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,r.collection.deleteOne(e)];case 1:t=n.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Document deleted successfully",result:t}];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);return[4,r.collection.deleteMany(e)];case 1:t=n.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents matched the filter"}:{success:!0,message:"Documents deleted successfully",result:t}];case 2:s=n.sent();return[2,{success:!1,message:s.message}];case 3:return[2]}})})()}}]);return e}();import{Document as f}from"mongoose";import{dirname as h}from"node:path";import{fileURLToPath as S}from"node:url";var m=S(import.meta.url),R=h(m);var g={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 v from"unorm";import A from"localforage";import D from"node-persist";import p from"node:os";import T from"node:path";import y from"node:process";var _=y.env.CYBERSKILL_STORAGE_DIR||T.join(p.homedir(),".cyberskill-storage");import N from"boxen";import C from"chalk";var M=C.blue,I=C.red,b=C.yellow,G=C.green,P=C.gray,L=C.bold;import U from"ora";import w from"chalk";import{exec as F}from"node:child_process";import*as k from"node:util";var Q=k.promisify(F),V=w.gray,q=w.white;import{GraphQLError as j}from"graphql";import x from"crypto-js";import H from"mongoose-aggregate-paginate-v2";import Y from"mongoose-paginate-v2";import B from"slugify";import{v4 as K}from"uuid";var W=B.default||B;function $(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;var r=t||{},s=r.lower,n=s===void 0?!0:s,u=r.locale,a=u===void 0?"vi":u,o=E(r,["lower","locale"]);return W(e,c({lower:n,locale:a},o))}function X(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:4;return x.SHA256(e).toString(x.enc.Hex).slice(0,t)}function z(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0;return i(c({},t,r&&{id:{$ne:r}}),{$or:[{slug:e},{slugHistory:e}]})}import Z from"node-fetch";var J=24*60*60*1e3;var ee=/*#__PURE__*/function(){"use strict";function e(t){r(this,e);this.model=t}n(e,[{key:"getModelName",value:function e(){return this.model.modelName}},{key:"findOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return d(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.findOne(e,r,s);n&&t.populate(n);return[4,t.exec()];case 1:a=o.sent();return[2,a?{success:!0,result:a}:{success:!1,message:"No ".concat(u.getModelName()," found."),code:g.NOT_FOUND.CODE}];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findAll",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=arguments.length>3?arguments[3]:void 0;var u=this;return t(function(){var t,a,c;return d(this,function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);t=u.model.find(e,r,s);n&&t.populate(n);a={success:!0};return[4,t.exec()];case 1:return[2,(a.result=o.sent(),a)];case 2:c=o.sent();return[2,{success:!1,message:c.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPaging",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,s.model.paginate(e,r)];case 1:return[2,(t.result=u.sent(),t)];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"findPagingAggregate",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,s.model.aggregatePaginate(s.model.aggregate(e),r)];case 1:return[2,(t.result=u.sent(),t)];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"count",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0};return[4,r.model.countDocuments(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createOne",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0};return[4,r.model.create(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"createMany",value:function e(e){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);t={success:!0};return[4,s.model.insertMany(e,r)];case 1:return[2,(t.result=u.sent().map(function(e){return a(e,f)?e.toObject():null}).filter(function(e){return e!==null}),t)];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=this;return t(function(){var t,u;return d(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);return[4,n.model.findOneAndUpdate(e,r,c({new:!0},s)).exec()];case 1:t=a.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"Failed to update ".concat(n.getModelName(),"."),code:g.NOT_FOUND.CODE}];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"updateMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=this;return t(function(){var t,u;return d(this,function(a){switch(a.label){case 0:a.trys.push([0,2,,3]);t={success:!0};return[4,n.model.updateMany(e,r,s).exec()];case 1:return[2,(t.result=a.sent(),t)];case 2:u=a.sent();return[2,{success:!1,message:u.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteOne",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,s.model.findOneAndDelete(e,r).exec()];case 1:t=u.sent();return[2,t?{success:!0,result:t}:{success:!1,message:"No ".concat(s.getModelName()," found to delete."),code:g.NOT_FOUND.CODE}];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"deleteMany",value:function e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};var s=this;return t(function(){var t,n;return d(this,function(u){switch(u.label){case 0:u.trys.push([0,2,,3]);return[4,s.model.deleteMany(e,r).exec()];case 1:t=u.sent();return[2,t.deletedCount===0?{success:!1,message:"No documents found to delete.",code:g.NOT_FOUND.CODE}:{success:!0,result:t}];case 2:n=u.sent();return[2,{success:!1,message:n.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}},{key:"generateShortId",value:function e(e){var r=this;return t(function(){var t,s,n,u;return d(this,function(a){switch(a.label){case 0:t=new Set;s=0;a.label=1;case 1:if(!(s<10))return[3,5];n=X(e,s+4);u=!t.has(n);if(!u)return[3,3];t.add(n);return[4,r.model.exists({shortId:n})];case 2:u=!a.sent();a.label=3;case 3:if(u)return[2,{success:!0,result:n}];a.label=4;case 4:s++;return[3,1];case 5:return[2,{success:!1,message:"Failed to generate a unique shortId",code:g.INTERNAL_SERVER_ERROR.CODE}]}})})()}},{key:"generateSlug",value:function e(e,r){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};var n=this;return t(function(){var t,u,a,c,o;return d(this,function(i){switch(i.label){case 0:i.trys.push([0,6,,7]);t=$(r[e]);return[4,n.model.findOne(z(t,s,r.id))];case 1:u=i.sent();if(!u)return[2,{success:!0,result:t}];a=1;i.label=2;case 2:c="".concat(t,"-").concat(a);return[4,n.model.findOne(z(c,s,r.id))];case 3:u=i.sent(),a++;i.label=4;case 4:if(u)return[3,2];i.label=5;case 5:return[2,{success:!0,result:c}];case 6:o=i.sent();return[2,{success:!1,message:"Failed to generate a unique slug: ".concat(o.message),code:g.INTERNAL_SERVER_ERROR.CODE}];case 7:return[2]}})})()}},{key:"aggregate",value:function e(e){var r=this;return t(function(){var t,s;return d(this,function(n){switch(n.label){case 0:n.trys.push([0,2,,3]);t={success:!0};return[4,r.model.aggregate(e)];case 1:return[2,(t.result=n.sent(),t)];case 2:s=n.sent();return[2,{success:!1,message:s.message,code:g.INTERNAL_SERVER_ERROR.CODE}];case 3:return[2]}})})()}}]);return e}();export{O as MigrationController,ee as MongooseController};
@@ -0,0 +1,55 @@
1
+ import { C_Document, C_Db, T_InsertOneResult, T_InsertManyResult, T_Filter, T_WithId, T_UpdateResult, T_DeleteResult } from '../typescript/mongoose.cjs';
2
+ import 'mongodb';
3
+ import 'mongoose';
4
+
5
+ declare class MigrationController<D extends Partial<C_Document>> {
6
+ private collection;
7
+ constructor(db: C_Db, collectionName: string);
8
+ createOne(document: D): Promise<{
9
+ success: boolean;
10
+ message: string;
11
+ result?: T_InsertOneResult<D>;
12
+ }>;
13
+ createMany(documents: D[]): Promise<{
14
+ success: boolean;
15
+ message: string;
16
+ result?: T_InsertManyResult<D>;
17
+ }>;
18
+ findOne(filter: T_Filter<D>): Promise<{
19
+ success: boolean;
20
+ message: string;
21
+ result?: T_WithId<D> | null;
22
+ }>;
23
+ findAll(filter?: T_Filter<D>): Promise<{
24
+ success: boolean;
25
+ message: string;
26
+ result?: T_WithId<D>[];
27
+ }>;
28
+ count(filter?: T_Filter<D>): Promise<{
29
+ success: boolean;
30
+ message: string;
31
+ result?: number;
32
+ }>;
33
+ updateOne(filter: T_Filter<D>, update: Partial<D>): Promise<{
34
+ success: boolean;
35
+ message: string;
36
+ result?: T_UpdateResult;
37
+ }>;
38
+ updateMany(filter: T_Filter<D>, update: Partial<D>): Promise<{
39
+ success: boolean;
40
+ message: string;
41
+ result?: T_UpdateResult;
42
+ }>;
43
+ deleteOne(filter: T_Filter<D>): Promise<{
44
+ success: boolean;
45
+ message: string;
46
+ result?: T_DeleteResult;
47
+ }>;
48
+ deleteMany(filter: T_Filter<D>): Promise<{
49
+ success: boolean;
50
+ message: string;
51
+ result?: T_DeleteResult;
52
+ }>;
53
+ }
54
+
55
+ export { MigrationController };
@@ -0,0 +1,55 @@
1
+ import { C_Document, C_Db, T_InsertOneResult, T_InsertManyResult, T_Filter, T_WithId, T_UpdateResult, T_DeleteResult } from '../typescript/mongoose.js';
2
+ import 'mongodb';
3
+ import 'mongoose';
4
+
5
+ declare class MigrationController<D extends Partial<C_Document>> {
6
+ private collection;
7
+ constructor(db: C_Db, collectionName: string);
8
+ createOne(document: D): Promise<{
9
+ success: boolean;
10
+ message: string;
11
+ result?: T_InsertOneResult<D>;
12
+ }>;
13
+ createMany(documents: D[]): Promise<{
14
+ success: boolean;
15
+ message: string;
16
+ result?: T_InsertManyResult<D>;
17
+ }>;
18
+ findOne(filter: T_Filter<D>): Promise<{
19
+ success: boolean;
20
+ message: string;
21
+ result?: T_WithId<D> | null;
22
+ }>;
23
+ findAll(filter?: T_Filter<D>): Promise<{
24
+ success: boolean;
25
+ message: string;
26
+ result?: T_WithId<D>[];
27
+ }>;
28
+ count(filter?: T_Filter<D>): Promise<{
29
+ success: boolean;
30
+ message: string;
31
+ result?: number;
32
+ }>;
33
+ updateOne(filter: T_Filter<D>, update: Partial<D>): Promise<{
34
+ success: boolean;
35
+ message: string;
36
+ result?: T_UpdateResult;
37
+ }>;
38
+ updateMany(filter: T_Filter<D>, update: Partial<D>): Promise<{
39
+ success: boolean;
40
+ message: string;
41
+ result?: T_UpdateResult;
42
+ }>;
43
+ deleteOne(filter: T_Filter<D>): Promise<{
44
+ success: boolean;
45
+ message: string;
46
+ result?: T_DeleteResult;
47
+ }>;
48
+ deleteMany(filter: T_Filter<D>): Promise<{
49
+ success: boolean;
50
+ message: string;
51
+ result?: T_DeleteResult;
52
+ }>;
53
+ }
54
+
55
+ export { MigrationController };