@drax/identity-back 0.0.9 → 0.0.11

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 (188) hide show
  1. package/dist/errors/BadCredentialsError.js +10 -0
  2. package/dist/errors/UnauthorizedError.js +10 -0
  3. package/dist/factory/RoleServiceFactory.js +16 -3
  4. package/dist/factory/UserServiceFactory.js +17 -3
  5. package/dist/graphql/resolvers/role.resolvers.js +98 -11
  6. package/dist/graphql/resolvers/user.resolvers.js +134 -15
  7. package/dist/graphql/types/role.graphql +6 -4
  8. package/dist/graphql/types/user.graphql +36 -9
  9. package/dist/i18n/messages/validation-i18n.js +21 -0
  10. package/dist/index.js +22 -7
  11. package/dist/interfaces/IID.js +1 -0
  12. package/dist/interfaces/IJwtUser.js +1 -0
  13. package/dist/middleware/jwtMiddleware.js +19 -0
  14. package/dist/middleware/rbacMiddleware.js +36 -0
  15. package/dist/models/RoleModel.js +0 -8
  16. package/dist/models/UserModel.js +1 -2
  17. package/dist/permissions/IdentityPermissions.js +16 -0
  18. package/dist/rbac/Rbac.js +20 -0
  19. package/dist/repository/mongo/RoleMongoRepository.js +41 -0
  20. package/dist/repository/mongo/UserMongoRepository.js +82 -0
  21. package/dist/repository/sqlite/RoleSqliteRepository.js +115 -0
  22. package/dist/repository/sqlite/UserSqliteRepository.js +157 -0
  23. package/dist/routes/RoleRoutes.js +145 -0
  24. package/dist/routes/UserRoutes.js +199 -0
  25. package/dist/routes/authRoutes.js +12 -4
  26. package/dist/services/AuthService.js +0 -15
  27. package/dist/services/PermissionService.js +19 -0
  28. package/dist/services/RoleService.js +48 -16
  29. package/dist/services/UserService.js +82 -23
  30. package/dist/utils/AuthUtils.js +20 -6
  31. package/dist/utils/DbSetupUtils.js +28 -0
  32. package/dist/zod/RoleZod.js +8 -0
  33. package/dist/zod/UserZod.js +18 -0
  34. package/package.json +17 -10
  35. package/src/errors/BadCredentialsError.ts +13 -0
  36. package/src/errors/UnauthorizedError.ts +13 -0
  37. package/src/factory/RoleServiceFactory.ts +20 -3
  38. package/src/factory/UserServiceFactory.ts +20 -3
  39. package/src/graphql/resolvers/role.resolvers.ts +92 -11
  40. package/src/graphql/resolvers/user.resolvers.ts +128 -15
  41. package/src/graphql/types/role.graphql +6 -4
  42. package/src/graphql/types/user.graphql +36 -9
  43. package/src/index.ts +50 -10
  44. package/src/interfaces/IID.ts +5 -0
  45. package/src/interfaces/IJwtUser.ts +7 -0
  46. package/src/interfaces/IRole.ts +15 -5
  47. package/src/interfaces/IRoleRepository.ts +8 -5
  48. package/src/interfaces/IUser.ts +30 -6
  49. package/src/interfaces/IUserGroup.ts +2 -1
  50. package/src/interfaces/IUserRepository.ts +11 -6
  51. package/src/middleware/jwtMiddleware.ts +22 -0
  52. package/src/middleware/rbacMiddleware.ts +40 -0
  53. package/src/models/RoleModel.ts +0 -9
  54. package/src/models/UserModel.ts +1 -2
  55. package/src/permissions/IdentityPermissions.ts +20 -0
  56. package/src/rbac/Rbac.ts +31 -0
  57. package/src/repository/mongo/RoleMongoRepository.ts +57 -0
  58. package/src/repository/mongo/UserMongoRepository.ts +104 -0
  59. package/src/repository/sqlite/RoleSqliteRepository.ts +151 -0
  60. package/src/repository/sqlite/UserSqliteRepository.ts +194 -0
  61. package/src/routes/RoleRoutes.ts +141 -0
  62. package/src/routes/UserRoutes.ts +198 -0
  63. package/src/services/PermissionService.ts +26 -0
  64. package/src/services/RoleService.ts +46 -21
  65. package/src/services/UserService.ts +86 -28
  66. package/src/utils/AuthUtils.ts +22 -7
  67. package/src/utils/DbSetupUtils.ts +39 -0
  68. package/src/zod/RoleZod.ts +14 -0
  69. package/src/zod/UserZod.ts +26 -0
  70. package/test/data-json/roles/admin-role.json +1 -1
  71. package/test/data-obj/roles/{admin-role.ts → admin-mongo-role.ts} +2 -1
  72. package/test/data-obj/roles/admin-sqlite-role.ts +9 -0
  73. package/test/data-obj/roles/operator-sqlite-role.ts +9 -0
  74. package/test/data-obj/users/root-mongo-user.ts +15 -0
  75. package/test/data-obj/users/root-sqlite-user.ts +16 -0
  76. package/test/{initializers → db}/MongoInMemory.ts +2 -1
  77. package/test/initializers/RoleMongoInitializer.ts +15 -0
  78. package/test/initializers/RoleSqliteInitializer.ts +18 -0
  79. package/test/repository/{role-repository.test.ts → mongo/role-mongo-repository.test.ts} +14 -24
  80. package/test/repository/mongo/user-mongo-repository.test.ts +121 -0
  81. package/test/repository/sqlite/role-sqlite-repository.test.ts +70 -0
  82. package/test/repository/sqlite/user-sqlite-repository.test.ts +126 -0
  83. package/test/service/mock-service.test.ts +3 -3
  84. package/test/service/role-service.test.ts +5 -5
  85. package/test/service/user-service.test.ts +42 -15
  86. package/test.db +0 -0
  87. package/tsconfig.json +16 -3
  88. package/tsconfig.tsbuildinfo +1 -1
  89. package/types/errors/BadCredentialsError.d.ts +6 -0
  90. package/types/errors/BadCredentialsError.d.ts.map +1 -0
  91. package/types/errors/UnauthorizedError.d.ts +6 -0
  92. package/types/errors/UnauthorizedError.d.ts.map +1 -0
  93. package/types/factory/RoleServiceFactory.d.ts +2 -2
  94. package/types/factory/RoleServiceFactory.d.ts.map +1 -1
  95. package/types/factory/UserServiceFactory.d.ts +2 -2
  96. package/types/factory/UserServiceFactory.d.ts.map +1 -1
  97. package/types/graphql/resolvers/role.resolvers.d.ts +24 -7
  98. package/types/graphql/resolvers/role.resolvers.d.ts.map +1 -1
  99. package/types/graphql/resolvers/user.resolvers.d.ts +38 -7
  100. package/types/graphql/resolvers/user.resolvers.d.ts.map +1 -1
  101. package/types/i18n/messages/validation-i18n.d.ts +4 -0
  102. package/types/i18n/messages/validation-i18n.d.ts.map +1 -0
  103. package/types/index.d.ts +21 -5
  104. package/types/index.d.ts.map +1 -1
  105. package/types/interfaces/IID.d.ts +6 -0
  106. package/types/interfaces/IID.d.ts.map +1 -0
  107. package/types/interfaces/IJwtUser.d.ts +7 -0
  108. package/types/interfaces/IJwtUser.d.ts.map +1 -0
  109. package/types/interfaces/IRole.d.ts +13 -6
  110. package/types/interfaces/IRole.d.ts.map +1 -1
  111. package/types/interfaces/IRoleRepository.d.ts +8 -4
  112. package/types/interfaces/IRoleRepository.d.ts.map +1 -1
  113. package/types/interfaces/IUser.d.ts +29 -8
  114. package/types/interfaces/IUser.d.ts.map +1 -1
  115. package/types/interfaces/IUserGroup.d.ts +3 -2
  116. package/types/interfaces/IUserGroup.d.ts.map +1 -1
  117. package/types/interfaces/IUserRepository.d.ts +10 -6
  118. package/types/interfaces/IUserRepository.d.ts.map +1 -1
  119. package/types/middleware/jwtMiddleware.d.ts +4 -0
  120. package/types/middleware/jwtMiddleware.d.ts.map +1 -0
  121. package/types/middleware/rbacMiddleware.d.ts +4 -0
  122. package/types/middleware/rbacMiddleware.d.ts.map +1 -0
  123. package/types/models/RoleModel.d.ts +8 -8
  124. package/types/models/RoleModel.d.ts.map +1 -1
  125. package/types/models/UserGroupModel.d.ts +8 -8
  126. package/types/models/UserGroupModel.d.ts.map +1 -1
  127. package/types/models/UserModel.d.ts +8 -8
  128. package/types/models/UserModel.d.ts.map +1 -1
  129. package/types/permissions/IdentityPermissions.d.ts +16 -0
  130. package/types/permissions/IdentityPermissions.d.ts.map +1 -0
  131. package/types/rbac/Rbac.d.ts +12 -0
  132. package/types/rbac/Rbac.d.ts.map +1 -0
  133. package/types/repository/mongo/RoleMongoRepository.d.ts +14 -0
  134. package/types/repository/mongo/RoleMongoRepository.d.ts.map +1 -0
  135. package/types/repository/mongo/UserMongoRepository.d.ts +18 -0
  136. package/types/repository/mongo/UserMongoRepository.d.ts.map +1 -0
  137. package/types/repository/sqlite/RoleSqliteRepository.d.ts +19 -0
  138. package/types/repository/sqlite/RoleSqliteRepository.d.ts.map +1 -0
  139. package/types/repository/sqlite/UserSqliteRepository.d.ts +24 -0
  140. package/types/repository/sqlite/UserSqliteRepository.d.ts.map +1 -0
  141. package/types/routes/RoleRoutes.d.ts +4 -0
  142. package/types/routes/RoleRoutes.d.ts.map +1 -0
  143. package/types/routes/UserRoutes.d.ts +4 -0
  144. package/types/routes/UserRoutes.d.ts.map +1 -0
  145. package/types/routes/authRoutes.d.ts.map +1 -1
  146. package/types/services/AuthService.d.ts +0 -3
  147. package/types/services/AuthService.d.ts.map +1 -1
  148. package/types/services/PermissionService.d.ts +9 -0
  149. package/types/services/PermissionService.d.ts.map +1 -0
  150. package/types/services/RoleService.d.ts +6 -8
  151. package/types/services/RoleService.d.ts.map +1 -1
  152. package/types/services/UserService.d.ts +13 -11
  153. package/types/services/UserService.d.ts.map +1 -1
  154. package/types/utils/AuthUtils.d.ts +5 -2
  155. package/types/utils/AuthUtils.d.ts.map +1 -1
  156. package/types/utils/DbSetupUtils.d.ts +10 -0
  157. package/types/utils/DbSetupUtils.d.ts.map +1 -0
  158. package/types/zod/RoleZod.d.ts +10 -0
  159. package/types/zod/RoleZod.d.ts.map +1 -0
  160. package/types/zod/UserZod.d.ts +53 -0
  161. package/types/zod/UserZod.d.ts.map +1 -0
  162. package/dist/factory/AuthServiceFactory.js +0 -8
  163. package/dist/graphql/resolvers/auth.resolvers.js +0 -16
  164. package/dist/graphql/types/auth.graphql +0 -12
  165. package/dist/repository/RoleRepository.js +0 -29
  166. package/dist/repository/UserRepository.js +0 -33
  167. package/src/factory/AuthServiceFactory.ts +0 -10
  168. package/src/graphql/resolvers/auth.resolvers.ts +0 -20
  169. package/src/graphql/types/auth.graphql +0 -12
  170. package/src/repository/RoleRepository.ts +0 -42
  171. package/src/repository/UserRepository.ts +0 -47
  172. package/src/routes/authRoutes.ts +0 -22
  173. package/src/services/AuthService.ts +0 -29
  174. package/test/data-obj/users/root-user.ts +0 -15
  175. package/test/initializers/MongoInMemory.mjs +0 -34
  176. package/test/initializers/RoleInitializer.mjs +0 -11
  177. package/test/initializers/RoleInitializer.ts +0 -15
  178. package/test/repository/user-repository.test.ts +0 -54
  179. package/types/factory/AuthServiceFactory.d.ts +0 -4
  180. package/types/factory/AuthServiceFactory.d.ts.map +0 -1
  181. package/types/graphql/resolvers/auth.resolvers.d.ts +0 -12
  182. package/types/graphql/resolvers/auth.resolvers.d.ts.map +0 -1
  183. package/types/repository/RoleRepository.d.ts +0 -41
  184. package/types/repository/RoleRepository.d.ts.map +0 -1
  185. package/types/repository/UserRepository.d.ts +0 -40
  186. package/types/repository/UserRepository.d.ts.map +0 -1
  187. package/types/routes/AuthRoutes.d.ts +0 -3
  188. package/types/routes/AuthRoutes.d.ts.map +0 -1
