@tomei/sso 0.43.2 → 0.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/.commitlintrc.json +22 -22
  2. package/.eslintrc +16 -16
  3. package/.eslintrc.js +35 -35
  4. package/.gitlab-ci.yml +16 -16
  5. package/.husky/commit-msg +15 -15
  6. package/.husky/pre-commit +7 -7
  7. package/.prettierrc +4 -4
  8. package/Jenkinsfile +57 -57
  9. package/README.md +23 -23
  10. package/__tests__/unit/components/group/group.spec.ts +79 -79
  11. package/__tests__/unit/components/group-object-privilege/group-object-privilege.spec.ts +88 -88
  12. package/__tests__/unit/components/group-privilege/group-privilege.spec.ts +68 -68
  13. package/__tests__/unit/components/group-reporting-user/group-reporting-user.spec.ts +66 -66
  14. package/__tests__/unit/components/group-system-access/group-system-access.spec.ts +83 -83
  15. package/__tests__/unit/components/login-user/l.spec.ts +746 -746
  16. package/__tests__/unit/components/login-user/login.spec.ts +1164 -1164
  17. package/__tests__/unit/components/password-hash/password-hash.service.spec.ts +31 -31
  18. package/__tests__/unit/components/system/system.spec.ts +254 -254
  19. package/__tests__/unit/components/system-privilege/system-privilege.spec.ts +83 -83
  20. package/__tests__/unit/components/user-group/user-group.spec.ts +86 -86
  21. package/__tests__/unit/components/user-object-privilege/user-object-privilege.spec.ts +78 -78
  22. package/__tests__/unit/components/user-privilege/user-privilege.spec.ts +72 -72
  23. package/__tests__/unit/components/user-system-access/user-system-access.spec.ts +89 -89
  24. package/__tests__/unit/redis-client/redis.service.spec.ts +23 -23
  25. package/__tests__/unit/session/session.service.spec.ts +47 -47
  26. package/__tests__/unit/system-privilege/system-privilage.spec.ts +91 -91
  27. package/coverage/clover.xml +1452 -1452
  28. package/coverage/coverage-final.json +47 -47
  29. package/coverage/lcov-report/base.css +224 -224
  30. package/coverage/lcov-report/block-navigation.js +87 -87
  31. package/coverage/lcov-report/components/group/group.repository.ts.html +117 -117
  32. package/coverage/lcov-report/components/group/group.ts.html +327 -327
  33. package/coverage/lcov-report/components/group/index.html +130 -130
  34. package/coverage/lcov-report/components/group-object-privilege/group-object-privilege.repository.ts.html +117 -117
  35. package/coverage/lcov-report/components/group-object-privilege/group-object-privilege.ts.html +321 -321
  36. package/coverage/lcov-report/components/group-object-privilege/index.html +130 -130
  37. package/coverage/lcov-report/components/group-privilege/group-privilege.repository.ts.html +117 -117
  38. package/coverage/lcov-report/components/group-privilege/group-privilege.ts.html +303 -303
  39. package/coverage/lcov-report/components/group-privilege/index.html +130 -130
  40. package/coverage/lcov-report/components/group-reporting-user/group-reporting-user.repository.ts.html +117 -117
  41. package/coverage/lcov-report/components/group-reporting-user/group-reporting-user.ts.html +327 -327
  42. package/coverage/lcov-report/components/group-reporting-user/index.html +130 -130
  43. package/coverage/lcov-report/components/group-system-access/group-system-access.repository.ts.html +117 -117
  44. package/coverage/lcov-report/components/group-system-access/group-system-access.ts.html +309 -309
  45. package/coverage/lcov-report/components/group-system-access/index.html +130 -130
  46. package/coverage/lcov-report/components/login-history/index.html +115 -115
  47. package/coverage/lcov-report/components/login-history/login-history.repository.ts.html +117 -117
  48. package/coverage/lcov-report/components/login-user/index.html +130 -130
  49. package/coverage/lcov-report/components/login-user/login-user.ts.html +5007 -5007
  50. package/coverage/lcov-report/components/login-user/user.repository.ts.html +117 -117
  51. package/coverage/lcov-report/components/password-hash/index.html +115 -115
  52. package/coverage/lcov-report/components/password-hash/password-hash.service.ts.html +126 -126
  53. package/coverage/lcov-report/components/system/index.html +130 -130
  54. package/coverage/lcov-report/components/system/system.repository.ts.html +117 -117
  55. package/coverage/lcov-report/components/system/system.ts.html +909 -909
  56. package/coverage/lcov-report/components/system-privilege/index.html +130 -130
  57. package/coverage/lcov-report/components/system-privilege/system-privilege.repository.ts.html +120 -120
  58. package/coverage/lcov-report/components/system-privilege/system-privilege.ts.html +390 -390
  59. package/coverage/lcov-report/components/user-group/index.html +130 -130
  60. package/coverage/lcov-report/components/user-group/user-group.repository.ts.html +117 -117
  61. package/coverage/lcov-report/components/user-group/user-group.ts.html +354 -354
  62. package/coverage/lcov-report/components/user-object-privilege/index.html +130 -130
  63. package/coverage/lcov-report/components/user-object-privilege/user-object-privilege.repository.ts.html +117 -117
  64. package/coverage/lcov-report/components/user-object-privilege/user-object-privilege.ts.html +312 -312
  65. package/coverage/lcov-report/components/user-privilege/index.html +130 -130
  66. package/coverage/lcov-report/components/user-privilege/user-privilege.repository.ts.html +117 -117
  67. package/coverage/lcov-report/components/user-privilege/user-privilege.ts.html +306 -306
  68. package/coverage/lcov-report/components/user-system-access/index.html +130 -130
  69. package/coverage/lcov-report/components/user-system-access/user-system-access.repository.ts.html +117 -117
  70. package/coverage/lcov-report/components/user-system-access/user-system-access.ts.html +312 -312
  71. package/coverage/lcov-report/enum/group-type.enum.ts.html +108 -108
  72. package/coverage/lcov-report/enum/index.html +160 -160
  73. package/coverage/lcov-report/enum/index.ts.html +93 -93
  74. package/coverage/lcov-report/enum/user-status.enum.ts.html +105 -105
  75. package/coverage/lcov-report/enum/yn.enum.ts.html +96 -96
  76. package/coverage/lcov-report/index.html +370 -370
  77. package/coverage/lcov-report/models/group-object-privilege.entity.ts.html +333 -333
  78. package/coverage/lcov-report/models/group-privilege.entity.ts.html +315 -315
  79. package/coverage/lcov-report/models/group-reporting-user.entity.ts.html +339 -339
  80. package/coverage/lcov-report/models/group-system-access.entity.ts.html +324 -324
  81. package/coverage/lcov-report/models/group.entity.ts.html +435 -435
  82. package/coverage/lcov-report/models/index.html +310 -310
  83. package/coverage/lcov-report/models/login-history.entity.ts.html +252 -252
  84. package/coverage/lcov-report/models/staff.entity.ts.html +411 -411
  85. package/coverage/lcov-report/models/system-privilege.entity.ts.html +354 -354
  86. package/coverage/lcov-report/models/system.entity.ts.html +423 -423
  87. package/coverage/lcov-report/models/user-group.entity.ts.html +354 -354
  88. package/coverage/lcov-report/models/user-object-privilege.entity.ts.html +330 -330
  89. package/coverage/lcov-report/models/user-privilege.entity.ts.html +315 -315
  90. package/coverage/lcov-report/models/user-system-access.entity.ts.html +315 -315
  91. package/coverage/lcov-report/models/user.entity.ts.html +522 -522
  92. package/coverage/lcov-report/prettify.css +1 -1
  93. package/coverage/lcov-report/prettify.js +2 -2
  94. package/coverage/lcov-report/redis-client/index.html +115 -115
  95. package/coverage/lcov-report/redis-client/redis.service.ts.html +240 -240
  96. package/coverage/lcov-report/session/index.html +115 -115
  97. package/coverage/lcov-report/session/session.service.ts.html +246 -246
  98. package/coverage/lcov-report/sorter.js +196 -196
  99. package/coverage/lcov.info +2490 -2490
  100. package/coverage/test-report.xml +128 -128
  101. package/create-sso-user.sql +39 -39
  102. package/dist/__tests__/unit/components/group-privilege/group-privilege.test.d.ts +1 -0
  103. package/dist/__tests__/unit/components/group-privilege/group-privilege.test.js +71 -0
  104. package/dist/__tests__/unit/components/group-privilege/group-privilege.test.js.map +1 -0
  105. package/dist/__tests__/unit/components/login-user/login-user.spec.d.ts +0 -0
  106. package/dist/__tests__/unit/components/login-user/login-user.spec.js +6 -0
  107. package/dist/__tests__/unit/components/login-user/login-user.spec.js.map +1 -0
  108. package/dist/src/components/group-reporting-user/group-reporting-user.d.ts +2 -0
  109. package/dist/src/components/group-reporting-user/group-reporting-user.js +36 -0
  110. package/dist/src/components/group-reporting-user/group-reporting-user.js.map +1 -1
  111. package/dist/src/components/group-reporting-user/group-reporting-user.repository.d.ts +1 -0
  112. package/dist/src/components/group-reporting-user/group-reporting-user.repository.js +19 -0
  113. package/dist/src/components/group-reporting-user/group-reporting-user.repository.js.map +1 -1
  114. package/dist/tsconfig.tsbuildinfo +1 -1
  115. package/jest.config.js +14 -14
  116. package/migrations/20240314080602-create-user-table.js +124 -124
  117. package/migrations/20240314080603-create-user-group-table.js +85 -85
  118. package/migrations/20240314080604-create-user-user-group-table.js +55 -55
  119. package/migrations/20240314080605-create-login-history-table.js +53 -53
  120. package/migrations/20240527064925-create-system-table.js +78 -78
  121. package/migrations/20240527064926-create-system-privilege-table.js +71 -71
  122. package/migrations/20240527065342-create-group-table.js +93 -93
  123. package/migrations/20240527065633-create-group-reporting-user-table.js +76 -76
  124. package/migrations/20240528011551-create-group-system-access-table.js +72 -72
  125. package/migrations/20240528023018-user-system-access-table.js +75 -75
  126. package/migrations/20240528032229-user-privilege-table.js +75 -75
  127. package/migrations/20240528063003-create-group-privilege-table.js +85 -85
  128. package/migrations/20240528063051-create-group-object-privilege-table.js +84 -84
  129. package/migrations/20240528063107-create-user-object-privilege-table.js +83 -83
  130. package/migrations/20240528063108-create-api-key-table.js +78 -78
  131. package/package.json +89 -89
  132. package/sampledotenv +7 -7
  133. package/sonar-project.properties +22 -22
  134. package/src/components/group-reporting-user/group-reporting-user.repository.ts +12 -0
  135. package/src/components/group-reporting-user/group-reporting-user.ts +78 -0
  136. package/tsconfig.build.json +5 -5
  137. package/tsconfig.json +22 -22
