@drax/identity-back 0.0.8 → 0.0.10

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
@@ -1,4 +1,4 @@
1
1
  import UserService from "../services/UserService.js";
2
- declare const UserServiceFactory: () => UserService;
3
- export default UserServiceFactory;
2
+ declare const _default: UserService;
3
+ export default _default;
4
4
  //# sourceMappingURL=UserServiceFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserServiceFactory.d.ts","sourceRoot":"","sources":["../../src/factory/UserServiceFactory.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,4BAA4B,CAAC;AAErD,QAAA,MAAM,kBAAkB,QAAQ,WAI/B,CAAA;AAEA,eAAe,kBAAkB,CAAA"}
1
+ {"version":3,"file":"UserServiceFactory.d.ts","sourceRoot":"","sources":["../../src/factory/UserServiceFactory.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,4BAA4B,CAAC;;AAyBpD,wBAAmC"}
@@ -2,22 +2,39 @@ declare const _default: {
2
2
  Query: {
3
3
  findRoleById: (_: any, { id }: {
4
4
  id: any;
5
- }) => Promise<import("../../interfaces/IRole.js").IRole>;
6
- paginateRole: () => Promise<{
7
- roles: import("../../interfaces/IRole.js").IRole[];
8
- totalCount: number;
9
- }>;
5
+ }, { rbac }: {
6
+ rbac: any;
7
+ }) => Promise<import("../../index.js").IRole>;
8
+ fetchRole: (_: any, {}: {}, { rbac }: {
9
+ rbac: any;
10
+ }) => Promise<import("../../index.js").IRole[]>;
11
+ fetchPermissions: (_: any, {}: {}, { rbac }: {
12
+ rbac: any;
13
+ }) => Promise<string[]>;
14
+ paginateRole: (_: any, { page, limit, seach }: {
15
+ page: any;
16
+ limit: any;
17
+ seach: any;
18
+ }, { rbac }: {
19
+ rbac: any;
20
+ }) => Promise<import("@drax/common-back").IPaginateResult>;
10
21
  };
11
22
  Mutation: {
12
23
  createRole: (_: any, { input }: {
13
24
  input: any;
14
- }) => Promise<import("../../interfaces/IRole.js").IRole>;
25
+ }, { rbac }: {
26
+ rbac: any;
27
+ }) => Promise<import("../../index.js").IRole>;
15
28
  updateRole: (_: any, { id, input }: {
16
29
  id: any;
17
30
  input: any;
18
- }) => Promise<import("../../interfaces/IRole.js").IRole>;
31
+ }, { rbac }: {
32
+ rbac: any;
33
+ }) => Promise<import("../../index.js").IRole>;
19
34
  deleteRole: (_: any, { id }: {
20
35
  id: any;
36
+ }, { rbac }: {
37
+ rbac: any;
21
38
  }) => Promise<boolean>;
22
39
  };
23
40
  };
@@ -1 +1 @@
1
- {"version":3,"file":"role.resolvers.d.ts","sourceRoot":"","sources":["../../../src/graphql/resolvers/role.resolvers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAqBC"}
1
+ {"version":3,"file":"role.resolvers.d.ts","sourceRoot":"","sources":["../../../src/graphql/resolvers/role.resolvers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,wBAiGC"}
@@ -1,23 +1,54 @@
1
1
  declare const _default: {
2
2
  Query: {
3
+ me: (_: any, {}: {}, { authUser }: {
4
+ authUser: any;
5
+ }) => Promise<import("../../index.js").IUser>;
3
6
  findUserById: (_: any, { id }: {
4
7
  id: any;
5
- }) => Promise<import("../../interfaces/IUser.js").IUser>;
6
- paginateUser: () => Promise<{
7
- roles: import("../../interfaces/IUser.js").IUser[];
8
- totalCount: number;
9
- }>;
8
+ }, { rbac }: {
9
+ rbac: any;
10
+ }) => Promise<import("../../index.js").IUser>;
11
+ paginateUser: (_: any, { page, limit, search }: {
12
+ page: any;
13
+ limit: any;
14
+ search: any;
15
+ }, { rbac }: {
16
+ rbac: any;
17
+ }) => Promise<import("@drax/common-back").IPaginateResult>;
10
18
  };
11
19
  Mutation: {
20
+ auth: (_: any, { input }: {
21
+ input: any;
22
+ }) => Promise<{
23
+ accessToken: string;
24
+ }>;
12
25
  createUser: (_: any, { input }: {
13
26
  input: any;
14
- }) => Promise<import("../../interfaces/IUser.js").IUser>;
27
+ }, { rbac }: {
28
+ rbac: any;
29
+ }) => Promise<import("../../index.js").IUser>;
15
30
  updateUser: (_: any, { id, input }: {
16
31
  id: any;
17
32
  input: any;
18
- }) => Promise<import("../../interfaces/IUser.js").IUser>;
33
+ }, { rbac }: {
34
+ rbac: any;
35
+ }) => Promise<import("../../index.js").IUser>;
19
36
  deleteUser: (_: any, { id }: {
20
37
  id: any;
38
+ }, { rbac }: {
39
+ rbac: any;
40
+ }) => Promise<boolean>;
41
+ changeOwnPassword: (_: any, { currentPassword, newPassword }: {
42
+ currentPassword: any;
43
+ newPassword: any;
44
+ }, { authUser }: {
45
+ authUser: any;
46
+ }) => Promise<boolean>;
47
+ changeUserPassword: (_: any, { userId, newPassword }: {
48
+ userId: any;
49
+ newPassword: any;
50
+ }, { rbac }: {
51
+ rbac: any;
21
52
  }) => Promise<boolean>;
