@drax/identity-back 0.0.3

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 (110) hide show
  1. package/dist/factory/AuthServiceFactory.js +8 -0
  2. package/dist/factory/RoleServiceFactory.js +8 -0
  3. package/dist/factory/UserServiceFactory.js +8 -0
  4. package/dist/graphql/index.js +7 -0
  5. package/dist/graphql/resolvers/auth.resolvers.js +15 -0
  6. package/dist/graphql/resolvers/role.resolvers.js +23 -0
  7. package/dist/graphql/resolvers/user.resolvers.js +26 -0
  8. package/dist/graphql/types/auth.graphql +8 -0
  9. package/dist/graphql/types/role.graphql +32 -0
  10. package/dist/graphql/types/user.graphql +34 -0
  11. package/dist/index.js +12 -0
  12. package/dist/interfaces/IRole.js +1 -0
  13. package/dist/interfaces/IRoleRepository.js +1 -0
  14. package/dist/interfaces/IUser.js +1 -0
  15. package/dist/interfaces/IUserGroup.js +1 -0
  16. package/dist/interfaces/IUserRepository.js +1 -0
  17. package/dist/models/RoleModel.js +33 -0
  18. package/dist/models/UserGroupModel.js +33 -0
  19. package/dist/models/UserModel.js +79 -0
  20. package/dist/repository/RoleRepository.js +29 -0
  21. package/dist/repository/UserRepository.js +33 -0
  22. package/dist/services/AuthService.js +21 -0
  23. package/dist/services/RoleService.js +31 -0
  24. package/dist/services/UserService.js +43 -0
  25. package/dist/utils/AuthUtils.js +36 -0
  26. package/package.json +53 -0
  27. package/src/factory/AuthServiceFactory.ts +10 -0
  28. package/src/factory/RoleServiceFactory.ts +10 -0
  29. package/src/factory/UserServiceFactory.ts +10 -0
  30. package/src/graphql/index.ts +8 -0
  31. package/src/graphql/resolvers/auth.resolvers.ts +19 -0
  32. package/src/graphql/resolvers/role.resolvers.ts +25 -0
  33. package/src/graphql/resolvers/user.resolvers.ts +27 -0
  34. package/src/graphql/types/auth.graphql +8 -0
  35. package/src/graphql/types/role.graphql +32 -0
  36. package/src/graphql/types/user.graphql +34 -0
  37. package/src/index.ts +24 -0
  38. package/src/interfaces/IRole.ts +11 -0
  39. package/src/interfaces/IRoleRepository.ts +11 -0
  40. package/src/interfaces/IUser.ts +21 -0
  41. package/src/interfaces/IUserGroup.ts +10 -0
  42. package/src/interfaces/IUserRepository.ts +11 -0
  43. package/src/models/RoleModel.ts +48 -0
  44. package/src/models/UserGroupModel.ts +48 -0
  45. package/src/models/UserModel.ts +94 -0
  46. package/src/repository/RoleRepository.ts +42 -0
  47. package/src/repository/UserRepository.ts +47 -0
  48. package/src/services/AuthService.ts +29 -0
  49. package/src/services/RoleService.ts +51 -0
  50. package/src/services/UserService.ts +67 -0
  51. package/src/utils/AuthUtils.ts +51 -0
  52. package/test/data-json/roles/admin-role.json +5 -0
  53. package/test/data-json/users/root-user.json +7 -0
  54. package/test/data-obj/roles/admin-role.ts +12 -0
  55. package/test/data-obj/users/root-user.ts +15 -0
  56. package/test/initializers/MongoInMemory.mjs +34 -0
  57. package/test/initializers/MongoInMemory.ts +42 -0
  58. package/test/initializers/RoleInitializer.mjs +11 -0
  59. package/test/initializers/RoleInitializer.ts +15 -0
  60. package/test/repository/role-repository.test.ts +75 -0
  61. package/test/repository/user-repository.test.ts +54 -0
  62. package/test/service/mock-service.test.ts +25 -0
  63. package/test/service/role-service.test.ts +30 -0
  64. package/test/service/user-service.test.ts +44 -0
  65. package/tsconfig.json +13 -0
  66. package/tsconfig.tsbuildinfo +1 -0
  67. package/types/factory/AuthServiceFactory.d.ts +4 -0
  68. package/types/factory/AuthServiceFactory.d.ts.map +1 -0
  69. package/types/factory/RoleServiceFactory.d.ts +4 -0
  70. package/types/factory/RoleServiceFactory.d.ts.map +1 -0
  71. package/types/factory/UserServiceFactory.d.ts +4 -0
  72. package/types/factory/UserServiceFactory.d.ts.map +1 -0
  73. package/types/graphql/index.d.ts +6 -0
  74. package/types/graphql/index.d.ts.map +1 -0
  75. package/types/graphql/resolvers/auth.resolvers.d.ts +10 -0
  76. package/types/graphql/resolvers/auth.resolvers.d.ts.map +1 -0
  77. package/types/graphql/resolvers/role.resolvers.d.ts +25 -0
  78. package/types/graphql/resolvers/role.resolvers.d.ts.map +1 -0
  79. package/types/graphql/resolvers/user.resolvers.d.ts +25 -0
  80. package/types/graphql/resolvers/user.resolvers.d.ts.map +1 -0
  81. package/types/index.d.ts +7 -0
  82. package/types/index.d.ts.map +1 -0
  83. package/types/interfaces/IRole.d.ts +11 -0
  84. package/types/interfaces/IRole.d.ts.map +1 -0
  85. package/types/interfaces/IRoleRepository.d.ts +10 -0
  86. package/types/interfaces/IRoleRepository.d.ts.map +1 -0
  87. package/types/interfaces/IUser.d.ts +20 -0
  88. package/types/interfaces/IUser.d.ts.map +1 -0
  89. package/types/interfaces/IUserGroup.d.ts +10 -0
  90. package/types/interfaces/IUserGroup.d.ts.map +1 -0
  91. package/types/interfaces/IUserRepository.d.ts +11 -0
  92. package/types/interfaces/IUserRepository.d.ts.map +1 -0
  93. package/types/models/RoleModel.d.ts +16 -0
  94. package/types/models/RoleModel.d.ts.map +1 -0
  95. package/types/models/UserGroupModel.d.ts +16 -0
  96. package/types/models/UserGroupModel.d.ts.map +1 -0
  97. package/types/models/UserModel.d.ts +16 -0
  98. package/types/models/UserModel.d.ts.map +1 -0
  99. package/types/repository/RoleRepository.d.ts +41 -0
  100. package/types/repository/RoleRepository.d.ts.map +1 -0
  101. package/types/repository/UserRepository.d.ts +40 -0
  102. package/types/repository/UserRepository.d.ts.map +1 -0
  103. package/types/services/AuthService.d.ts +8 -0
  104. package/types/services/AuthService.d.ts.map +1 -0
  105. package/types/services/RoleService.d.ts +17 -0
  106. package/types/services/RoleService.d.ts.map +1 -0
  107. package/types/services/UserService.d.ts +18 -0
  108. package/types/services/UserService.d.ts.map +1 -0
  109. package/types/utils/AuthUtils.d.ts +12 -0
  110. package/types/utils/AuthUtils.d.ts.map +1 -0