@@ -1,129 +1,129 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <testExecutions version="1">
3
- <file path="C:\Work\sso\__tests__\unit\components\login-user\login.spec.ts">
4
- <testCase name="LoginUser init should initialize LoginUser with valid userId" duration="5"/>
5
- <testCase name="LoginUser init should throw an error when user is not found" duration="20"/>
6
- <testCase name="LoginUser checkSession should throw an error if session expired" duration="20"/>
7
- <testCase name="LoginUser checkSession should refresh the session duration if session is valid" duration="2"/>
8
- <testCase name="LoginUser shouldReleaseLock should return true if autoReleaseYN is &quot;Y&quot; and time difference is greater than minuteToAutoRelease" duration="2"/>
9
- <testCase name="LoginUser shouldReleaseLock should return false if autoReleaseYN is &quot;Y&quot; and time difference is less than or equal to minuteToAutoRelease" duration="1"/>
10
- <testCase name="LoginUser shouldReleaseLock should return false if autoReleaseYN is &quot;N&quot;" duration="1"/>
11
- <testCase name="LoginUser releaseLock should release the lock for a user" duration="1"/>
12
- <testCase name="LoginUser checkUserInfoDuplicated should throw an error if duplicate user info is found" duration="1"/>
13
- <testCase name="LoginUser checkUserInfoDuplicated should not throw an error if duplicate user info is not found" duration="0"/>
14
- <testCase name="LoginUser generateDefaultPassword should generate a default password with the specified length" duration="2"/>
15
- <testCase name="LoginUser generateDefaultPassword should generate a default password with at least one capital letter" duration="1"/>
16
- <testCase name="LoginUser generateDefaultPassword should generate a default password with at least one number" duration="1"/>
17
- <testCase name="LoginUser generateDefaultPassword should generate a default password with at least one special character" duration="1"/>
18
- <testCase name="LoginUser generateDefaultPassword should generate a default password without any non-acceptable characters" duration="1"/>
19
- <testCase name="LoginUser setPassword should set the password for the user" duration="159"/>
20
- <testCase name="LoginUser setPassword should throw an error if the password does not meet the security requirements" duration="13"/>
21
- <testCase name="LoginUser create should create a new user record" duration="5"/>
22
- <testCase name="LoginUser create should throw an error if user dont have the privilege to create new user" duration="2"/>
23
- <testCase name="LoginUser create should throw an error if user email is missing" duration="2"/>
24
- <testCase name="LoginUser incrementFailedLoginAttemptCount should increment FailedLoginAttemptCount and update user status" duration="1"/>
25
- <testCase name="LoginUser incrementFailedLoginAttemptCount should throw an error if maxFailedLoginAttempts or autoReleaseYN is missing" duration="1"/>
26
- <testCase name="LoginUser incrementFailedLoginAttemptCount should lock the user account if the failed login attempts exceed the maximum allowed" duration="1"/>
27
- <testCase name="LoginUser incrementFailedLoginAttemptCount should permanently lock the user account if the failed login attempts exceed the maximum allowed and autoReleaseYN is N" duration="1"/>
28
- <testCase name="LoginUser combineSystemAccess should combine user and group system access and remove duplicates" duration="1"/>
29
- <testCase name="LoginUser checkPrivileges should return true if user has the specified privilege" duration="1"/>
30
- <testCase name="LoginUser checkPrivileges should return false if user does not have the specified privilege" duration="1"/>
31
- <testCase name="LoginUser checkPrivileges should throw an error if ObjectId is not set" duration="1"/>
32
- <testCase name="LoginUser getObjectPrivileges should return an array of privileges" duration="1"/>
33
- <testCase name="LoginUser getObjectPrivileges should throw an error if an exception occurs" duration="1"/>
34
- <testCase name="LoginUser getUserPersonalPrivileges should return an array of privileges" duration="2"/>
35
- <testCase name="LoginUser getUserPersonalPrivileges should throw an error if an error occurs" duration="1"/>
36
- <testCase name="LoginUser getInheritedSystemAccess should return group system access with its parent group system access if applicable" duration="3"/>
37
- </file>
38
- <file path="C:\Work\sso\__tests__\unit\components\system\system.spec.ts">
39
- <testCase name="System init should initialize a system when SystemCode is provided" duration="3"/>
40
- <testCase name="System init should throw an error when SystemCode is not found" duration="8"/>
41
- <testCase name="System init should initialize a new system when SystemCode is not provided" duration="1"/>
42
- <testCase name="System createSystem should create a new system" duration="4"/>
43
- <testCase name="System createSystem should throw an error when user does not have permission" duration="1"/>
44
- <testCase name="System createSystem should throw an error when SystemCode is missing" duration="1"/>
45
- <testCase name="System createSystem should throw an error when Name is missing" duration="1"/>
46
- <testCase name="System createSystem should throw an error when Description is missing" duration="1"/>
47
- <testCase name="System createSystem should throw an error when failed to create system" duration="5"/>
48
- <testCase name="System setSystemCode should set the SystemCode when there is no duplicate" duration="1"/>
49
- <testCase name="System setSystemCode should throw an error when SystemCode already exists" duration="1"/>
50
- <testCase name="System setSystemCode should throw an error when failed to check duplicate SystemCode" duration="1"/>
51
- <testCase name="System findAll should find all systems based on filter" duration="2"/>
52
- <testCase name="System findAll should find all systems without pagination when page and rows are not provided" duration="1"/>
53
- </file>
54
- <file path="C:\Work\sso\__tests__\unit\components\group-object-privilege\group-object-privilege.spec.ts">
55
- <testCase name="GroupObjectPrivilege should create an instance of GroupObjectPrivilege" duration="2"/>
56
- <testCase name="GroupObjectPrivilege should have the correct TableName" duration="0"/>
57
- <testCase name="GroupObjectPrivilege should have the correct properties" duration="1"/>
58
- <testCase name="GroupObjectPrivilege init should return an instance of GroupObjectPrivilege when GroupObjectPrivilegeId is provided" duration="2"/>
59
- <testCase name="GroupObjectPrivilege init should throw an error when GroupObjectPrivilegeId is provided but no GroupObjectPrivilege is found" duration="3"/>
60
- <testCase name="GroupObjectPrivilege init should return a new instance of GroupObjectPrivilege when GroupObjectPrivilegeId is not provided" duration="3"/>
61
- </file>
62
- <file path="C:\Work\sso\__tests__\unit\components\group-system-access\group-system-access.spec.ts">
63
- <testCase name="GroupSystemAccess should create a new GroupSystemAccess instance" duration="2"/>
64
- <testCase name="GroupSystemAccess init should initialize GroupSystemAccess without GroupSystemAccessId" duration="2"/>
65
- <testCase name="GroupSystemAccess init should initialize GroupSystemAccess with GroupSystemAccessId" duration="3"/>
66
- <testCase name="GroupSystemAccess init should throw an error if GroupSystemAccessId is not found" duration="5"/>
67
- </file>
68
- <file path="C:\Work\sso\__tests__\unit\components\group\group.spec.ts">
69
- <testCase name="Group should initialize a group with valid GroupCode" duration="4"/>
70
- <testCase name="Group should throw an error when initializing a group with invalid GroupCode" duration="5"/>
71
- <testCase name="Group should throw an error when initializing a group with an error" duration="2"/>
72
- </file>
73
- <file path="C:\Work\sso\__tests__\unit\components\group-reporting-user\group-reporting-user.spec.ts">
74
- <testCase name="GroupReportingUser init should initialize GroupReportingUser without GroupReportingUserId" duration="3"/>
75
- <testCase name="GroupReportingUser init should initialize GroupReportingUser with valid GroupReportingUserId" duration="2"/>
76
- <testCase name="GroupReportingUser init should throw ClassError when GroupReportingUser is not found" duration="8"/>
77
- <testCase name="GroupReportingUser init should throw ClassError when failed to initialize GroupReportingUser" duration="1"/>
78
- </file>
79
- <file path="C:\Work\sso\__tests__\unit\components\system-privilege\system-privilege.spec.ts">
80
- <testCase name="SystemPrivilege constructor should create a new SystemPrivilege instance" duration="2"/>
81
- <testCase name="SystemPrivilege init should initialize SystemPrivilege without PrivilegeCode" duration="1"/>
82
- <testCase name="SystemPrivilege init should initialize SystemPrivilege with PrivilegeCode" duration="2"/>
83
- <testCase name="SystemPrivilege init should throw an error if PrivilegeCode is not found" duration="4"/>
84
- </file>
85
- <file path="C:\Work\sso\__tests__\unit\components\user-group\user-group.spec.ts">
86
- <testCase name="UserGroup constructor should create a new UserGroup instance" duration="3"/>
87
- <testCase name="UserGroup init should initialize UserGroup with valid UserGroupId" duration="2"/>
88
- <testCase name="UserGroup init should throw ClassError when UserGroupId is not found" duration="5"/>
89
- </file>
90
- <file path="C:\Work\sso\__tests__\unit\components\user-object-privilege\user-object-privilege.spec.ts">
91
- <testCase name="UserObjectPrivilege constructor should create a new UserObjectPrivilege instance" duration="2"/>
92
- <testCase name="UserObjectPrivilege init should initialize UserObjectPrivilege with valid ObjectPrivilegeId" duration="5"/>
93
- <testCase name="UserObjectPrivilege init should throw ClassError when ObjectPrivilegeId is not found" duration="4"/>
94
- </file>
95
- <file path="C:\Work\sso\__tests__\unit\components\group-privilege\group-privilege.spec.ts">
96
- <testCase name="GroupPrivilege should initialize with GroupPrivilegeAttr" duration="6"/>
97
- <testCase name="GroupPrivilege should throw ClassError when GroupPrivilegeAttr is not found" duration="4"/>
98
- <testCase name="GroupPrivilege should initialize with default values" duration="1"/>
99
- </file>
100
- <file path="C:\Work\sso\__tests__\unit\components\user-system-access\user-system-access.spec.ts">
101
- <testCase name="UserSystemAccess constructor should create a new UserSystemAccess instance" duration="2"/>
102
- <testCase name="UserSystemAccess init should initialize UserSystemAccess with valid UserSystemAccessId" duration="2"/>
103
- <testCase name="UserSystemAccess init should throw ClassError when UserSystemAccessId is not found" duration="1"/>
104
- </file>
105
- <file path="C:\Work\sso\__tests__\unit\components\user-privilege\user-privilege.spec.ts">
106
- <testCase name="UserPrivilege constructor should create a new UserPrivilege instance" duration="2"/>
107
- <testCase name="UserPrivilege init should initialize UserPrivilege with valid UserPrivilegeId" duration="2"/>
108
- <testCase name="UserPrivilege init should throw ClassError when UserPrivilegeId is not found" duration="4"/>
109
- </file>
110
- <file path="C:\Work\sso\__tests__\unit\session\session.service.spec.ts">
111
- <testCase name="session.service should return session service when instansiated" duration="2"/>
112
- <testCase name="session.service should able to write session data" duration="3"/>
113
- <testCase name="session.service should able to refresh session data" duration="3"/>
114
- </file>
115
- <file path="C:\Work\sso\__tests__\unit\system-privilege\system-privilage.spec.ts">
116
- <testCase name="SystemPrivilege should be true" duration="2"/>
117
- </file>
118
- <file path="C:\Work\sso\__tests__\unit\components\password-hash\password-hash.service.spec.ts">
119
- <testCase name="password-hash.service should return hash password" duration="2"/>
120
- <testCase name="password-hash.service should return true when verify password" duration="1"/>
121
- </file>
122
- <file path="C:\Work\sso\__tests__\unit\redis-client\redis.service.spec.ts">
123
- <testCase name="redis.service should return redis service when instansiated" duration="1"/>
124
- <testCase name="redis.service should able to write and read redis" duration="2"/>
125
- </file>
126
- <file path="C:\Work\sso\__tests__\unit\components\login-user\l.spec.ts">
127
- <testCase name="SystemPrivilege should be true" duration="1"/>
128
- </file>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <testExecutions version="1">
3
+ <file path="C:\Work\sso\__tests__\unit\components\login-user\login.spec.ts">
4
+ <testCase name="LoginUser init should initialize LoginUser with valid userId" duration="5"/>
5
+ <testCase name="LoginUser init should throw an error when user is not found" duration="20"/>
6
+ <testCase name="LoginUser checkSession should throw an error if session expired" duration="20"/>
7
+ <testCase name="LoginUser checkSession should refresh the session duration if session is valid" duration="2"/>
8
+ <testCase name="LoginUser shouldReleaseLock should return true if autoReleaseYN is &quot;Y&quot; and time difference is greater than minuteToAutoRelease" duration="2"/>
9
+ <testCase name="LoginUser shouldReleaseLock should return false if autoReleaseYN is &quot;Y&quot; and time difference is less than or equal to minuteToAutoRelease" duration="1"/>
10
+ <testCase name="LoginUser shouldReleaseLock should return false if autoReleaseYN is &quot;N&quot;" duration="1"/>
11
+ <testCase name="LoginUser releaseLock should release the lock for a user" duration="1"/>
12
+ <testCase name="LoginUser checkUserInfoDuplicated should throw an error if duplicate user info is found" duration="1"/>
13
+ <testCase name="LoginUser checkUserInfoDuplicated should not throw an error if duplicate user info is not found" duration="0"/>
14
+ <testCase name="LoginUser generateDefaultPassword should generate a default password with the specified length" duration="2"/>
15
+ <testCase name="LoginUser generateDefaultPassword should generate a default password with at least one capital letter" duration="1"/>
16
+ <testCase name="LoginUser generateDefaultPassword should generate a default password with at least one number" duration="1"/>
17
+ <testCase name="LoginUser generateDefaultPassword should generate a default password with at least one special character" duration="1"/>
18
+ <testCase name="LoginUser generateDefaultPassword should generate a default password without any non-acceptable characters" duration="1"/>
19
+ <testCase name="LoginUser setPassword should set the password for the user" duration="159"/>
20
+ <testCase name="LoginUser setPassword should throw an error if the password does not meet the security requirements" duration="13"/>
21
+ <testCase name="LoginUser create should create a new user record" duration="5"/>
22
+ <testCase name="LoginUser create should throw an error if user dont have the privilege to create new user" duration="2"/>
23
+ <testCase name="LoginUser create should throw an error if user email is missing" duration="2"/>
24
+ <testCase name="LoginUser incrementFailedLoginAttemptCount should increment FailedLoginAttemptCount and update user status" duration="1"/>
25
+ <testCase name="LoginUser incrementFailedLoginAttemptCount should throw an error if maxFailedLoginAttempts or autoReleaseYN is missing" duration="1"/>
26
+ <testCase name="LoginUser incrementFailedLoginAttemptCount should lock the user account if the failed login attempts exceed the maximum allowed" duration="1"/>
27
+ <testCase name="LoginUser incrementFailedLoginAttemptCount should permanently lock the user account if the failed login attempts exceed the maximum allowed and autoReleaseYN is N" duration="1"/>
28
+ <testCase name="LoginUser combineSystemAccess should combine user and group system access and remove duplicates" duration="1"/>
29
+ <testCase name="LoginUser checkPrivileges should return true if user has the specified privilege" duration="1"/>
30
+ <testCase name="LoginUser checkPrivileges should return false if user does not have the specified privilege" duration="1"/>
31
+ <testCase name="LoginUser checkPrivileges should throw an error if ObjectId is not set" duration="1"/>
32
+ <testCase name="LoginUser getObjectPrivileges should return an array of privileges" duration="1"/>
33
+ <testCase name="LoginUser getObjectPrivileges should throw an error if an exception occurs" duration="1"/>
34
+ <testCase name="LoginUser getUserPersonalPrivileges should return an array of privileges" duration="2"/>
35
+ <testCase name="LoginUser getUserPersonalPrivileges should throw an error if an error occurs" duration="1"/>
36
+ <testCase name="LoginUser getInheritedSystemAccess should return group system access with its parent group system access if applicable" duration="3"/>
37
+ </file>
38
+ <file path="C:\Work\sso\__tests__\unit\components\system\system.spec.ts">
39
+ <testCase name="System init should initialize a system when SystemCode is provided" duration="3"/>
40
+ <testCase name="System init should throw an error when SystemCode is not found" duration="8"/>
41
+ <testCase name="System init should initialize a new system when SystemCode is not provided" duration="1"/>
42
+ <testCase name="System createSystem should create a new system" duration="4"/>
43
+ <testCase name="System createSystem should throw an error when user does not have permission" duration="1"/>
44
+ <testCase name="System createSystem should throw an error when SystemCode is missing" duration="1"/>
45
+ <testCase name="System createSystem should throw an error when Name is missing" duration="1"/>
46
+ <testCase name="System createSystem should throw an error when Description is missing" duration="1"/>
47
+ <testCase name="System createSystem should throw an error when failed to create system" duration="5"/>
48
+ <testCase name="System setSystemCode should set the SystemCode when there is no duplicate" duration="1"/>
49
+ <testCase name="System setSystemCode should throw an error when SystemCode already exists" duration="1"/>
50
+ <testCase name="System setSystemCode should throw an error when failed to check duplicate SystemCode" duration="1"/>
51
+ <testCase name="System findAll should find all systems based on filter" duration="2"/>
52
+ <testCase name="System findAll should find all systems without pagination when page and rows are not provided" duration="1"/>
53
+ </file>
54
+ <file path="C:\Work\sso\__tests__\unit\components\group-object-privilege\group-object-privilege.spec.ts">
55
+ <testCase name="GroupObjectPrivilege should create an instance of GroupObjectPrivilege" duration="2"/>
56
+ <testCase name="GroupObjectPrivilege should have the correct TableName" duration="0"/>
57
+ <testCase name="GroupObjectPrivilege should have the correct properties" duration="1"/>
58
+ <testCase name="GroupObjectPrivilege init should return an instance of GroupObjectPrivilege when GroupObjectPrivilegeId is provided" duration="2"/>
59
+ <testCase name="GroupObjectPrivilege init should throw an error when GroupObjectPrivilegeId is provided but no GroupObjectPrivilege is found" duration="3"/>
60
+ <testCase name="GroupObjectPrivilege init should return a new instance of GroupObjectPrivilege when GroupObjectPrivilegeId is not provided" duration="3"/>
61
+ </file>
62
+ <file path="C:\Work\sso\__tests__\unit\components\group-system-access\group-system-access.spec.ts">
63
+ <testCase name="GroupSystemAccess should create a new GroupSystemAccess instance" duration="2"/>
64
+ <testCase name="GroupSystemAccess init should initialize GroupSystemAccess without GroupSystemAccessId" duration="2"/>
65
+ <testCase name="GroupSystemAccess init should initialize GroupSystemAccess with GroupSystemAccessId" duration="3"/>
66
+ <testCase name="GroupSystemAccess init should throw an error if GroupSystemAccessId is not found" duration="5"/>
67
+ </file>
68
+ <file path="C:\Work\sso\__tests__\unit\components\group\group.spec.ts">
69
+ <testCase name="Group should initialize a group with valid GroupCode" duration="4"/>
70
+ <testCase name="Group should throw an error when initializing a group with invalid GroupCode" duration="5"/>
71
+ <testCase name="Group should throw an error when initializing a group with an error" duration="2"/>
72
+ </file>
73
+ <file path="C:\Work\sso\__tests__\unit\components\group-reporting-user\group-reporting-user.spec.ts">
74
+ <testCase name="GroupReportingUser init should initialize GroupReportingUser without GroupReportingUserId" duration="3"/>
75
+ <testCase name="GroupReportingUser init should initialize GroupReportingUser with valid GroupReportingUserId" duration="2"/>
76
+ <testCase name="GroupReportingUser init should throw ClassError when GroupReportingUser is not found" duration="8"/>
77
+ <testCase name="GroupReportingUser init should throw ClassError when failed to initialize GroupReportingUser" duration="1"/>
78
+ </file>
79
+ <file path="C:\Work\sso\__tests__\unit\components\system-privilege\system-privilege.spec.ts">
80
+ <testCase name="SystemPrivilege constructor should create a new SystemPrivilege instance" duration="2"/>
81
+ <testCase name="SystemPrivilege init should initialize SystemPrivilege without PrivilegeCode" duration="1"/>
82
+ <testCase name="SystemPrivilege init should initialize SystemPrivilege with PrivilegeCode" duration="2"/>
83
+ <testCase name="SystemPrivilege init should throw an error if PrivilegeCode is not found" duration="4"/>
84
+ </file>
85
+ <file path="C:\Work\sso\__tests__\unit\components\user-group\user-group.spec.ts">
86
+ <testCase name="UserGroup constructor should create a new UserGroup instance" duration="3"/>
87
+ <testCase name="UserGroup init should initialize UserGroup with valid UserGroupId" duration="2"/>
88
+ <testCase name="UserGroup init should throw ClassError when UserGroupId is not found" duration="5"/>
89
+ </file>
90
+ <file path="C:\Work\sso\__tests__\unit\components\user-object-privilege\user-object-privilege.spec.ts">
91
+ <testCase name="UserObjectPrivilege constructor should create a new UserObjectPrivilege instance" duration="2"/>
92
+ <testCase name="UserObjectPrivilege init should initialize UserObjectPrivilege with valid ObjectPrivilegeId" duration="5"/>
93
+ <testCase name="UserObjectPrivilege init should throw ClassError when ObjectPrivilegeId is not found" duration="4"/>
94
+ </file>
95
+ <file path="C:\Work\sso\__tests__\unit\components\group-privilege\group-privilege.spec.ts">
96
+ <testCase name="GroupPrivilege should initialize with GroupPrivilegeAttr" duration="6"/>
97
+ <testCase name="GroupPrivilege should throw ClassError when GroupPrivilegeAttr is not found" duration="4"/>
98
+ <testCase name="GroupPrivilege should initialize with default values" duration="1"/>
99
+ </file>
100
+ <file path="C:\Work\sso\__tests__\unit\components\user-system-access\user-system-access.spec.ts">
101
+ <testCase name="UserSystemAccess constructor should create a new UserSystemAccess instance" duration="2"/>
102
+ <testCase name="UserSystemAccess init should initialize UserSystemAccess with valid UserSystemAccessId" duration="2"/>
103
+ <testCase name="UserSystemAccess init should throw ClassError when UserSystemAccessId is not found" duration="1"/>
104
+ </file>
105
+ <file path="C:\Work\sso\__tests__\unit\components\user-privilege\user-privilege.spec.ts">
106
+ <testCase name="UserPrivilege constructor should create a new UserPrivilege instance" duration="2"/>
107
+ <testCase name="UserPrivilege init should initialize UserPrivilege with valid UserPrivilegeId" duration="2"/>
108
+ <testCase name="UserPrivilege init should throw ClassError when UserPrivilegeId is not found" duration="4"/>
109
+ </file>
110
+ <file path="C:\Work\sso\__tests__\unit\session\session.service.spec.ts">
111
+ <testCase name="session.service should return session service when instansiated" duration="2"/>
112
+ <testCase name="session.service should able to write session data" duration="3"/>
113
+ <testCase name="session.service should able to refresh session data" duration="3"/>
114
+ </file>
115
+ <file path="C:\Work\sso\__tests__\unit\system-privilege\system-privilage.spec.ts">
116
+ <testCase name="SystemPrivilege should be true" duration="2"/>
117
+ </file>
118
+ <file path="C:\Work\sso\__tests__\unit\components\password-hash\password-hash.service.spec.ts">
119
+ <testCase name="password-hash.service should return hash password" duration="2"/>
120
+ <testCase name="password-hash.service should return true when verify password" duration="1"/>
121
+ </file>
122
+ <file path="C:\Work\sso\__tests__\unit\redis-client\redis.service.spec.ts">
123
+ <testCase name="redis.service should return redis service when instansiated" duration="1"/>
124
+ <testCase name="redis.service should able to write and read redis" duration="2"/>
125
+ </file>
126
+ <file path="C:\Work\sso\__tests__\unit\components\login-user\l.spec.ts">
127
+ <testCase name="SystemPrivilege should be true" duration="1"/>
128
+ </file>
129
129
  </testExecutions>