@@ -0,0 +1,24 @@
1
+ /// <reference types="node" />
2
+ import { IUser, IUserCreate, IUserUpdate } from "../../interfaces/IUser";
3
+ import { UUID } from "crypto";
4
+ import { IUserRepository } from "../../interfaces/IUserRepository";
5
+ import type { IPaginateResult } from "@drax/common-back";
6
+ import { IID } from "../../interfaces/IID";
7
+ declare class UserSqliteRepository implements IUserRepository {
8
+ private db;
9
+ private roleRepository;
10
+ constructor(DATABASE: string, verbose?: boolean);
11
+ table(): void;
12
+ normalizeData(userData: IUserCreate | IUserUpdate): void;
13
+ create(userData: IUserCreate): Promise<IUser>;
14
+ update(id: UUID, userData: IUserUpdate): Promise<IUser>;
15
+ delete(id: UUID): Promise<boolean>;
16
+ deleteAll(): Promise<boolean>;
17
+ findById(id: UUID): Promise<IUser>;
18
+ findByUsername(username: string): Promise<IUser>;
19
+ paginate(page?: number, limit?: number, search?: string): Promise<IPaginateResult>;
20
+ findRoleById(id: IID): Promise<import("../..").IRole>;
21
+ changePassword(id: IID, password: string): Promise<boolean>;
22
+ }
23
+ export default UserSqliteRepository;
24
+ //# sourceMappingURL=UserSqliteRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserSqliteRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/sqlite/UserSqliteRepository.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAGvE,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAGvD,OAAO,EAAC,GAAG,EAAC,MAAM,sBAAsB,CAAC;AAiCzC,cAAM,oBAAqB,YAAW,eAAe;IACjD,OAAO,CAAC,EAAE,CAAM;IAChB,OAAO,CAAC,cAAc,CAAuB;gBAEjC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,OAAe;IAMtD,KAAK;IAIL,aAAa,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,IAAI;IAOlD,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAmC7C,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAsBvD,MAAM,CAAC,EAAE,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAMlC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAM7B,QAAQ,CAAC,EAAE,EAAE,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC;IASlC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAShD,QAAQ,CAAC,IAAI,GAAE,MAAU,EAAE,KAAK,GAAE,MAAU,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IA+BxF,YAAY,CAAC,EAAE,EAAE,GAAG;IAIpB,cAAc,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAOpE;AAED,eAAe,oBAAoB,CAAA"}
@@ -0,0 +1,4 @@
1
+ declare function RoleRoutes(fastify: any, options: any): Promise<void>;
2
+ export default RoleRoutes;
3
+ export { RoleRoutes };
4
+ //# sourceMappingURL=RoleRoutes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoleRoutes.d.ts","sourceRoot":"","sources":["../../src/routes/RoleRoutes.ts"],"names":[],"mappings":"AASA,iBAAe,UAAU,CAAC,OAAO,KAAA,EAAE,OAAO,KAAA,iBAgIzC;AAED,eAAe,UAAU,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ declare function UserRoutes(fastify: any, options: any): Promise<void>;
2
+ export default UserRoutes;
3
+ export { UserRoutes };
4
+ //# sourceMappingURL=RoleRoutes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserRoutes.d.ts","sourceRoot":"","sources":["../../src/routes/UserRoutes.ts"],"names":[],"mappings":"AASA,iBAAe,UAAU,CAAC,OAAO,KAAA,EAAE,OAAO,KAAA,iBAyLzC;AAED,eAAe,UAAU,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"authRoutes.d.ts","sourceRoot":"","sources":["../../src/routes/authRoutes.ts"],"names":[],"mappings":"AAGA,iBAAe,UAAU,CAAE,OAAO,KAAA,EAAE,OAAO,KAAA,iBAe1C;AAED,eAAe,UAAU,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,CAAA"}
1
+ {"version":3,"file":"authRoutes.d.ts","sourceRoot":"","sources":["../../src/routes/authRoutes.ts"],"names":[],"mappings":"AAKA,iBAAe,UAAU,CAAC,OAAO,KAAA,EAAE,OAAO,KAAA,iBAyBzC;AAED,eAAe,UAAU,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,CAAA"}
@@ -2,9 +2,6 @@ import UserService from "./UserService.js";
2
2
  declare class AuthService {
3
3
  private _userService;
4
4
  constructor(userService: UserService);
5
- auth(username: string, password: string): Promise<{
6
- accessToken: string;
7
- }>;
8
5
  }