@@ -0,0 +1,40 @@
1
+ /// <reference types="mongoose/types/types" />
2
+ /// <reference types="mongoose/types/query" />
3
+ /// <reference types="mongoose/types/aggregate.js" />
4
+ /// <reference types="mongoose/types/callback.js" />
5
+ /// <reference types="mongoose/types/collection.js" />
6
+ /// <reference types="mongoose/types/connection.js" />
7
+ /// <reference types="mongoose/types/cursor.js" />
8
+ /// <reference types="mongoose/types/document.js" />
9
+ /// <reference types="mongoose/types/error.js" />
10
+ /// <reference types="mongoose/types/expressions.js" />
11
+ /// <reference types="mongoose/types/helpers.js" />
12
+ /// <reference types="mongoose/types/middlewares.js" />
13
+ /// <reference types="mongoose/types/indexes.js" />
14
+ /// <reference types="mongoose/types/models.js" />
15
+ /// <reference types="mongoose/types/mongooseoptions.js" />
16
+ /// <reference types="mongoose/types/pipelinestage.js" />
17
+ /// <reference types="mongoose/types/populate.js" />
18
+ /// <reference types="mongoose/types/query.js" />
19
+ /// <reference types="mongoose/types/schemaoptions.js" />
20
+ /// <reference types="mongoose/types/schematypes.js" />
21
+ /// <reference types="mongoose/types/session.js" />
22
+ /// <reference types="mongoose/types/types.js" />
23
+ /// <reference types="mongoose/types/utility.js" />
24
+ /// <reference types="mongoose/types/validation.js" />
25
+ /// <reference types="mongoose/types/virtuals.js" />
26
+ /// <reference types="mongoose/types/inferschematype.js" />
27
+ /// <reference types="mongoose-paginate-v2" />
28
+ import { mongoose } from "@drax/common-back";
29
+ import { FilterQuery, PaginateOptions, PaginateResult } from "mongoose";
30
+ import { IUser } from "../interfaces/IUser";
31
+ declare class UserRepository {
32
+ create(userData: IUser): Promise<IUser>;
33
+ update(_id: mongoose.Types.ObjectId, userData: IUser): Promise<IUser>;
34
+ delete(_id: mongoose.Types.ObjectId): Promise<boolean>;
35
+ findById(_id: mongoose.Types.ObjectId): Promise<IUser>;
36
+ findByUsername(username: string): Promise<IUser>;
37
+ paginate(query?: FilterQuery<IUser>, options?: PaginateOptions): Promise<PaginateResult<IUser>>;
38
+ }
39
+ export default UserRepository;
40
+ //# sourceMappingURL=UserRepository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserRepository.d.ts","sourceRoot":"","sources":["../../src/repository/UserRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAC,WAAW,EAAE,eAAe,EAAE,cAAc,EAAC,MAAM,UAAU,CAAC;AACtE,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAG1C,cAAM,cAAc;IAEV,MAAM,CAAC,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAOvC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAKrE,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAKtD,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC;IAOtD,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAKhD,QAAQ,CAAC,KAAM,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,OAAQ,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;CAO1G;AAED,eAAe,cAAc,CAAA"}
@@ -0,0 +1,8 @@
1
+ import UserService from "./UserService.js";
2
+ declare class AuthService {
3
+ private _userService;
4
+ constructor(userService: UserService);
5
+ auth(username: string, password: string): Promise<string>;
6
+ }
7
+ export default AuthService;
8
+ //# sourceMappingURL=AuthService.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,17 @@
1
+ import { IRole } from "../interfaces/IRole";
2
+ import { IRoleRepository } from "../interfaces/IRoleRepository";
3
+ import { IPaginateFilter } from "@drax/common-back";
4
+ declare class RoleService {
5
+ _repository: IRoleRepository;
6
+ constructor(roleRepostitory: IRoleRepository);
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
+ }>;
15
+ }
16
+ export default RoleService;
17
+ //# sourceMappingURL=RoleService.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,18 @@
1
+ import { IPaginateFilter } from "@drax/common-back";
2
+ import { IUser } from "../interfaces/IUser";
3
+ import { IUserRepository } from "../interfaces/IUserRepository";
4
+ declare class UserService {
5
+ _repository: IUserRepository;
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;
15
+ }>;
16
+ }
17
+ export default UserService;
18
+ //# sourceMappingURL=UserService.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,12 @@
1
+ declare class AuthUtils {
2
+ static hashPassword(password: string): string;
3
+ static checkPassword(password: string, hashPassword: string): boolean;
4
+ static tokenSignPayload(userId: string, username: string, session: string): {
5
+ id: string;
6
+ username: string;
7
+ session: string;
8
+ };
9
+ static generateToken(userId: string, username: string, session: string): string;
10
+ }
11
+ export default AuthUtils;
12
+ //# sourceMappingURL=AuthUtils.d.ts.map
@@ -0,0 +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"}