@@ -1,40 +1,40 @@
1
-
2
- -- example to create sso-user
3
- CREATE USER 'sso_user'@'environment' IDENTIFIED BY 'password';
4
-
5
- -- example to grant neccesary access to run migration
6
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_authorization_codes TO 'sso_user'@'localhost' WITH GRANT OPTION;
7
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_bearer_tokens TO 'sso_user'@'localhost' WITH GRANT OPTION;
8
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_building_types TO 'sso_user'@'localhost' WITH GRANT OPTION;
9
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_buildings TO 'sso_user'@'localhost' WITH GRANT OPTION;
10
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_cities TO 'sso_user'@'localhost' WITH GRANT OPTION;
11
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_companies TO 'sso_user'@'localhost' WITH GRANT OPTION;
12
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_countries TO 'sso_user'@'localhost' WITH GRANT OPTION;
13
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_departments TO 'sso_user'@'localhost' WITH GRANT OPTION;
14
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_grouproleprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
15
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemaccess TO 'sso_user'@'localhost' WITH GRANT OPTION;
16
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
17
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
18
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_oauth_tokens TO 'sso_user'@'localhost' WITH GRANT OPTION;
19
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_roles TO 'sso_user'@'localhost' WITH GRANT OPTION;
20
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_sequelize_meta TO 'sso_user'@'localhost' WITH GRANT OPTION;
21
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_staff_types TO 'sso_user'@'localhost' WITH GRANT OPTION;
22
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_staffs TO 'sso_user'@'localhost' WITH GRANT OPTION;
23
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_states TO 'sso_user'@'localhost' WITH GRANT OPTION;
24
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_system_accesses TO 'sso_user'@'localhost' WITH GRANT OPTION;
25
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
26
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
27
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemroleprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
28
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systems TO 'sso_user'@'localhost' WITH GRANT OPTION;
29
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_updated_history TO 'sso_user'@'localhost' WITH GRANT OPTION;
30
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_user_roles TO 'sso_user'@'localhost' WITH GRANT OPTION;
31
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usergroup TO 'sso_user'@'localhost' WITH GRANT OPTION;
32
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_users TO 'sso_user'@'localhost' WITH GRANT OPTION;
33
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usersystemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
34
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usersystemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
35
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_UserUserGroup TO 'sso_user'@'localhost' WITH GRANT OPTION;
36
- GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production._prisma_migrations TO 'sso_user'@'localhost' WITH GRANT OPTION;
37
-
38
-
39
- -- Grant user to create, alter, drop, references on the database (required for creating shadow tables)
1
+
2
+ -- example to create sso-user
3
+ CREATE USER 'sso_user'@'environment' IDENTIFIED BY 'password';
4
+
5
+ -- example to grant neccesary access to run migration
6
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_authorization_codes TO 'sso_user'@'localhost' WITH GRANT OPTION;
7
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_bearer_tokens TO 'sso_user'@'localhost' WITH GRANT OPTION;
8
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_building_types TO 'sso_user'@'localhost' WITH GRANT OPTION;
9
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_buildings TO 'sso_user'@'localhost' WITH GRANT OPTION;
10
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_cities TO 'sso_user'@'localhost' WITH GRANT OPTION;
11
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_companies TO 'sso_user'@'localhost' WITH GRANT OPTION;
12
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_countries TO 'sso_user'@'localhost' WITH GRANT OPTION;
13
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_departments TO 'sso_user'@'localhost' WITH GRANT OPTION;
14
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_grouproleprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
15
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemaccess TO 'sso_user'@'localhost' WITH GRANT OPTION;
16
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
17
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_groupsystemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
18
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_oauth_tokens TO 'sso_user'@'localhost' WITH GRANT OPTION;
19
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_roles TO 'sso_user'@'localhost' WITH GRANT OPTION;
20
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_sequelize_meta TO 'sso_user'@'localhost' WITH GRANT OPTION;
21
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_staff_types TO 'sso_user'@'localhost' WITH GRANT OPTION;
22
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_staffs TO 'sso_user'@'localhost' WITH GRANT OPTION;
23
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_states TO 'sso_user'@'localhost' WITH GRANT OPTION;
24
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_system_accesses TO 'sso_user'@'localhost' WITH GRANT OPTION;
25
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
26
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
27
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systemroleprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
28
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_systems TO 'sso_user'@'localhost' WITH GRANT OPTION;
29
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_updated_history TO 'sso_user'@'localhost' WITH GRANT OPTION;
30
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_user_roles TO 'sso_user'@'localhost' WITH GRANT OPTION;
31
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usergroup TO 'sso_user'@'localhost' WITH GRANT OPTION;
32
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_users TO 'sso_user'@'localhost' WITH GRANT OPTION;
33
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usersystemprivilege TO 'sso_user'@'localhost' WITH GRANT OPTION;
34
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_usersystemrole TO 'sso_user'@'localhost' WITH GRANT OPTION;
35
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production.sso_UserUserGroup TO 'sso_user'@'localhost' WITH GRANT OPTION;
36
+ GRANT CREATE, ALTER, DROP, INSERT, UPDATE, DELETE, SELECT, REFERENCES on production._prisma_migrations TO 'sso_user'@'localhost' WITH GRANT OPTION;
37
+
38
+
39
+ -- Grant user to create, alter, drop, references on the database (required for creating shadow tables)
40
40
  GRANT CREATE, ALTER, DROP, REFERENCES ON shadow_database.* TO 'sso_user'@'localhost' WITH GRANT OPTION;
