@lenne.tech/nest-server 11.1.14 → 11.3.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 (77) hide show
  1. package/dist/core/common/decorators/unified-field.decorator.d.ts +2 -0
  2. package/dist/core/common/decorators/unified-field.decorator.js +26 -9
  3. package/dist/core/common/decorators/unified-field.decorator.js.map +1 -1
  4. package/dist/core/common/helpers/gridfs.helper.d.ts +42 -0
  5. package/dist/core/common/helpers/gridfs.helper.js +107 -0
  6. package/dist/core/common/helpers/gridfs.helper.js.map +1 -0
  7. package/dist/core/common/models/core-persistence.model.js +2 -2
  8. package/dist/core/common/models/core-persistence.model.js.map +1 -1
  9. package/dist/core/common/services/brevo.service.d.ts +1 -0
  10. package/dist/core/common/services/brevo.service.js +19 -18
  11. package/dist/core/common/services/brevo.service.js.map +1 -1
  12. package/dist/core/common/services/crud.service.js +1 -1
  13. package/dist/core/common/services/crud.service.js.map +1 -1
  14. package/dist/core/modules/file/core-file-info.model.js +41 -23
  15. package/dist/core/modules/file/core-file-info.model.js.map +1 -1
  16. package/dist/core/modules/file/core-file.controller.d.ts +2 -1
  17. package/dist/core/modules/file/core-file.controller.js +1 -1
  18. package/dist/core/modules/file/core-file.controller.js.map +1 -1
  19. package/dist/core/modules/file/core-file.service.d.ts +7 -7
  20. package/dist/core/modules/file/core-file.service.js +28 -51
  21. package/dist/core/modules/file/core-file.service.js.map +1 -1
  22. package/dist/core/modules/file/interfaces/file-upload.interface.d.ts +1 -1
  23. package/dist/core/modules/user/core-user.model.js +95 -54
  24. package/dist/core/modules/user/core-user.model.js.map +1 -1
  25. package/dist/core/modules/user/core-user.service.js +2 -3
  26. package/dist/core/modules/user/core-user.service.js.map +1 -1
  27. package/dist/index.d.ts +2 -0
  28. package/dist/index.js +1 -0
  29. package/dist/index.js.map +1 -1
  30. package/dist/main.js +22 -0
  31. package/dist/main.js.map +1 -1
  32. package/dist/server/common/models/persistence.model.js +13 -11
  33. package/dist/server/common/models/persistence.model.js.map +1 -1
  34. package/dist/server/modules/auth/auth.model.js +6 -2
  35. package/dist/server/modules/auth/auth.model.js.map +1 -1
  36. package/dist/server/modules/file/file-info.model.d.ts +7 -3
  37. package/dist/server/modules/file/file.controller.d.ts +6 -4
  38. package/dist/server/modules/file/file.controller.js +15 -4
  39. package/dist/server/modules/file/file.controller.js.map +1 -1
  40. package/dist/server/modules/file/file.resolver.js +1 -1
  41. package/dist/server/modules/file/file.resolver.js.map +1 -1
  42. package/dist/server/modules/file/multer-config.service.d.ts +0 -2
  43. package/dist/server/modules/file/multer-config.service.js +3 -22
  44. package/dist/server/modules/file/multer-config.service.js.map +1 -1
  45. package/dist/server/modules/user/user.controller.d.ts +19 -0
  46. package/dist/server/modules/user/user.controller.js +256 -0
  47. package/dist/server/modules/user/user.controller.js.map +1 -0
  48. package/dist/server/modules/user/user.model.d.ts +7 -3
  49. package/dist/server/modules/user/user.model.js +37 -24
  50. package/dist/server/modules/user/user.model.js.map +1 -1
  51. package/dist/server/modules/user/user.module.js +2 -1
  52. package/dist/server/modules/user/user.module.js.map +1 -1
  53. package/dist/tsconfig.build.tsbuildinfo +1 -1
  54. package/dist/types/graphql-upload.d.ts +25 -0
  55. package/package.json +41 -44
  56. package/src/core/common/decorators/unified-field.decorator.ts +49 -10
  57. package/src/core/common/helpers/gridfs.helper.ts +227 -0
  58. package/src/core/common/models/core-persistence.model.ts +3 -3
  59. package/src/core/common/services/brevo.service.ts +20 -18
  60. package/src/core/common/services/crud.service.ts +3 -3
  61. package/src/core/modules/file/core-file-info.model.ts +40 -22
  62. package/src/core/modules/file/core-file.controller.ts +3 -2
  63. package/src/core/modules/file/core-file.service.ts +49 -60
  64. package/src/core/modules/file/interfaces/file-upload.interface.ts +2 -1
  65. package/src/core/modules/user/core-user.model.ts +120 -78
  66. package/src/core/modules/user/core-user.service.ts +3 -3
  67. package/src/index.ts +1 -0
  68. package/src/main.ts +25 -0
  69. package/src/server/common/models/persistence.model.ts +15 -13
  70. package/src/server/modules/auth/auth.model.ts +7 -3
  71. package/src/server/modules/file/file.controller.ts +25 -7
  72. package/src/server/modules/file/file.resolver.ts +1 -2
  73. package/src/server/modules/file/multer-config.service.ts +6 -21
  74. package/src/server/modules/user/user.controller.ts +242 -0
  75. package/src/server/modules/user/user.model.ts +39 -26
  76. package/src/server/modules/user/user.module.ts +2 -1
  77. package/src/types/graphql-upload.d.ts +25 -0
package/dist/main.js CHANGED
@@ -1,11 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const core_1 = require("@nestjs/core");
4
+ const swagger_1 = require("@nestjs/swagger");
4
5
  const child_process_1 = require("child_process");
5
6
  const compression = require("compression");
6
7
  const cookieParser = require("cookie-parser");
7
8
  const config_env_1 = require("./config.env");
9
+ const filter_args_1 = require("./core/common/args/filter.args");
8
10
  const http_exception_log_filter_1 = require("./core/common/filters/http-exception-log.filter");