22
53
  };
23
54
  };
@@ -1 +1 @@
1
- {"version":3,"file":"user.resolvers.d.ts","sourceRoot":"","sources":["../../../src/graphql/resolvers/user.resolvers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGA,wBAuBC"}
1
+ {"version":3,"file":"user.resolvers.d.ts","sourceRoot":"","sources":["../../../src/graphql/resolvers/user.resolvers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,wBAkIC"}
@@ -0,0 +1,4 @@
1
+ import { I18nMessages } from "@drax/common-back";
2
+ declare const messages: I18nMessages;
3
+ export default messages;
4
+ //# sourceMappingURL=validation-i18n.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-i18n.d.ts","sourceRoot":"","sources":["../../../src/i18n/messages/validation-i18n.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAE/C,QAAA,MAAM,QAAQ,EAAE,YAmBf,CAAA;AAGD,eAAe,QAAQ,CAAA"}
package/types/index.d.ts CHANGED
@@ -1,8 +1,24 @@
1
- import { authRoutes } from "./routes/authRoutes.js";
1
+ import UserServiceFactory from "./factory/UserServiceFactory.js";
2
+ import RoleServiceFactory from "./factory/RoleServiceFactory.js";
3
+ import RoleService from "./services/RoleService.js";
4
+ import UserService from "./services/UserService.js";
5
+ import PermissionService from "./services/PermissionService.js";
6
+ import Rbac from "./rbac/Rbac.js";
7
+ import { UserRoutes } from "./routes/UserRoutes.js";
8
+ import { RoleRoutes } from "./routes/RoleRoutes.js";
9
+ import AuthUtils from "./utils/AuthUtils.js";
10
+ import { jwtMiddleware } from "./middleware/jwtMiddleware.js";
11
+ import { rbacMiddleware } from "./middleware/rbacMiddleware.js";
12
+ import IdentityPermissions from "./permissions/IdentityPermissions.js";
13
+ import UnauthorizedError from "./errors/UnauthorizedError.js";
14
+ import BadCredentialsError from "./errors/BadCredentialsError.js";
15
+ import type { IJwtUser } from "./interfaces/IJwtUser";
16
+ import type { IRole, IRoleBase } from "./interfaces/IRole";
17
+ import type { IUser } from "./interfaces/IUser";
18
+ import type { IUserRepository } from "./interfaces/IUserRepository";
19
+ import type { IRoleRepository } from "./interfaces/IRoleRepository";
2
20
  declare const identityTypeDefs: import("@graphql-tools/utils").TypeSource;
3
21
  declare const identityResolvers: import("@graphql-tools/utils").IResolvers;
4
- declare const userService: import("./services/UserService.js").default;
5
- declare const roleService: import("./services/RoleService.js").default;
6
- declare const authService: import("./services/AuthService.js").default;
7
- export { userService, roleService, authService, identityTypeDefs, identityResolvers, authRoutes };
22
+ export type { IJwtUser, IRole, IRoleBase, IRoleRepository, IUser, IUserRepository };
23
+ export { UserService, RoleService, PermissionService, Rbac, UserServiceFactory, RoleServiceFactory, identityTypeDefs, identityResolvers, UserRoutes, RoleRoutes, AuthUtils, jwtMiddleware, rbacMiddleware, IdentityPermissions, UnauthorizedError, BadCredentialsError };
8
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAGlD,QAAA,MAAM,gBAAgB,2CAAoC,CAAC;AAC3D,QAAA,MAAM,iBAAiB,2CAAqC,CAAC;AAE7D,QAAA,MAAM,WAAW,6CAAuB,CAAA;AACxC,QAAA,MAAM,WAAW,6CAAuB,CAAA;AAExC,QAAA,MAAM,WAAW,6CAAuB,CAAA;AAExC,OAAO,EAEH,WAAW,EACX,WAAW,EACX,WAAW,EAGX,gBAAgB,EAChB,iBAAiB,EAGjB,UAAU,EACb,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;AACjE,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;AACjE,OAAO,WAAW,MAAM,2BAA2B,CAAC;AACpD,OAAO,WAAW,MAAM,2BAA2B,CAAC;AACpD,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAChE,OAAO,IAAI,MAAM,gBAAgB,CAAC;AAClC,OAAO,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAC,UAAU,EAAC,MAAM,wBAAwB,CAAC;AAClD,OAAO,SAAS,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAC,aAAa,EAAC,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAC,cAAc,EAAC,MAAM,gCAAgC,CAAC;AAE9D,OAAO,mBAAmB,MAAM,sCAAsC,CAAC;AACvE,OAAO,iBAAiB,MAAM,+BAA+B,CAAC;AAC9D,OAAO,mBAAmB,MAAM,iCAAiC,CAAC;AAElE,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAC,KAAK,EAAE,SAAS,EAAC,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,oBAAoB,CAAC;AAC9C,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAC;AAGlE,QAAA,MAAM,gBAAgB,2CAAoC,CAAC;AAC3D,QAAA,MAAM,iBAAiB,2CAAqC,CAAC;AAE7D,YAAY,EACR,QAAQ,EACR,KAAK,EACL,SAAS,EACT,eAAe,EACf,KAAK,EACL,eAAe,EAClB,CAAA;AAED,OAAO,EAEH,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,IAAI,EAGJ,kBAAkB,EAClB,kBAAkB,EAGlB,gBAAgB,EAChB,iBAAiB,EAGjB,UAAU,EACV,UAAU,EAEV,SAAS,EAGT,aAAa,EACb,cAAc,EAGd,mBAAmB,EAGnB,iBAAiB,EACjB,mBAAmB,EACtB,CAAA"}
@@ -0,0 +1,6 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="mongoose/types/types.js" />
3
+ import { mongoose } from "@drax/common-back";
4
+ import { UUID } from "crypto";
5
+ export type IID = mongoose.Types.ObjectId | UUID | string | number;
6
+ //# sourceMappingURL=IID.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IID.d.ts","sourceRoot":"","sources":["../../src/interfaces/IID.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,IAAI,EAAC,MAAM,QAAQ,CAAC;AAE5B,MAAM,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC"}
@@ -0,0 +1,7 @@
1
+ interface IJwtUser {
2
+ id: string;
3
+ username: string;
4
+ roleId: string;
5
+ }
6
+ export { IJwtUser };
7
+ //# sourceMappingURL=IJwtUser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IJwtUser.d.ts","sourceRoot":"","sources":["../../src/interfaces/IJwtUser.ts"],"names":[],"mappings":"AAAA,UAAU,QAAQ;IACd,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAA;CACjB;AAED,OAAO,EAAC,QAAQ,EAAC,CAAA"}
@@ -1,11 +1,18 @@
1
- /// <reference types="mongoose/types/types" />
1
+ /// <reference types="mongoose/types/types.js" />
2
2
  import { mongoose } from "@drax/common-back";
3
- interface IRole {
4
- _id?: mongoose.Types.ObjectId;
3
+ import { IID } from "./IID";
4
+ type IPermissions = string[] | string;
5
+ interface IRoleBase {
6
+ id: IID;
5
7
  name: string;
6
8
  permissions: string[];
7
- childRoles?: mongoose.Types.ObjectId[];
8
- readonly: boolean;
9
9
  }
10
- export { IRole };
10
+ interface IRole {
11
+ id?: IID;
12
+ name: string;
13
+ permissions: IPermissions;
14
+ childRoles?: mongoose.Types.ObjectId[] | string;
15
+ readonly: boolean | number;
16
+ }
17
+ export { IRole, IRoleBase, IPermissions };
11
18
  //# sourceMappingURL=IRole.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IRole.d.ts","sourceRoot":"","sources":["../../src/interfaces/IRole.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAE3C,UAAU,KAAK;IACX,GAAG,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAA;IACtC,QAAQ,EAAE,OAAO,CAAA;CACpB;AAED,OAAO,EAAC,KAAK,EAAC,CAAA"}
1
+ {"version":3,"file":"IRole.d.ts","sourceRoot":"","sources":["../../src/interfaces/IRole.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,KAAK,YAAY,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;AAEtC,UAAU,SAAS;IACf,EAAE,EAAE,GAAG,CAAA;IACP,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,UAAU,KAAK;IACX,EAAE,CAAC,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,YAAY,CAAA;IACzB,UAAU,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAA;IAC/C,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAA;CAC7B;AAGD,OAAO,EAAC,KAAK,EAAE,SAAS,EAAE,YAAY,EAAC,CAAA"}
@@ -1,10 +1,14 @@
1
1
  import { IRole } from './IRole';
2
+ import { IPaginateFilter, IPaginateResult } from "@drax/common-back";
3
+ import { IID } from "./IID";
2
4
  interface IRoleRepository {
3
5
  create(role: IRole): Promise<IRole>;
4
- update(_id: any, updatedRole: IRole): Promise<IRole | null>;
5
- delete(_id: any): Promise<boolean>;
6
- findById(_id: any): Promise<IRole | null>;
7
- paginate(query: any, options: any): any;
6
+ update(id: IID, updatedRole: IRole): Promise<IRole | null>;
7
+ delete(id: IID): Promise<boolean>;
8
+ findById(id: IID): Promise<IRole | null>;
9
+ fetchAll(): Promise<IRole[]>;
10
+ paginate(page?: number, limit?: number, search?: string, filters?: IPaginateFilter[]): Promise<IPaginateResult>;
11
+ table?(): void;
8
12
  }
9
13
  export { IRoleRepository };
10
14
  //# sourceMappingURL=IRoleRepository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IRoleRepository.d.ts","sourceRoot":"","sources":["../../src/interfaces/IRoleRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,SAAS,CAAA;AAC7B,UAAU,eAAe;IACrB,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC5D,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAE1C,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,GAAG,CAAC;CAC3C;AAED,OAAO,EAAC,eAAe,EAAC,CAAA"}
1
+ {"version":3,"file":"IRoleRepository.d.ts","sourceRoot":"","sources":["../../src/interfaces/IRoleRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,SAAS,CAAA;AAC7B,OAAO,EAAC,eAAe,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,UAAU,eAAe;IACrB,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC3D,MAAM,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACzC,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAC,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC/G,KAAK,CAAC,IAAG,IAAI,CAAA;CAChB;AAED,OAAO,EAAC,eAAe,EAAC,CAAA"}
@@ -1,20 +1,41 @@
1
- /// <reference types="mongoose/types/types" />
2
- import { mongoose } from "@drax/common-back";
3
1
  import { IRole } from "./IRole";
4
2
  import { IUserGroup } from "./IUserGroup";
3
+ import { IID } from "./IID";
5
4
  interface IUser {
6
- _id?: mongoose.Types.ObjectId;
5
+ id?: IID;
7
6
  username: string;
8
7
  email: string;
9
8
  password: string;
10
- active: boolean;
9
+ active: boolean | number;
11
10
  name?: string;
12
11
  phone?: string;
13
12
  avatar?: string;
14
- avatarurl?: string;
15
13
  code?: string;
16
- role: mongoose.Types.ObjectId | IRole;
17
- groups: mongoose.Types.ObjectId[] | IUserGroup[];
14
+ role: IRole | IID;
15
+ groups: IID[] | IUserGroup[] | string[] | string;
16
+ toObject(): IUser;
17
+ }
18
+ interface IUserCreate {
19
+ id?: IID;
20
+ name: string;
21
+ username: string;
22
+ password: string;
23
+ email: string;
24
+ active: boolean | number;
25
+ phone: string;
26
+ role: IID;
27
+ groups: IID[] | string;
28
+ }
29
+ interface IUserUpdate {
30
+ id?: IID;
31
+ name: string;
32
+ username: string;
33
+ email: string;
34
+ active: boolean;
35
+ phone: string;
36
+ role: IID;
37
+ groups: IID[];
38
+ password?: string;
18
39
  }
19
- export { IUser };
40
+ export { IUser, IUserCreate, IUserUpdate };
20
41
  //# sourceMappingURL=IUser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IUser.d.ts","sourceRoot":"","sources":["../../src/interfaces/IUser.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,KAAK,EAAC,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AAExC,UAAU,KAAK;IACX,GAAG,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC7B,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAA;IACrC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,UAAU,EAAE,CAAA;CAEnD;AAED,OAAO,EAAC,KAAK,EAAC,CAAA"}
1
+ {"version":3,"file":"IUser.d.ts","sourceRoot":"","sources":["../../src/interfaces/IUser.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAC,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,UAAU,KAAK;IACX,EAAE,CAAC,EAAE,GAAG,CAAA;IACR,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,GAAG,MAAM,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,GAAG,GAAG,CAAA;IACjB,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,CAAA;IAChD,QAAQ,IAAI,KAAK,CAAC;CACrB;AAED,UAAU,WAAW;IACjB,EAAE,CAAC,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,OAAO,GAAG,MAAM,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,GAAG,CAAA;IACT,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,CAAA;CACzB;AAED,UAAU,WAAW;IACjB,EAAE,CAAC,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,GAAG,CAAA;IACT,MAAM,EAAE,GAAG,EAAE,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,CAAA"}
@@ -1,8 +1,9 @@
1
- /// <reference types="mongoose/types/types" />
1
+ /// <reference types="mongoose/types/types.js" />
2
2
  import { mongoose } from "@drax/common-back";
3
3
  import { IUser } from "./IUser";
4
+ import { IID } from "./IID";
4
5
  interface IUserGroup {
5
- _id?: mongoose.Types.ObjectId;
6
+ id?: IID;
6
7
  name: string;
7
8
  users: mongoose.Types.ObjectId[] | IUser[];
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IUserGroup.d.ts","sourceRoot":"","sources":["../../src/interfaces/IUserGroup.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,KAAK,EAAC,MAAM,SAAS,CAAC;AAE9B,UAAU,UAAU;IAChB,GAAG,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK,EAAE,CAAA;CAC7C;AAED,OAAO,EAAC,UAAU,EAAC,CAAA"}
1
+ {"version":3,"file":"IUserGroup.d.ts","sourceRoot":"","sources":["../../src/interfaces/IUserGroup.ts"],"names":[],"mappings":";AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,KAAK,EAAC,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,UAAU,UAAU;IAChB,EAAE,CAAC,EAAE,GAAG,CAAA;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,KAAK,EAAE,CAAA;CAC7C;AAED,OAAO,EAAC,UAAU,EAAC,CAAA"}
@@ -1,11 +1,15 @@
1
- import { IUser } from './IUser';
1
+ import { IUser, IUserCreate, IUserUpdate } from './IUser';
2
+ import { IPaginateFilter, IPaginateResult } from "@drax/common-back";
3
+ import { IID } from "./IID";
2
4
  interface IUserRepository {
3
- create(role: IUser): Promise<IUser>;
4
- update(_id: any, updatedRole: IUser): Promise<IUser | null>;
5
- delete(_id: any): Promise<boolean>;
6
- findById(_id: any): Promise<IUser | null>;
5
+ create(role: IUserCreate): Promise<IUser>;
6
+ update(id: IID, updatedRole: IUserUpdate): Promise<IUser | null>;
7
+ delete(id: IID): Promise<boolean>;
8
+ findById(id: IID): Promise<IUser | null>;
7
9
  findByUsername(username: string): Promise<IUser | null>;
8
- paginate(query: any, options: any): any;
10
+ paginate(page?: number, limit?: number, search?: string, filters?: IPaginateFilter[]): Promise<IPaginateResult>;
11
+ changePassword(id: IID, password: string): Promise<Boolean>;
12
+ table?(): void;
9
13
  }
10
14
  export { IUserRepository };
11
15
  //# sourceMappingURL=IUserRepository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IUserRepository.d.ts","sourceRoot":"","sources":["../../src/interfaces/IUserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,SAAS,CAAA;AAC7B,UAAU,eAAe;IACrB,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC5D,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC1C,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACxD,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,GAAG,CAAC;CAC3C;AAED,OAAO,EAAC,eAAe,EAAC,CAAA"}
1
+ {"version":3,"file":"IUserRepository.d.ts","sourceRoot":"","sources":["../../src/interfaces/IUserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,SAAS,CAAA;AACvD,OAAO,EAAC,eAAe,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,UAAU,eAAe;IACrB,MAAM,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACjE,MAAM,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACzC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IACxD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAChH,cAAc,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAC,MAAM,GAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1D,KAAK,CAAC,IAAG,IAAI,CAAA;CAEhB;AAED,OAAO,EAAC,eAAe,EAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ declare function jwtMiddleware(request: any, reply: any, done: any): void;
2
+ export default jwtMiddleware;
3
+ export { jwtMiddleware };
4
+ //# sourceMappingURL=jwtMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jwtMiddleware.d.ts","sourceRoot":"","sources":["../../src/middleware/jwtMiddleware.ts"],"names":[],"mappings":"AAGA,iBAAS,aAAa,CAAE,OAAO,KAAA,EAAE,KAAK,KAAA,EAAE,IAAI,KAAA,QAe3C;AAED,eAAe,aAAa,CAAC;AAC7B,OAAO,EAAC,aAAa,EAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ declare function rbacMiddleware(request: any, reply: any): Promise<void>;
2
+ export default rbacMiddleware;
3
+ export { rbacMiddleware };
4
+ //# sourceMappingURL=rbacMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rbacMiddleware.d.ts","sourceRoot":"","sources":["../../src/middleware/rbacMiddleware.ts"],"names":[],"mappings":"AAkBA,iBAAe,cAAc,CAAE,OAAO,KAAA,EAAE,KAAK,KAAA,iBAkB5C;AAED,eAAe,cAAc,CAAC;AAC9B,OAAO,EAAC,cAAc,EAAC,CAAA"}
@@ -1,15 +1,15 @@
1
- /// <reference types="mongoose/types/document" />
2
- /// <reference types="mongoose/types/types" />
3
- /// <reference types="mongoose/types/models" />
4
- /// <reference types="mongoose/types/schemaoptions" />
5
- /// <reference types="mongoose/types/utility" />
1
+ /// <reference types="mongoose/types/document.js" />
2
+ /// <reference types="mongoose/types/types.js" />
3
+ /// <reference types="mongoose/types/models.js" />
4
+ /// <reference types="mongoose/types/schemaoptions.js" />
5
+ /// <reference types="mongoose/types/utility.js" />
6
6
  import { mongoose } from '@drax/common-back';
7
7
  import { IRole } from '../interfaces/IRole';
8
- declare const RoleSchema: mongoose.Schema<IRole, mongoose.Model<IRole, any, any, any, mongoose.Document<unknown, any, IRole> & IRole & Required<{
8
+ declare const RoleSchema: mongoose.Schema<IRole, mongoose.Model<IRole, any, any, any, mongoose.Document<unknown, any, IRole> & IRole & {
9
9
  _id: mongoose.Types.ObjectId;
10
- }>, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IRole, mongoose.Document<unknown, {}, mongoose.FlatRecord<IRole>> & mongoose.FlatRecord<IRole> & Required<{
10
+ }, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IRole, mongoose.Document<unknown, {}, mongoose.FlatRecord<IRole>> & mongoose.FlatRecord<IRole> & {
11
11
  _id: mongoose.Types.ObjectId;
12
- }>>;
12
+ }>;
13
13
  declare const RoleModel: mongoose.PaginateModel<IRole, {}, {}>;
14
14
  export { RoleSchema, RoleModel };
15
15
  export default RoleModel;
@@ -1 +1 @@
1
- {"version":3,"file":"RoleModel.d.ts","sourceRoot":"","sources":["../../src/models/RoleModel.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAC,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AAG/D,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAA;AAKzC,QAAA,MAAM,UAAU;;;;GAoBd,CAAC;AAWH,QAAA,MAAM,SAAS,uCAAgG,CAAC;AAEhH,OAAO,EACH,UAAU,EACV,SAAS,EACZ,CAAA;AAED,eAAe,SAAS,CAAA"}
1
+ {"version":3,"file":"RoleModel.d.ts","sourceRoot":"","sources":["../../src/models/RoleModel.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAC,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AAG/D,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAA;AAKzC,QAAA,MAAM,UAAU;;;;EAWd,CAAC;AAWH,QAAA,MAAM,SAAS,uCAAgG,CAAC;AAEhH,OAAO,EACH,UAAU,EACV,SAAS,EACZ,CAAA;AAED,eAAe,SAAS,CAAA"}
@@ -1,15 +1,15 @@
1
- /// <reference types="mongoose/types/document" />
2
- /// <reference types="mongoose/types/types" />
3
- /// <reference types="mongoose/types/models" />
4
- /// <reference types="mongoose/types/schemaoptions" />
5
- /// <reference types="mongoose/types/utility" />
1
+ /// <reference types="mongoose/types/document.js" />
2
+ /// <reference types="mongoose/types/types.js" />
3
+ /// <reference types="mongoose/types/models.js" />
4
+ /// <reference types="mongoose/types/schemaoptions.js" />
5
+ /// <reference types="mongoose/types/utility.js" />
6
6
  import { mongoose } from '@drax/common-back';
7
7
  import { IUserGroup } from "../interfaces/IUserGroup";
8
- declare const UserGroupSchema: mongoose.Schema<IUserGroup, mongoose.Model<IUserGroup, any, any, any, mongoose.Document<unknown, any, IUserGroup> & IUserGroup & Required<{
8
+ declare const UserGroupSchema: mongoose.Schema<IUserGroup, mongoose.Model<IUserGroup, any, any, any, mongoose.Document<unknown, any, IUserGroup> & IUserGroup & {
9
9
  _id: mongoose.Types.ObjectId;
10
- }>, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IUserGroup, mongoose.Document<unknown, {}, mongoose.FlatRecord<IUserGroup>> & mongoose.FlatRecord<IUserGroup> & Required<{
10
+ }, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IUserGroup, mongoose.Document<unknown, {}, mongoose.FlatRecord<IUserGroup>> & mongoose.FlatRecord<IUserGroup> & {
11
11
  _id: mongoose.Types.ObjectId;
12
- }>>;
12
+ }>;
13
13
  declare const UserGroupModel: mongoose.PaginateModel<IUserGroup, {}, {}>;
14
14
  export { UserGroupSchema, UserGroupModel };
15
15
  export default UserGroupModel;
@@ -1 +1 @@
1
- {"version":3,"file":"UserGroupModel.d.ts","sourceRoot":"","sources":["../../src/models/UserGroupModel.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAC,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAOpD,QAAA,MAAM,eAAe;;;;GAmBC,CAAC;AAYvB,QAAA,MAAM,cAAc,4CAAwH,CAAC;AAE7I,OAAO,EACH,eAAe,EACf,cAAc,EACjB,CAAA;AAED,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"UserGroupModel.d.ts","sourceRoot":"","sources":["../../src/models/UserGroupModel.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAC,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAOpD,QAAA,MAAM,eAAe;;;;EAmBC,CAAC;AAYvB,QAAA,MAAM,cAAc,4CAAwH,CAAC;AAE7I,OAAO,EACH,eAAe,EACf,cAAc,EACjB,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1,15 +1,15 @@
1
- /// <reference types="mongoose/types/document" />
2
- /// <reference types="mongoose/types/types" />
3
- /// <reference types="mongoose/types/models" />
4
- /// <reference types="mongoose/types/schemaoptions" />
5
- /// <reference types="mongoose/types/utility" />
1
+ /// <reference types="mongoose/types/document.js" />
2
+ /// <reference types="mongoose/types/types.js" />
3
+ /// <reference types="mongoose/types/models.js" />
4
+ /// <reference types="mongoose/types/schemaoptions.js" />
5
+ /// <reference types="mongoose/types/utility.js" />
6
6
  import { mongoose } from '@drax/common-back';
7
7
  import { IUser } from "../interfaces/IUser";
8
- declare const UserSchema: mongoose.Schema<IUser, mongoose.Model<IUser, any, any, any, mongoose.Document<unknown, any, IUser> & IUser & Required<{
8
+ declare const UserSchema: mongoose.Schema<IUser, mongoose.Model<IUser, any, any, any, mongoose.Document<unknown, any, IUser> & IUser & {
9
9
  _id: mongoose.Types.ObjectId;
10
- }>, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IUser, mongoose.Document<unknown, {}, mongoose.FlatRecord<IUser>> & mongoose.FlatRecord<IUser> & Required<{
10
+ }, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, IUser, mongoose.Document<unknown, {}, mongoose.FlatRecord<IUser>> & mongoose.FlatRecord<IUser> & {
11
11
  _id: mongoose.Types.ObjectId;
12
- }>>;
12
+ }>;
13
13
  declare const UserModel: mongoose.PaginateModel<IUser, {}, {}>;
14
14
  export { UserSchema, UserModel };
15
15
  export default UserModel;
@@ -1 +1 @@
1
- {"version":3,"file":"UserModel.d.ts","sourceRoot":"","sources":["../../src/models/UserModel.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAC,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAO1C,QAAA,MAAM,UAAU;;;;GAiEM,CAAC;AAYvB,QAAA,MAAM,SAAS,uCAA+F,CAAC;AAE/G,OAAO,EACH,UAAU,EACV,SAAS,EACZ,CAAA;AAED,eAAe,SAAS,CAAA"}
1
+ {"version":3,"file":"UserModel.d.ts","sourceRoot":"","sources":["../../src/models/UserModel.ts"],"names":[],"mappings":";;;;;AAAA,OAAO,EAAC,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAO1C,QAAA,MAAM,UAAU;;;;EAgEM,CAAC;AAYvB,QAAA,MAAM,SAAS,uCAA+F,CAAC;AAE/G,OAAO,EACH,UAAU,EACV,SAAS,EACZ,CAAA;AAED,eAAe,SAAS,CAAA"}
@@ -0,0 +1,16 @@
1
+ declare enum IdentityPermissions {
2
+ CreateUser = "user:create",
3
+ UpdateUser = "user:update",
4
+ DeleteUser = "user:delete",
5
+ ViewUser = "user:view",
6
+ ManageUser = "user:manage",
7
+ CreateRole = "role:create",
8
+ UpdateRole = "role:update",
9
+ DeleteRole = "role:delete",
10
+ ViewRole = "role:view",
11
+ ManageRole = "role:manage",
12
+ PermissionsRole = "role:permissions"
13
+ }
14
+ export default IdentityPermissions;
15
+ export { IdentityPermissions };
16
+ //# sourceMappingURL=IdentityPermissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IdentityPermissions.d.ts","sourceRoot":"","sources":["../../src/permissions/IdentityPermissions.ts"],"names":[],"mappings":"AAAA,aAAK,mBAAmB;IAGpB,UAAU,gBAAgB;IAC1B,UAAU,gBAAgB;IAC1B,UAAU,gBAAgB;IAC1B,QAAQ,cAAc;IACtB,UAAU,gBAAgB;IAE1B,UAAU,gBAAgB;IAC1B,UAAU,gBAAgB;IAC1B,UAAU,gBAAgB;IAC1B,QAAQ,cAAc;IACtB,UAAU,gBAAgB;IAC1B,eAAe,qBAAqB;CAEvC;AAED,eAAe,mBAAmB,CAAC;AACnC,OAAO,EAAC,mBAAmB,EAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { IRoleBase } from "../interfaces/IRole";
2
+ import { IJwtUser } from "identity";
3
+ declare class Rbac {
4
+ private role;
5
+ private authUser;
6
+ constructor(authUser: IJwtUser, role: IRoleBase);
7
+ hasPermission(requiredPermission: string): boolean;
8
+ assertPermission(requiredPermission: string): void;
9
+ }
10
+ export default Rbac;
11
+ export { Rbac };
12
+ //# sourceMappingURL=Rbac.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Rbac.d.ts","sourceRoot":"","sources":["../../src/rbac/Rbac.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAC,QAAQ,EAAC,MAAM,UAAU,CAAC;AAGlC,cAAM,IAAI;IACN,OAAO,CAAC,IAAI,CAAY;IACxB,OAAO,CAAC,QAAQ,CAAW;gBAEf,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS;IAK/C,aAAa,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO;IAQlD,gBAAgB,CAAC,kBAAkB,EAAE,MAAM;CAM9C;AAED,eAAe,IAAI,CAAC;AACpB,OAAO,EAAC,IAAI,EAAC,CAAA"}
@@ -0,0 +1,14 @@
1
+ /// <reference types="mongoose/types/types.js" />
2
+ import { IRole } from '../../interfaces/IRole';
3
+ import { IRoleRepository } from '../../interfaces/IRoleRepository';
4
+ import { IPaginateResult, mongoose } from "@drax/common-back";
5
+ declare class RoleMongoRepository implements IRoleRepository {
6
+ create(roleData: IRole): Promise<IRole>;
7
+ update(id: mongoose.Types.ObjectId | string, roleData: IRole): Promise<IRole>;
8
+ delete(id: mongoose.Types.ObjectId): Promise<boolean>;
9
+ findById(id: mongoose.Types.ObjectId): Promise<IRole | null>;
10
+ fetchAll(): Promise<IRole[]>;
11
+ paginate(page: number, limit: number, search: string): Promise<IPaginateResult>;
12
+ }
13
+ export default RoleMongoRepository;
14
+ //# sourceMappingURL=RoleMongoRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoleMongoRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/mongo/RoleMongoRepository.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,KAAK,EAAC,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAA;AAChE,OAAO,EAAkB,eAAe,EAAE,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAI7E,cAAM,mBAAoB,YAAW,eAAe;IAE1C,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAMvC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAK7E,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAKrD,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAK5D,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAK5B,QAAQ,CAAC,IAAI,EAAC,MAAU,EAAE,KAAK,EAAC,MAAU,EAAE,MAAM,EAAC,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;CAmB7F;AAED,eAAe,mBAAmB,CAAA"}
@@ -0,0 +1,18 @@
1
+ /// <reference types="mongoose/types/types.js" />
2
+ import { mongoose } from "@drax/common-back";
3
+ import type { IPaginateResult } from "@drax/common-back";
4
+ import type { IUser, IUserCreate, IUserUpdate } from "../../interfaces/IUser";
5
+ import type { IUserRepository } from "../../interfaces/IUserRepository";
6
+ declare class UserMongoRepository implements IUserRepository {
7
+ private roleRepository;
8
+ constructor();
9
+ create(userData: IUserCreate): Promise<IUser>;
10
+ update(id: mongoose.Types.ObjectId, userData: IUserUpdate): Promise<IUser>;
11
+ delete(id: mongoose.Types.ObjectId): Promise<boolean>;
12
+ findById(id: mongoose.Types.ObjectId): Promise<IUser>;
13
+ findByUsername(username: string): Promise<IUser>;
14
+ paginate(page?: number, limit?: number, search?: string): Promise<IPaginateResult>;
15
+ changePassword(id: mongoose.Types.ObjectId, password: string): Promise<boolean>;
16
+ }
17
+ export default UserMongoRepository;
18
+ //# sourceMappingURL=UserMongoRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserMongoRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/mongo/UserMongoRepository.ts"],"names":[],"mappings":";AACA,OAAO,EAAC,QAAQ,EAAqF,MAAM,mBAAmB,CAAA;AAC9H,OAAO,KAAK,EAAkB,eAAe,EAAC,MAAM,mBAAmB,CAAA;AACvE,OAAO,KAAK,EAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAC,MAAM,wBAAwB,CAAC;AAE5E,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAC;AAItE,cAAM,mBAAoB,YAAW,eAAe;IAChD,OAAO,CAAC,cAAc,CAAsB;;IAOtC,MAAM,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAoB7C,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;IAe1E,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAMrD,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC;IAKrD,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAKhD,QAAQ,CAAC,IAAI,GAAE,MAAU,EAAE,KAAK,GAAE,MAAU,EAAE,MAAM,CAAC,EAAC,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAwBvF,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAE,OAAO,CAAC,OAAO,CAAC;CASvF;AAED,eAAe,mBAAmB,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { IRole } from '../../interfaces/IRole';
2
+ import { IRoleRepository } from '../../interfaces/IRoleRepository';
3
+ import { IPaginateResult } from "@drax/common-back";
4
+ import { IID } from "../../interfaces/IID";
5
+ declare class RoleSqliteRepository implements IRoleRepository {
6
+ private db;
7
+ constructor(DATABASE: string, verbose?: boolean);
8
+ table(): void;
9
+ normalizeData(roleData: IRole): void;
10
+ create(roleData: IRole): Promise<IRole>;
11
+ findById(id: IID): Promise<IRole | null>;
12
+ update(id: IID, roleData: IRole): Promise<IRole>;
13
+ delete(id: IID): Promise<boolean>;
14
+ deleteAll(): Promise<boolean>;
15
+ fetchAll(): Promise<IRole[]>;
16
+ paginate(page?: number, limit?: number, search?: string): Promise<IPaginateResult>;
17
+ }
18
+ export default RoleSqliteRepository;
19
+ //# sourceMappingURL=RoleSqliteRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RoleSqliteRepository.d.ts","sourceRoot":"","sources":["../../../src/repository/sqlite/RoleSqliteRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,wBAAwB,CAAA;AAC5C,OAAO,EAAC,eAAe,EAAC,MAAM,kCAAkC,CAAA;AAIhE,OAAO,EAAkB,eAAe,EAAkB,MAAM,mBAAmB,CAAC;AAEpF,OAAO,EAAC,GAAG,EAAC,MAAM,sBAAsB,CAAC;AAczC,cAAM,oBAAqB,YAAW,eAAe;IAEjD,OAAO,CAAC,EAAE,CAAM;gBAEJ,QAAQ,EAAC,MAAM,EAAE,OAAO,GAAC,OAAe;IAIpD,KAAK;IAIL,aAAa,CAAC,QAAQ,EAAE,KAAK;IAavB,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IA+BvC,QAAQ,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IASxC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAiBhD,MAAM,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAMjC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAM7B,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;IAQ5B,QAAQ,CAAC,IAAI,SAAI,EAAE,KAAK,SAAI,EAAE,MAAM,SAAG,GAAG,OAAO,CAAC,eAAe,CAAC;CAyB3E;AAED,eAAe,oBAAoB,CAAA"}