@@ -0,0 +1,71 @@
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
+ const group_privilege_1 = require("../../../../src/components/group-privilege/group-privilege");
13
+ const group_privilege_repository_1 = require("../../../../src/components/group-privilege/group-privilege.repository");
14
+ const general_1 = require("@tomei/general");
15
+ describe('GroupPrivilege', () => {
16
+ afterEach(() => {
17
+ jest.restoreAllMocks();
18
+ });
19
+ it('should initialize with GroupPrivilegeAttr', () => __awaiter(void 0, void 0, void 0, function* () {
20
+ const mockGroupPrivilegeAttr = {
21
+ GroupPrivilegeId: 1,
22
+ GroupCode: 'group1',
23
+ PrivilegeCode: 'privilege1',
24
+ Status: 'active',
25
+ CreatedAt: new Date(),
26
+ UpdatedAt: new Date(),
27
+ CreatedById: 1,
28
+ UpdatedById: 1,
29
+ };
30
+ const findOneMock = jest
31
+ .spyOn(group_privilege_repository_1.GroupPrivilegeRepository.prototype, 'findOne')
32
+ .mockResolvedValueOnce({ get: jest.fn().mockReturnValue(mockGroupPrivilegeAttr) });
33
+ const groupPrivilege = yield group_privilege_1.GroupPrivilege.init(null, 1);
34
+ expect(findOneMock).toBeCalledWith({
35
+ where: { GroupPrivilegeId: 1 },
36
+ transaction: null,
37
+ });
38
+ expect(groupPrivilege).toBeInstanceOf(group_privilege_1.GroupPrivilege);
39
+ expect(groupPrivilege.GroupPrivilegeId).toEqual(mockGroupPrivilegeAttr.GroupPrivilegeId);
40
+ expect(groupPrivilege.GroupCode).toEqual(mockGroupPrivilegeAttr.GroupCode);
41
+ expect(groupPrivilege.PrivilegeCode).toEqual(mockGroupPrivilegeAttr.PrivilegeCode);
42
+ expect(groupPrivilege.Status).toEqual(mockGroupPrivilegeAttr.Status);
43
+ expect(groupPrivilege.CreatedAt).toEqual(mockGroupPrivilegeAttr.CreatedAt);
44
+ expect(groupPrivilege.UpdatedAt).toEqual(mockGroupPrivilegeAttr.UpdatedAt);
45
+ expect(groupPrivilege.CreatedById).toEqual(mockGroupPrivilegeAttr.CreatedById);
46
+ expect(groupPrivilege.UpdatedById).toEqual(mockGroupPrivilegeAttr.UpdatedById);
47
+ }));
48
+ it('should throw ClassError when GroupPrivilegeAttr is not found', () => __awaiter(void 0, void 0, void 0, function* () {
49
+ const findOneMock = jest
50
+ .spyOn(group_privilege_repository_1.GroupPrivilegeRepository.prototype, 'findOne')
51
+ .mockResolvedValueOnce(null);
52
+ yield expect(group_privilege_1.GroupPrivilege.init(null, 1)).rejects.toThrow(general_1.ClassError);
53
+ expect(findOneMock).toBeCalledWith({
54
+ where: { GroupPrivilegeId: 1 },
55
+ transaction: null,
56
+ });
57
+ }));
58
+ it('should initialize with default values', () => __awaiter(void 0, void 0, void 0, function* () {
59
+ const groupPrivilege = yield group_privilege_1.GroupPrivilege.init();
60
+ expect(groupPrivilege).toBeInstanceOf(group_privilege_1.GroupPrivilege);
61
+ expect(groupPrivilege.GroupPrivilegeId).toBeUndefined();
62
+ expect(groupPrivilege.GroupCode).toBeUndefined();
63
+ expect(groupPrivilege.PrivilegeCode).toBeUndefined();
64
+ expect(groupPrivilege.Status).toBeUndefined();
65
+ expect(groupPrivilege.CreatedAt).toBeUndefined();
66
+ expect(groupPrivilege.UpdatedAt).toBeUndefined();
67
+ expect(groupPrivilege.CreatedById).toBeUndefined();
68
+ expect(groupPrivilege.UpdatedById).toBeUndefined();
69
+ }));
70
+ });
71
+ //# sourceMappingURL=group-privilege.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group-privilege.test.js","sourceRoot":"","sources":["../../../../../__tests__/unit/components/group-privilege/group-privilege.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ describe('LoginUser', () => {
2
+ it('should be true', () => {
3
+ expect(true).toBe(true);
4
+ });
5
+ });
6
+ //# sourceMappingURL=login-user.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login-user.spec.js","sourceRoot":"","sources":["../../../../../__tests__/unit/components/login-user/login-user.spec.ts"],"names":[],"mappings":"AAuuBA,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,gBAAgB,EAAE,GAAG,EAAE;QACxB,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { ObjectBase } from '@tomei/general';
2
2
  import { User } from '../login-user/user';