9
6
  export default AuthService;
10
7
  //# sourceMappingURL=AuthService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../src/services/AuthService.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,cAAM,WAAW;IAEb,OAAO,CAAC,YAAY,CAAc;gBAEtB,WAAW,EAAG,WAAW;IAK/B,IAAI,CAAC,QAAQ,EAAG,MAAM,EAAE,QAAQ,EAAG,MAAM;;;CAelD;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../src/services/AuthService.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,cAAM,WAAW;IAEb,OAAO,CAAC,YAAY,CAAc;gBAEtB,WAAW,EAAG,WAAW;CAMxC;AAED,eAAe,WAAW,CAAA"}
@@ -0,0 +1,9 @@
1
+ declare class PermissionService {
2
+ static addPermission(permission: string): void;
3
+ static removePermission(permission: string): void;
4
+ static hasPermission(permission: string): boolean;
5
+ static getPermissions(): string[];
6
+ }
7
+ export default PermissionService;
8
+ export { PermissionService };
9
+ //# sourceMappingURL=PermissionService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PermissionService.d.ts","sourceRoot":"","sources":["../../src/services/PermissionService.ts"],"names":[],"mappings":"AAEA,cAAM,iBAAiB;IAEnB,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM;IAKvC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,MAAM;IAI1C,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIjD,MAAM,CAAC,cAAc,IAAI,MAAM,EAAE;CAIpC;AAGD,eAAe,iBAAiB,CAAA;AAChC,OAAO,EAAC,iBAAiB,EAAC,CAAA"}
@@ -1,17 +1,15 @@
1
1
  import { IRole } from "../interfaces/IRole";
