verben-authentication-ui 0.3.3 → 0.3.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 (292) hide show
  1. package/esm2022/lib/components/button/button.component.mjs +46 -0
  2. package/esm2022/lib/components/button/button.module.mjs +20 -0
  3. package/esm2022/lib/components/forgot-password/ForgotPasswordData.mjs +2 -0
  4. package/esm2022/lib/components/forgot-password/forgot-password.component.mjs +86 -0
  5. package/esm2022/lib/components/forgot-password/forgot-password.module.mjs +34 -0
  6. package/esm2022/lib/components/mail/mail.component.mjs +69 -0
  7. package/esm2022/lib/components/mail/mail.module.mjs +21 -0
  8. package/esm2022/lib/components/mail-validation/mail-validation.component.mjs +108 -0
  9. package/esm2022/lib/components/mail-validation/mail-validation.module.mjs +34 -0
  10. package/esm2022/lib/components/o-auth/o-auth.component.mjs +45 -0
  11. package/esm2022/lib/components/o-auth/o-auth.module.mjs +19 -0
  12. package/esm2022/lib/components/otp-input/otp-input.component.mjs +75 -0
  13. package/esm2022/lib/components/otp-input/otp-input.module.mjs +23 -0
  14. package/esm2022/lib/components/reset-password/ResetPasswordData.mjs +2 -0
  15. package/esm2022/lib/components/reset-password/reset-password.component.mjs +107 -0
  16. package/esm2022/lib/components/reset-password/reset-password.module.mjs +34 -0
  17. package/esm2022/lib/components/sign-in/sign-in.component.mjs +240 -0
  18. package/esm2022/lib/components/sign-in/sign-in.module.mjs +24 -0
  19. package/esm2022/lib/components/sign-up/sign-up.component.mjs +223 -0
  20. package/esm2022/lib/components/sign-up/sign-up.module.mjs +24 -0
  21. package/esm2022/lib/components/sso/base-table-style.mjs +53 -0
  22. package/esm2022/lib/components/sso/helper.mjs +14 -0
  23. package/esm2022/lib/components/sso/sso-form/sso-form.component.mjs +74 -0
  24. package/esm2022/lib/components/sso/sso.columns.mjs +29 -0
  25. package/esm2022/lib/components/sso/sso.component.mjs +236 -0
  26. package/esm2022/lib/components/sso/sso.module.mjs +63 -0
  27. package/esm2022/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.mjs +228 -0
  28. package/esm2022/lib/components/two-factor-auth-otp/two-factor-auth-otp.module.mjs +22 -0
  29. package/esm2022/lib/components/two-factor-auth-setup/two-factor-auth-setup.component.mjs +90 -0
  30. package/esm2022/lib/components/two-factor-auth-setup/two-factor-auth-setup.module.mjs +19 -0
  31. package/esm2022/lib/components/user-management/base-table-style.mjs +53 -0
  32. package/esm2022/lib/components/user-management/helper.mjs +26 -0
  33. package/esm2022/lib/components/user-management/useer-management.module.mjs +68 -0
  34. package/esm2022/lib/components/user-management/user-management-form/use-management-form.component.mjs +57 -0
  35. package/esm2022/lib/components/user-management/user-management.columns.mjs +43 -0
  36. package/esm2022/lib/components/user-management/user-management.component.mjs +323 -0
  37. package/esm2022/lib/components/user-request/user-request.component.mjs +206 -0
  38. package/esm2022/lib/components/user-request/user-request.module.mjs +34 -0
  39. package/esm2022/lib/components/user-request-approval/access-request.columns.mjs +24 -0
  40. package/esm2022/lib/components/user-request-approval/base-table-style.mjs +53 -0
  41. package/esm2022/lib/components/user-request-approval/facades/user-access-request.facade.mjs +128 -0
  42. package/esm2022/lib/components/user-request-approval/helper.mjs +35 -0
  43. package/esm2022/lib/components/user-request-approval/services/user-access-request.service.mjs +72 -0
  44. package/esm2022/lib/components/user-request-approval/states/user-access-request.state.mjs +59 -0
  45. package/esm2022/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.mjs +26 -0
  46. package/esm2022/lib/components/user-request-approval/user-request-approval.component.mjs +251 -0
  47. package/esm2022/lib/components/user-request-approval/user-request-approval.module.mjs +77 -0
  48. package/esm2022/lib/components/user-request-approval/user-request-approval.service.mjs +32 -0
  49. package/esm2022/lib/components/user-request-approval/user-request-form/use-request-form.component.mjs +64 -0
  50. package/esm2022/lib/models/ErrorResponse.mjs +11 -0
  51. package/esm2022/lib/models/PasswordRequestParam.mjs +2 -0
  52. package/esm2022/lib/models/ResponseKeyValue.mjs +2 -0
  53. package/esm2022/lib/models/UserRequest.mjs +2 -0
  54. package/esm2022/lib/models/auth-mechanism.mjs +8 -0
  55. package/esm2022/lib/models/base.mjs +2 -0
  56. package/esm2022/lib/models/log-in.mjs +2 -0
  57. package/esm2022/lib/models/mainUser.mjs +2 -0
  58. package/esm2022/lib/models/object-state.mjs +8 -0
  59. package/esm2022/lib/models/otpValue.mjs +2 -0
  60. package/esm2022/lib/models/paged.mjs +2 -0
  61. package/esm2022/lib/models/query-params.mjs +2 -0
  62. package/esm2022/lib/models/request-status.mjs +5 -0
  63. package/esm2022/lib/models/resend-otp-data.mjs +2 -0
  64. package/esm2022/lib/models/sign-up.mjs +2 -0
  65. package/esm2022/lib/models/single-sign-on.mjs +2 -0
  66. package/esm2022/lib/models/status.mjs +6 -0
  67. package/esm2022/lib/models/user-access-request-status.mjs +7 -0
  68. package/esm2022/lib/models/user-access-request.mjs +2 -0
  69. package/esm2022/lib/models/user.mjs +2 -0
  70. package/esm2022/lib/services/environment.service.mjs +26 -0
  71. package/esm2022/lib/services/http-web-request.service.mjs +82 -0
  72. package/esm2022/lib/services/util.service.mjs +32 -0
  73. package/esm2022/public-api.mjs +43 -0
  74. package/esm2022/verben-authentication-ui.mjs +5 -0
  75. package/fesm2022/verben-authentication-ui.mjs +3622 -0
  76. package/fesm2022/verben-authentication-ui.mjs.map +1 -0
  77. package/index.d.ts +5 -0
  78. package/lib/components/button/button.component.d.ts +17 -0
  79. package/lib/components/button/button.module.d.ts +10 -0
  80. package/{src/lib/components/forgot-password/ForgotPasswordData.ts → lib/components/forgot-password/ForgotPasswordData.d.ts} +1 -1
  81. package/lib/components/forgot-password/forgot-password.component.d.ts +28 -0
  82. package/lib/components/forgot-password/forgot-password.module.d.ts +10 -0
  83. package/lib/components/mail/mail.component.d.ts +32 -0
  84. package/lib/components/mail/mail.module.d.ts +11 -0
  85. package/lib/components/mail-validation/mail-validation.component.d.ts +42 -0
  86. package/lib/components/mail-validation/mail-validation.module.d.ts +10 -0
  87. package/lib/components/o-auth/o-auth.component.d.ts +18 -0
  88. package/lib/components/o-auth/o-auth.module.d.ts +9 -0
  89. package/lib/components/otp-input/otp-input.component.d.ts +20 -0
  90. package/lib/components/otp-input/otp-input.module.d.ts +13 -0
  91. package/lib/components/reset-password/ResetPasswordData.d.ts +5 -0
  92. package/lib/components/reset-password/reset-password.component.d.ts +30 -0
  93. package/lib/components/reset-password/reset-password.module.d.ts +10 -0
  94. package/lib/components/sign-in/sign-in.component.d.ts +81 -0
  95. package/lib/components/sign-in/sign-in.module.d.ts +13 -0
  96. package/lib/components/sign-up/sign-up.component.d.ts +66 -0
  97. package/lib/components/sign-up/sign-up.module.d.ts +13 -0
  98. package/lib/components/sso/base-table-style.d.ts +1 -0
  99. package/lib/components/sso/helper.d.ts +2 -0
  100. package/lib/components/sso/sso-form/sso-form.component.d.ts +21 -0
  101. package/lib/components/sso/sso.columns.d.ts +3 -0
  102. package/lib/components/sso/sso.component.d.ts +54 -0
  103. package/lib/components/sso/sso.module.d.ts +11 -0
  104. package/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.d.ts +67 -0
  105. package/lib/components/two-factor-auth-otp/two-factor-auth-otp.module.d.ts +12 -0
  106. package/lib/components/two-factor-auth-setup/two-factor-auth-setup.component.d.ts +39 -0
  107. package/lib/components/two-factor-auth-setup/two-factor-auth-setup.module.d.ts +9 -0
  108. package/lib/components/user-management/base-table-style.d.ts +1 -0
  109. package/lib/components/user-management/helper.d.ts +2 -0
  110. package/lib/components/user-management/useer-management.module.d.ts +11 -0
  111. package/lib/components/user-management/user-management-form/use-management-form.component.d.ts +20 -0
  112. package/lib/components/user-management/user-management.columns.d.ts +3 -0
  113. package/lib/components/user-management/user-management.component.d.ts +60 -0
  114. package/lib/components/user-request/user-request.component.d.ts +60 -0
  115. package/lib/components/user-request/user-request.module.d.ts +10 -0
  116. package/lib/components/user-request-approval/access-request.columns.d.ts +3 -0
  117. package/lib/components/user-request-approval/base-table-style.d.ts +1 -0
  118. package/lib/components/user-request-approval/facades/user-access-request.facade.d.ts +23 -0
  119. package/lib/components/user-request-approval/helper.d.ts +6 -0
  120. package/lib/components/user-request-approval/services/user-access-request.service.d.ts +50 -0
  121. package/lib/components/user-request-approval/states/user-access-request.state.d.ts +21 -0
  122. package/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.d.ts +12 -0
  123. package/lib/components/user-request-approval/user-request-approval.component.d.ts +59 -0
  124. package/lib/components/user-request-approval/user-request-approval.module.d.ts +12 -0
  125. package/lib/components/user-request-approval/user-request-approval.service.d.ts +18 -0
  126. package/lib/components/user-request-approval/user-request-form/use-request-form.component.d.ts +21 -0
  127. package/lib/models/ErrorResponse.d.ts +6 -0
  128. package/lib/models/PasswordRequestParam.d.ts +5 -0
  129. package/lib/models/ResponseKeyValue.d.ts +5 -0
  130. package/lib/models/UserRequest.d.ts +24 -0
  131. package/lib/models/auth-mechanism.d.ts +13 -0
  132. package/lib/models/base.d.ts +10 -0
  133. package/lib/models/log-in.d.ts +7 -0
  134. package/{src/lib/models/mainUser.ts → lib/models/mainUser.d.ts} +2 -3
  135. package/lib/models/object-state.d.ts +6 -0
  136. package/{src/lib/models/otpValue.ts → lib/models/otpValue.d.ts} +1 -3
  137. package/lib/models/paged.d.ts +9 -0
  138. package/lib/models/query-params.d.ts +7 -0
  139. package/lib/models/request-status.d.ts +3 -0
  140. package/lib/models/resend-otp-data.d.ts +8 -0
  141. package/lib/models/sign-up.d.ts +9 -0
  142. package/lib/models/single-sign-on.d.ts +7 -0
  143. package/lib/models/status.d.ts +4 -0
  144. package/lib/models/user-access-request-status.d.ts +5 -0
  145. package/{src/lib/models/user-access-request.ts → lib/models/user-access-request.d.ts} +3 -4
  146. package/lib/models/user.d.ts +23 -0
  147. package/lib/services/environment.service.d.ts +16 -0
  148. package/lib/services/http-web-request.service.d.ts +23 -0
  149. package/lib/services/util.service.d.ts +8 -0
  150. package/package.json +14 -8
  151. package/{src/public-api.ts → public-api.d.ts} +0 -21
  152. package/ng-package.json +0 -8
  153. package/src/lib/components/button/button.component.css +0 -3
  154. package/src/lib/components/button/button.component.html +0 -13
  155. package/src/lib/components/button/button.component.spec.ts +0 -23
  156. package/src/lib/components/button/button.component.ts +0 -24
  157. package/src/lib/components/button/button.module.ts +0 -11
  158. package/src/lib/components/forgot-password/forgot-password.component.css +0 -29
  159. package/src/lib/components/forgot-password/forgot-password.component.html +0 -13
  160. package/src/lib/components/forgot-password/forgot-password.component.spec.ts +0 -23
  161. package/src/lib/components/forgot-password/forgot-password.component.ts +0 -86
  162. package/src/lib/components/forgot-password/forgot-password.module.ts +0 -18
  163. package/src/lib/components/mail/mail.component.css +0 -0
  164. package/src/lib/components/mail/mail.component.html +0 -11
  165. package/src/lib/components/mail/mail.component.spec.ts +0 -23
  166. package/src/lib/components/mail/mail.component.ts +0 -47
  167. package/src/lib/components/mail/mail.module.ts +0 -13
  168. package/src/lib/components/mail-validation/mail-validation.component.css +0 -59
  169. package/src/lib/components/mail-validation/mail-validation.component.html +0 -37
  170. package/src/lib/components/mail-validation/mail-validation.component.spec.ts +0 -23
  171. package/src/lib/components/mail-validation/mail-validation.component.ts +0 -66
  172. package/src/lib/components/mail-validation/mail-validation.module.ts +0 -18
  173. package/src/lib/components/o-auth/o-auth.component.css +0 -21
  174. package/src/lib/components/o-auth/o-auth.component.html +0 -60
  175. package/src/lib/components/o-auth/o-auth.component.spec.ts +0 -23
  176. package/src/lib/components/o-auth/o-auth.component.ts +0 -43
  177. package/src/lib/components/o-auth/o-auth.module.ts +0 -11
  178. package/src/lib/components/otp-input/otp-input.component.css +0 -19
  179. package/src/lib/components/otp-input/otp-input.component.html +0 -14
  180. package/src/lib/components/otp-input/otp-input.component.spec.ts +0 -23
  181. package/src/lib/components/otp-input/otp-input.component.ts +0 -73
  182. package/src/lib/components/otp-input/otp-input.module.ts +0 -15
  183. package/src/lib/components/reset-password/ResetPasswordData.ts +0 -5
  184. package/src/lib/components/reset-password/reset-password.component.css +0 -29
  185. package/src/lib/components/reset-password/reset-password.component.html +0 -22
  186. package/src/lib/components/reset-password/reset-password.component.spec.ts +0 -23
  187. package/src/lib/components/reset-password/reset-password.component.ts +0 -108
  188. package/src/lib/components/reset-password/reset-password.module.ts +0 -18
  189. package/src/lib/components/sign-in/sign-in.component.css +0 -21
  190. package/src/lib/components/sign-in/sign-in.component.html +0 -84
  191. package/src/lib/components/sign-in/sign-in.component.spec.ts +0 -23
  192. package/src/lib/components/sign-in/sign-in.component.ts +0 -184
  193. package/src/lib/components/sign-in/sign-in.module.ts +0 -17
  194. package/src/lib/components/sign-up/sign-up.component.css +0 -36
  195. package/src/lib/components/sign-up/sign-up.component.html +0 -132
  196. package/src/lib/components/sign-up/sign-up.component.spec.ts +0 -23
  197. package/src/lib/components/sign-up/sign-up.component.ts +0 -176
  198. package/src/lib/components/sign-up/sign-up.module.ts +0 -15
  199. package/src/lib/components/sso/base-table-style.ts +0 -52
  200. package/src/lib/components/sso/helper.ts +0 -15
  201. package/src/lib/components/sso/sso-form/sso-form.component.css +0 -13
  202. package/src/lib/components/sso/sso-form/sso-form.component.html +0 -109
  203. package/src/lib/components/sso/sso-form/sso-form.component.spec.ts +0 -23
  204. package/src/lib/components/sso/sso-form/sso-form.component.ts +0 -70
  205. package/src/lib/components/sso/sso.columns.ts +0 -32
  206. package/src/lib/components/sso/sso.component.css +0 -47
  207. package/src/lib/components/sso/sso.component.html +0 -208
  208. package/src/lib/components/sso/sso.component.spec.ts +0 -23
  209. package/src/lib/components/sso/sso.component.ts +0 -261
  210. package/src/lib/components/sso/sso.module.ts +0 -40
  211. package/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.css +0 -8
  212. package/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.html +0 -30
  213. package/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.spec.ts +0 -23
  214. package/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.ts +0 -183
  215. package/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.module.ts +0 -15
  216. package/src/lib/components/two-factor-auth-setup/two-factor-auth-setup.component.css +0 -17
  217. package/src/lib/components/two-factor-auth-setup/two-factor-auth-setup.component.html +0 -45
  218. package/src/lib/components/two-factor-auth-setup/two-factor-auth-setup.component.spec.ts +0 -23
  219. package/src/lib/components/two-factor-auth-setup/two-factor-auth-setup.component.ts +0 -57
  220. package/src/lib/components/two-factor-auth-setup/two-factor-auth-setup.module.ts +0 -11
  221. package/src/lib/components/user-management/base-table-style.ts +0 -52
  222. package/src/lib/components/user-management/helper.ts +0 -29
  223. package/src/lib/components/user-management/index.ts +0 -4
  224. package/src/lib/components/user-management/useer-management.module.ts +0 -48
  225. package/src/lib/components/user-management/user-management-form/use-management-form.component.ts +0 -61
  226. package/src/lib/components/user-management/user-management-form/user-management-form.component.css +0 -0
  227. package/src/lib/components/user-management/user-management-form/user-management-form.component.html +0 -91
  228. package/src/lib/components/user-management/user-management-form/user-management-form.component.spec.ts +0 -23
  229. package/src/lib/components/user-management/user-management.columns.ts +0 -45
  230. package/src/lib/components/user-management/user-management.component.css +0 -26
  231. package/src/lib/components/user-management/user-management.component.html +0 -275
  232. package/src/lib/components/user-management/user-management.component.spec.ts +0 -23
  233. package/src/lib/components/user-management/user-management.component.ts +0 -380
  234. package/src/lib/components/user-management/user-management.service.ts +0 -42
  235. package/src/lib/components/user-request/user-request.component.css +0 -91
  236. package/src/lib/components/user-request/user-request.component.html +0 -165
  237. package/src/lib/components/user-request/user-request.component.spec.ts +0 -23
  238. package/src/lib/components/user-request/user-request.component.ts +0 -167
  239. package/src/lib/components/user-request/user-request.module.ts +0 -18
  240. package/src/lib/components/user-request-approval/access-request.columns.ts +0 -26
  241. package/src/lib/components/user-request-approval/base-table-style.ts +0 -52
  242. package/src/lib/components/user-request-approval/facades/user-access-request.facade.ts +0 -152
  243. package/src/lib/components/user-request-approval/helper.ts +0 -39
  244. package/src/lib/components/user-request-approval/services/user-access-request.service.spec.ts +0 -16
  245. package/src/lib/components/user-request-approval/services/user-access-request.service.ts +0 -87
  246. package/src/lib/components/user-request-approval/states/user-access-request.state.ts +0 -65
  247. package/src/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.css +0 -0
  248. package/src/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.html +0 -7
  249. package/src/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.spec.ts +0 -23
  250. package/src/lib/components/user-request-approval/user-access-request-status-badge/user-access-request-status-badge.component.ts +0 -22
  251. package/src/lib/components/user-request-approval/user-request-approval.component.css +0 -1
  252. package/src/lib/components/user-request-approval/user-request-approval.component.html +0 -218
  253. package/src/lib/components/user-request-approval/user-request-approval.component.spec.ts +0 -23
  254. package/src/lib/components/user-request-approval/user-request-approval.component.ts +0 -301
  255. package/src/lib/components/user-request-approval/user-request-approval.module.ts +0 -52
  256. package/src/lib/components/user-request-approval/user-request-approval.service.spec.ts +0 -16
  257. package/src/lib/components/user-request-approval/user-request-approval.service.ts +0 -58
  258. package/src/lib/components/user-request-approval/user-request-form/use-request-form.component.ts +0 -66
  259. package/src/lib/components/user-request-approval/user-request-form/user-request-form.component.css +0 -0
  260. package/src/lib/components/user-request-approval/user-request-form/user-request-form.component.html +0 -97
  261. package/src/lib/components/user-request-approval/user-request-form/user-request-form.component.spec.ts +0 -23
  262. package/src/lib/models/ErrorResponse.ts +0 -7
  263. package/src/lib/models/PasswordRequestParam.ts +0 -5
  264. package/src/lib/models/ResponseKeyValue.ts +0 -5
  265. package/src/lib/models/UserRequest.ts +0 -28
  266. package/src/lib/models/auth-mechanism.ts +0 -14
  267. package/src/lib/models/base.ts +0 -11
  268. package/src/lib/models/log-in.ts +0 -7
  269. package/src/lib/models/object-state.ts +0 -6
  270. package/src/lib/models/paged.ts +0 -9
  271. package/src/lib/models/query-params.ts +0 -7
  272. package/src/lib/models/request-status.ts +0 -4
  273. package/src/lib/models/resend-otp-data.ts +0 -8
  274. package/src/lib/models/resource.ts +0 -27
  275. package/src/lib/models/sign-up.ts +0 -11
  276. package/src/lib/models/single-sign-on.ts +0 -9
  277. package/src/lib/models/status.ts +0 -5
  278. package/src/lib/models/user-access-request-status.ts +0 -5
  279. package/src/lib/models/user.ts +0 -24
  280. package/src/lib/services/environment.service.spec.ts +0 -16
  281. package/src/lib/services/environment.service.ts +0 -23
  282. package/src/lib/services/http-web-request.service.spec.ts +0 -16
  283. package/src/lib/services/http-web-request.service.ts +0 -101
  284. package/src/lib/services/util.service.spec.ts +0 -16
  285. package/src/lib/services/util.service.ts +0 -28
  286. package/src/styles.css +0 -96
  287. package/src/theme/tailwind-setup.css +0 -3
  288. package/src/theme/tailwind.css +0 -980
  289. package/tailwind.config.js +0 -20
  290. package/tsconfig.lib.json +0 -15
  291. package/tsconfig.lib.prod.json +0 -11
  292. package/tsconfig.spec.json +0 -15
