@tomei/sso 0.15.3 → 0.15.4

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 (236) hide show
  1. package/dist/__tests__/unit/components/login-user/login-user.spec.d.ts +1 -0
  2. package/dist/__tests__/unit/components/login-user/login-user.spec.js +663 -0
  3. package/dist/__tests__/unit/components/login-user/login-user.spec.js.map +1 -0
  4. package/dist/__tests__/unit/components/password-hash/password-hash.service.spec.d.ts +1 -0
  5. package/dist/__tests__/unit/components/password-hash/password-hash.service.spec.js +38 -0
  6. package/dist/__tests__/unit/components/password-hash/password-hash.service.spec.js.map +1 -0
  7. package/dist/__tests__/unit/redis-client/redis.service.spec.d.ts +1 -0
  8. package/dist/__tests__/unit/redis-client/redis.service.spec.js +32 -0
  9. package/dist/__tests__/unit/redis-client/redis.service.spec.js.map +1 -0
  10. package/dist/__tests__/unit/session/session.service.spec.d.ts +1 -0
  11. package/dist/__tests__/unit/session/session.service.spec.js +55 -0
  12. package/dist/__tests__/unit/session/session.service.spec.js.map +1 -0
  13. package/dist/__tests__/unit/system-privilege/system-privilage.spec.d.ts +0 -0
  14. package/dist/__tests__/unit/system-privilege/system-privilage.spec.js +6 -0
  15. package/dist/__tests__/unit/system-privilege/system-privilage.spec.js.map +1 -0
  16. package/dist/index.d.ts +1 -0
  17. package/dist/index.js +18 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/src/components/building/building.d.ts +39 -0
  20. package/dist/src/components/building/building.js +129 -0
  21. package/dist/src/components/building/building.js.map +1 -0
  22. package/dist/src/components/building/building.repository.d.ts +6 -0
  23. package/dist/src/components/building/building.repository.js +38 -0
  24. package/dist/src/components/building/building.repository.js.map +1 -0
  25. package/dist/src/components/building/index.d.ts +2 -0
  26. package/dist/src/components/building/index.js +19 -0
  27. package/dist/src/components/building/index.js.map +1 -0
  28. package/dist/src/components/building-type/building-type.repository.d.ts +5 -0
  29. package/dist/src/components/building-type/building-type.repository.js +12 -0
  30. package/dist/src/components/building-type/building-type.repository.js.map +1 -0
  31. package/dist/src/components/building-type/index.d.ts +1 -0
  32. package/dist/src/components/building-type/index.js +18 -0
  33. package/dist/src/components/building-type/index.js.map +1 -0
  34. package/dist/src/components/index.d.ts +10 -0
  35. package/dist/src/components/index.js +27 -0
  36. package/dist/src/components/index.js.map +1 -0
  37. package/dist/src/components/login-history/index.d.ts +1 -0
  38. package/dist/src/components/login-history/index.js +18 -0
  39. package/dist/src/components/login-history/index.js.map +1 -0
  40. package/dist/src/components/login-history/login-history.repository.d.ts +5 -0
  41. package/dist/src/components/login-history/login-history.repository.js +12 -0
  42. package/dist/src/components/login-history/login-history.repository.js.map +1 -0
  43. package/dist/src/components/login-user/index.d.ts +3 -0
  44. package/dist/src/components/login-user/index.js +20 -0
  45. package/dist/src/components/login-user/index.js.map +1 -0
  46. package/dist/src/components/login-user/interfaces/index.d.ts +1 -0
  47. package/dist/src/components/login-user/interfaces/index.js +18 -0
  48. package/dist/src/components/login-user/interfaces/index.js.map +1 -0
  49. package/dist/src/components/login-user/interfaces/user-info.interface.d.ts +9 -0
  50. package/dist/src/components/login-user/interfaces/user-info.interface.js +3 -0
  51. package/dist/src/components/login-user/interfaces/user-info.interface.js.map +1 -0
  52. package/dist/src/components/login-user/login-user.d.ts +47 -0
  53. package/dist/src/components/login-user/login-user.js +440 -0
  54. package/dist/src/components/login-user/login-user.js.map +1 -0
  55. package/dist/src/components/login-user/user.repository.d.ts +5 -0
  56. package/dist/src/components/login-user/user.repository.js +12 -0
  57. package/dist/src/components/login-user/user.repository.js.map +1 -0
  58. package/dist/src/components/password-hash/index.d.ts +2 -0
  59. package/dist/src/components/password-hash/index.js +19 -0
  60. package/dist/src/components/password-hash/index.js.map +1 -0
  61. package/dist/src/components/password-hash/interfaces/index.d.ts +1 -0
  62. package/dist/src/components/password-hash/interfaces/index.js +18 -0
  63. package/dist/src/components/password-hash/interfaces/index.js.map +1 -0
  64. package/dist/src/components/password-hash/interfaces/password-hash-service.interface.d.ts +4 -0
  65. package/dist/src/components/password-hash/interfaces/password-hash-service.interface.js +3 -0
  66. package/dist/src/components/password-hash/interfaces/password-hash-service.interface.js.map +1 -0
  67. package/dist/src/components/password-hash/password-hash.service.d.ts +6 -0
  68. package/dist/src/components/password-hash/password-hash.service.js +28 -0
  69. package/dist/src/components/password-hash/password-hash.service.js.map +1 -0
  70. package/dist/src/components/staff/index.d.ts +2 -0
  71. package/dist/src/components/staff/index.js +19 -0
  72. package/dist/src/components/staff/index.js.map +1 -0
  73. package/dist/src/components/staff/staff.d.ts +50 -0
  74. package/dist/src/components/staff/staff.js +102 -0
  75. package/dist/src/components/staff/staff.js.map +1 -0
  76. package/dist/src/components/staff/staff.repository.d.ts +6 -0
  77. package/dist/src/components/staff/staff.repository.js +38 -0
  78. package/dist/src/components/staff/staff.repository.js.map +1 -0
  79. package/dist/src/components/system/index.d.ts +1 -0
  80. package/dist/src/components/system/index.js +18 -0
  81. package/dist/src/components/system/index.js.map +1 -0
  82. package/dist/src/components/system/system.repository.d.ts +5 -0
  83. package/dist/src/components/system/system.repository.js +12 -0
  84. package/dist/src/components/system/system.repository.js.map +1 -0
  85. package/dist/src/components/system-access/index.d.ts +1 -0
  86. package/dist/src/components/system-access/index.js +18 -0
  87. package/dist/src/components/system-access/index.js.map +1 -0
  88. package/dist/src/components/system-access/system-access.repository.d.ts +5 -0
  89. package/dist/src/components/system-access/system-access.repository.js +12 -0
  90. package/dist/src/components/system-access/system-access.repository.js.map +1 -0
  91. package/dist/src/components/system-privilege/privilege.d.ts +6 -0
  92. package/dist/src/components/system-privilege/privilege.js +77 -0
  93. package/dist/src/components/system-privilege/privilege.js.map +1 -0
  94. package/dist/src/components/system-privilege/system-privilege.repository.d.ts +6 -0
  95. package/dist/src/components/system-privilege/system-privilege.repository.js +35 -0
  96. package/dist/src/components/system-privilege/system-privilege.repository.js.map +1 -0
  97. package/dist/src/components/user-group/index.d.ts +1 -0
  98. package/dist/src/components/user-group/index.js +18 -0
  99. package/dist/src/components/user-group/index.js.map +1 -0
  100. package/dist/src/components/user-group/user-group.repository.d.ts +5 -0
  101. package/dist/src/components/user-group/user-group.repository.js +12 -0
  102. package/dist/src/components/user-group/user-group.repository.js.map +1 -0
  103. package/dist/src/components/user-user-group/index.d.ts +1 -0
  104. package/dist/src/components/user-user-group/index.js +18 -0
  105. package/dist/src/components/user-user-group/index.js.map +1 -0
  106. package/dist/src/components/user-user-group/user-user-group.repository.d.ts +5 -0
  107. package/dist/src/components/user-user-group/user-user-group.repository.js +12 -0
  108. package/dist/src/components/user-user-group/user-user-group.repository.js.map +1 -0
  109. package/dist/src/database.d.ts +4 -0
  110. package/dist/src/database.js +15 -0
  111. package/dist/src/database.js.map +1 -0
  112. package/dist/src/index.d.ts +5 -0
  113. package/dist/src/index.js +24 -0
  114. package/dist/src/index.js.map +1 -0
  115. package/dist/src/interfaces/index.d.ts +2 -0
  116. package/dist/src/interfaces/index.js +19 -0
  117. package/dist/src/interfaces/index.js.map +1 -0
  118. package/dist/src/interfaces/system-login.interface.d.ts +6 -0
  119. package/dist/src/interfaces/system-login.interface.js +3 -0
  120. package/dist/src/interfaces/system-login.interface.js.map +1 -0
  121. package/dist/src/interfaces/user-session.interface.d.ts +4 -0
  122. package/dist/src/interfaces/user-session.interface.js +3 -0
  123. package/dist/src/interfaces/user-session.interface.js.map +1 -0
  124. package/dist/src/models/authorization-code.entity.d.ts +14 -0
  125. package/dist/src/models/authorization-code.entity.js +86 -0
  126. package/dist/src/models/authorization-code.entity.js.map +1 -0
  127. package/dist/src/models/bearer-token.entity.d.ts +11 -0
  128. package/dist/src/models/bearer-token.entity.js +72 -0
  129. package/dist/src/models/bearer-token.entity.js.map +1 -0
  130. package/dist/src/models/building-type.entity.d.ts +7 -0
  131. package/dist/src/models/building-type.entity.js +50 -0
  132. package/dist/src/models/building-type.entity.js.map +1 -0
  133. package/dist/src/models/building.entity.d.ts +39 -0
  134. package/dist/src/models/building.entity.js +251 -0
  135. package/dist/src/models/building.entity.js.map +1 -0
  136. package/dist/src/models/city.entity.d.ts +11 -0
  137. package/dist/src/models/city.entity.js +72 -0
  138. package/dist/src/models/city.entity.js.map +1 -0
  139. package/dist/src/models/company.entity.d.ts +18 -0
  140. package/dist/src/models/company.entity.js +114 -0
  141. package/dist/src/models/company.entity.js.map +1 -0
  142. package/dist/src/models/country.entity.d.ts +13 -0
  143. package/dist/src/models/country.entity.js +76 -0
  144. package/dist/src/models/country.entity.js.map +1 -0
  145. package/dist/src/models/department.entity.d.ts +19 -0
  146. package/dist/src/models/department.entity.js +112 -0
  147. package/dist/src/models/department.entity.js.map +1 -0
  148. package/dist/src/models/group-role-privilege.entity.d.ts +17 -0
  149. package/dist/src/models/group-role-privilege.entity.js +90 -0
  150. package/dist/src/models/group-role-privilege.entity.js.map +1 -0
  151. package/dist/src/models/group-system-access.entity.d.ts +11 -0
  152. package/dist/src/models/group-system-access.entity.js +62 -0
  153. package/dist/src/models/group-system-access.entity.js.map +1 -0
  154. package/dist/src/models/group-system-privilege.entity.d.ts +11 -0
  155. package/dist/src/models/group-system-privilege.entity.js +62 -0
  156. package/dist/src/models/group-system-privilege.entity.js.map +1 -0
  157. package/dist/src/models/group-system-role.entity.d.ts +11 -0
  158. package/dist/src/models/group-system-role.entity.js +62 -0
  159. package/dist/src/models/group-system-role.entity.js.map +1 -0
  160. package/dist/src/models/login-history.entity.d.ts +12 -0
  161. package/dist/src/models/login-history.entity.js +70 -0
  162. package/dist/src/models/login-history.entity.js.map +1 -0
  163. package/dist/src/models/oauth-token.entity.d.ts +14 -0
  164. package/dist/src/models/oauth-token.entity.js +86 -0
  165. package/dist/src/models/oauth-token.entity.js.map +1 -0
  166. package/dist/src/models/role.entity.d.ts +17 -0
  167. package/dist/src/models/role.entity.js +102 -0
  168. package/dist/src/models/role.entity.js.map +1 -0
  169. package/dist/src/models/staff-type.entity.d.ts +7 -0
  170. package/dist/src/models/staff-type.entity.js +50 -0
  171. package/dist/src/models/staff-type.entity.js.map +1 -0
  172. package/dist/src/models/staff.entity.d.ts +39 -0
  173. package/dist/src/models/staff.entity.js +250 -0
  174. package/dist/src/models/staff.entity.js.map +1 -0
  175. package/dist/src/models/state.entity.d.ts +10 -0
  176. package/dist/src/models/state.entity.js +64 -0
  177. package/dist/src/models/state.entity.js.map +1 -0
  178. package/dist/src/models/system-accesss.entity.d.ts +6 -0
  179. package/dist/src/models/system-accesss.entity.js +51 -0
  180. package/dist/src/models/system-accesss.entity.js.map +1 -0
  181. package/dist/src/models/system-privilege.entity.d.ts +16 -0
  182. package/dist/src/models/system-privilege.entity.js +90 -0
  183. package/dist/src/models/system-privilege.entity.js.map +1 -0
  184. package/dist/src/models/system-role-privilege.entity.d.ts +11 -0
  185. package/dist/src/models/system-role-privilege.entity.js +60 -0
  186. package/dist/src/models/system-role-privilege.entity.js.map +1 -0
  187. package/dist/src/models/system-role.entity.d.ts +11 -0
  188. package/dist/src/models/system-role.entity.js +83 -0
  189. package/dist/src/models/system-role.entity.js.map +1 -0
  190. package/dist/src/models/system.entity.d.ts +19 -0
  191. package/dist/src/models/system.entity.js +146 -0
  192. package/dist/src/models/system.entity.js.map +1 -0
  193. package/dist/src/models/user-group.entity.d.ts +23 -0
  194. package/dist/src/models/user-group.entity.js +140 -0
  195. package/dist/src/models/user-group.entity.js.map +1 -0
  196. package/dist/src/models/user-role.entity.d.ts +12 -0
  197. package/dist/src/models/user-role.entity.js +73 -0
  198. package/dist/src/models/user-role.entity.js.map +1 -0
  199. package/dist/src/models/user-system-privileges.entity.d.ts +13 -0
  200. package/dist/src/models/user-system-privileges.entity.js +89 -0
  201. package/dist/src/models/user-system-privileges.entity.js.map +1 -0
  202. package/dist/src/models/user-system-role.entity.d.ts +11 -0
  203. package/dist/src/models/user-system-role.entity.js +60 -0
  204. package/dist/src/models/user-system-role.entity.js.map +1 -0
  205. package/dist/src/models/user-user-group.entity.d.ts +14 -0
  206. package/dist/src/models/user-user-group.entity.js +73 -0
  207. package/dist/src/models/user-user-group.entity.js.map +1 -0
  208. package/dist/src/models/user.entity.d.ts +30 -0
  209. package/dist/src/models/user.entity.js +131 -0
  210. package/dist/src/models/user.entity.js.map +1 -0
  211. package/dist/src/redis-client/__mocks__/jest-initial-setup.d.ts +1 -0
  212. package/dist/src/redis-client/__mocks__/jest-initial-setup.js +5 -0
  213. package/dist/src/redis-client/__mocks__/jest-initial-setup.js.map +1 -0
  214. package/dist/src/redis-client/__mocks__/redis-mock.d.ts +2 -0
  215. package/dist/src/redis-client/__mocks__/redis-mock.js +23 -0
  216. package/dist/src/redis-client/__mocks__/redis-mock.js.map +1 -0
  217. package/dist/src/redis-client/index.d.ts +1 -0
  218. package/dist/src/redis-client/index.js +18 -0
  219. package/dist/src/redis-client/index.js.map +1 -0
  220. package/dist/src/redis-client/redis.service.d.ts +7 -0
  221. package/dist/src/redis-client/redis.service.js +61 -0
  222. package/dist/src/redis-client/redis.service.js.map +1 -0
  223. package/dist/src/session/index.d.ts +2 -0
  224. package/dist/src/session/index.js +19 -0
  225. package/dist/src/session/index.js.map +1 -0
  226. package/dist/src/session/interfaces/index.d.ts +1 -0
  227. package/dist/src/session/interfaces/index.js +18 -0
  228. package/dist/src/session/interfaces/index.js.map +1 -0
  229. package/dist/src/session/interfaces/session-service.interface.d.ts +6 -0
  230. package/dist/src/session/interfaces/session-service.interface.js +3 -0
  231. package/dist/src/session/interfaces/session-service.interface.js.map +1 -0
  232. package/dist/src/session/session.service.d.ts +10 -0
  233. package/dist/src/session/session.service.js +63 -0
  234. package/dist/src/session/session.service.js.map +1 -0
  235. package/dist/tsconfig.tsbuildinfo +1 -0
  236. package/package.json +2 -2
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LoginHistoryRepository = void 0;
4
+ const login_history_entity_1 = require("../../models/login-history.entity");
5
+ const general_1 = require("@tomei/general");
6
+ class LoginHistoryRepository extends general_1.RepositoryBase {
7
+ constructor() {
8
+ super(login_history_entity_1.default);
9
+ }
10
+ }
11
+ exports.LoginHistoryRepository = LoginHistoryRepository;
12
+ //# sourceMappingURL=login-history.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login-history.repository.js","sourceRoot":"","sources":["../../../../src/components/login-history/login-history.repository.ts"],"names":[],"mappings":";;;AAAA,4EAA6D;AAC7D,4CAAiE;AAEjE,MAAa,sBACX,SAAQ,wBAA4B;IAGpC;QACE,KAAK,CAAC,8BAAY,CAAC,CAAC;IACtB,CAAC;CACF;AAPD,wDAOC"}
@@ -0,0 +1,3 @@
1
+ export * from './interfaces';
2
+ export * from './login-user';
3
+ export * from './user.repository';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./interfaces"), exports);
18
+ __exportStar(require("./login-user"), exports);
19
+ __exportStar(require("./user.repository"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/login-user/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,+CAA6B;AAC7B,+CAA6B;AAC7B,oDAAkC"}
@@ -0,0 +1 @@
1
+ export * from './user-info.interface';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./user-info.interface"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/login-user/interfaces/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC"}
@@ -0,0 +1,9 @@
1
+ export interface IUserInfo {
2
+ FullName: string;
3
+ IDNo: string;
4
+ Email: string;
5
+ ContactNo: string;
6
+ ObjectId: string;
7
+ Password: string;
8
+ staffs?: any;
9
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=user-info.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-info.interface.js","sourceRoot":"","sources":["../../../../../src/components/login-user/interfaces/user-info.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,47 @@
1
+ import { IAddress, LoginUserBase } from '@tomei/general';
2
+ import { ISessionService } from '../../session/interfaces/session-service.interface';
3
+ import { ISystemLogin } from '../../../src/interfaces/system-login.interface';
4
+ export declare class LoginUser extends LoginUserBase {
5
+ FullName: string;
6
+ IDNo: string;
7
+ IDType: string;
8
+ Email: string;
9
+ ContactNo: string;
10
+ Password: string;
11
+ DefaultAddress: IAddress;
12
+ ObjectId: string;
13
+ ObjectName: string;
14
+ TableName: string;
15
+ ObjectType: string;
16
+ staffs: any;
17
+ private _OriginIP;
18
+ private _SessionService;
19
+ private _PasswordHashService;
20
+ private static _Repository;
21
+ private static _SystemRepository;
22
+ private static _SystemAccessRepository;
23
+ private static _LoginHistoryRepository;
24
+ private static _UserUserGroupRepository;
25
+ private static _UserGroupRepository;
26
+ private _dbTransaction;
27
+ getDetails(): Promise<{
28
+ FullName: string;
29
+ IDNo: string;
30
+ IDType: string;
31
+ Email: string;
32
+ ContactNo: string;
33
+ }>;
34
+ private constructor();
35
+ static init(sessionService: ISessionService, userId?: string, dbTransaction?: null): Promise<LoginUser>;
36
+ login(systemCode: string, email: string, password: string, ipAddress: string): Promise<string>;
37
+ private checkSystemAccess;
38
+ private alertNewLogin;
39
+ private getPrivileges;
40
+ private getPrivilegesFromUserGroup;
41
+ private getUserGroupFromDB;
42
+ private getUserUserGroupFromDB;
43
+ private getUserPersonalPrivileges;
44
+ checkPrivileges(systemCode: string, privilegeName: string): Promise<boolean>;
45
+ checkSession(systemCode: string, sessionId: string, userId: string): Promise<ISystemLogin>;
46
+ logout(systemCode: string): Promise<void>;
47
+ }
@@ -0,0 +1,440 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.LoginUser = void 0;
13
+ const general_1 = require("@tomei/general");
14
+ const user_repository_1 = require("./user.repository");
15
+ const system_repository_1 = require("../system/system.repository");
16
+ const system_access_repository_1 = require("../system-access/system-access.repository");
17
+ const login_history_repository_1 = require("../login-history/login-history.repository");
18
+ const user_user_group_repository_1 = require("../user-user-group/user-user-group.repository");
19
+ const password_hash_service_1 = require("../password-hash/password-hash.service");
20
+ const user_group_repository_1 = require("../user-group/user-group.repository");
21
+ const mailer_1 = require("@tomei/mailer");
22
+ const staff_entity_1 = require("../../models/staff.entity");
23
+ const system_privilege_entity_1 = require("../../models/system-privilege.entity");
24
+ const group_system_privilege_entity_1 = require("../../models/group-system-privilege.entity");
25
+ const group_role_privilege_entity_1 = require("../../models/group-role-privilege.entity");
26
+ const user_group_entity_1 = require("../../models/user-group.entity");
27
+ class LoginUser extends general_1.LoginUserBase {
28
+ getDetails() {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ return {
31
+ FullName: this.FullName,
32
+ IDNo: this.IDNo,
33
+ IDType: this.IDType,
34
+ Email: this.Email,
35
+ ContactNo: this.ContactNo,
36
+ };
37
+ });
38
+ }
39
+ constructor(sessionService, dbTransaction, userInfo) {
40
+ super();
41
+ this.ObjectName = 'User';
42
+ this.TableName = 'sso_users';
43
+ this.ObjectType = 'User';
44
+ this._PasswordHashService = new password_hash_service_1.PasswordHashService();
45
+ this._SessionService = sessionService;
46
+ if (dbTransaction) {
47
+ this._dbTransaction = dbTransaction;
48
+ }
49
+ if (userInfo) {
50
+ this.ObjectId = userInfo.ObjectId;
51
+ this.FullName = userInfo.FullName;
52
+ this.IDNo = userInfo.IDNo;
53
+ this.Email = userInfo.Email;
54
+ this.ContactNo = userInfo.ContactNo;
55
+ this.Password = userInfo.Password;
56
+ this.staffs = userInfo.staffs;
57
+ }
58
+ }
59
+ static init(sessionService, userId, dbTransaction = null) {
60
+ return __awaiter(this, void 0, void 0, function* () {
61
+ if (userId) {
62
+ if (dbTransaction) {
63
+ LoginUser._Repository = new user_repository_1.UserRepository();
64
+ }
65
+ const user = yield LoginUser._Repository.findOne({
66
+ where: {
67
+ id: Number(userId),
68
+ },
69
+ include: [
70
+ {
71
+ model: staff_entity_1.default,
72
+ },
73
+ ],
74
+ });
75
+ if (!user) {
76
+ throw new Error('Invalid credentials.');
77
+ }
78
+ if (user) {
79
+ const userInfo = {
80
+ ObjectId: user.id.toString(),
81
+ FullName: user.Staff.FullName,
82
+ IDNo: user.Staff.IdNo,
83
+ ContactNo: user.Staff.Mobile,
84
+ Email: user.Email,
85
+ Password: user.Password,
86
+ staffs: user.Staff,
87
+ };
88
+ return new LoginUser(sessionService, dbTransaction, userInfo);
89
+ }
90
+ else {
91
+ throw new Error('User not found');
92
+ }
93
+ }
94
+ return new LoginUser(sessionService, dbTransaction);
95
+ });
96
+ }
97
+ login(systemCode, email, password, ipAddress) {
98
+ return __awaiter(this, void 0, void 0, function* () {
99
+ try {
100
+ if (!this.ObjectId) {
101
+ const user = yield LoginUser._Repository.findOne({
102
+ where: {
103
+ Email: email,
104
+ },
105
+ include: [
106
+ {
107
+ model: staff_entity_1.default,
108
+ },
109
+ ],
110
+ });
111
+ const userInfo = {
112
+ ObjectId: user.id.toString(),
113
+ FullName: user.Staff.FullName,
114
+ IDNo: user.Staff.IdNo,
115
+ ContactNo: user.Staff.Mobile,
116
+ Email: user.Staff.Email,
117
+ Password: user.Password,
118
+ staffs: user.Staff,
119
+ };
120
+ this.ObjectId = userInfo.ObjectId;
121
+ this.FullName = userInfo.FullName;
122
+ this.IDNo = userInfo.IDNo;
123
+ this.Email = userInfo.Email;
124
+ this.ContactNo = userInfo.ContactNo;
125
+ this.Password = userInfo.Password;
126
+ this.staffs = userInfo.staffs;
127
+ }
128
+ if (this.ObjectId && this.Email !== email) {
129
+ throw new Error('Invalid credentials.');
130
+ }
131
+ const isPasswordValid = yield this._PasswordHashService.verify(password, this.Password);
132
+ if (!isPasswordValid) {
133
+ throw new Error('Invalid credentials.');
134
+ }
135
+ const system = yield LoginUser._SystemRepository.findOne({
136
+ where: {
137
+ code: systemCode,
138
+ },
139
+ });
140
+ if (!system) {
141
+ throw new Error('Invalid system code.');
142
+ }
143
+ yield this.checkSystemAccess(this.ObjectId, system.id);
144
+ const userSession = yield this._SessionService.retrieveUserSession(this.ObjectId);
145
+ let systemLogin = userSession.systemLogins.find((system) => system.code === systemCode);
146
+ const { randomUUID } = require('crypto');
147
+ const sessionId = randomUUID();
148
+ if (systemLogin) {
149
+ systemLogin = systemLogin.sessionId = sessionId;
150
+ userSession.systemLogins.map((system) => system.code === systemCode ? systemLogin : system);
151
+ }
152
+ else {
153
+ const newLogin = {
154
+ id: system.id.toString(),
155
+ code: system.Code,
156
+ sessionId: sessionId,
157
+ privileges: yield this.getPrivileges(system.Code),
158
+ };
159
+ userSession.systemLogins.push(newLogin);
160
+ }
161
+ this._SessionService.setUserSession(this.ObjectId, userSession);
162
+ yield LoginUser._LoginHistoryRepository.create({
163
+ UserId: this.ObjectId,
164
+ SystemId: system.id,
165
+ OriginIp: ipAddress,
166
+ CreatedAt: new Date(),
167
+ });
168
+ return `${this.ObjectId}:${sessionId}`;
169
+ }
170
+ catch (error) {
171
+ throw error;
172
+ }
173
+ });
174
+ }
175
+ checkSystemAccess(userId, systemId) {
176
+ return __awaiter(this, void 0, void 0, function* () {
177
+ try {
178
+ const systemAccess = yield LoginUser._SystemAccessRepository.findOne({
179
+ where: {
180
+ UserId: userId,
181
+ SystemId: systemId,
182
+ },
183
+ });
184
+ if (!systemAccess) {
185
+ throw new Error("User don't have access to the system.");
186
+ }
187
+ }
188
+ catch (error) {
189
+ throw error;
190
+ }
191
+ });
192
+ }
193
+ alertNewLogin(userId, systemId, ipAddress) {
194
+ return __awaiter(this, void 0, void 0, function* () {
195
+ try {
196
+ const userLogins = yield LoginUser._LoginHistoryRepository.findAll({
197
+ where: {
198
+ UserId: userId,
199
+ SystemId: systemId,
200
+ },
201
+ });
202
+ const gotPreviousLogins = (userLogins === null || userLogins === void 0 ? void 0 : userLogins.length) !== 0;
203
+ let ipFound = undefined;
204
+ if (gotPreviousLogins) {
205
+ ipFound = userLogins.find((item) => item.OriginIp === ipAddress);
206
+ }
207
+ if (gotPreviousLogins && !ipFound) {
208
+ const EMAIL_SENDER = process.env.EMAIL_SENDER || 'itd-system@tomei.com.my';
209
+ const transporter = new mailer_1.SMTPMailer();
210
+ yield transporter.sendMail({
211
+ from: EMAIL_SENDER,
212
+ to: this.Email,
213
+ subject: 'New Login Alert',
214
+ html: `<p>Dear ${this.FullName},</p>
215
+ <p>There was a new login to your account from ${ipAddress} on ${new Date().toLocaleString()}.</p>
216
+ <p>If this was you, you can safely ignore this email.</p>
217
+ <p>If you suspect that someone else is trying to access your account, please contact us immediately at itd-support@tomei.com.my.</p>
218
+ <p>Thank you!,</p>
219
+ <p>
220
+ Best Regards,
221
+ IT Department
222
+ </p>`,
223
+ });
224
+ }
225
+ }
226
+ catch (error) {
227
+ throw error;
228
+ }
229
+ });
230
+ }
231
+ getPrivileges(systemCode) {
232
+ return __awaiter(this, void 0, void 0, function* () {
233
+ try {
234
+ const system = yield LoginUser._SystemRepository.findOne({
235
+ where: {
236
+ Code: systemCode,
237
+ },
238
+ });
239
+ if (!system) {
240
+ throw new Error('Invalid system code.');
241
+ }
242
+ const userUserGroups = yield this.getUserUserGroupFromDB(system.id);
243
+ const userGroupData = userUserGroups.map((u) => u.UserGroup);
244
+ let privileges = [];
245
+ for (const userGroup of userGroupData) {
246
+ const groupSystemPrivileges = userGroup.GroupSystemPrivileges.map((g) => g.SystemPrivilege.Code);
247
+ const groupRolePrivileges = userGroup.GroupRolePrivileges.map((g) => g.SystemPrivilege.Code);
248
+ if (userGroup.GroupLevel !== 0 &&
249
+ userGroup.AllowInheritFromParentYN === 'Y') {
250
+ const parentTreePrivileges = yield this.getPrivilegesFromUserGroup(userGroup.ParentGroupCode);
251
+ privileges = [...privileges, ...parentTreePrivileges];
252
+ }
253
+ privileges = [
254
+ ...privileges,
255
+ ...groupSystemPrivileges,
256
+ ...groupRolePrivileges,
257
+ ];
258
+ }
259
+ const userPrivileges = yield this.getUserPersonalPrivileges(system.id);
260
+ privileges = [...privileges, ...userPrivileges];
261
+ privileges = [...new Set(privileges)];
262
+ return privileges;
263
+ }
264
+ catch (error) {
265
+ throw error;
266
+ }
267
+ });
268
+ }
269
+ getPrivilegesFromUserGroup(groupCode) {
270
+ return __awaiter(this, void 0, void 0, function* () {
271
+ try {
272
+ const userGroup = yield this.getUserGroupFromDB(groupCode);
273
+ let privileges = [];
274
+ privileges = [
275
+ ...privileges,
276
+ ...userGroup.GroupSystemPrivileges.map((g) => g.SystemPrivilege.Code),
277
+ ...userGroup.GroupRolePrivileges.map((g) => g.SystemPrivilege.Code),
278
+ ];
279
+ const isContinue = userGroup.GroupLevel !== 0 &&
280
+ userGroup.AllowInheritFromParentYN === 'Y';
281
+ if (isContinue) {
282
+ const recursivePrivileges = yield this.getPrivilegesFromUserGroup(userGroup.ParentGroupCode);
283
+ privileges = privileges.concat(recursivePrivileges);
284
+ }
285
+ return privileges;
286
+ }
287
+ catch (error) {
288
+ throw error;
289
+ }
290
+ });
291
+ }
292
+ getUserGroupFromDB(groupCode) {
293
+ return __awaiter(this, void 0, void 0, function* () {
294
+ try {
295
+ const userGroup = yield LoginUser._UserGroupRepository.findOne({
296
+ where: {
297
+ GroupCode: groupCode,
298
+ },
299
+ include: [
300
+ {
301
+ model: group_system_privilege_entity_1.default,
302
+ include: {
303
+ model: system_privilege_entity_1.default,
304
+ },
305
+ },
306
+ {
307
+ model: group_role_privilege_entity_1.default,
308
+ include: {
309
+ model: system_privilege_entity_1.default,
310
+ },
311
+ },
312
+ ],
313
+ });
314
+ return userGroup;
315
+ }
316
+ catch (error) {
317
+ throw error;
318
+ }
319
+ });
320
+ }
321
+ getUserUserGroupFromDB(systemCode) {
322
+ return __awaiter(this, void 0, void 0, function* () {
323
+ try {
324
+ return yield LoginUser._UserUserGroupRepository.findAll({
325
+ where: {
326
+ UserId: this.ObjectId,
327
+ SystemId: systemCode,
328
+ },
329
+ include: {
330
+ model: user_group_entity_1.default,
331
+ include: [
332
+ {
333
+ model: group_system_privilege_entity_1.default,
334
+ include: {
335
+ model: system_privilege_entity_1.default,
336
+ },
337
+ },
338
+ {
339
+ model: group_role_privilege_entity_1.default,
340
+ include: {
341
+ model: system_privilege_entity_1.default,
342
+ },
343
+ },
344
+ ],
345
+ },
346
+ });
347
+ }
348
+ catch (error) {
349
+ throw error;
350
+ }
351
+ });
352
+ }
353
+ getUserPersonalPrivileges(systemId) {
354
+ return __awaiter(this, void 0, void 0, function* () {
355
+ try {
356
+ const userRole = yield LoginUser._Repository.findOne({
357
+ where: {
358
+ id: this.ObjectId,
359
+ },
360
+ include: {
361
+ model: system_privilege_entity_1.default,
362
+ },
363
+ });
364
+ let userSystemPrivileges = userRole.SystemPrivileges;
365
+ userSystemPrivileges = userSystemPrivileges.filter((u) => u.SystemId === systemId);
366
+ const userPrivileges = userSystemPrivileges.map((u) => u.Code);
367
+ return userPrivileges;
368
+ }
369
+ catch (error) {
370
+ throw error;
371
+ }
372
+ });
373
+ }
374
+ checkPrivileges(systemCode, privilegeName) {
375
+ return __awaiter(this, void 0, void 0, function* () {
376
+ try {
377
+ if (!this.ObjectId) {
378
+ throw new Error('ObjectId(UserId) is not set');
379
+ }
380
+ const userSession = yield this._SessionService.retrieveUserSession(this.ObjectId);
381
+ const systemLogin = userSession.systemLogins.find((system) => system.code === systemCode);
382
+ if (!systemLogin) {
383
+ return false;
384
+ }
385
+ const privileges = systemLogin.privileges;
386
+ const hasPrivilege = privileges.includes(privilegeName);
387
+ return hasPrivilege;
388
+ }
389
+ catch (error) {
390
+ throw error;
391
+ }
392
+ });
393
+ }
394
+ checkSession(systemCode, sessionId, userId) {
395
+ return __awaiter(this, void 0, void 0, function* () {
396
+ try {
397
+ const userSession = yield this._SessionService.retrieveUserSession(userId);
398
+ if (userSession.systemLogins.length === 0) {
399
+ throw new Error('Session expired.');
400
+ }
401
+ const systemLogin = userSession.systemLogins.find((sl) => sl.code === systemCode);
402
+ if (!systemLogin) {
403
+ throw new Error('Session expired.');
404
+ }
405
+ if (systemLogin.sessionId !== sessionId) {
406
+ throw new Error('Session expired.');
407
+ }
408
+ yield this._SessionService.refreshDuration(userId);
409
+ return systemLogin;
410
+ }
411
+ catch (error) {
412
+ throw error;
413
+ }
414
+ });
415
+ }
416
+ logout(systemCode) {
417
+ return __awaiter(this, void 0, void 0, function* () {
418
+ try {
419
+ if (!this.ObjectId) {
420
+ throw new Error('ObjectId(UserId) is not set');
421
+ }
422
+ const userSession = yield this._SessionService.retrieveUserSession(this.ObjectId);
423
+ const index = userSession.systemLogins.findIndex((system) => system.code === systemCode);
424
+ userSession.systemLogins.splice(index, 1);
425
+ this._SessionService.setUserSession(this.ObjectId, userSession);
426
+ }
427
+ catch (error) {
428
+ throw error;
429
+ }
430
+ });
431
+ }
432
+ }
433
+ exports.LoginUser = LoginUser;
434
+ LoginUser._Repository = new user_repository_1.UserRepository();
435
+ LoginUser._SystemRepository = new system_repository_1.SystemRepository();
436
+ LoginUser._SystemAccessRepository = new system_access_repository_1.SystemAccessRepository();
437
+ LoginUser._LoginHistoryRepository = new login_history_repository_1.LoginHistoryRepository();
438
+ LoginUser._UserUserGroupRepository = new user_user_group_repository_1.UserUserGroupRepository();
439
+ LoginUser._UserGroupRepository = new user_group_repository_1.UserGroupRepository();
440
+ //# sourceMappingURL=login-user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login-user.js","sourceRoot":"","sources":["../../../../src/components/login-user/login-user.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import User from '../../models/user.entity';
2
+ import { RepositoryBase, IRepositoryBase } from '@tomei/general';
3
+ export declare class UserRepository extends RepositoryBase<User> implements IRepositoryBase<User> {
4
+ constructor();
5
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserRepository = void 0;
4
+ const user_entity_1 = require("../../models/user.entity");
5
+ const general_1 = require("@tomei/general");
6
+ class UserRepository extends general_1.RepositoryBase {
7
+ constructor() {
8
+ super(user_entity_1.default);
9
+ }
10
+ }
11
+ exports.UserRepository = UserRepository;
12
+ //# sourceMappingURL=user.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.repository.js","sourceRoot":"","sources":["../../../../src/components/login-user/user.repository.ts"],"names":[],"mappings":";;;AAAA,0DAA4C;AAC5C,4CAAiE;AAEjE,MAAa,cACX,SAAQ,wBAAoB;IAG5B;QACE,KAAK,CAAC,qBAAI,CAAC,CAAC;IACd,CAAC;CACF;AAPD,wCAOC"}
@@ -0,0 +1,2 @@
1
+ export * from './interfaces';
2
+ export * from './password-hash.service';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./interfaces"), exports);
18
+ __exportStar(require("./password-hash.service"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/password-hash/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,0DAAwC"}
@@ -0,0 +1 @@
1
+ export * from './password-hash-service.interface';