3
+ import { Transaction } from 'sequelize';
3
4
  export declare class GroupReportingUser extends ObjectBase {
4
5
  ObjectId: string;
5
6
  ObjectName: string;
@@ -23,4 +24,5 @@ export declare class GroupReportingUser extends ObjectBase {
23
24
  static init(dbTransaction: any, GroupReportingUserId?: string): Promise<GroupReportingUser>;
24
25
  createGroupReportingUser(loginUser: User, dbTransaction: any, groupCode: string, userId: number, rank: number, status: 'Active' | 'Inactive'): Promise<GroupReportingUser>;
25
26
  static findAllGroupReportingUsers(loginUser: User, dbTransaction: any, groupCode?: string): Promise<GroupReportingUser[]>;
27
+ static removeGroupReportingUser(loginUser: User, dbTransaction: Transaction, groupReportingUserId: number): Promise<void>;
26
28
  }
@@ -166,6 +166,42 @@ class GroupReportingUser extends general_1.ObjectBase {
166
166
  }
167
167
  });
168
168
  }
169
+ static removeGroupReportingUser(loginUser, dbTransaction, groupReportingUserId) {
170
+ return __awaiter(this, void 0, void 0, function* () {
171
+ try {
172
+ const systemCode = config_1.ApplicationConfig.getComponentConfigValue('system-code');
173
+ const isPrivileged = yield loginUser.checkPrivileges(systemCode, 'GROUP_REPORTING_USER_REMOVE');
174
+ if (!isPrivileged) {
175
+ throw new general_1.ClassError('GroupReportingUser', 'GroupReportingUserErrMsg06', 'Insufficient privileges to remove a user from the group');
176
+ }
177
+ const groupReportingUser = yield GroupReportingUser.init(dbTransaction, groupReportingUserId.toString());
178
+ yield GroupReportingUser._Repo.destroy(groupReportingUserId, dbTransaction);
179
+ const entityValueBefore = {
180
+ GroupReportingUserId: groupReportingUser.GroupReportingUserId,
181
+ GroupCode: groupReportingUser.GroupCode,
182
+ UserId: groupReportingUser.UserId,
183
+ Rank: groupReportingUser.Rank,
184
+ Status: groupReportingUser.Status,
185
+ CreatedById: groupReportingUser.CreatedById,
186
+ CreatedAt: groupReportingUser.CreatedAt,
187
+ UpdatedById: groupReportingUser.UpdatedById,
188
+ UpdatedAt: groupReportingUser.UpdatedAt,
189
+ };
190
+ const activity = new activity_history_1.Activity();
191
+ activity.ActivityId = activity.createId();
192
+ activity.Action = activity_history_1.ActionEnum.DELETE;
193
+ activity.Description = 'Remove Group Reporting User';
194
+ activity.EntityType = 'GroupReportingUser';
195
+ activity.EntityId = groupReportingUserId.toString();
196
+ activity.EntityValueBefore = JSON.stringify(entityValueBefore);
197
+ activity.EntityValueAfter = JSON.stringify({});
198
+ yield activity.create(loginUser.ObjectId, dbTransaction);
199
+ }
200
+ catch (error) {
201
+ throw error;
202
+ }
203
+ });
204
+ }
169
205
  }