11
+ const core_persistence_model_1 = require("./core/common/models/core-persistence.model");
12
+ const core_auth_model_1 = require("./core/modules/auth/core-auth.model");
13
+ const core_user_model_1 = require("./core/modules/user/core-user.model");
14
+ const persistence_model_1 = require("./server/common/models/persistence.model");
15
+ const auth_model_1 = require("./server/modules/auth/auth.model");
16
+ const user_model_1 = require("./server/modules/user/user.model");
9
17
  const server_module_1 = require("./server/server.module");
10
18
  async function bootstrap() {
11
19
  const server = await core_1.NestFactory.create(server_module_1.ServerModule);
@@ -33,6 +41,20 @@ async function bootstrap() {
33
41
  server.setBaseViewsDir(config_env_1.default.templates.path);
34
42
  server.setViewEngine(config_env_1.default.templates.engine);
35
43
  server.enableCors();
44
+ const config = new swagger_1.DocumentBuilder()
45
+ .setTitle('Nest Server API')
46
+ .setDescription('API lenne.Tech Nest Server')
47
+ .setVersion('1.0.0')
48
+ .addBearerAuth()
49
+ .build();
50
+ const documentFactory = () => swagger_1.SwaggerModule.createDocument(server, config, {
51
+ autoTagControllers: true,
52
+ deepScanRoutes: true,
53
+ extraModels: [core_user_model_1.CoreUserModel, core_auth_model_1.CoreAuthModel, auth_model_1.Auth, user_model_1.User, persistence_model_1.PersistenceModel, core_persistence_model_1.CorePersistenceModel, filter_args_1.FilterArgs],
54
+ });
55
+ swagger_1.SwaggerModule.setup('swagger', server, documentFactory, {
56
+ jsonDocumentUrl: '/api-docs-json',
57
+ });
36
58
  await server.listen(config_env_1.default.port, config_env_1.default.hostname);
37
59
  console.debug(`Server startet at ${await server.getUrl()}`);
38
60
  if (config_env_1.default.execAfterInit) {
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;AAAA,uCAA2C;AAE3C,iDAAqC;AACrC,2CAA4C;AAC5C,8CAA+C;AAE/C,6CAAqC;AACrC,+FAAyF;AACzF,0DAAsD;AAKtD,KAAK,UAAU,SAAS;IAEtB,MAAM,MAAM,GAAG,MAAM,kBAAW,CAAC,MAAM,CAErC,4BAAY,CACb,CAAC;IAGF,IAAI,oBAAS,CAAC,aAAa,EAAE,CAAC;QAC5B,MAAM,CAAC,gBAAgB,CAAC,IAAI,kDAAsB,EAAE,CAAC,CAAC;IACxD,CAAC;IAGD,IAAI,oBAAS,CAAC,WAAW,EAAE,CAAC;QAC1B,IAAI,qBAAqB,GAAG,EAAE,CAAC;QAC/B,IAAI,OAAO,oBAAS,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YAC9C,qBAAqB,GAAG,oBAAS,CAAC,WAAW,CAAC;QAChD,CAAC;QACD,MAAM,kBAAkB,GAAG;YACzB,MAAM,EAAE,GAAG,EAAE;gBACX,OAAO,IAAI,CAAC;YACd,CAAC;YACD,SAAS,EAAE,CAAC;YACZ,GAAG,qBAAqB;SACzB,CAAC;QACF,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC9C,CAAC;IAGD,IAAI,oBAAS,CAAC,OAAO,EAAE,CAAC;QACtB,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC;IAC7B,CAAC;IAGD,MAAM,CAAC,eAAe,CAAC,oBAAS,CAAC,YAAY,CAAC,IAAI,EAAE,oBAAS,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAGpF,MAAM,CAAC,eAAe,CAAC,oBAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,aAAa,CAAC,oBAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAGjD,MAAM,CAAC,UAAU,EAAE,CAAC;IAGpB,MAAM,MAAM,CAAC,MAAM,CAAC,oBAAS,CAAC,IAAI,EAAE,oBAAS,CAAC,QAAQ,CAAC,CAAC;IACxD,OAAO,CAAC,KAAK,CAAC,qBAAqB,MAAM,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAG5D,IAAI,oBAAS,CAAC,aAAa,EAAE,CAAC;QAC5B,IAAA,oBAAI,EAAC,oBAAS,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACtD,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACzC,OAAO;YACT,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC;gBACnC,OAAO;YACT,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAGD,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.PersistenceModel = void 0;
13
13
  const graphql_1 = require("@nestjs/graphql");
14
- const mongoose_1 = require("@nestjs/mongoose");
15
14
  const swagger_1 = require("@nestjs/swagger");
16
15
  const mongoose = require("mongoose");
17
16
  const restricted_decorator_1 = require("../../../core/common/decorators/restricted.decorator");
17
+ const unified_field_decorator_1 = require("../../../core/common/decorators/unified-field.decorator");
18
18
  const role_enum_1 = require("../../../core/common/enums/role.enum");
19
19
  const core_persistence_model_1 = require("../../../core/common/models/core-persistence.model");
20
20
  const user_model_1 = require("../../modules/user/user.model");
@@ -35,23 +35,25 @@ let PersistenceModel = class PersistenceModel extends core_persistence_model_1.C
35
35
  };
36
36
  exports.PersistenceModel = PersistenceModel;
37
37
  __decorate([
38
- (0, swagger_1.ApiProperty)({ type: String }),
39
- (0, graphql_1.Field)(() => user_model_1.User, {
38
+ (0, unified_field_decorator_1.UnifiedField)({
40
39
  description: 'ID of the user who created the object',
41
- nullable: true,
40
+ isOptional: true,
41
+ mongoose: { ref: 'User', type: mongoose.Schema.Types.ObjectId },
42
+ roles: role_enum_1.RoleEnum.ADMIN,
43
+ swaggerApiOptions: { type: String },
44
+ type: () => user_model_1.User,
42
45
  }),
43
- (0, mongoose_1.Prop)({ ref: 'User', type: mongoose.Schema.Types.ObjectId }),
44
- (0, restricted_decorator_1.Restricted)(role_enum_1.RoleEnum.ADMIN),
45
46
  __metadata("design:type", Object)
46
47
  ], PersistenceModel.prototype, "createdBy", void 0);
47
48
  __decorate([
48
- (0, swagger_1.ApiProperty)({ type: user_model_1.User }),
49
- (0, graphql_1.Field)(() => user_model_1.User, {
49
+ (0, unified_field_decorator_1.UnifiedField)({
50
50
  description: 'ID of the user who updated the object',
51
- nullable: true,
51
+ isOptional: true,
52
+ mongoose: { ref: 'User', type: mongoose.Schema.Types.ObjectId },
53
+ roles: role_enum_1.RoleEnum.ADMIN,
54
+ swaggerApiOptions: { type: user_model_1.User },
55
+ type: () => user_model_1.User,
52
56
  }),
53
- (0, mongoose_1.Prop)({ ref: 'User', type: mongoose.Schema.Types.ObjectId }),
54
- (0, restricted_decorator_1.Restricted)(role_enum_1.RoleEnum.ADMIN),
55
57
  __metadata("design:type", Object)
56
58
  ], PersistenceModel.prototype, "updatedBy", void 0);
57
59
  exports.PersistenceModel = PersistenceModel = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.model.js","sourceRoot":"","sources":["../../../../src/server/common/models/persistence.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAoD;AACpD,+CAAwC;AACxC,6CAA8D;AAE9D,qCAAsC;AAEtC,+FAAkF;AAClF,oEAAgE;AAChE,+FAA0F;AAC1F,8DAAqD;AAa9C,IAAe,gBAAgB,GAA/B,MAAe,gBAAiB,SAAQ,6CAAoB;IAA5D;;QAiBL,cAAS,GAA6B,SAAS,CAAC;QAchD,cAAS,GAA6B,SAAS,CAAC;IAwBlD,CAAC;IAfU,IAAI;QACX,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;IAKQ,GAAG,CAAC,KAAK;QAChB,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAGjB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAvDqB,4CAAgB;AAiBpC;IAPC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,iBAAI,EAAE;QACjB,WAAW,EAAE,uCAAuC;QACpD,QAAQ,EAAE,IAAI;KACf,CAAC;IACD,IAAA,eAAI,EAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC3D,IAAA,iCAAU,EAAC,oBAAQ,CAAC,KAAK,CAAC;;mDACqB;AAchD;IAPC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,iBAAI,EAAE,CAAC;IAC3B,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,iBAAI,EAAE;QACjB,WAAW,EAAE,uCAAuC;QACpD,QAAQ,EAAE,IAAI;KACf,CAAC;IACD,IAAA,eAAI,EAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC3D,IAAA,iCAAU,EAAC,oBAAQ,CAAC,KAAK,CAAC;;mDACqB;2BA/B5B,gBAAgB;IANrC,IAAA,wBAAc,EAAC,6CAAoB,CAAC;IACpC,IAAA,oBAAU,EAAC;QACV,WAAW,EAAE,6CAA6C;QAC1D,UAAU,EAAE,IAAI;KACjB,CAAC;IACD,IAAA,iCAAU,EAAC,oBAAQ,CAAC,KAAK,CAAC;GACL,gBAAgB,CAuDrC"}
1
+ {"version":3,"file":"persistence.model.js","sourceRoot":"","sources":["../../../../src/server/common/models/persistence.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA6C;AAC7C,6CAAiD;AAEjD,qCAAsC;AAEtC,+FAAkF;AAClF,qGAAuF;AACvF,oEAAgE;AAChE,+FAA0F;AAC1F,8DAAqD;AAa9C,IAAe,gBAAgB,GAA/B,MAAe,gBAAiB,SAAQ,6CAAoB;IAA5D;;QAkBL,cAAS,GAA6B,SAAS,CAAC;QAehD,cAAS,GAA6B,SAAS,CAAC;IAwBlD,CAAC;IAfU,IAAI;QACX,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;IAKQ,GAAG,CAAC,KAAK;QAChB,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAGjB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAzDqB,4CAAgB;AAkBpC;IARC,IAAA,sCAAY,EAAC;QACZ,WAAW,EAAE,uCAAuC;QACpD,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE;QAC/D,KAAK,EAAE,oBAAQ,CAAC,KAAK;QACrB,iBAAiB,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;QACnC,IAAI,EAAE,GAAG,EAAE,CAAC,iBAAI;KACjB,CAAC;;mDAC8C;AAehD;IARC,IAAA,sCAAY,EAAC;QACZ,WAAW,EAAE,uCAAuC;QACpD,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE;QAC/D,KAAK,EAAE,oBAAQ,CAAC,KAAK;QACrB,iBAAiB,EAAE,EAAE,IAAI,EAAE,iBAAI,EAAE;QACjC,IAAI,EAAE,GAAG,EAAE,CAAC,iBAAI;KACjB,CAAC;;mDAC8C;2BAjC5B,gBAAgB;IANrC,IAAA,wBAAc,EAAC,6CAAoB,CAAC;IACpC,IAAA,oBAAU,EAAC;QACV,WAAW,EAAE,6CAA6C;QAC1D,UAAU,EAAE,IAAI;KACjB,CAAC;IACD,IAAA,iCAAU,EAAC,oBAAQ,CAAC,KAAK,CAAC;GACL,gBAAgB,CAyDrC"}
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.Auth = void 0;
13
13
  const graphql_1 = require("@nestjs/graphql");
14
14
  const restricted_decorator_1 = require("../../../core/common/decorators/restricted.decorator");
15
+ const unified_field_decorator_1 = require("../../../core/common/decorators/unified-field.decorator");
15
16
  const role_enum_1 = require("../../../core/common/enums/role.enum");
16
17
  const model_helper_1 = require("../../../core/common/helpers/model.helper");
17
18
  const core_auth_model_1 = require("../../../core/modules/auth/core-auth.model");
@@ -32,8 +33,11 @@ let Auth = class Auth extends core_auth_model_1.CoreAuthModel {
32
33
  };
33
34
  exports.Auth = Auth;
34
35
  __decorate([
35
- (0, graphql_1.Field)(() => user_model_1.User, { description: 'User who signed in' }),
36
- (0, restricted_decorator_1.Restricted)(role_enum_1.RoleEnum.S_EVERYONE),
36
+ (0, unified_field_decorator_1.UnifiedField)({
37
+ description: 'User who signed in',
38
+ roles: role_enum_1.RoleEnum.S_EVERYONE,
39
+ type: () => user_model_1.User,
40
+ }),
37
41
  __metadata("design:type", user_model_1.User)
38
42
  ], Auth.prototype, "user", void 0);
39
43
  exports.Auth = Auth = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"auth.model.js","sourceRoot":"","sources":["../../../../src/server/modules/auth/auth.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAAoD;AAEpD,+FAAkF;AAClF,oEAAgE;AAChE,4EAAuE;AACvE,gFAA2E;AAC3E,mDAA0C;AAOnC,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,+BAAa;IAAhC;;QAUI,SAAI,GAAS,SAAS,CAAC;IAsBlC,CAAC;IAbU,IAAI;QACX,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;IAKQ,GAAG,CAAC,KAAK;QAChB,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjB,OAAO,IAAA,yBAAU,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,iBAAI,EAAE,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;CACF,CAAA;AAhCY,oBAAI;AAUN;IAFR,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,iBAAI,EAAE,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACxD,IAAA,iCAAU,EAAC,oBAAQ,CAAC,UAAU,CAAC;8BACjB,iBAAI;kCAAa;eAVrB,IAAI;IAFhB,IAAA,oBAAU,EAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,CAAC;IAClD,IAAA,iCAAU,EAAC,oBAAQ,CAAC,KAAK,CAAC;GACd,IAAI,CAgChB"}
1
+ {"version":3,"file":"auth.model.js","sourceRoot":"","sources":["../../../../src/server/modules/auth/auth.model.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA6C;AAE7C,+FAAkF;AAClF,qGAAuF;AACvF,oEAAgE;AAChE,4EAAuE;AACvE,gFAA2E;AAC3E,mDAA0C;AAOnC,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,+BAAa;IAAhC;;QAaI,SAAI,GAAS,SAAS,CAAC;IAsBlC,CAAC;IAbU,IAAI;QACX,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,OAAO,IAAI,CAAC;IACd,CAAC;IAKQ,GAAG,CAAC,KAAK;QAChB,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjB,OAAO,IAAA,yBAAU,EAAC,KAAK,EAAE,EAAE,IAAI,EAAE,iBAAI,EAAE,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;CACF,CAAA;AAnCY,oBAAI;AAaN;IALR,IAAA,sCAAY,EAAC;QACZ,WAAW,EAAE,oBAAoB;QACjC,KAAK,EAAE,oBAAQ,CAAC,UAAU;QAC1B,IAAI,EAAE,GAAG,EAAE,CAAC,iBAAI;KACjB,CAAC;8BACa,iBAAI;kCAAa;eAbrB,IAAI;IAFhB,IAAA,oBAAU,EAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,CAAC;IAClD,IAAA,iCAAU,EAAC,oBAAQ,CAAC,KAAK,CAAC;GACd,IAAI,CAmChB"}
@@ -1,8 +1,12 @@
1
1
  import { CoreFileInfo } from '../../../core/modules/file/core-file-info.model';
2
2
  export declare class FileInfo extends CoreFileInfo {
3
3
  }
4
- export declare const FileInfoSchema: import("mongoose").Schema<FileInfo, import("mongoose").Model<FileInfo, any, any, any, import("mongoose").Document<unknown, any, FileInfo> & FileInfo & Required<{
4
+ export declare const FileInfoSchema: import("mongoose").Schema<FileInfo, import("mongoose").Model<FileInfo, any, any, any, import("mongoose").Document<unknown, any, FileInfo, any, {}> & FileInfo & Required<{
5
5
  _id: import("mongoose").Types.ObjectId;
6
- }>, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, FileInfo, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<FileInfo>> & import("mongoose").FlatRecord<FileInfo> & Required<{
6
+ }> & {
7
+ __v: number;
8
+ }, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, FileInfo, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<FileInfo>, {}, import("mongoose").ResolveSchemaOptions<import("mongoose").DefaultSchemaOptions>> & import("mongoose").FlatRecord<FileInfo> & Required<{
7
9
  _id: import("mongoose").Types.ObjectId;
8
- }>>;
10
+ }> & {
11
+ __v: number;
12
+ }>;
@@ -1,9 +1,11 @@
1
+ import { Response } from 'express';
2
+ import { CoreFileInfo } from '../../../core/modules/file/core-file-info.model';
1
3
  import { FileService } from './file.service';
2
4
  export declare class FileController {
3
5
  private readonly fileService;
4
6
  constructor(fileService: FileService);
5
- uploadFile(file: Express.Multer.File): any;
6
- getFile(id: string, res: any): Promise<any>;
7
- getFileInfo(id: string): Promise<import("../../..").CoreFileInfo>;
8
- deleteFile(id: string): Promise<import("../../..").CoreFileInfo>;
7
+ uploadFile(file: Express.Multer.File): Promise<any>;
8
+ getFile(id: string, res: Response): Promise<Response<any, Record<string, any>>>;
9
+ getFileInfo(id: string): Promise<CoreFileInfo>;
10
+ deleteFile(id: string): Promise<CoreFileInfo>;
9
11
  }
@@ -15,6 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.FileController = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
17
  const platform_express_1 = require("@nestjs/platform-express");
18
+ const stream_1 = require("stream");
18
19
  const roles_decorator_1 = require("../../../core/common/decorators/roles.decorator");
19
20
  const role_enum_1 = require("../../../core/common/enums/role.enum");
20
21
  const file_service_1 = require("./file.service");
@@ -22,8 +23,17 @@ let FileController = class FileController {
22
23
  constructor(fileService) {
23
24
  this.fileService = fileService;
24
25
  }
25
- uploadFile(file) {
26
- return file;
26
+ async uploadFile(file) {
27
+ if (!file) {
28
+ throw new common_1.BadRequestException('No file provided');
29
+ }
30
+ const fileUpload = {
31
+ capacitor: null,
32
+ createReadStream: () => stream_1.Readable.from(file.buffer),
33
+ filename: file.originalname,
34
+ mimetype: file.mimetype,
35
+ };
36
+ return await this.fileService.createFile(fileUpload);
27
37
  }
28
38
  async getFile(id, res) {
29
39
  if (!id) {
@@ -35,12 +45,13 @@ let FileController = class FileController {
35
45
  }
36
46
  catch (e) {
37
47
  console.error(e);
48
+ file = null;
38
49
  }
39
50
  if (!file) {
40
51
  throw new common_1.NotFoundException('File not found');
41
52
  }
42
53
  const filestream = await this.fileService.getFileStream(id);
43
- res.header('Content-Type', file.contentType);
54
+ res.header('Content-Type', file.contentType || 'application/octet-stream');
44
55
  res.header('Content-Disposition', `attachment; filename=${file.filename}`);
45
56
  res.header('Cache-Control', 'max-age=31536000');
46
57
  return filestream.pipe(res);
@@ -63,7 +74,7 @@ __decorate([
63
74
  __param(0, (0, common_1.UploadedFile)()),
64
75
  __metadata("design:type", Function),
65
76
  __metadata("design:paramtypes", [Object]),
66
- __metadata("design:returntype", Object)
77
+ __metadata("design:returntype", Promise)
67
78
  ], FileController.prototype, "uploadFile", null);
68
79
  __decorate([
69
80
  (0, common_1.Get)(':id'),
@@ -1 +1 @@
1
- {"version":3,"file":"file.controller.js","sourceRoot":"","sources":["../../../../src/server/modules/file/file.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAWwB;AACxB,+DAA2D;AAE3D,qFAAwE;AACxE,oEAAgE;AAChE,iDAA6C;AAOtC,IAAM,cAAc,GAApB,MAAM,cAAc;IAIzB,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAQzD,UAAU,CAAiB,IAAyB;QAClD,OAAO,IAAI,CAAC;IACd,CAAC;IAOK,AAAN,KAAK,CAAC,OAAO,CAAc,EAAU,EAAS,GAAG;QAC/C,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,4BAAmB,CAAC,YAAY,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,IAAI,CAAC;QACT,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,0BAAiB,CAAC,gBAAgB,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAC5D,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,GAAG,CAAC,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3E,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;QAChD,OAAO,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAOK,AAAN,KAAK,CAAC,WAAW,CAAc,EAAU;QACvC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IAOK,AAAN,KAAK,CAAC,UAAU,CAAc,EAAU;QACtC,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,4BAAmB,CAAC,YAAY,CAAC,CAAC;QAC9C,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/C,CAAC;CACF,CAAA;AAhEY,wCAAc;AAYzB;IAHC,IAAA,aAAI,EAAC,QAAQ,CAAC;IACd,IAAA,uBAAK,EAAC,oBAAQ,CAAC,KAAK,CAAC;IACrB,IAAA,wBAAe,EAAC,IAAA,kCAAe,EAAC,MAAM,CAAC,CAAC;IAC7B,WAAA,IAAA,qBAAY,GAAE,CAAA;;;;gDAEzB;AAOK;IAFL,IAAA,YAAG,EAAC,KAAK,CAAC;IACV,IAAA,uBAAK,EAAC,oBAAQ,CAAC,KAAK,CAAC;IACP,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IAAc,WAAA,IAAA,YAAG,GAAE,CAAA;;;;6CAoB5C;AAOK;IAFL,IAAA,YAAG,EAAC,UAAU,CAAC;IACf,IAAA,uBAAK,EAAC,oBAAQ,CAAC,KAAK,CAAC;IACH,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;iDAE7B;AAOK;IAFL,IAAA,eAAM,EAAC,KAAK,CAAC;IACb,IAAA,uBAAK,EAAC,oBAAQ,CAAC,KAAK,CAAC;IACJ,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;gDAM5B;yBA/DU,cAAc;IAF1B,IAAA,mBAAU,EAAC,OAAO,CAAC;IACnB,IAAA,uBAAK,EAAC,oBAAQ,CAAC,KAAK,CAAC;qCAKsB,0BAAW;GAJ1C,cAAc,CAgE1B"}
1
+ {"version":3,"file":"file.controller.js","sourceRoot":"","sources":["../../../../src/server/modules/file/file.controller.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ let FileResolver = class FileResolver {
37
37
  async uploadFiles(files) {
38
38
  const promises = [];
39
39
  for (const file of files) {
40
- const { createReadStream, encoding, filename, mimetype } = await file;
40
+ const { createReadStream, filename } = await file;
41
41
  await fs.promises.mkdir('./uploads', { recursive: true });
42
42
  promises.push(new Promise((resolve, reject) => createReadStream()
43
43
  .pipe((0, fs_1.createWriteStream)(`./uploads/${filename}`))
@@ -1 +1 @@
1
- {"version":3,"file":"file.resolver.js","sourceRoot":"","sources":["../../../../src/server/modules/file/file.resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.resolver.js","sourceRoot":"","sources":["../../../../src/server/modules/file/file.resolver.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,4 @@
1
1
  import { MulterModuleOptions, MulterOptionsFactory } from '@nestjs/platform-express';
2
2
  export declare class GridFsMulterConfigService implements MulterOptionsFactory {
3
- gridFsStorage: any;
4
- constructor();
5
3
  createMulterOptions(): MulterModuleOptions;
6
4
  }
@@ -5,38 +5,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
8
  Object.defineProperty(exports, "__esModule", { value: true });
12
9
  exports.GridFsMulterConfigService = void 0;
13
- const multer_gridfs_storage_1 = require("@lenne.tech/multer-gridfs-storage");
14
10
  const common_1 = require("@nestjs/common");
15
- const config_env_1 = require("../../../config.env");
11
+ const multer_1 = require("multer");
16
12
  let GridFsMulterConfigService = class GridFsMulterConfigService {
17
- constructor() {
18
- this.gridFsStorage = new multer_gridfs_storage_1.GridFsStorage({
19
- file: (req, file) => {
20
- return new Promise((resolve) => {
21
- const filename = file.originalname.trim();
22
- const fileInfo = {
23
- filename,
24
- };
25
- resolve(fileInfo);
26
- });
27
- },
28
- url: config_env_1.default.mongoose.uri,
29
- });
30
- }
31
13
  createMulterOptions() {
32
14
  return {
33
- storage: this.gridFsStorage,
15
+ storage: (0, multer_1.memoryStorage)(),
34
16
  };
35
17
  }
36
18
  };
37
19
  exports.GridFsMulterConfigService = GridFsMulterConfigService;
38
20
  exports.GridFsMulterConfigService = GridFsMulterConfigService = __decorate([
39
- (0, common_1.Injectable)(),
40
- __metadata("design:paramtypes", [])
21
+ (0, common_1.Injectable)()
41
22
  ], GridFsMulterConfigService);
42
23
  //# sourceMappingURL=multer-config.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multer-config.service.js","sourceRoot":"","sources":["../../../../src/server/modules/file/multer-config.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6EAAkE;AAClE,2CAA4C;AAG5C,oDAA4C;AAGrC,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAGpC;QACE,IAAI,CAAC,aAAa,GAAG,IAAI,qCAAa,CAAC;YACrC,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;gBAClB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;oBAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;oBAC1C,MAAM,QAAQ,GAAG;wBACf,QAAQ;qBACT,CAAC;oBACF,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACpB,CAAC,CAAC,CAAC;YACL,CAAC;YACD,GAAG,EAAE,oBAAS,CAAC,QAAQ,CAAC,GAAG;SAC5B,CAAC,CAAC;IACL,CAAC;IAED,mBAAmB;QACjB,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,aAAa;SAC5B,CAAC;IACJ,CAAC;CACF,CAAA;AAvBY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,mBAAU,GAAE;;GACA,yBAAyB,CAuBrC"}
1
+ {"version":3,"file":"multer-config.service.js","sourceRoot":"","sources":["../../../../src/server/modules/file/multer-config.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAE5C,mCAAuC;AAOhC,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IACpC,mBAAmB;QACjB,OAAO;YACL,OAAO,EAAE,IAAA,sBAAa,GAAE;SACzB,CAAC;IACJ,CAAC;CACF,CAAA;AANY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,mBAAU,GAAE;GACA,yBAAyB,CAMrC"}
@@ -0,0 +1,19 @@
1
+ import { UserCreateInput } from './inputs/user-create.input';
2
+ import { UserInput } from './inputs/user.input';
3
+ import { FindAndCountUsersResult } from './outputs/find-and-count-users-result.output';
4
+ import { User } from './user.model';
5
+ import { UserService } from './user.service';
6
+ export declare class UserController {
7
+ protected readonly userService: UserService;
8
+ constructor(userService: UserService);
9
+ findUsers(currentUser: User): Promise<User[]>;
10
+ findAndCountUsers(currentUser: User): Promise<FindAndCountUsersResult>;
11
+ getVerifiedState(token: string): Promise<boolean>;
12
+ getUser(currentUser: User, id: string): Promise<User>;
13
+ createUser(currentUser: User, input: UserCreateInput): Promise<User>;
14
+ requestPasswordResetMail(email: string): Promise<boolean>;
15
+ resetPassword(token: string, password: string): Promise<boolean>;
16
+ verifyUser(token: string): Promise<boolean>;
17
+ updateUser(currentUser: User, id: string, input: UserInput): Promise<User>;
18
+ deleteUser(currentUser: User, id: string): Promise<User>;
19
+ }
@@ -0,0 +1,256 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.UserController = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const swagger_1 = require("@nestjs/swagger");
18
+ const common_error_decorator_1 = require("../../../core/common/decorators/common-error.decorator");
19
+ const current_user_decorator_1 = require("../../../core/common/decorators/current-user.decorator");
20
+ const roles_decorator_1 = require("../../../core/common/decorators/roles.decorator");
21
+ const role_enum_1 = require("../../../core/common/enums/role.enum");
22
+ const auth_guard_strategy_enum_1 = require("../../../core/modules/auth/auth-guard-strategy.enum");
23
+ const auth_guard_1 = require("../../../core/modules/auth/guards/auth.guard");
24
+ const user_create_input_1 = require("./inputs/user-create.input");
25
+ const user_input_1 = require("./inputs/user.input");
26
+ const find_and_count_users_result_output_1 = require("./outputs/find-and-count-users-result.output");
27
+ const user_model_1 = require("./user.model");
28
+ const user_service_1 = require("./user.service");
29
+ let UserController = class UserController {
30
+ constructor(userService) {
31
+ this.userService = userService;
32
+ }
33
+ async findUsers(currentUser) {
34
+ const serviceOptions = {
35
+ currentUser,
36
+ };
37
+ return await this.userService.find({}, serviceOptions);
38
+ }
39
+ async findAndCountUsers(currentUser) {
40
+ const serviceOptions = {
41
+ currentUser,
42
+ };
43
+ return await this.userService.findAndCount({}, serviceOptions);
44
+ }
45
+ async getVerifiedState(token) {
46
+ return await this.userService.getVerifiedState(token);
47
+ }
48
+ async getUser(currentUser, id) {
49
+ const serviceOptions = {
50
+ currentUser,
51
+ roles: [role_enum_1.RoleEnum.ADMIN, role_enum_1.RoleEnum.S_CREATOR, role_enum_1.RoleEnum.S_SELF],
52
+ };
53
+ return await this.userService.get(id, serviceOptions);
54
+ }
55
+ async createUser(currentUser, input) {
56
+ const serviceOptions = {
57
+ currentUser,
58
+ inputType: user_create_input_1.UserCreateInput,
59
+ };
60
+ return await this.userService.create(input, serviceOptions);
61
+ }
62
+ async requestPasswordResetMail(email) {
63
+ return !!(await this.userService.sendPasswordResetMail(email));
64
+ }
65
+ async resetPassword(token, password) {
66
+ return !!(await this.userService.resetPassword(token, password));
67
+ }
68
+ async verifyUser(token) {
69
+ return !!(await this.userService.verify(token));
70
+ }
71
+ async updateUser(currentUser, id, input) {
72
+ const serviceOptions = {
73
+ currentUser,
74
+ inputType: user_input_1.UserInput,
75
+ roles: [role_enum_1.RoleEnum.ADMIN, role_enum_1.RoleEnum.S_CREATOR, role_enum_1.RoleEnum.S_SELF],
76
+ };
77
+ return await this.userService.update(id, input, serviceOptions);
78
+ }
79
+ async deleteUser(currentUser, id) {
80
+ const serviceOptions = {
81
+ currentUser,
82
+ roles: [role_enum_1.RoleEnum.ADMIN, role_enum_1.RoleEnum.S_CREATOR, role_enum_1.RoleEnum.S_SELF],
83
+ };
84
+ return await this.userService.delete(id, serviceOptions);
85
+ }
86
+ };
87
+ exports.UserController = UserController;
88
+ __decorate([
89
+ (0, swagger_1.ApiBearerAuth)(),
90
+ (0, swagger_1.ApiOkResponse)({ description: 'Users found successfully', type: [user_model_1.User] }),
91
+ (0, swagger_1.ApiOperation)({ description: 'Find users (via filter)', summary: 'Get all users' }),
92
+ (0, common_1.Get)(),
93
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.ADMIN),
94
+ (0, common_1.UseGuards)((0, auth_guard_1.AuthGuard)(auth_guard_strategy_enum_1.AuthGuardStrategy.JWT)),
95
+ __param(0, (0, current_user_decorator_1.CurrentUser)()),
96
+ __metadata("design:type", Function),
97
+ __metadata("design:paramtypes", [user_model_1.User]),
98
+ __metadata("design:returntype", Promise)
99
+ ], UserController.prototype, "findUsers", null);
100
+ __decorate([
101
+ (0, swagger_1.ApiBearerAuth)(),
102
+ (0, swagger_1.ApiOkResponse)({ description: 'Users and count found successfully', type: find_and_count_users_result_output_1.FindAndCountUsersResult }),
103
+ (0, swagger_1.ApiOperation)({
104
+ description: 'Find users and total count (via filter)',
105
+ summary: 'Get users with count',
106
+ }),
107
+ (0, common_1.Get)('count'),
108
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.ADMIN),
109
+ (0, common_1.UseGuards)((0, auth_guard_1.AuthGuard)(auth_guard_strategy_enum_1.AuthGuardStrategy.JWT)),
110
+ __param(0, (0, current_user_decorator_1.CurrentUser)()),
111
+ __metadata("design:type", Function),
112
+ __metadata("design:paramtypes", [user_model_1.User]),
113
+ __metadata("design:returntype", Promise)
114
+ ], UserController.prototype, "findAndCountUsers", null);
115
+ __decorate([
116
+ (0, swagger_1.ApiOkResponse)({ description: 'Verified state retrieved successfully', type: Boolean }),
117
+ (0, swagger_1.ApiOperation)({
118
+ description: 'Get verified state of user with token',
119
+ summary: 'Check if user is verified',
120
+ }),
121
+ (0, swagger_1.ApiQuery)({ description: 'Verification token', name: 'token', type: String }),
122
+ (0, common_1.Get)('verified-state'),
123
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.S_EVERYONE),
124
+ __param(0, (0, common_1.Query)('token')),
125
+ __metadata("design:type", Function),
126
+ __metadata("design:paramtypes", [String]),
127
+ __metadata("design:returntype", Promise)
128
+ ], UserController.prototype, "getVerifiedState", null);
129
+ __decorate([
130
+ (0, swagger_1.ApiBearerAuth)(),
131
+ (0, swagger_1.ApiOkResponse)({ description: 'User found successfully', type: user_model_1.User }),
132
+ (0, swagger_1.ApiOperation)({ description: 'Get user with specified ID', summary: 'Get user by ID' }),
133
+ (0, swagger_1.ApiParam)({ description: 'User ID', name: 'id', type: String }),
134
+ (0, common_1.Get)(':id'),
135
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.S_USER),
136
+ (0, common_1.UseGuards)((0, auth_guard_1.AuthGuard)(auth_guard_strategy_enum_1.AuthGuardStrategy.JWT)),
137
+ __param(0, (0, current_user_decorator_1.CurrentUser)()),
138
+ __param(1, (0, common_1.Param)('id')),
139
+ __metadata("design:type", Function),
140
+ __metadata("design:paramtypes", [user_model_1.User, String]),
141
+ __metadata("design:returntype", Promise)
142
+ ], UserController.prototype, "getUser", null);
143
+ __decorate([
144
+ (0, swagger_1.ApiBearerAuth)(),
145
+ (0, swagger_1.ApiBody)({ type: user_create_input_1.UserCreateInput }),
146
+ (0, swagger_1.ApiCreatedResponse)({ description: 'User created successfully', type: user_model_1.User }),
147
+ (0, swagger_1.ApiOperation)({ description: 'Create a new user', summary: 'Create user' }),
148
+ (0, common_1.Post)(),
149
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.ADMIN),
150
+ (0, common_1.UseGuards)((0, auth_guard_1.AuthGuard)(auth_guard_strategy_enum_1.AuthGuardStrategy.JWT)),
151
+ __param(0, (0, current_user_decorator_1.CurrentUser)()),
152
+ __param(1, (0, common_1.Body)()),
153
+ __metadata("design:type", Function),
154
+ __metadata("design:paramtypes", [user_model_1.User, user_create_input_1.UserCreateInput]),
155
+ __metadata("design:returntype", Promise)
156
+ ], UserController.prototype, "createUser", null);
157
+ __decorate([
158
+ (0, swagger_1.ApiBody)({
159
+ description: 'User email',
160
+ schema: {
161
+ properties: {
162
+ email: { type: 'string' },
163
+ },
164
+ type: 'object',
165
+ },
166
+ }),
167
+ (0, swagger_1.ApiOkResponse)({ description: 'Password reset email sent successfully', type: Boolean }),
168
+ (0, swagger_1.ApiOperation)({
169
+ description: 'Request new password for user with email',
170
+ summary: 'Request password reset',
171
+ }),
172
+ (0, common_1.Post)('password/reset-request'),
173
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.S_EVERYONE),
174
+ __param(0, (0, common_1.Body)('email')),
175
+ __metadata("design:type", Function),
176
+ __metadata("design:paramtypes", [String]),
177
+ __metadata("design:returntype", Promise)
178
+ ], UserController.prototype, "requestPasswordResetMail", null);
179
+ __decorate([
180
+ (0, swagger_1.ApiBody)({
181
+ description: 'Password reset data',
182
+ schema: {
183
+ properties: {
184
+ password: { type: 'string' },
185
+ token: { type: 'string' },
186
+ },
187
+ type: 'object',
188
+ },
189
+ }),
190
+ (0, swagger_1.ApiOkResponse)({ description: 'Password reset successfully', type: Boolean }),
191
+ (0, swagger_1.ApiOperation)({ description: 'Set new password for user with token', summary: 'Reset password' }),
192
+ (0, common_1.Post)('password/reset'),
193
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.S_EVERYONE),
194
+ __param(0, (0, common_1.Body)('token')),
195
+ __param(1, (0, common_1.Body)('password')),
196
+ __metadata("design:type", Function),
197
+ __metadata("design:paramtypes", [String, String]),
198
+ __metadata("design:returntype", Promise)
199
+ ], UserController.prototype, "resetPassword", null);
200
+ __decorate([
201
+ (0, swagger_1.ApiBody)({
202
+ description: 'Verification token',
203
+ schema: {
204
+ properties: {
205
+ token: { type: 'string' },
206
+ },
207
+ type: 'object',
208
+ },
209
+ }),
210
+ (0, swagger_1.ApiOkResponse)({ description: 'User verified successfully', type: Boolean }),
211
+ (0, swagger_1.ApiOperation)({ description: 'Verify user with email', summary: 'Verify user' }),
212
+ (0, common_1.Post)('verify'),
213
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.S_EVERYONE),
214
+ __param(0, (0, common_1.Body)('token')),
215
+ __metadata("design:type", Function),
216
+ __metadata("design:paramtypes", [String]),
217
+ __metadata("design:returntype", Promise)
218
+ ], UserController.prototype, "verifyUser", null);
219
+ __decorate([
220
+ (0, swagger_1.ApiBearerAuth)(),
221
+ (0, swagger_1.ApiBody)({ type: user_input_1.UserInput }),
222
+ (0, swagger_1.ApiOkResponse)({ description: 'User updated successfully', type: user_model_1.User }),
223
+ (0, swagger_1.ApiOperation)({ description: 'Update existing user', summary: 'Update user' }),
224
+ (0, swagger_1.ApiParam)({ description: 'User ID', name: 'id', type: String }),
225
+ (0, common_1.Patch)(':id'),
226
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.S_USER),
227
+ (0, common_1.UseGuards)((0, auth_guard_1.AuthGuard)(auth_guard_strategy_enum_1.AuthGuardStrategy.JWT)),
228
+ __param(0, (0, current_user_decorator_1.CurrentUser)()),
229
+ __param(1, (0, common_1.Param)('id')),
230
+ __param(2, (0, common_1.Body)()),
231
+ __metadata("design:type", Function),
232
+ __metadata("design:paramtypes", [user_model_1.User, String, user_input_1.UserInput]),
233
+ __metadata("design:returntype", Promise)
234
+ ], UserController.prototype, "updateUser", null);
235
+ __decorate([
236
+ (0, swagger_1.ApiBearerAuth)(),
237
+ (0, swagger_1.ApiOkResponse)({ description: 'User deleted successfully', type: user_model_1.User }),
238
+ (0, swagger_1.ApiOperation)({ description: 'Delete existing user', summary: 'Delete user' }),
239
+ (0, swagger_1.ApiParam)({ description: 'User ID', name: 'id', type: String }),
240
+ (0, common_1.Delete)(':id'),
241
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.S_USER),
242
+ (0, common_1.UseGuards)((0, auth_guard_1.AuthGuard)(auth_guard_strategy_enum_1.AuthGuardStrategy.JWT)),
243
+ __param(0, (0, current_user_decorator_1.CurrentUser)()),
244
+ __param(1, (0, common_1.Param)('id')),
245
+ __metadata("design:type", Function),
246
+ __metadata("design:paramtypes", [user_model_1.User, String]),
247
+ __metadata("design:returntype", Promise)
248
+ ], UserController.prototype, "deleteUser", null);
249
+ exports.UserController = UserController = __decorate([
250
+ (0, common_error_decorator_1.ApiCommonErrorResponses)(),
251
+ (0, swagger_1.ApiTags)('users'),
252
+ (0, common_1.Controller)('users'),
253
+ (0, roles_decorator_1.Roles)(role_enum_1.RoleEnum.ADMIN),
254
+ __metadata("design:paramtypes", [user_service_1.UserService])
255
+ ], UserController);
256
+ //# sourceMappingURL=user.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.controller.js","sourceRoot":"","sources":["../../../../src/server/modules/user/user.controller.ts"],"names":[],"mappings":"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"}