@@ -1,380 +0,0 @@
1
- import { Component, ViewChild } from '@angular/core';
2
- import { columns } from './user-management.columns';
3
- import { mockData } from './helper';
4
- import { baseStyle } from './base-table-style';
5
- import { UserAccessRequest } from '../../models/user-access-request';
6
- import {
7
- CardData,
8
- DataFilterType,
9
- IDataFilter,
10
- DropdownLoadEvent,
11
- DropdownChangeEvent,
12
- CardDataViewComponent,
13
- DataViewComponent,
14
- } from 'verben-ng-ui';
15
- import { UserAccessRequestStatus } from '../../models/user-access-request-status';
16
- import { ObjectState } from '../../models/object-state';
17
-
18
- interface TestParentObject {
19
- Id: string;
20
- Name: string;
21
- }
22
-
23
- @Component({
24
- selector: 'lib-user-management',
25
- templateUrl: './user-management.component.html',
26
- styleUrl: './user-management.component.css',
27
- })
28
- export class UserManagementComponent {
29
- @ViewChild('vdcv') cardDataView!: CardDataViewComponent;
30
- @ViewChild('vdv') dataView!: DataViewComponent;
31
-
32
- columns = columns;
33
- data = mockData;
34
- styles = baseStyle;
35
-
36
- selectedParent?: string;
37
- basicOption?: string;
38
- selectedOption: string[] = [];
39
- selectedOptionTwo: string[] = [];
40
- selectedOptionThree?: string;
41
- missingObject: any;
42
-
43
- private generateNewUserAccessRequest(): UserAccessRequest {
44
- const newId = this.data.length + 1; // Incremental ID based on current data length
45
-
46
- return {
47
- FirstName: `First ${newId}`,
48
- LastName: `Last ${newId}`,
49
- OtherName: `Other ${newId}`,
50
- Id: `${newId}`,
51
- id: newId,
52
- MailAddress: ` `,
53
- PhoneNumber: ``,
54
- RequestStatus: UserAccessRequestStatus.Pending,
55
- Address: ` `,
56
- Password: ' ',
57
- ExpireOn: new Date(),
58
- IsSeeded: false,
59
- OTPExpireOn: new Date(),
60
- Tenants: [`Tenant${newId}`],
61
- Role: ['User'],
62
- CreatedAt: new Date(),
63
- UpdatedAt: new Date(),
64
- DataState: ObjectState.New,
65
- Tenant: `Tenant${newId}`
66
- };
67
- }
68
-
69
- // Function to add a new user to mockData
70
- addNewUserToMockData(): UserAccessRequest {
71
- const newUser = this.generateNewUserAccessRequest();
72
- this.data.push(newUser); // Adds the new user to the data array
73
-
74
- // Optionally, update cardData with the new user entry for card display
75
-
76
- const fullName = `${newUser.FirstName} ${newUser.LastName}`;
77
- const newCardData: CardData = {
78
- selected: false,
79
- title: fullName,
80
- data: {
81
- Name: fullName,
82
- MailAddress: newUser.MailAddress,
83
- PhoneNumber: newUser.PhoneNumber,
84
- RoleID: newUser.Role,
85
- Status: newUser.Status,
86
- } as Partial<UserAccessRequest>,
87
- body: [
88
- { title: 'Name', value: fullName },
89
- { title: 'E-Mail Address', value: newUser.MailAddress },
90
- { title: 'Phone Number', value: newUser.PhoneNumber ?? '' },
91
- ],
92
- children: [],
93
- };
94
-
95
- this.cardData.push(newCardData); // Update cardData array with the new user
96
- return newUser;
97
- }
98
-
99
- // Grid view properties
100
- isGridView: boolean = true;
101
- currentData!: CardData;
102
- selectedColumnCount: number = 0;
103
- selectedFilterTableCount: number = 0;
104
- isOPen: boolean = true;
105
- selectedSortCount: number = 0;
106
- showColumn: boolean = false;
107
- showSort: boolean = false;
108
- selectedAll: boolean = false;
109
- visibleColumns: IDataFilter[] = columns.map((col) => ({
110
- checked: false,
111
- name: typeof col.header === 'string' ? col.header : col.id,
112
- type: DataFilterType.Bool,
113
- }));
114
-
115
- filterArray: IDataFilter[] = [
116
- { name: 'Name', type: DataFilterType.String, checked: false },
117
- { name: 'MailAddress', type: DataFilterType.String, checked: false },
118
- { name: 'PhoneNumber', type: DataFilterType.String, checked: false },
119
- { name: 'CreatedAt', type: DataFilterType.Date, checked: false },
120
- ];
121
-
122
- sortOptions: IDataFilter[] = [
123
- { name: 'Name', type: DataFilterType.String, checked: false },
124
- { name: 'MailAddress', type: DataFilterType.String, checked: false },
125
- { name: 'PhoneNumber', type: DataFilterType.String, checked: false },
126
- { name: 'CreatedAt', type: DataFilterType.Date, checked: false },
127
- ];
128
-
129
- testParents: TestParentObject[] = [
130
- { Id: '1', Name: 'Manager' },
131
- { Id: '2', Name: 'Administrator' },
132
- { Id: '3', Name: 'Jelom' },
133
- ];
134
-
135
- cardData: CardData[] = mockData.map(
136
- ({ FirstName, LastName, MailAddress, PhoneNumber, RoleID, Status }) => ({
137
- selected: false,
138
- title: `${FirstName} ${LastName}`,
139
- data: {
140
- FirstName,
141
- LastName,
142
- MailAddress,
143
- PhoneNumber,
144
- RoleID,
145
- Status,
146
- } as Partial<UserAccessRequest>,
147
- body: [
148
- { title: 'Name', value: `${FirstName} ${LastName}` },
149
- { title: 'E-Mail Address', value: MailAddress },
150
- { title: 'Phone Number', value: PhoneNumber ?? '' },
151
- ],
152
- children: [],
153
- })
154
- );
155
-
156
- ngOnInit(): void {
157
- this.selectedParent = '1';
158
- this.selectedOption = ['Opt 1'];
159
- this.selectedOptionTwo = ['1'];
160
- this.selectedOptionThree = '1';
161
- }
162
-
163
- getParentLabel(context: any): string {
164
- console.log({ MissingObj: this.missingObject });
165
- return this.missingObject.Name;
166
- }
167
-
168
- async loadMoreParents(event: DropdownLoadEvent): Promise<TestParentObject[]> {
169
- console.log({ ParentLoadEvent: JSON.parse(JSON.stringify(event)) });
170
- return await new Promise((resolve) =>
171
- setTimeout(
172
- () =>
173
- resolve([
174
- { Id: '1', Name: 'Jimly' },
175
- { Id: '2', Name: 'Jecil' },
176
- { Id: '3', Name: 'Jelom' },
177
- { Id: '4', Name: 'Jemima' },
178
- { Id: '5', Name: 'Akintunde' },
179
- ]),
180
- 3000
181
- )
182
- );
183
- }
184
-
185
- onDropdownChange(event: DropdownChangeEvent): void {
186
- // console.log({
187
- // 'Test Parent Value': this.selectedParent,
188
- // ...
189
- // });
190
- }
191
-
192
- onSelectionChange(selectedRows: UserAccessRequest[]) {
193
- console.log('Selection changed:', selectedRows);
194
- // Handle the selection change
195
- }
196
-
197
- handleExport(exportedData: Partial<any>[]) {
198
- console.log('Exported data:', exportedData);
199
- this.downloadCSV(exportedData);
200
- }
201
-
202
- private downloadCSV(data: Partial<any>[]) {
203
- const headers = Object.keys(data[0]);
204
- const csvContent = [
205
- headers.join(','),
206
- ...data.map((row) => headers.map((header) => row[header]).join(',')),
207
- ].join('\n');
208
-
209
- const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' });
210
- const link = document.createElement('a');
211
- if (link.download !== undefined) {
212
- const url = URL.createObjectURL(blob);
213
- link.setAttribute('href', url);
214
- link.setAttribute('download', 'export.csv');
215
- link.style.visibility = 'hidden';
216
- document.body.appendChild(link);
217
- link.click();
218
- document.body.removeChild(link);
219
- }
220
- }
221
-
222
- // applyFilters() {
223
- // this.filteredData = this.data.filter((item) => {
224
- // return this.filterArray.every((filter) => {
225
- // if (filter.checked) {
226
- // switch (filter.type) {
227
- // case DataFilterType.String:
228
- // return item[filter.name].toLowerCase().includes(filter.name.toLowerCase());
229
- // case DataFilterType.Date:
230
- // return new Date(item[filter.name]) >= new Date(filter.name);
231
- // default:
232
- // return true;
233
- // }
234
- // }
235
- // return true;
236
- // });
237
- // });
238
- // }
239
- getCardDataByMailAddress(mailAddress: string): CardData | undefined {
240
- console.log('cardData array:', this.cardData);
241
- console.log(mailAddress);
242
-
243
- return this.cardData.find(({ data }) => data?.MailAddress === mailAddress);
244
- }
245
-
246
- openDetailView(mailAddress: string) {
247
- const cardItem = this.getCardDataByMailAddress(mailAddress);
248
- console.log(cardItem);
249
-
250
- if (cardItem && this.cardDataView) {
251
- this.dataView.toggleView();
252
- // First reset all selections
253
- this.cardData.forEach((item) => {
254
- item.selected = false;
255
- if (item.children) {
256
- item.children.forEach((child) => (child.selected = false));
257
- }
258
- });
259
-
260
- // Set the selected item
261
- cardItem.selected = true;
262
- this.currentData = this.cardDataView.onItemClick(cardItem);
263
-
264
- // Force change detection if needed
265
- // this.changeDetectorRef.detectChanges();
266
- }
267
- }
268
- newItem() {
269
- const newData = this.addNewUserToMockData();
270
- const newCardData: CardData = {
271
- selected: true,
272
- title: `${newData.FirstName} ${newData.LastName}`,
273
- data: {
274
- ...newData,
275
- } as Partial<UserAccessRequest>,
276
- body: [
277
- { title: 'Name', value: `${newData.FirstName} ${newData.LastName}` },
278
- { title: 'E-Mail Address', value: newData.MailAddress },
279
- { title: 'Phone Number', value: newData.PhoneNumber ?? '' },
280
- ],
281
- children: [],
282
- };
283
-
284
- if (this.dataView.isTableView) {
285
- this.dataView.toggleView();
286
- }
287
- // First reset all selections
288
- this.cardData.forEach((item) => {
289
- item.selected = false;
290
- if (item.children) {
291
- item.children.forEach((child) => (child.selected = false));
292
- }
293
- });
294
- // this.cardData = [newCardData].concat(this.cardData);
295
- // this.cardDataView.onItemClick(newCardData)
296
-
297
- this.cardData = [newCardData, ...this.cardData];
298
-
299
- this.currentData = this.cardDataView.onItemClick(newCardData);
300
- }
301
-
302
-
303
- // toggleChildView(action: string) {
304
- // if (action === 'create') {
305
- // const newCard: CardData = {
306
- // selected: false,
307
- // title: 'New Card', // Default title, change as needed
308
- // data: { Name: '', MailAddress: '', PhoneNumber: '' },
309
- // body: [
310
- // { title: 'Name', value: '' },
311
- // { title: 'E-Mail Address', value: '' },
312
- // { title: 'Phone Number', value: '' }
313
- // ],
314
- // children: []
315
- // };
316
-
317
- // this.cardData.push(newCard);
318
- // }
319
- // }
320
-
321
-
322
- clearData() {
323
- this.currentData = {} as CardData;
324
- }
325
-
326
- loadMore() {
327
- this.cardData = this.cardData.concat(this.cardData);
328
- }
329
-
330
- onColumnChange(event: boolean) {
331
- this.showColumn = event;
332
- }
333
-
334
- onSortChange(event: boolean) {
335
- this.showSort = event;
336
- console.log(event);
337
- }
338
-
339
- onColumnsUpdated(updatedColumns: IDataFilter[]) {
340
- this.onColumnChange(false);
341
- this.selectedColumnCount = updatedColumns.length;
342
- }
343
-
344
- onSortUpdated(updatedSorts: IDataFilter[]) {
345
- this.onSortChange(false);
346
- this.selectedSortCount = updatedSorts.length;
347
- console.log(updatedSorts);
348
- }
349
-
350
- onViewChange(isGridView: boolean): void {
351
- console.log('View changed to:', isGridView ? 'Grid View' : 'List View');
352
- }
353
-
354
- onStateChange(event: { key: string; value: boolean }): void {
355
- console.log(`State changed for ${event.key}:`, event.value);
356
- if (event.key === 'create') {
357
- console.log('peace is a boy');
358
-
359
- this.newItem();
360
-
361
- // const newUser = this.newItem()
362
-
363
- // if ( newUser && this.cardDataView) {
364
- // this.dataView.toggleView();
365
- // // First reset all selections
366
- // this.cardData.forEach((item) => {
367
- // item.selected = false;
368
- // if (item.children) {
369
- // item.children.forEach((child) => (child.selected = false));
370
- // }
371
- // });
372
-
373
- // this.currentData = this.cardDataView.onItemClick(newUser);
374
-
375
- // // Force change detection if needed
376
- // // this.changeDetectorRef.detectChanges();
377
- // }
378
- }
379
- }
380
- }
@@ -1,42 +0,0 @@
1
- import { HttpClient } from '@angular/common/http';
2
- import { Inject, Injectable, InjectionToken } from '@angular/core';
3
- import { UserAccessRequest } from '../../models/user-access-request';
4
-
5
- export interface ServiceConfig {
6
- resourceEndpoint: string;
7
- }
8
-
9
- export const SERVICE_CONFIG = new InjectionToken<ServiceConfig>(
10
- 'ServiceConfig'
11
- );
12
-
13
- @Injectable()
14
- export class UserRequestApprovalService {
15
- // protected readonly baseUrl: string;
16
- protected readonly resourceEndpoint: string;
17
-
18
- constructor(
19
- protected httpClient: HttpClient,
20
- @Inject(SERVICE_CONFIG) config: ServiceConfig
21
- ) {
22
- // this.baseUrl = environment.serviceUrl;
23
- this.resourceEndpoint = config.resourceEndpoint;
24
- }
25
-
26
- getUserRequests() {
27
- return this.httpClient.get<UserAccessRequest[]>(`${this.resourceEndpoint}`);
28
- }
29
-
30
- getUserRequestById(id: number) {
31
- return this.httpClient.get<UserAccessRequest>(
32
- `${this.resourceEndpoint}/${id}`
33
- );
34
- }
35
-
36
- processUserReuqests(ids: string[], approval: boolean = true) {
37
- return this.httpClient.post<UserAccessRequest[]>(
38
- `${this.resourceEndpoint}`,
39
- ids
40
- );
41
- }
42
- }
@@ -1,91 +0,0 @@
1
- /* Container Styles */
2
- .flex {
3
- display: flex;
4
- }
5
- .items-center{
6
- align-items: center;
7
- }
8
- .overflow-hidden {
9
- overflow: hidden;
10
- }
11
- .justify-center{
12
- justify-content: center;
13
- }
14
- .h-full {
15
- height: 100%;
16
- }
17
-
18
- .text-center{
19
- text-align: center;
20
- }
21
- .underline {
22
- text-decoration: underline;
23
- }
24
- .gap-5{
25
- gap: 20px;
26
- }
27
- /* Space and Gap Utilities */
28
- .mt-4 {
29
- margin-top: 1rem;
30
- }
31
- .space-y-4 > :not([hidden]) ~ :not([hidden]) {
32
- margin-top: 1rem;
33
- }
34
- .gap-1 > :not([hidden]) ~ :not([hidden]) {
35
- gap: 0.25rem;
36
- }
37
- .pt-3 {
38
- padding-top: 0.75rem;
39
- }
40
- .mt-5 {
41
- margin-top: 1.25rem;
42
- }
43
-
44
- /* Form and Input Styles */
45
- .border {
46
- border-width: 1px;
47
- }
48
-
49
- .rounded-xl {
50
- border-radius: 0.75rem;
51
- }
52
- .px-3 {
53
- padding-left: 0.75rem;
54
- padding-right: 0.75rem;
55
- }
56
- .py-3 {
57
- padding-top: 0.75rem;
58
- padding-bottom: 0.75rem;
59
- }
60
- .flex-col {
61
- flex-direction: column;
62
- }
63
- .w-full {
64
- width: 100%;
65
- }
66
-
67
- .object-cover {
68
- object-fit: cover;
69
- }
70
- .w-full {
71
- width: 100%;
72
- }
73
-
74
- .cursor-not-allowed{
75
- cursor: not-allowed !important;
76
- }
77
- .accent {
78
- accent-color: #000;
79
- }
80
-
81
- .OR{
82
-
83
- color:#666666;
84
- gap: 6px;
85
- }
86
- .OR span{
87
- width: 150px;
88
- border-top: 2px solid #6666663d;
89
- display: block;
90
- }
91
-
@@ -1,165 +0,0 @@
1
- <section [ngStyle]="styles" class="{{ customClass }}">
2
- <h2 class="{{ headingClass }}">
3
- {{ headingTitle }}
4
- </h2>
5
-
6
- <form
7
- [formGroup]="userRequestForm"
8
- (ngSubmit)="submitForm()"
9
- class="flex flex-col gap-5 mt-3"
10
- >
11
- <verbena-input
12
- [label]="'First Name'"
13
- [labelColor]="'#666'"
14
- [placeHolder]="''"
15
- [required]="true"
16
- [type]="'text'"
17
- formControlName="FirstName"
18
- [showBorder]="true"
19
- [bgColor]="'white'"
20
- [border]="'1px solid #66666659'"
21
- [borderRadius]="'12px'"
22
- [showErrorMessage]="true"
23
- [errorMessageColor]="'red'"
24
- [errorBorderColor]="'red'"
25
- [errorPosition]="'bottom'"
26
- class="outline-none focus-none"
27
- ></verbena-input>
28
- <verbena-input
29
- [label]="'Last Name'"
30
- [labelColor]="'#666'"
31
- [placeHolder]="''"
32
- [required]="true"
33
- [type]="'text'"
34
- formControlName="LastName"
35
- [showBorder]="true"
36
- [bgColor]="'white'"
37
- [border]="'1px solid #66666659'"
38
- [borderRadius]="'12px'"
39
- [showErrorMessage]="true"
40
- [errorMessageColor]="'red'"
41
- [errorBorderColor]="'red'"
42
- [errorPosition]="'bottom'"
43
- class="outline-none focus-none"
44
- ></verbena-input>
45
- <verbena-input
46
- [label]="'E-mail Address'"
47
- [labelColor]="'#666'"
48
- [placeHolder]="''"
49
- [required]="true"
50
- [type]="'email'"
51
- formControlName="Email"
52
- [showBorder]="true"
53
- [bgColor]="'white'"
54
- [border]="'1px solid #66666659'"
55
- [borderRadius]="'12px'"
56
- [showErrorMessage]="true"
57
- [customErrorMessages]="{
58
- required: 'Email address is required',
59
- email: 'Email address must be valid'
60
- }"
61
- [errorMessageColor]="'red'"
62
- [errorBorderColor]="'red'"
63
- [errorPosition]="'bottom'"
64
- class="outline-none focus-none"
65
- ></verbena-input>
66
-
67
- <verbena-input
68
- [label]="'Password'"
69
- [labelColor]="'#666'"
70
- [placeHolder]="''"
71
- [passwordToggle]="true"
72
- formControlName="Password"
73
- [required]="true"
74
- [type]="'password'"
75
- [showBorder]="true"
76
- [bgColor]="'white'"
77
- [border]="'1px solid #66666659'"
78
- [borderRadius]="'12px'"
79
- [showErrorMessage]="true"
80
- [errorMessageColor]="'red'"
81
- [errorBorderColor]="'red'"
82
- [errorPosition]="'bottom'"
83
- class="outline-none focus-none"
84
- ></verbena-input>
85
-
86
- <verbena-input
87
- [label]="'Confirm Password'"
88
- [labelColor]="'#666'"
89
- [placeHolder]="''"
90
- [required]="true"
91
- [type]="'password'"
92
- formControlName="ConfirmPassword"
93
- [showBorder]="true"
94
- [passwordToggle]="true"
95
- [bgColor]="'white'"
96
- [minLength]="userRequestForm.controls['Password'].value?.length"
97
- [border]="'1px solid #66666659'"
98
- [borderRadius]="'12px'"
99
- [showErrorMessage]="true"
100
- [errorMessageColor]="'red'"
101
- [customErrorMessages]="{
102
- minLength:'Confirm Password must match password',
103
- required: 'Confirm Password is required and must match password',
104
- password: 'Password does not match',
105
- }"
106
- [errorBorderColor]="'red'"
107
- [errorPosition]="'bottom'"
108
- class="outline-none focus-none"
109
- ></verbena-input>
110
-
111
- <verbena-button
112
- [class]="'mt-6'"
113
- [disable]="!this.checkForm()"
114
- [text]="text"
115
- [bgColor]="btnBgColor"
116
- [textColor]="color"
117
- [buttonClass]="'cursor-not-allowed'"
118
- [border]="btnBorder"
119
- [borderRadius]="btnBorderRadius"
120
- [pd]="btnPd"
121
- [ngClass]="{
122
- 'cursor-not-allowed':!checkForm()
123
- }"
124
- [width]="btnWidth"
125
- buttonClass="font-medium text-[22px] leading-[33px]"
126
- ></verbena-button>
127
- <div class="flex justify-center items-center OR">
128
- <span></span>
129
- OR
130
- <span></span>
131
- </div>
132
-
133
- <verbena-button
134
- svg="google-logo"
135
- [svgHeight]="24"
136
- [svgWidth]="24"
137
- (click)="handleGoogleAuth()"
138
- text="Continue with Google"
139
- bgColor="white"
140
- textColor="black"
141
- border="1px solid #333"
142
- borderRadius="40px"
143
- pd="10px 20px"
144
- width="100%"
145
- svgPosition="left"
146
- buttonClass="font-normal text-[24px] leading-[29.05px] text-[#333]"
147
- ></verbena-button>
148
-
149
- <verbena-button
150
- svg="apple-logo"
151
- (click)="handleAppleAuth()"
152
- [svgHeight]="24"
153
- [svgWidth]="24"
154
- text="Continue with Apple"
155
- bgColor="white"
156
- textColor="black"
157
- border="1px solid #333"
158
- borderRadius="40px"
159
- pd="10px 20px"
160
- width="100%"
161
- svgPosition="left"
162
- buttonClass="font-normal text-[24px] leading-[29.05px] text-[#333] mt-2"
163
- ></verbena-button>
164
- </form>
165
- </section>
@@ -1,23 +0,0 @@
1
- import { ComponentFixture, TestBed } from '@angular/core/testing';
2
-
3
- import { UserRequestComponent } from './user-request.component';
4
-
5
- describe('UserRequestComponent', () => {
6
- let component: UserRequestComponent;
7
- let fixture: ComponentFixture<UserRequestComponent>;
8
-
9
- beforeEach(async () => {
10
- await TestBed.configureTestingModule({
11
- imports: [UserRequestComponent]
12
- })
13
- .compileComponents();
14
-
15
- fixture = TestBed.createComponent(UserRequestComponent);
16
- component = fixture.componentInstance;
17
- fixture.detectChanges();
18
- });
19
-
20
- it('should create', () => {
21
- expect(component).toBeTruthy();
22
- });
23
- });