2
2
  import { IRoleRepository } from "../interfaces/IRoleRepository";
3
- import { IPaginateFilter } from "@drax/common-back";
3
+ import { IPaginateFilter, IPaginateResult } from "@drax/common-back";
4
4
  declare class RoleService {
5
5
  _repository: IRoleRepository;
6
6
  constructor(roleRepostitory: IRoleRepository);
7
7
  create(roleData: IRole): Promise<IRole>;
8
- update(_id: any, roleData: IRole): Promise<IRole>;
9
- delete(_id: any): Promise<boolean>;
10
- findById(_id: any): Promise<IRole | null>;
11
- paginate(filters?: IPaginateFilter, page?: number, limit?: number): Promise<{
12
- roles: IRole[];
13
- totalCount: number;
14
- }>;
8
+ update(id: any, roleData: IRole): Promise<IRole>;
9
+ delete(id: any): Promise<boolean>;
10
+ findById(id: any): Promise<IRole | null>;
11
+ fetchAll(): Promise<IRole[]>;
12
+ paginate(page?: number, limit?: number, search?: string, filters?: IPaginateFilter[]): Promise<IPaginateResult>;
15
13
  }
16
14
  export default RoleService;
17
15
  //# sourceMappingURL=RoleService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RoleService.d.ts","sourceRoot":"","sources":["../../src/services/RoleService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAA;AAElD,cAAM,WAAW;IAEb,WAAW,EAAE,eAAe,CAAA;gBAEhB,eAAe,EAAE,eAAe;IAItC,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAKvC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK;IAKhC,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAKlC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAKzC,QAAQ,CAAC,OAAQ,CAAC,EAAE,eAAe,EAAE,IAAI,GAAE,MAAU,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAgBpI;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"RoleService.d.ts","sourceRoot":"","sources":["../../src/services/RoleService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAC,eAAe,EAAE,eAAe,EAA6C,MAAM,mBAAmB,CAAA;AAK9G,cAAM,WAAW;IAEb,WAAW,EAAE,eAAe,CAAA;gBAEhB,eAAe,EAAE,eAAe;IAKtC,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAcvC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK;IAkB/B,MAAM,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IASjC,QAAQ,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAKxC,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAK5B,QAAQ,CAAC,IAAI,GAAE,MAAU,EAAE,KAAK,GAAE,MAAU,EAAE,MAAM,CAAC,EAAC,MAAM,EAAE,OAAQ,CAAC,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;CAM9H;AAED,eAAe,WAAW,CAAA"}