170
206
  exports.GroupReportingUser = GroupReportingUser;
171
207
  GroupReportingUser._Repo = new group_reporting_user_repository_1.GroupReportingUserRepository();
@@ -1 +1 @@
1
- {"version":3,"file":"group-reporting-user.js","sourceRoot":"","sources":["../../../../src/components/group-reporting-user/group-reporting-user.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAwD;AACxD,uFAAiF;AAEjF,6CAA0C;AAC1C,0CAAuC;AACvC,0CAAkD;AAClD,8DAA+D;AAE/D,MAAa,kBAAmB,SAAQ,oBAAU;IAiBhD,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,YAAoB,sBAAgD;QAClE,KAAK,EAAE,CAAC;QA/BV,cAAS,GAAG,wBAAwB,CAAC;QACrC,eAAU,GAAG,oBAAoB,CAAC;QA+BhC,IAAI,sBAAsB,EAAE;YAC1B,IAAI,CAAC,oBAAoB,GAAG,sBAAsB,CAAC,oBAAoB,CAAC;YACxE,IAAI,CAAC,SAAS,GAAG,sBAAsB,CAAC,SAAS,CAAC;YAClD,IAAI,CAAC,MAAM,GAAG,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,MAAM,CAAC;YAC7C,IAAI,CAAC,IAAI,GAAG,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,IAAI,CAAC;YACzC,IAAI,CAAC,MAAM,GAAG,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,MAAM,CAAC;YAC7C,IAAI,CAAC,YAAY,GAAG,sBAAsB,CAAC,WAAW,CAAC;YACvD,IAAI,CAAC,UAAU,GAAG,sBAAsB,CAAC,SAAS,CAAC;YACnD,IAAI,CAAC,YAAY,GAAG,sBAAsB,CAAC,WAAW,CAAC;YACvD,IAAI,CAAC,UAAU,GAAG,sBAAsB,CAAC,SAAS,CAAC;SACpD;IACH,CAAC;IAEM,MAAM,CAAO,IAAI,CAAC,aAAkB,EAAE,oBAA6B;;YACxE,IAAI;gBACF,IAAI,oBAAoB,EAAE;oBACxB,MAAM,kBAAkB,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAChE,oBAAoB,EACpB;wBACE,WAAW,EAAE,aAAa;qBAC3B,CACF,CAAC;oBACF,IAAI,kBAAkB,EAAE;wBACtB,OAAO,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;qBACnD;yBAAM;wBACL,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,8BAA8B,CAC/B,CAAC;qBACH;iBACF;gBACD,OAAO,IAAI,kBAAkB,EAAE,CAAC;aACjC;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,yCAAyC,CAC1C,CAAC;aACH;QACH,CAAC;KAAA;IAEK,wBAAwB,CAC5B,SAAe,EACf,aAAkB,EAClB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,MAA6B;;YAG7B,IAAI;gBAKF,MAAM,KAAK,GAAG,MAAM,aAAK,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBAEzD,MAAM,IAAI,GAAG,MAAM,WAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBAMpD,MAAM,UAAU,GACd,0BAAiB,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;gBAC3D,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAClD,UAAU,EACV,6BAA6B,CAC9B,CAAC;gBACF,IAAI,CAAC,YAAY,EAAE;oBACjB,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,oDAAoD,CACrD,CAAC;iBACH;gBAID,MAAM,kBAAkB,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC;oBAChE,KAAK,EAAE;wBACL,SAAS,EAAE,SAAS;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,WAAW,EAAE,aAAa;iBAC3B,CAAC,CAAC;gBAEH,IAAI,kBAAkB,EAAE;oBACtB,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,kCAAkC,EAClC,0BAA0B,CAC3B,CAAC;iBACH;gBAGD,MAAM,sBAAsB,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC;oBACpE,KAAK,EAAE;wBACL,SAAS,EAAE,SAAS;wBACpB,IAAI,EAAE,IAAI;qBACX;oBACD,WAAW,EAAE,aAAa;iBAC3B,CAAC,CAAC;gBACH,IAAI,sBAAsB,EAAE;oBAC1B,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,kCAAkC,EAClC,0BAA0B,CAC3B,CAAC;iBACH;gBAID,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC;gBACrC,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC;gBAErC,MAAM,gBAAgB,GAAQ;oBAC5B,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,MAAM;oBACd,WAAW,EAAE,SAAS,CAAC,MAAM;oBAC7B,SAAS,EAAE,IAAI,CAAC,UAAU;oBAC1B,WAAW,EAAE,SAAS,CAAC,MAAM;oBAC7B,SAAS,EAAE,IAAI,CAAC,UAAU;iBAC3B,CAAC;gBAEF,MAAM,qBAAqB,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,MAAM,CACjE,gBAAgB,EAChB;oBACE,WAAW,EAAE,aAAa;iBAC3B,CACF,CAAC;gBAEF,gBAAgB,CAAC,oBAAoB;oBACnC,qBAAqB,CAAC,oBAAoB,CAAC;gBAW7C,MAAM,QAAQ,GAAG,IAAI,2BAAQ,EAAE,CAAC;gBAChC,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBAC1C,QAAQ,CAAC,MAAM,GAAG,6BAAU,CAAC,MAAM,CAAC;gBACpC,QAAQ,CAAC,WAAW,GAAG,6BAA6B,CAAC;gBACrD,QAAQ,CAAC,UAAU,GAAG,oBAAoB,CAAC;gBAC3C,QAAQ,CAAC,QAAQ,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC;gBAC1E,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAChD,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;gBAI7D,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;gBAGzD,OAAO,IAAI,CAAC;aACb;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;IAEM,MAAM,CAAO,0BAA0B,CAC5C,SAAe,EACf,aAAkB,EAClB,SAAkB;;YAIlB,IAAI;gBAMF,MAAM,UAAU,GACd,0BAAiB,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;gBAC3D,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAClD,UAAU,EACV,2BAA2B,CAC5B,CAAC;gBAEF,IAAI,CAAC,YAAY,EAAE;oBACjB,MAAM,IAAI,oBAAU,CAClB,OAAO,EACP,4BAA4B,EAC5B,4DAA4D,CAC7D,CAAC;iBACH;gBAKD,MAAM,aAAK,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBAM3C,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC;oBACpD,KAAK,EAAE;wBACL,SAAS,EAAE,SAAS;qBACrB;oBACD,KAAK,EAAE;wBACL,CAAC,MAAM,EAAE,KAAK,CAAC;qBAChB;oBACD,WAAW,EAAE,aAAa;iBAC3B,CAAC,CAAC;gBAIH,MAAM,aAAa,GAAyB,EAAE,CAAC;gBAC/C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;oBACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACtC,aAAa,CAAC,IAAI,CAChB,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CACvD,CAAC;qBACH;iBACF;gBACD,OAAO,aAAa,CAAC;aACtB;YAAC,OAAO,KAAK,EAAE;gBAGd,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;;AAjRH,gDAkRC;AAnQgB,wBAAK,GAAG,IAAI,8DAA4B,EAAE,CAAC"}
1
+ {"version":3,"file":"group-reporting-user.js","sourceRoot":"","sources":["../../../../src/components/group-reporting-user/group-reporting-user.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAwD;AACxD,uFAAiF;AAEjF,6CAA0C;AAC1C,0CAAuC;AACvC,0CAAkD;AAClD,8DAA+D;AAG/D,MAAa,kBAAmB,SAAQ,oBAAU;IAiBhD,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,YAAoB,sBAAgD;QAClE,KAAK,EAAE,CAAC;QA/BV,cAAS,GAAG,wBAAwB,CAAC;QACrC,eAAU,GAAG,oBAAoB,CAAC;QA+BhC,IAAI,sBAAsB,EAAE;YAC1B,IAAI,CAAC,oBAAoB,GAAG,sBAAsB,CAAC,oBAAoB,CAAC;YACxE,IAAI,CAAC,SAAS,GAAG,sBAAsB,CAAC,SAAS,CAAC;YAClD,IAAI,CAAC,MAAM,GAAG,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,MAAM,CAAC;YAC7C,IAAI,CAAC,IAAI,GAAG,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,IAAI,CAAC;YACzC,IAAI,CAAC,MAAM,GAAG,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,MAAM,CAAC;YAC7C,IAAI,CAAC,YAAY,GAAG,sBAAsB,CAAC,WAAW,CAAC;YACvD,IAAI,CAAC,UAAU,GAAG,sBAAsB,CAAC,SAAS,CAAC;YACnD,IAAI,CAAC,YAAY,GAAG,sBAAsB,CAAC,WAAW,CAAC;YACvD,IAAI,CAAC,UAAU,GAAG,sBAAsB,CAAC,SAAS,CAAC;SACpD;IACH,CAAC;IAEM,MAAM,CAAO,IAAI,CAAC,aAAkB,EAAE,oBAA6B;;YACxE,IAAI;gBACF,IAAI,oBAAoB,EAAE;oBACxB,MAAM,kBAAkB,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAChE,oBAAoB,EACpB;wBACE,WAAW,EAAE,aAAa;qBAC3B,CACF,CAAC;oBACF,IAAI,kBAAkB,EAAE;wBACtB,OAAO,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;qBACnD;yBAAM;wBACL,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,8BAA8B,CAC/B,CAAC;qBACH;iBACF;gBACD,OAAO,IAAI,kBAAkB,EAAE,CAAC;aACjC;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,yCAAyC,CAC1C,CAAC;aACH;QACH,CAAC;KAAA;IAEK,wBAAwB,CAC5B,SAAe,EACf,aAAkB,EAClB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,MAA6B;;YAG7B,IAAI;gBAKF,MAAM,KAAK,GAAG,MAAM,aAAK,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBAEzD,MAAM,IAAI,GAAG,MAAM,WAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBAMpD,MAAM,UAAU,GACd,0BAAiB,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;gBAC3D,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAClD,UAAU,EACV,6BAA6B,CAC9B,CAAC;gBACF,IAAI,CAAC,YAAY,EAAE;oBACjB,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,oDAAoD,CACrD,CAAC;iBACH;gBAID,MAAM,kBAAkB,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC;oBAChE,KAAK,EAAE;wBACL,SAAS,EAAE,SAAS;wBACpB,MAAM,EAAE,MAAM;qBACf;oBACD,WAAW,EAAE,aAAa;iBAC3B,CAAC,CAAC;gBAEH,IAAI,kBAAkB,EAAE;oBACtB,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,kCAAkC,EAClC,0BAA0B,CAC3B,CAAC;iBACH;gBAGD,MAAM,sBAAsB,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC;oBACpE,KAAK,EAAE;wBACL,SAAS,EAAE,SAAS;wBACpB,IAAI,EAAE,IAAI;qBACX;oBACD,WAAW,EAAE,aAAa;iBAC3B,CAAC,CAAC;gBACH,IAAI,sBAAsB,EAAE;oBAC1B,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,kCAAkC,EAClC,0BAA0B,CAC3B,CAAC;iBACH;gBAID,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC;gBACrC,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;gBAC7B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC;gBAErC,MAAM,gBAAgB,GAAQ;oBAC5B,SAAS,EAAE,SAAS;oBACpB,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,MAAM;oBACd,WAAW,EAAE,SAAS,CAAC,MAAM;oBAC7B,SAAS,EAAE,IAAI,CAAC,UAAU;oBAC1B,WAAW,EAAE,SAAS,CAAC,MAAM;oBAC7B,SAAS,EAAE,IAAI,CAAC,UAAU;iBAC3B,CAAC;gBAEF,MAAM,qBAAqB,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,MAAM,CACjE,gBAAgB,EAChB;oBACE,WAAW,EAAE,aAAa;iBAC3B,CACF,CAAC;gBAEF,gBAAgB,CAAC,oBAAoB;oBACnC,qBAAqB,CAAC,oBAAoB,CAAC;gBAW7C,MAAM,QAAQ,GAAG,IAAI,2BAAQ,EAAE,CAAC;gBAChC,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBAC1C,QAAQ,CAAC,MAAM,GAAG,6BAAU,CAAC,MAAM,CAAC;gBACpC,QAAQ,CAAC,WAAW,GAAG,6BAA6B,CAAC;gBACrD,QAAQ,CAAC,UAAU,GAAG,oBAAoB,CAAC;gBAC3C,QAAQ,CAAC,QAAQ,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,QAAQ,EAAE,CAAC;gBAC1E,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAChD,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;gBAI7D,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;gBAGzD,OAAO,IAAI,CAAC;aACb;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;IAEM,MAAM,CAAO,0BAA0B,CAC5C,SAAe,EACf,aAAkB,EAClB,SAAkB;;YAIlB,IAAI;gBAMF,MAAM,UAAU,GACd,0BAAiB,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;gBAC3D,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAClD,UAAU,EACV,2BAA2B,CAC5B,CAAC;gBAEF,IAAI,CAAC,YAAY,EAAE;oBACjB,MAAM,IAAI,oBAAU,CAClB,OAAO,EACP,4BAA4B,EAC5B,4DAA4D,CAC7D,CAAC;iBACH;gBAKD,MAAM,aAAK,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;gBAM3C,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC;oBACpD,KAAK,EAAE;wBACL,SAAS,EAAE,SAAS;qBACrB;oBACD,KAAK,EAAE;wBACL,CAAC,MAAM,EAAE,KAAK,CAAC;qBAChB;oBACD,WAAW,EAAE,aAAa;iBAC3B,CAAC,CAAC;gBAIH,MAAM,aAAa,GAAyB,EAAE,CAAC;gBAC/C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;oBACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACtC,aAAa,CAAC,IAAI,CAChB,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CACvD,CAAC;qBACH;iBACF;gBACD,OAAO,aAAa,CAAC;aACtB;YAAC,OAAO,KAAK,EAAE;gBAGd,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;IAEM,MAAM,CAAO,wBAAwB,CAC1C,SAAe,EACf,aAA0B,EAC1B,oBAA4B;;YAG5B,IAAI;gBAKF,MAAM,UAAU,GACd,0BAAiB,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;gBAC3D,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,eAAe,CAClD,UAAU,EACV,6BAA6B,CAC9B,CAAC;gBACF,IAAI,CAAC,YAAY,EAAE;oBACjB,MAAM,IAAI,oBAAU,CAClB,oBAAoB,EACpB,4BAA4B,EAC5B,yDAAyD,CAC1D,CAAC;iBACH;gBAID,MAAM,kBAAkB,GAAG,MAAM,kBAAkB,CAAC,IAAI,CACtD,aAAa,EACb,oBAAoB,CAAC,QAAQ,EAAE,CAChC,CAAC;gBAIF,MAAM,kBAAkB,CAAC,KAAK,CAAC,OAAO,CACpC,oBAAoB,EACpB,aAAa,CACd,CAAC;gBAIF,MAAM,iBAAiB,GAAG;oBACxB,oBAAoB,EAAE,kBAAkB,CAAC,oBAAoB;oBAC7D,SAAS,EAAE,kBAAkB,CAAC,SAAS;oBACvC,MAAM,EAAE,kBAAkB,CAAC,MAAM;oBACjC,IAAI,EAAE,kBAAkB,CAAC,IAAI;oBAC7B,MAAM,EAAE,kBAAkB,CAAC,MAAM;oBACjC,WAAW,EAAE,kBAAkB,CAAC,WAAW;oBAC3C,SAAS,EAAE,kBAAkB,CAAC,SAAS;oBACvC,WAAW,EAAE,kBAAkB,CAAC,WAAW;oBAC3C,SAAS,EAAE,kBAAkB,CAAC,SAAS;iBACxC,CAAC;gBAEF,MAAM,QAAQ,GAAG,IAAI,2BAAQ,EAAE,CAAC;gBAQhC,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBAC1C,QAAQ,CAAC,MAAM,GAAG,6BAAU,CAAC,MAAM,CAAC;gBACpC,QAAQ,CAAC,WAAW,GAAG,6BAA6B,CAAC;gBACrD,QAAQ,CAAC,UAAU,GAAG,oBAAoB,CAAC;gBAC3C,QAAQ,CAAC,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,EAAE,CAAC;gBACpD,QAAQ,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;gBAC/D,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAI/C,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;aAC1D;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,KAAK,CAAC;aACb;QACH,CAAC;KAAA;;AA9VH,gDA+VC;AAhVgB,wBAAK,GAAG,IAAI,8DAA4B,EAAE,CAAC"}
@@ -2,4 +2,5 @@ import GroupReportingUserModel from '../../models/group-reporting-user.entity';
2
2
  import { RepositoryBase, IRepositoryBase } from '@tomei/general';
3
3
  export declare class GroupReportingUserRepository extends RepositoryBase<GroupReportingUserModel> implements IRepositoryBase<GroupReportingUserModel> {
4
4
  constructor();
5
+ destroy(groupReportingUserId: number, dbTransaction: any): Promise<void>;
5
6
  }
@@ -1,4 +1,13 @@
1
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
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.GroupReportingUserRepository = void 0;
4
13
  const group_reporting_user_entity_1 = require("../../models/group-reporting-user.entity");
@@ -7,6 +16,16 @@ class GroupReportingUserRepository extends general_1.RepositoryBase {
7
16
  constructor() {
8
17
  super(group_reporting_user_entity_1.default);
9
18
  }
19
+ destroy(groupReportingUserId, dbTransaction) {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ yield group_reporting_user_entity_1.default.destroy({
22
+ where: {
23
+ GroupReportingUserId: groupReportingUserId,
24
+ },
25
+ transaction: dbTransaction,
26
+ });
27
+ });
28
+ }
10
29
  }
11
30
  exports.GroupReportingUserRepository = GroupReportingUserRepository;
12
31
  //# sourceMappingURL=group-reporting-user.repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"group-reporting-user.repository.js","sourceRoot":"","sources":["../../../../src/components/group-reporting-user/group-reporting-user.repository.ts"],"names":[],"mappings":";;;AAAA,0FAA+E;AAC/E,4CAAiE;AAEjE,MAAa,4BACX,SAAQ,wBAAuC;IAG/C;QACE,KAAK,CAAC,qCAAuB,CAAC,CAAC;IACjC,CAAC;CACF;AAPD,oEAOC"}
1
+ {"version":3,"file":"group-reporting-user.repository.js","sourceRoot":"","sources":["../../../../src/components/group-reporting-user/group-reporting-user.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0FAA+E;AAC/E,4CAAiE;AAEjE,MAAa,4BACX,SAAQ,wBAAuC;IAG/C;QACE,KAAK,CAAC,qCAAuB,CAAC,CAAC;IACjC,CAAC;IAEK,OAAO,CACX,oBAA4B,EAC5B,aAAkB;;YAElB,MAAM,qCAAuB,CAAC,OAAO,CAAC;gBACpC,KAAK,EAAE;oBACL,oBAAoB,EAAE,oBAAoB;iBAC3C;gBACD,WAAW,EAAE,aAAa;aAC3B,CAAC,CAAC;QACL,CAAC;KAAA;CACF;AAnBD,oEAmBC"}