@@ -1,18 +1,20 @@
1
- import { IPaginateFilter } from "@drax/common-back";
2
- import { IUser } from "../interfaces/IUser";
3
- import { IUserRepository } from "../interfaces/IUserRepository";
1
+ import type { IUser, IUserCreate, IUserUpdate } from "../interfaces/IUser";
2
+ import type { IUserRepository } from "../interfaces/IUserRepository";
3
+ import type { IPaginateFilter, IPaginateResult } from "@drax/common-back";
4
4
  declare class UserService {
5
5
  _repository: IUserRepository;
6
6
  constructor(userRepository: IUserRepository);
7
- create(userData: IUser): Promise<IUser>;
8
- update(_id: any, userData: IUser): Promise<IUser>;
9
- delete(_id: any): Promise<boolean>;
10
- findById(_id: any): Promise<IUser | null>;
11
- findByUsername(username: string): Promise<IUser | null>;
12
- paginate(filters?: IPaginateFilter, page?: number, limit?: number): Promise<{
13
- roles: IUser[];
14
- totalCount: number;
7
+ auth(username: string, password: string): Promise<{
8
+ accessToken: string;
15
9
  }>;
10
+ changeUserPassword(userId: string, newPassword: string): Promise<boolean>;
11
+ changeOwnPassword(userId: string, currentPassword: string, newPassword: string): Promise<boolean>;
12
+ create(userData: IUserCreate): Promise<IUser>;
13
+ update(id: any, userData: IUserUpdate): Promise<IUser>;
14
+ delete(id: any): Promise<boolean>;
15
+ findById(id: any): Promise<IUser>;
16
+ findByUsername(username: string): Promise<IUser | null>;
17
+ paginate(page?: number, limit?: number, search?: string, filters?: IPaginateFilter[]): Promise<IPaginateResult>;
16
18
  }
17
19
  export default UserService;
18
20
  //# sourceMappingURL=UserService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserService.d.ts","sourceRoot":"","sources":["../../src/services/UserService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AAG9D,cAAM,WAAW;IAEb,WAAW,EAAE,eAAe,CAAA;gBAEhB,cAAc,EAAE,eAAe;IAIrC,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAUvC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK;IAUhC,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAKlC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAKzC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAKvD,QAAQ,CAAC,OAAQ,CAAC,EAAE,eAAe,EAAE,IAAI,GAAG,MAAU,EAAE,KAAK,GAAG,MAAW,GAAG,OAAO,CAAC;QACxF,KAAK,EAAE,KAAK,EAAE,CAAC;QACf,UAAU,EAAE,MAAM,CAAA;KACrB,CAAC;CAaL;AAED,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"UserService.d.ts","sourceRoot":"","sources":["../../src/services/UserService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,qBAAqB,CAAC;AACzE,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAC,eAAe,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAA;AAOvE,cAAM,WAAW;IAEb,WAAW,EAAE,eAAe,CAAA;gBAEhB,cAAc,EAAE,eAAe;IAKrC,IAAI,CAAC,QAAQ,EAAG,MAAM,EAAE,QAAQ,EAAG,MAAM;;;IAczC,kBAAkB,CAAC,MAAM,EAAG,MAAM,EAAE,WAAW,EAAG,MAAM;IAYxD,iBAAiB,CAAC,MAAM,EAAG,MAAM,EAAE,eAAe,EAAG,MAAM,EAAE,WAAW,EAAG,MAAM;IAiBjF,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAsB7C,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW;IAmBrC,MAAM,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAKjC,QAAQ,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC;IAKjC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAKvD,QAAQ,CAAE,IAAI,GAAG,MAAU,EAAE,KAAK,GAAG,MAAW,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAQ,CAAC,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;CAKnI;AAED,eAAe,WAAW,CAAA"}
@@ -1,12 +1,15 @@
1
+ import jsonwebtoken from "jsonwebtoken";
1
2
  declare class AuthUtils {
3
+ static verifyToken(token: string): string | jsonwebtoken.Jwt | jsonwebtoken.JwtPayload;
2
4
  static hashPassword(password: string): string;
3
5
  static checkPassword(password: string, hashPassword: string): boolean;
4
- static tokenSignPayload(userId: string, username: string, session: string): {
6
+ static tokenSignPayload(userId: string, username: string, roleId: string, session: string): {
5
7
  id: string;
6
8
  username: string;
9
+ roleId: string;
7
10
  session: string;
8
11
  };
9
- static generateToken(userId: string, username: string, session: string): string;
12
+ static generateToken(userId: string, username: string, roleId: string, session: string): string;
10
13
  }
11
14
  export default AuthUtils;
12
15
  //# sourceMappingURL=AuthUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AuthUtils.d.ts","sourceRoot":"","sources":["../../src/utils/AuthUtils.ts"],"names":[],"mappings":"AAGA,cAAM,SAAS;IAEX,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAG,MAAM,GAAG,MAAM;IAU9C,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAG,MAAM,EAAE,YAAY,EAAG,MAAM;IAI7D,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAG,MAAM;;;;;IAQ3E,MAAM,CAAC,aAAa,CAAC,MAAM,EAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAG,MAAM;CAqB3E;AAED,eAAe,SAAS,CAAA"}
1
+ {"version":3,"file":"AuthUtils.d.ts","sourceRoot":"","sources":["../../src/utils/AuthUtils.ts"],"names":[],"mappings":"AACA,OAAO,YAA0C,MAAM,cAAc,CAAC;AAEtE,cAAM,SAAS;IAEX,MAAM,CAAC,WAAW,CAAC,KAAK,EAAG,MAAM;IAWjC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAG,MAAM,GAAG,MAAM;IAU9C,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAG,MAAM,EAAE,YAAY,EAAG,MAAM;IAI7D,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAG,MAAM;;;;;;IAS3F,MAAM,CAAC,aAAa,CAAC,MAAM,EAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAG,OAAO,EAAG,MAAM;CAwB5F;AAED,eAAe,SAAS,CAAA"}
@@ -0,0 +1,10 @@
1
+ declare enum DbEngine {
2
+ Sqlite = "sqlite",
3
+ Mongo = "mongo"
4
+ }
5
+ declare class DbSetupUtils {
6
+ static getDbEngine(): DbEngine;
7
+ static getDbUri(): string;
8
+ }
9
+ export { DbEngine, DbSetupUtils };
10
+ //# sourceMappingURL=DbSetupUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DbSetupUtils.d.ts","sourceRoot":"","sources":["../../src/utils/DbSetupUtils.ts"],"names":[],"mappings":"AACA,aAAK,QAAQ;IACT,MAAM,WAAW;IACjB,KAAK,UAAU;CAClB;AAGD,cAAM,YAAY;IAGd,MAAM,CAAC,WAAW;IAWlB,MAAM,CAAC,QAAQ;CAWlB;AAGD,OAAO,EACH,QAAQ,EACR,YAAY,EACf,CAAA"}
@@ -0,0 +1,10 @@
1
+ declare const roleSchema: import("zod").ZodObject<{
2
+ name: import("zod").ZodString;
3
+ }, "strip", import("zod").ZodTypeAny, {
4
+ name?: string;
5
+ }, {
6
+ name?: string;
7
+ }>;
8
+ export default roleSchema;
9
+ export { roleSchema };
10
+ //# sourceMappingURL=RoleZod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoleZod.d.ts","sourceRoot":"","sources":["../../src/zod/RoleZod.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,UAAU;;;;;;EAMd,CAAA;AAGF,eAAe,UAAU,CAAA;AAEzB,OAAO,EAAC,UAAU,EAAC,CAAA"}
@@ -0,0 +1,53 @@
1
+ export declare const userBaseSchema: import("zod").ZodObject<{
2
+ name: import("zod").ZodString;
3
+ username: import("zod").ZodString;
4
+ email: import("zod").ZodString;
5
+ role: import("zod").ZodString;
6
+ }, "strip", import("zod").ZodTypeAny, {
7
+ name?: string;
8
+ username?: string;
9
+ email?: string;
10
+ role?: string;
11
+ }, {
12
+ name?: string;
13
+ username?: string;
14
+ email?: string;
15
+ role?: string;
16
+ }>;
17
+ export declare const createUserSchema: import("zod").ZodObject<import("zod").objectUtil.extendShape<{
18
+ name: import("zod").ZodString;
19
+ username: import("zod").ZodString;
20
+ email: import("zod").ZodString;
21
+ role: import("zod").ZodString;
22
+ }, {
23
+ password: import("zod").ZodString;
24
+ }>, "strip", import("zod").ZodTypeAny, {
25
+ name?: string;
26
+ username?: string;
27
+ email?: string;
28
+ password?: string;
29
+ role?: string;
30
+ }, {
31
+ name?: string;
32
+ username?: string;
33
+ email?: string;
34
+ password?: string;
35
+ role?: string;
36
+ }>;
37
+ export declare const editUserSchema: import("zod").ZodObject<import("zod").objectUtil.extendShape<{
38
+ name: import("zod").ZodString;
39
+ username: import("zod").ZodString;
40
+ email: import("zod").ZodString;
41
+ role: import("zod").ZodString;
42
+ }, {}>, "strip", import("zod").ZodTypeAny, {
43
+ name?: string;
44
+ username?: string;
45
+ email?: string;
46
+ role?: string;
47
+ }, {
48
+ name?: string;
49
+ username?: string;
50
+ email?: string;
51
+ role?: string;
52
+ }>;
53
+ //# sourceMappingURL=UserZod.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserZod.d.ts","sourceRoot":"","sources":["../../src/zod/UserZod.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;EAUzB,CAAA;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;EAK3B,CAAC;AAGH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;EAEzB,CAAC"}
@@ -1,8 +0,0 @@
1
- import AuthService from "../services/AuthService.js";
2
- import UserServiceFactory from "./UserServiceFactory.js";
3
- const AuthServiceFactory = () => {
4
- const userService = UserServiceFactory();
5
- const authService = new AuthService(userService);
6
- return authService;
7
- };
8
- export default AuthServiceFactory;
@@ -1,16 +0,0 @@
1
- import AuthServiceFactory from "../../factory/AuthServiceFactory.js";
2
- const authService = AuthServiceFactory();
3
- export default {
4
- Query: {},
5
- Mutation: {
6
- auth: async (_, { input }) => {
7
- try {
8
- return await authService.auth(input.username, input.password);
9
- }
10
- catch (e) {
11
- console.log(e);
12
- throw e;
13
- }
14
- },
15
- }
16
- };
@@ -1,12 +0,0 @@
1
- input AuthInput{
2
- username: String!
3
- password: String!
4
- }
5
-
6
- type Auth{
7
- accessToken: String
8
- }
9
-
10
- type Mutation{
11
- auth(input: AuthInput): Auth
12
- }
@@ -1,29 +0,0 @@
1
- import { RoleModel } from "../models/RoleModel.js";
2
- class RoleRepository {
3
- async create(roleData) {
4
- const role = new RoleModel(roleData);
5
- await role.save();
6
- return role;
7
- }
8
- async update(_id, roleData) {
9
- const role = await RoleModel.findOneAndUpdate(_id, roleData, { new: true }).exec();
10
- return role;
11
- }
12
- async delete(_id) {
13
- const result = await RoleModel.deleteOne(_id).exec();
14
- return result.deletedCount == 1;
15
- }
16
- async findById(_id) {
17
- const role = await RoleModel.findById(_id).exec();
18
- return role;
19
- }
20
- async fetch() {
21
- const roles = await RoleModel.find().exec();
22
- return roles;
23
- }
24
- async paginate(query, options) {
25
- const roles = await RoleModel.paginate(query, options);
26
- return roles;
27
- }
28
- }
29
- export default RoleRepository;
@@ -1,33 +0,0 @@
1
- import { UserModel } from "../models/UserModel.js";
2
- class UserRepository {
3
- async create(userData) {
4
- const user = new UserModel(userData);
5
- await user.save();
6
- await user.populate('role');
7
- return user;
8
- }
9
- async update(_id, userData) {
10
- const user = await UserModel.findOneAndUpdate(_id, userData).populate('role').exec();
11
- return user;
12
- }
13
- async delete(_id) {
14
- const result = await UserModel.deleteOne(_id).exec();
15
- return result.deletedCount == 1;
16
- }
17
- async findById(_id) {
18
- console.log("_id", _id);
19
- const user = await UserModel.findById(_id).populate('role').exec();
20
- console.log("user", user);
21
- return user;
22
- }
23
- async findByUsername(username) {
24
- const user = await UserModel.findOne({ username: username }).populate('role').exec();
25
- return user;
26
- }
27
- async paginate(query, options) {
28
- options.populate = ['role'];
29
- const userPaginated = await UserModel.paginate(query, options);
30
- return userPaginated;
31
- }
32
- }
33
- export default UserRepository;
@@ -1,10 +0,0 @@
1
- import AuthService from "../services/AuthService.js";
2
- import UserServiceFactory from "./UserServiceFactory.js";
3
-
4
- const AuthServiceFactory = () : AuthService => {
5
- const userService = UserServiceFactory()
6
- const authService = new AuthService(userService)
7
- return authService
8
- }
9
-
10
- export default AuthServiceFactory
@@ -1,20 +0,0 @@
1
- import AuthServiceFactory from "../../factory/AuthServiceFactory.js";
2
-
3
- const authService = AuthServiceFactory()
4
- export default {
5
- Query: {
6
-
7
- },
8
- Mutation: {
9
- auth: async (_,{input}) => {
10
- try{
11
- return await authService.auth(input.username, input.password)
12
- }catch (e) {
13
- console.log(e)
14
- throw e
15
- }
16
-
17
- },
18
-
19
- }
20
- }
@@ -1,12 +0,0 @@
1
- input AuthInput{
2
- username: String!
3
- password: String!
4
- }
5
-
6
- type Auth{
7
- accessToken: String
8
- }
9
-
10
- type Mutation{
11
- auth(input: AuthInput): Auth
12
- }
@@ -1,42 +0,0 @@
1
- import {RoleModel} from "../models/RoleModel.js";
2
- import {IRole} from '../interfaces/IRole'
3
- import {IRoleRepository} from '../interfaces/IRoleRepository'
4
- import {mongoose} from "@drax/common-back";
5
- import {FilterQuery, PaginateOptions, PaginateResult} from "mongoose";
6
- import {DeleteResult} from "mongodb";
7
-
8
- class RoleRepository implements IRoleRepository{
9
-
10
- async create(roleData: IRole): Promise<IRole> {
11
- const role : mongoose.HydratedDocument<IRole> = new RoleModel(roleData)
12
- await role.save()
13
- return role
14
- }
15
-
16
- async update(_id: mongoose.Types.ObjectId, roleData: IRole): Promise<IRole> {
17
- const role : mongoose.HydratedDocument<IRole> = await RoleModel.findOneAndUpdate(_id, roleData, {new: true}).exec()
18
- return role
19
- }
20
-
21
- async delete(_id: mongoose.Types.ObjectId): Promise<boolean> {
22
- const result : DeleteResult = await RoleModel.deleteOne(_id).exec()
23
- return result.deletedCount == 1
24
- }
25
-
26
- async findById(_id: mongoose.Types.ObjectId): Promise<IRole | null>{
27
- const role: mongoose.HydratedDocument<IRole> | null = await RoleModel.findById(_id).exec()
28
- return role
29
- }
30
-
31
- async fetch(): Promise<IRole[]>{
32
- const roles: mongoose.HydratedDocument<IRole>[] = await RoleModel.find().exec()
33
- return roles
34
- }
35
-
36
- async paginate(query ?: FilterQuery<IRole>, options ?: PaginateOptions): Promise<PaginateResult<IRole>>{
37
- const roles: PaginateResult<IRole> = await RoleModel.paginate(query, options)
38
- return roles
39
- }
40
- }
41
-
42
- export default RoleRepository
@@ -1,47 +0,0 @@
1
- import {UserModel} from "../models/UserModel.js";
2
- import {mongoose} from "@drax/common-back"
3
- import {FilterQuery, PaginateOptions, PaginateResult} from "mongoose";
4
- import {IUser} from "../interfaces/IUser";
5
- import {DeleteResult} from "mongodb";
6
-
7
- class UserRepository {
8
-
9
- async create(userData: IUser): Promise<IUser> {
10
- const user: mongoose.HydratedDocument<IUser> = new UserModel(userData)
11
- await user.save()
12
- await user.populate('role')
13
- return user
14
- }
15
-
16
- async update(_id: mongoose.Types.ObjectId, userData: IUser): Promise<IUser> {
17
- const user: mongoose.HydratedDocument<IUser> = await UserModel.findOneAndUpdate(_id, userData).populate('role').exec()
18
- return user
19
- }
20
-
21
- async delete(_id: mongoose.Types.ObjectId): Promise<boolean> {
22
- const result: DeleteResult = await UserModel.deleteOne(_id).exec()
23
- return result.deletedCount == 1
24
- }
25
-
26
- async findById(_id: mongoose.Types.ObjectId): Promise<IUser> {
27
- console.log("_id",_id)
28
- const user: mongoose.HydratedDocument<IUser> = await UserModel.findById(_id).populate('role').exec()
29
- console.log("user",user)
30
- return user
31
- }
32
-
33
- async findByUsername(username: string): Promise<IUser> {
34
- const user: mongoose.HydratedDocument<IUser> = await UserModel.findOne({username: username}).populate('role').exec()
35
- return user
36
- }
37
-
38
- async paginate(query ?: FilterQuery<IUser>, options ?: PaginateOptions): Promise<PaginateResult<IUser>> {
39
-
40
- options.populate = ['role']
41
-
42
- const userPaginated: PaginateResult<IUser> = await UserModel.paginate(query, options)
43
- return userPaginated
44
- }
45
- }
46
-
47
- export default UserRepository
@@ -1,22 +0,0 @@
1
- import AuthServiceFactory from "../factory/AuthServiceFactory.js";
2
-
3
- const authService = AuthServiceFactory()
4
- async function authRoutes (fastify, options) {
5
- fastify.post('/api/auth', async (request, reply) => {
6
- try{
7
- const username = request.body.username
8
- const password = request.body.password
9
- return await authService.auth(username, password)
10
- }catch (e) {
11
- if(e.message === "BadCredentials"){
12
- reply.code(401)
13
- reply.send({error: e.message})
14
- }
15
- console.log(e)
16
- throw e
17
- }
18
- })
19
- }
20
-
21
- export default authRoutes;
22
- export {authRoutes}
@@ -1,29 +0,0 @@
1
- import UserService from "./UserService.js";
2
- import AuthUtils from "../utils/AuthUtils.js";
3
- class AuthService {
4
-
5
- private _userService: UserService;
6
-
7
- constructor(userService : UserService) {
8
- this._userService = userService
9
- }
10
-
11
-
12
- async auth(username : string, password : string){
13
- let user = null
14
-
15
- user = await this._userService.findByUsername(username)
16
-
17
- //Si obtuve usuario chequeo la password
18
- if (user && AuthUtils.checkPassword(password, user.password)) {
19
- //TODO: Generar Sesion
20
- const session = '123'
21
- const accessToken = AuthUtils.generateToken(user._id.toString(), user.username, session)
22
- return {accessToken: accessToken}
23
- }else{
24
- throw Error('BadCredentials')
25
- }
26
- }
27
- }
28
-
29
- export default AuthService
@@ -1,15 +0,0 @@
1
- import {mongoose} from "@drax/common-back"
2
- import {IUser} from "../../../src/interfaces/IUser"
3
-
4
- const user: IUser = {
5
- _id: new mongoose.Types.ObjectId("646a661e44c93567c23d8d61"),
6
- active: false,
7
- groups: [],
8
- username: "root",
9
- email: "root@example.com",
10
- password: "123",
11
- name: "root",
12
- role: new mongoose.Types.ObjectId("646a661e44c93567c23d8d62")
13
- }
14
-
15
- export default user
@@ -1,34 +0,0 @@
1
- import { mongoose } from '@drax/common-back';
2
- import { MongoMemoryServer } from 'mongodb-memory-server';
3
- const mongoServer = await MongoMemoryServer.create();
4
- class MongoInMemory {
5
- static async connect() {
6
- if (mongoServer.state == "new") {
7
- await mongoServer.start();
8
- }
9
- if (!mongoose.connection.readyState) {
10
- await mongoose.connect(mongoServer.getUri(), { dbName: "verifyMASTER" });
11
- }
12
- return;
13
- }
14
- static get mongooseStatus() {
15
- return mongoose.connection.readyState;
16
- }
17
- static get serverStatus() {
18
- return mongoServer.state;
19
- }
20
- static get status() {
21
- return mongoose.connection.readyState;
22
- }
23
- static async disconnect() {
24
- await mongoose.disconnect();
25
- }
26
- static async DropAndClose() {
27
- if (mongoServer) {
28
- await mongoose.connection.dropDatabase();
29
- await mongoose.connection.close();
30
- await mongoServer.stop();
31
- }
32
- }
33
- }
34
- export default MongoInMemory;
@@ -1,11 +0,0 @@
1
- import RoleService from "../../src/services/RoleService.mjs";
2
- import RoleRepository from "../../src/repository/RoleRepository.mjs";
3
- class RoleInitializer {
4
- static async initAdminRole() {
5
- const roleService = new RoleService(new RoleRepository());
6
- let roleData = (await import("../data-obj/roles/admin-role.mjs")).default;
7
- let roleCreated = await roleService.create(roleData);
8
- return roleCreated;
9
- }
10
- }
11
- export default RoleInitializer;