verben-authentication-ui 1.0.28 → 1.0.30

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 (30) hide show
  1. package/esm2022/src/lib/components/forgot-password/forgot-password.component.mjs +2 -2
  2. package/esm2022/src/lib/components/reset-password/reset-password.component.mjs +2 -2
  3. package/esm2022/src/lib/components/role-control/role-control.component.mjs +15 -15
  4. package/esm2022/src/lib/components/sign-in/sign-in.component.mjs +4 -4
  5. package/esm2022/src/lib/components/sign-up/sign-up.component.mjs +2 -2
  6. package/esm2022/src/lib/components/two-factor-auth-otp/two-factor-auth-otp.component.mjs +3 -3
  7. package/esm2022/src/lib/components/user-management/services/user-management.service.mjs +7 -7
  8. package/esm2022/src/lib/components/user-management/user-management.component.mjs +3 -3
  9. package/esm2022/src/lib/components/user-request/user-request.component.mjs +4 -4
  10. package/esm2022/src/lib/components/user-request-approval/services/user-access-request.service.mjs +4 -4
  11. package/fesm2022/verben-authentication-ui-src-lib-components-forgot-password.mjs +1 -1
  12. package/fesm2022/verben-authentication-ui-src-lib-components-forgot-password.mjs.map +1 -1
  13. package/fesm2022/verben-authentication-ui-src-lib-components-reset-password.mjs +1 -1
  14. package/fesm2022/verben-authentication-ui-src-lib-components-reset-password.mjs.map +1 -1
  15. package/fesm2022/verben-authentication-ui-src-lib-components-role-control.mjs +14 -14
  16. package/fesm2022/verben-authentication-ui-src-lib-components-role-control.mjs.map +1 -1
  17. package/fesm2022/verben-authentication-ui-src-lib-components-sign-in.mjs +3 -3
  18. package/fesm2022/verben-authentication-ui-src-lib-components-sign-in.mjs.map +1 -1
  19. package/fesm2022/verben-authentication-ui-src-lib-components-sign-up.mjs +1 -1
  20. package/fesm2022/verben-authentication-ui-src-lib-components-sign-up.mjs.map +1 -1
  21. package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs +2 -2
  22. package/fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs.map +1 -1
  23. package/fesm2022/verben-authentication-ui-src-lib-components-user-management.mjs +8 -8
  24. package/fesm2022/verben-authentication-ui-src-lib-components-user-management.mjs.map +1 -1
  25. package/fesm2022/verben-authentication-ui-src-lib-components-user-request-approval.mjs +3 -3
  26. package/fesm2022/verben-authentication-ui-src-lib-components-user-request-approval.mjs.map +1 -1
  27. package/fesm2022/verben-authentication-ui-src-lib-components-user-request.mjs +3 -3
  28. package/fesm2022/verben-authentication-ui-src-lib-components-user-request.mjs.map +1 -1
  29. package/package.json +29 -29
  30. package/src/lib/components/user-management/services/user-management.service.d.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"verben-authentication-ui-src-lib-components-user-request.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/components/user-request/user-request.component.ts","../../../projects/verben-authentication-ui/src/lib/components/user-request/user-request.component.html","../../../projects/verben-authentication-ui/src/lib/components/user-request/user-request.module.ts","../../../projects/verben-authentication-ui/src/lib/components/user-request/verben-authentication-ui-src-lib-components-user-request.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { HttpWebRequestService } from 'verben-authentication-ui/src/lib/services';\nimport { UserRequestPayload } from 'verben-authentication-ui/src/lib/models';\nimport { ObjectState } from 'verben-authentication-ui/src/lib/models';\nimport { UtilService } from 'verben-authentication-ui/src/lib/services';\nimport { ResponseKeyValue } from 'verben-authentication-ui/src/lib/models';\nimport { ErrorResponse } from 'verben-authentication-ui/src/lib/models';\nimport { Status } from 'verben-authentication-ui/src/lib/models';\nimport { RequestStatus } from 'verben-authentication-ui/src/lib/models';\nimport { EnvironmentService } from 'verben-authentication-ui/src/lib/services';\nimport {\n AuthMechanism,\n MechanismType,\n} from 'verben-authentication-ui/src/lib/models';\nimport { ActivatedRoute } from '@angular/router';\nimport { OAuthResponse } from 'verben-authentication-ui/src/lib/models';\nimport { Role } from 'verben-authentication-ui/src/lib/models';\nimport CryptoJS from 'crypto-js';\nimport { UserAgentType } from 'verben-authentication-ui/src/lib/models';\n@Component({\n selector: 'lib-user-request',\n templateUrl: './user-request.component.html',\n styleUrls: ['./user-request.component.css'],\n})\nexport class UserRequestComponent {\n @Input() width: string = '500px';\n @Input() headingTitle: string = 'Request an account';\n @Input() headingClass: string =\n 'font-medium text-[2rem] leading-[48px] text-[#333]';\n @Input() customClass: string = '';\n @Input() bgColor: string = '#fff';\n @Input() boxShadow: string = '4px 4px 4px rgba(0, 0, 0, 0.25)';\n @Input() border: string = '1px solid #66666680';\n @Input() borderRadius: string = '24px';\n @Input() textColor: string = '#333';\n @Input() height: string = 'auto';\n @Input() pd: string = '32px 48px';\n isFormEditable: boolean = true;\n tenant: string=''\n secret: string;\n hidePassword: boolean = false;\n isCode: boolean = false;\n @Input() text: string = 'Send Request';\n @Input() color: string = 'black';\n @Input() btnBorder: string = '1px solid #FFE681';\n @Input() btnBorderRadius: string = '40px';\n @Input() btnBgColor: string = '#FFE681';\n @Input() btnWidth: string = '100%';\n @Input() btnPd: string = '10px 20px';\n @Input() termsLink: string = '';\n @Input() privacyLink: string = '';\n @Input() routerLink: string = '';\n @Output() formSubmit = new EventEmitter<UserRequestPayload[]>();\n @Output() googleClick = new EventEmitter();\n @Output() onSubmitSuccess = new EventEmitter<any>();\n @Output() appleClick = new EventEmitter();\n @Output() microsoftClick = new EventEmitter();\n @Output() onSubmitGoogleAuth: EventEmitter<ResponseKeyValue | ErrorResponse> =\n new EventEmitter();\n @Output() onSubmitResponseEnd: EventEmitter<any> = new EventEmitter();\n userRequestForm: FormGroup;\n tenantDetails: any | null = null;\n AuthMechanisms: AuthMechanism[] | null = null;\n showform: boolean = false;\n code: string = '';\n type: string = '';\n constructor(\n private fb: FormBuilder,\n private server: HttpWebRequestService,\n private utilService: UtilService,\n private envSvc: EnvironmentService,\n private route: ActivatedRoute\n ) {\n \n this.secret = this.envSvc.environment.Secret;\n this.userRequestForm = this.fb.group<{\n [K in keyof UserRequestPayload]: FormControl<UserRequestPayload[K]>;\n }>(\n {\n Code: new FormControl('', { nonNullable: true }),\n FirstName: new FormControl('', {\n nonNullable: true,\n validators: [Validators.required],\n }),\n LastName: new FormControl('', {\n nonNullable: true,\n validators: [Validators.required],\n }),\n MailAddress: new FormControl('', {\n nonNullable: true,\n validators: [Validators.required, Validators.email],\n }),\n Password: new FormControl('', {\n nonNullable: true,\n validators: [Validators.required, Validators.minLength(8)],\n }),\n PhoneNumber: new FormControl('', { nonNullable: true }),\n OtherName: new FormControl('', { nonNullable: true }),\n Role: new FormControl<Role>(\n {\n Name: '',\n Description: '',\n Application: '',\n RoleContexts: [],\n APIKey: '',\n Id: '',\n id: '',\n ServiceName: '',\n CreatedAt: new Date(),\n UpdatedAt: new Date(),\n DataState: ObjectState.New,\n TenantId: '',\n Code: '',\n },\n { nonNullable: true }\n ),\n Tags: new FormControl<[]>([], { nonNullable: true }),\n Status: new FormControl<Status>(Status.Active, { nonNullable: true }),\n RequestStatus: new FormControl<RequestStatus>(RequestStatus.Pending, {\n nonNullable: true,\n }),\n UpdatedAt: new FormControl(new Date(), { nonNullable: true }),\n CreatedAt: new FormControl(new Date(), { nonNullable: true }),\n Id: new FormControl('', { nonNullable: true }),\n DataState: new FormControl<ObjectState>(ObjectState.New, {\n nonNullable: true,\n }),\n TenantId: new FormControl('', { nonNullable: true }),\n Token: new FormControl('', { nonNullable: true }),\n SignUpType: new FormControl(MechanismType.InApp, { nonNullable: true }),\n ServiceName: new FormControl('', { nonNullable: true }),\n ActionBy: new FormControl('', { nonNullable: true }),\n Comment: new FormControl('', { nonNullable: true }),\n },\n { validators: this.passwordMatchValidator }\n );\n }\n passwordMatchValidator(control: AbstractControl): ValidationErrors | null {\n const password = control.get('Password')?.value;\n const confirmPassword = control.get('ConfirmPassword')?.value;\n\n return password === confirmPassword ? null : { passwordMismatch: true };\n }\n\n get passwordMismatchError(): boolean {\n return this.userRequestForm.hasError('passwordMismatch');\n }\n\n get styles() {\n return {\n 'background-color': this.bgColor,\n 'box-shadow': this.boxShadow,\n border: this.border,\n 'border-radius': this.borderRadius,\n color: this.textColor,\n 'max-width': this.width,\n height: this.height,\n padding: this.pd,\n };\n }\n async ngOnInit() {\n await this.getTenantConfig();\n this.route.queryParams.subscribe((params) => {\n this.code = params['code'];\n this.type = params['type'];\n if (this.code) {\n this.verifyUserDetails();\n }\n });\n }\n\n async getTenantConfig() {\n this.userRequestForm.addControl(\n 'ConfirmPassword',\n new FormControl('', Validators.required)\n );\n const isLocalhost = window?.location?.hostname === 'localhost';\n const payload = isLocalhost\n ? {\n Key: 'UrlKey',\n Value: 'https://bovas.white360.net',\n }\n : undefined;\n const res = await this.server.post(\n `Tenant/GetTenantConfigByUrlKey`,\n payload\n );\n this.tenantDetails = res;\n this.tenant = this.tenantDetails.TenantId\n \n this.AuthMechanisms = this.tenantDetails?.AuthMechanisms?.filter(\n (m:AuthMechanism) => m.UserAgent === UserAgentType.Web\n );\n if (\n !this.tenantDetails?.AuthMechanism &&\n this.tenantDetails?.AuthMechanism !== MechanismType.InApp\n ) {\n this.showform = false;\n } else if (this.tenantDetails?.AuthMechanism === MechanismType.InApp) {\n this.showform = true;\n } else if (this.AuthMechanisms !== null) {\n this.showform = this.AuthMechanisms.some((item) =>\n item.AuthMechanism.includes(MechanismType.InApp)\n );\n }\n }\n checkForm(): boolean {\n return this.userRequestForm.valid;\n }\n handleGoogleAuth() {\n if (this.AuthMechanisms !== null) {\n const data = this.AuthMechanisms.filter(\n (item) => item.AuthMechanism === MechanismType.Google\n );\n this.googleClick.emit();\n }\n }\n handleAppleAuth() {\n this.appleClick.emit();\n }\n handleMicrosoft() {\n if (this.AuthMechanisms !== null) {\n const data = this.AuthMechanisms.filter(\n (item) => item.AuthMechanism === MechanismType.Microsoft\n );\n this.microsoftClick.emit();\n }\n }\n\n async submitForm() {\n if (!this.checkForm()) {\n return;\n }\n\n const formValue = this.userRequestForm.getRawValue();\n const hashedPassword = CryptoJS.MD5(\n this.userRequestForm.controls['Password'].value\n ).toString();\n const { ConfirmPassword, TenantId, ...rest } = formValue;\n const payload = {\n ...rest,\n TenantId: this.tenantDetails.TenantId,\n Password: hashedPassword,\n };\n\n const payloadToSubmit: UserRequestPayload[] = [payload];\n\n this.formSubmit.emit(payloadToSubmit);\n this.utilService.sendBI(true);\n\n try {\n const res = await this.server.post(\n `User/SaveUserAccessRequests`,\n payloadToSubmit\n );\n\n this.utilService.sendBI(false);\n\n if (res instanceof ErrorResponse) {\n this.onSubmitResponseEnd.emit(res);\n } else {\n const result = res as ResponseKeyValue;\n this.onSubmitResponseEnd.emit(result);\n this.onSubmitSuccess.emit(result);\n }\n } catch (error) {\n this.utilService.sendBI(false);\n console.error('Unexpected error:', error);\n this.onSubmitResponseEnd.emit(error);\n }\n }\n async verifyUserDetails() {\n if (this.AuthMechanisms !== null && this.tenant) {\n const data: any = this.AuthMechanisms.find((item) =>\n item.AuthMechanism.includes(this.type)\n );\n const payload = {\n AuthCode: this.code,\n Tenant: this.tenant,\n AuthMechanism: data.AuthMechanism,\n };\n\n this.utilService.sendBI(true);\n const res: OAuthResponse = await this.server.post(\n `Authentication/GetUserDetails`,\n payload\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n this.onSubmitGoogleAuth.emit(res);\n } else {\n this.userRequestForm.controls['FirstName'].setValue(res.FirstName);\n this.userRequestForm.controls['LastName'].setValue(res.LastName);\n this.userRequestForm.controls['MailAddress'].setValue(res.Email);\n this.userRequestForm.controls['Token'].setValue(res.AccessToken);\n this.userRequestForm.controls['SignUpType'].setValue(this.type);\n this.userRequestForm.controls['Password'].clearValidators();\n this.userRequestForm.controls['Password'].updateValueAndValidity();\n this.userRequestForm.controls['ConfirmPassword'].clearValidators();\n this.userRequestForm.controls[\n 'ConfirmPassword'\n ].updateValueAndValidity();\n this.hidePassword = true;\n }\n }\n }\n}\n","<section [ngStyle]=\"styles\" class=\"{{ customClass }}\">\n <h2 class=\"{{ headingClass }}\">\n {{ headingTitle }}\n </h2>\n\n <form\n [formGroup]=\"userRequestForm\"\n (ngSubmit)=\"submitForm()\"\n class=\"flex flex-col gap-5 mt-3\"\n >\n <verbena-input\n [label]=\"'First Name'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [required]=\"true\"\n [type]=\"'text'\"\n formControlName=\"FirstName\"\n [showBorder]=\"true\"\n [bgColor]=\"'white'\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [errorMessageColor]=\"'red'\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n <verbena-input\n [label]=\"'Last Name'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [required]=\"true\"\n [type]=\"'text'\"\n formControlName=\"LastName\"\n [showBorder]=\"true\"\n [bgColor]=\"'white'\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [errorMessageColor]=\"'red'\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n <verbena-input\n [label]=\"'E-mail Address'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [required]=\"true\"\n [type]=\"'email'\"\n formControlName=\"MailAddress\"\n [showBorder]=\"true\"\n [bgColor]=\"'white'\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [customErrorMessages]=\"{\n required: 'Email address is required',\n email: 'Email address must be valid'\n }\"\n [errorMessageColor]=\"'red'\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n\n <verbena-input\n *ngIf=\"!hidePassword\"\n [label]=\"'Password'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [passwordToggle]=\"true\"\n formControlName=\"Password\"\n [required]=\"true\"\n [type]=\"'password'\"\n [showBorder]=\"true\"\n [bgColor]=\"'white'\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [errorMessageColor]=\"'red'\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n\n <verbena-input\n *ngIf=\"!hidePassword\"\n [label]=\"'Confirm Password'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [required]=\"true\"\n [type]=\"'password'\"\n formControlName=\"ConfirmPassword\"\n [showBorder]=\"true\"\n [passwordToggle]=\"true\"\n [bgColor]=\"'white'\"\n [minLength]=\"userRequestForm.controls['Password'].value?.length\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [errorMessageColor]=\"'red'\"\n [customErrorMessages]=\"{\n minLength:'Confirm Password must match password',\n required: 'Confirm Password is required and must match password',\n password: 'Password does not match',\n }\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n\n <verbena-button\n [class]=\"'mt-6'\"\n [disable]=\"!this.checkForm()\"\n [text]=\"text\"\n [bgColor]=\"btnBgColor\"\n [textColor]=\"color\"\n [buttonClass]=\"'cursor-not-allowed'\"\n [border]=\"btnBorder\"\n [borderRadius]=\"btnBorderRadius\"\n [pd]=\"btnPd\"\n [ngClass]=\"{\n 'cursor-not-allowed':!checkForm()\n }\"\n [width]=\"btnWidth\"\n buttonClass=\"font-medium text-[22px] leading-[33px]\"\n ></verbena-button>\n </form>\n\n <div class=\"mt-2\" *ngIf=\"AuthMechanisms !== null\"> \n <verben-o-auth \n [authMechanisms]=\"AuthMechanisms\"\n ></verben-o-auth>\n </div>\n</section>\n\n","import { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { VerbenaButtonModule, VerbenaInputModule } from 'verben-ng-ui';\nimport { CommonModule } from '@angular/common';\nimport { UserRequestComponent } from './user-request.component';\nimport { OAuthModule } from 'verben-authentication-ui/src/lib/components/o-auth';\n\n@NgModule({\n declarations: [UserRequestComponent],\n imports: [\n FormsModule,\n ReactiveFormsModule,\n VerbenaInputModule,\n VerbenaButtonModule,\n CommonModule,\n OAuthModule,\n ],\n exports: [UserRequestComponent],\n})\nexport class UserRequestModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verben-authentication-ui-src-lib-components-user-request.mjs","sources":["../../../projects/verben-authentication-ui/src/lib/components/user-request/user-request.component.ts","../../../projects/verben-authentication-ui/src/lib/components/user-request/user-request.component.html","../../../projects/verben-authentication-ui/src/lib/components/user-request/user-request.module.ts","../../../projects/verben-authentication-ui/src/lib/components/user-request/verben-authentication-ui-src-lib-components-user-request.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport {\n AbstractControl,\n FormBuilder,\n FormControl,\n FormGroup,\n ValidationErrors,\n Validators,\n} from '@angular/forms';\nimport { HttpWebRequestService } from 'verben-authentication-ui/src/lib/services';\nimport { UserRequestPayload } from 'verben-authentication-ui/src/lib/models';\nimport { ObjectState } from 'verben-authentication-ui/src/lib/models';\nimport { UtilService } from 'verben-authentication-ui/src/lib/services';\nimport { ResponseKeyValue } from 'verben-authentication-ui/src/lib/models';\nimport { ErrorResponse } from 'verben-authentication-ui/src/lib/models';\nimport { Status } from 'verben-authentication-ui/src/lib/models';\nimport { RequestStatus } from 'verben-authentication-ui/src/lib/models';\nimport { EnvironmentService } from 'verben-authentication-ui/src/lib/services';\nimport {\n AuthMechanism,\n MechanismType,\n} from 'verben-authentication-ui/src/lib/models';\nimport { ActivatedRoute } from '@angular/router';\nimport { OAuthResponse } from 'verben-authentication-ui/src/lib/models';\nimport { Role } from 'verben-authentication-ui/src/lib/models';\nimport CryptoJS from 'crypto-js';\nimport { UserAgentType } from 'verben-authentication-ui/src/lib/models';\n@Component({\n selector: 'lib-user-request',\n templateUrl: './user-request.component.html',\n styleUrls: ['./user-request.component.css'],\n})\nexport class UserRequestComponent {\n @Input() width: string = '500px';\n @Input() headingTitle: string = 'Request an account';\n @Input() headingClass: string =\n 'font-medium text-[2rem] leading-[48px] text-[#333]';\n @Input() customClass: string = '';\n @Input() bgColor: string = '#fff';\n @Input() boxShadow: string = '4px 4px 4px rgba(0, 0, 0, 0.25)';\n @Input() border: string = '1px solid #66666680';\n @Input() borderRadius: string = '24px';\n @Input() textColor: string = '#333';\n @Input() height: string = 'auto';\n @Input() pd: string = '32px 48px';\n isFormEditable: boolean = true;\n tenant: string = '';\n secret: string;\n hidePassword: boolean = false;\n isCode: boolean = false;\n @Input() text: string = 'Send Request';\n @Input() color: string = 'black';\n @Input() btnBorder: string = '1px solid #FFE681';\n @Input() btnBorderRadius: string = '40px';\n @Input() btnBgColor: string = '#FFE681';\n @Input() btnWidth: string = '100%';\n @Input() btnPd: string = '10px 20px';\n @Input() termsLink: string = '';\n @Input() privacyLink: string = '';\n @Input() routerLink: string = '';\n @Output() formSubmit = new EventEmitter<UserRequestPayload[]>();\n @Output() googleClick = new EventEmitter();\n @Output() onSubmitSuccess = new EventEmitter<any>();\n @Output() appleClick = new EventEmitter();\n @Output() microsoftClick = new EventEmitter();\n @Output() onSubmitGoogleAuth: EventEmitter<ResponseKeyValue | ErrorResponse> =\n new EventEmitter();\n @Output() onSubmitResponseEnd: EventEmitter<any> = new EventEmitter();\n userRequestForm: FormGroup;\n tenantDetails: any | null = null;\n AuthMechanisms: AuthMechanism[] | null = null;\n showform: boolean = false;\n code: string = '';\n type: string = '';\n constructor(\n private fb: FormBuilder,\n private server: HttpWebRequestService,\n private utilService: UtilService,\n private envSvc: EnvironmentService,\n private route: ActivatedRoute,\n ) {\n this.secret = this.envSvc.environment.Secret;\n this.userRequestForm = this.fb.group<{\n [K in keyof UserRequestPayload]: FormControl<UserRequestPayload[K]>;\n }>(\n {\n Code: new FormControl('', { nonNullable: true }),\n FirstName: new FormControl('', {\n nonNullable: true,\n validators: [Validators.required],\n }),\n LastName: new FormControl('', {\n nonNullable: true,\n validators: [Validators.required],\n }),\n MailAddress: new FormControl('', {\n nonNullable: true,\n validators: [Validators.required, Validators.email],\n }),\n Password: new FormControl('', {\n nonNullable: true,\n validators: [Validators.required, Validators.minLength(8)],\n }),\n PhoneNumber: new FormControl('', { nonNullable: true }),\n OtherName: new FormControl('', { nonNullable: true }),\n Role: new FormControl<Role>(\n {\n Name: '',\n Description: '',\n Application: '',\n RoleContexts: [],\n APIKey: '',\n Id: '',\n id: '',\n ServiceName: '',\n CreatedAt: new Date(),\n UpdatedAt: new Date(),\n DataState: ObjectState.New,\n TenantId: '',\n Code: '',\n },\n { nonNullable: true },\n ),\n Tags: new FormControl<[]>([], { nonNullable: true }),\n Status: new FormControl<Status>(Status.Active, { nonNullable: true }),\n RequestStatus: new FormControl<RequestStatus>(RequestStatus.Pending, {\n nonNullable: true,\n }),\n UpdatedAt: new FormControl(new Date(), { nonNullable: true }),\n CreatedAt: new FormControl(new Date(), { nonNullable: true }),\n Id: new FormControl('', { nonNullable: true }),\n DataState: new FormControl<ObjectState>(ObjectState.New, {\n nonNullable: true,\n }),\n TenantId: new FormControl('', { nonNullable: true }),\n Token: new FormControl('', { nonNullable: true }),\n SignUpType: new FormControl(MechanismType.InApp, { nonNullable: true }),\n ServiceName: new FormControl('', { nonNullable: true }),\n ActionBy: new FormControl('', { nonNullable: true }),\n Comment: new FormControl('', { nonNullable: true }),\n },\n { validators: this.passwordMatchValidator },\n );\n }\n passwordMatchValidator(control: AbstractControl): ValidationErrors | null {\n const password = control.get('Password')?.value;\n const confirmPassword = control.get('ConfirmPassword')?.value;\n\n return password === confirmPassword ? null : { passwordMismatch: true };\n }\n\n get passwordMismatchError(): boolean {\n return this.userRequestForm.hasError('passwordMismatch');\n }\n\n get styles() {\n return {\n 'background-color': this.bgColor,\n 'box-shadow': this.boxShadow,\n border: this.border,\n 'border-radius': this.borderRadius,\n color: this.textColor,\n 'max-width': this.width,\n height: this.height,\n padding: this.pd,\n };\n }\n async ngOnInit() {\n await this.getTenantConfig();\n this.route.queryParams.subscribe((params) => {\n this.code = params['code'];\n this.type = params['type'];\n if (this.code) {\n this.verifyUserDetails();\n }\n });\n }\n\n async getTenantConfig() {\n this.userRequestForm.addControl(\n 'ConfirmPassword',\n new FormControl('', Validators.required),\n );\n const isLocalhost = window?.location?.hostname === 'localhost';\n const payload = isLocalhost\n ? {\n Key: 'UrlKey',\n Value: 'https://bovas.white360.net',\n }\n : undefined;\n const res = await this.server.post(`GetTenantConfigByUrlKey`, payload);\n this.tenantDetails = res;\n this.tenant = this.tenantDetails.TenantId;\n\n this.AuthMechanisms = this.tenantDetails?.AuthMechanisms?.filter(\n (m: AuthMechanism) => m.UserAgent === UserAgentType.Web,\n );\n if (\n !this.tenantDetails?.AuthMechanism &&\n this.tenantDetails?.AuthMechanism !== MechanismType.InApp\n ) {\n this.showform = false;\n } else if (this.tenantDetails?.AuthMechanism === MechanismType.InApp) {\n this.showform = true;\n } else if (this.AuthMechanisms !== null) {\n this.showform = this.AuthMechanisms.some((item) =>\n item.AuthMechanism.includes(MechanismType.InApp),\n );\n }\n }\n checkForm(): boolean {\n return this.userRequestForm.valid;\n }\n handleGoogleAuth() {\n if (this.AuthMechanisms !== null) {\n const data = this.AuthMechanisms.filter(\n (item) => item.AuthMechanism === MechanismType.Google,\n );\n this.googleClick.emit();\n }\n }\n handleAppleAuth() {\n this.appleClick.emit();\n }\n handleMicrosoft() {\n if (this.AuthMechanisms !== null) {\n const data = this.AuthMechanisms.filter(\n (item) => item.AuthMechanism === MechanismType.Microsoft,\n );\n this.microsoftClick.emit();\n }\n }\n\n async submitForm() {\n if (!this.checkForm()) {\n return;\n }\n\n const formValue = this.userRequestForm.getRawValue();\n const hashedPassword = CryptoJS.MD5(\n this.userRequestForm.controls['Password'].value,\n ).toString();\n const { ConfirmPassword, TenantId, ...rest } = formValue;\n const payload = {\n ...rest,\n TenantId: this.tenantDetails.TenantId,\n Password: hashedPassword,\n };\n\n const payloadToSubmit: UserRequestPayload[] = [payload];\n\n this.formSubmit.emit(payloadToSubmit);\n this.utilService.sendBI(true);\n\n try {\n const res = await this.server.post(\n `SaveUserAccessRequests`,\n payloadToSubmit,\n );\n\n this.utilService.sendBI(false);\n\n if (res instanceof ErrorResponse) {\n this.onSubmitResponseEnd.emit(res);\n } else {\n const result = res as ResponseKeyValue;\n this.onSubmitResponseEnd.emit(result);\n this.onSubmitSuccess.emit(result);\n }\n } catch (error) {\n this.utilService.sendBI(false);\n console.error('Unexpected error:', error);\n this.onSubmitResponseEnd.emit(error);\n }\n }\n async verifyUserDetails() {\n if (this.AuthMechanisms !== null && this.tenant) {\n const data: any = this.AuthMechanisms.find((item) =>\n item.AuthMechanism.includes(this.type),\n );\n const payload = {\n AuthCode: this.code,\n Tenant: this.tenant,\n AuthMechanism: data.AuthMechanism,\n };\n\n this.utilService.sendBI(true);\n const res: OAuthResponse = await this.server.post(\n `GetUserDetails`,\n payload,\n );\n this.utilService.sendBI(false);\n if (res instanceof ErrorResponse) {\n this.onSubmitGoogleAuth.emit(res);\n } else {\n this.userRequestForm.controls['FirstName'].setValue(res.FirstName);\n this.userRequestForm.controls['LastName'].setValue(res.LastName);\n this.userRequestForm.controls['MailAddress'].setValue(res.Email);\n this.userRequestForm.controls['Token'].setValue(res.AccessToken);\n this.userRequestForm.controls['SignUpType'].setValue(this.type);\n this.userRequestForm.controls['Password'].clearValidators();\n this.userRequestForm.controls['Password'].updateValueAndValidity();\n this.userRequestForm.controls['ConfirmPassword'].clearValidators();\n this.userRequestForm.controls[\n 'ConfirmPassword'\n ].updateValueAndValidity();\n this.hidePassword = true;\n }\n }\n }\n}\n","<section [ngStyle]=\"styles\" class=\"{{ customClass }}\">\n <h2 class=\"{{ headingClass }}\">\n {{ headingTitle }}\n </h2>\n\n <form\n [formGroup]=\"userRequestForm\"\n (ngSubmit)=\"submitForm()\"\n class=\"flex flex-col gap-5 mt-3\"\n >\n <verbena-input\n [label]=\"'First Name'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [required]=\"true\"\n [type]=\"'text'\"\n formControlName=\"FirstName\"\n [showBorder]=\"true\"\n [bgColor]=\"'white'\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [errorMessageColor]=\"'red'\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n <verbena-input\n [label]=\"'Last Name'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [required]=\"true\"\n [type]=\"'text'\"\n formControlName=\"LastName\"\n [showBorder]=\"true\"\n [bgColor]=\"'white'\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [errorMessageColor]=\"'red'\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n <verbena-input\n [label]=\"'E-mail Address'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [required]=\"true\"\n [type]=\"'email'\"\n formControlName=\"MailAddress\"\n [showBorder]=\"true\"\n [bgColor]=\"'white'\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [customErrorMessages]=\"{\n required: 'Email address is required',\n email: 'Email address must be valid'\n }\"\n [errorMessageColor]=\"'red'\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n\n <verbena-input\n *ngIf=\"!hidePassword\"\n [label]=\"'Password'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [passwordToggle]=\"true\"\n formControlName=\"Password\"\n [required]=\"true\"\n [type]=\"'password'\"\n [showBorder]=\"true\"\n [bgColor]=\"'white'\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [errorMessageColor]=\"'red'\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n\n <verbena-input\n *ngIf=\"!hidePassword\"\n [label]=\"'Confirm Password'\"\n [labelColor]=\"'#666'\"\n [placeHolder]=\"''\"\n [required]=\"true\"\n [type]=\"'password'\"\n formControlName=\"ConfirmPassword\"\n [showBorder]=\"true\"\n [passwordToggle]=\"true\"\n [bgColor]=\"'white'\"\n [minLength]=\"userRequestForm.controls['Password'].value?.length\"\n [border]=\"'1px solid #66666659'\"\n [borderRadius]=\"'12px'\"\n [showErrorMessage]=\"true\"\n [errorMessageColor]=\"'red'\"\n [customErrorMessages]=\"{\n minLength:'Confirm Password must match password',\n required: 'Confirm Password is required and must match password',\n password: 'Password does not match',\n }\"\n [errorBorderColor]=\"'red'\"\n [errorPosition]=\"'bottom'\"\n class=\"outline-none focus-none\"\n ></verbena-input>\n\n <verbena-button\n [class]=\"'mt-6'\"\n [disable]=\"!this.checkForm()\"\n [text]=\"text\"\n [bgColor]=\"btnBgColor\"\n [textColor]=\"color\"\n [buttonClass]=\"'cursor-not-allowed'\"\n [border]=\"btnBorder\"\n [borderRadius]=\"btnBorderRadius\"\n [pd]=\"btnPd\"\n [ngClass]=\"{\n 'cursor-not-allowed':!checkForm()\n }\"\n [width]=\"btnWidth\"\n buttonClass=\"font-medium text-[22px] leading-[33px]\"\n ></verbena-button>\n </form>\n\n <div class=\"mt-2\" *ngIf=\"AuthMechanisms !== null\"> \n <verben-o-auth \n [authMechanisms]=\"AuthMechanisms\"\n ></verben-o-auth>\n </div>\n</section>\n\n","import { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { VerbenaButtonModule, VerbenaInputModule } from 'verben-ng-ui';\nimport { CommonModule } from '@angular/common';\nimport { UserRequestComponent } from './user-request.component';\nimport { OAuthModule } from 'verben-authentication-ui/src/lib/components/o-auth';\n\n@NgModule({\n declarations: [UserRequestComponent],\n imports: [\n FormsModule,\n ReactiveFormsModule,\n VerbenaInputModule,\n VerbenaButtonModule,\n CommonModule,\n OAuthModule,\n ],\n exports: [UserRequestComponent],\n})\nexport class UserRequestModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "verben-authentication-ui",
3
- "version": "1.0.28",
3
+ "version": "1.0.30",
4
4
  "peerDependencies": {
5
5
  "@angular/cdk": "^18.2.0",
6
6
  "@angular/common": "^14.0.0 || ^18.0.0",
@@ -71,18 +71,18 @@
71
71
  "esm": "./esm2022/src/lib/components/button/verben-authentication-ui-src-lib-components-button.mjs",
72
72
  "default": "./fesm2022/verben-authentication-ui-src-lib-components-button.mjs"
73
73
  },
74
- "./src/lib/components/forgot-password": {
75
- "types": "./src/lib/components/forgot-password/index.d.ts",
76
- "esm2022": "./esm2022/src/lib/components/forgot-password/verben-authentication-ui-src-lib-components-forgot-password.mjs",
77
- "esm": "./esm2022/src/lib/components/forgot-password/verben-authentication-ui-src-lib-components-forgot-password.mjs",
78
- "default": "./fesm2022/verben-authentication-ui-src-lib-components-forgot-password.mjs"
79
- },
80
74
  "./src/lib/components/mail": {
81
75
  "types": "./src/lib/components/mail/index.d.ts",
82
76
  "esm2022": "./esm2022/src/lib/components/mail/verben-authentication-ui-src-lib-components-mail.mjs",
83
77
  "esm": "./esm2022/src/lib/components/mail/verben-authentication-ui-src-lib-components-mail.mjs",
84
78
  "default": "./fesm2022/verben-authentication-ui-src-lib-components-mail.mjs"
85
79
  },
80
+ "./src/lib/components/forgot-password": {
81
+ "types": "./src/lib/components/forgot-password/index.d.ts",
82
+ "esm2022": "./esm2022/src/lib/components/forgot-password/verben-authentication-ui-src-lib-components-forgot-password.mjs",
83
+ "esm": "./esm2022/src/lib/components/forgot-password/verben-authentication-ui-src-lib-components-forgot-password.mjs",
84
+ "default": "./fesm2022/verben-authentication-ui-src-lib-components-forgot-password.mjs"
85
+ },
86
86
  "./src/lib/components/mail-validation": {
87
87
  "types": "./src/lib/components/mail-validation/index.d.ts",
88
88
  "esm2022": "./esm2022/src/lib/components/mail-validation/verben-authentication-ui-src-lib-components-mail-validation.mjs",
@@ -101,6 +101,12 @@
101
101
  "esm": "./esm2022/src/lib/components/otp-input/verben-authentication-ui-src-lib-components-otp-input.mjs",
102
102
  "default": "./fesm2022/verben-authentication-ui-src-lib-components-otp-input.mjs"
103
103
  },
104
+ "./src/lib/components/role-control": {
105
+ "types": "./src/lib/components/role-control/index.d.ts",
106
+ "esm2022": "./esm2022/src/lib/components/role-control/verben-authentication-ui-src-lib-components-role-control.mjs",
107
+ "esm": "./esm2022/src/lib/components/role-control/verben-authentication-ui-src-lib-components-role-control.mjs",
108
+ "default": "./fesm2022/verben-authentication-ui-src-lib-components-role-control.mjs"
109
+ },
104
110
  "./src/lib/components/reset-password": {
105
111
  "types": "./src/lib/components/reset-password/index.d.ts",
106
112
  "esm2022": "./esm2022/src/lib/components/reset-password/verben-authentication-ui-src-lib-components-reset-password.mjs",
@@ -113,11 +119,11 @@
113
119
  "esm": "./esm2022/src/lib/components/sign-in/verben-authentication-ui-src-lib-components-sign-in.mjs",
114
120
  "default": "./fesm2022/verben-authentication-ui-src-lib-components-sign-in.mjs"
115
121
  },
116
- "./src/lib/components/role-control": {
117
- "types": "./src/lib/components/role-control/index.d.ts",
118
- "esm2022": "./esm2022/src/lib/components/role-control/verben-authentication-ui-src-lib-components-role-control.mjs",
119
- "esm": "./esm2022/src/lib/components/role-control/verben-authentication-ui-src-lib-components-role-control.mjs",
120
- "default": "./fesm2022/verben-authentication-ui-src-lib-components-role-control.mjs"
122
+ "./src/lib/components/sso": {
123
+ "types": "./src/lib/components/sso/index.d.ts",
124
+ "esm2022": "./esm2022/src/lib/components/sso/verben-authentication-ui-src-lib-components-sso.mjs",
125
+ "esm": "./esm2022/src/lib/components/sso/verben-authentication-ui-src-lib-components-sso.mjs",
126
+ "default": "./fesm2022/verben-authentication-ui-src-lib-components-sso.mjs"
121
127
  },
122
128
  "./src/lib/components/sign-up": {
123
129
  "types": "./src/lib/components/sign-up/index.d.ts",
@@ -125,24 +131,12 @@
125
131
  "esm": "./esm2022/src/lib/components/sign-up/verben-authentication-ui-src-lib-components-sign-up.mjs",
126
132
  "default": "./fesm2022/verben-authentication-ui-src-lib-components-sign-up.mjs"
127
133
  },
128
- "./src/lib/components/sso": {
129
- "types": "./src/lib/components/sso/index.d.ts",
130
- "esm2022": "./esm2022/src/lib/components/sso/verben-authentication-ui-src-lib-components-sso.mjs",
131
- "esm": "./esm2022/src/lib/components/sso/verben-authentication-ui-src-lib-components-sso.mjs",
132
- "default": "./fesm2022/verben-authentication-ui-src-lib-components-sso.mjs"
133
- },
134
134
  "./src/lib/components/two-factor-auth-otp": {
135
135
  "types": "./src/lib/components/two-factor-auth-otp/index.d.ts",
136
136
  "esm2022": "./esm2022/src/lib/components/two-factor-auth-otp/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs",
137
137
  "esm": "./esm2022/src/lib/components/two-factor-auth-otp/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs",
138
138
  "default": "./fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-otp.mjs"
139
139
  },
140
- "./src/lib/components/two-factor-auth-setup": {
141
- "types": "./src/lib/components/two-factor-auth-setup/index.d.ts",
142
- "esm2022": "./esm2022/src/lib/components/two-factor-auth-setup/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs",
143
- "esm": "./esm2022/src/lib/components/two-factor-auth-setup/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs",
144
- "default": "./fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs"
145
- },
146
140
  "./src/lib/components/user-management": {
147
141
  "types": "./src/lib/components/user-management/index.d.ts",
148
142
  "esm2022": "./esm2022/src/lib/components/user-management/verben-authentication-ui-src-lib-components-user-management.mjs",
@@ -155,17 +149,23 @@
155
149
  "esm": "./esm2022/src/lib/components/user-request/verben-authentication-ui-src-lib-components-user-request.mjs",
156
150
  "default": "./fesm2022/verben-authentication-ui-src-lib-components-user-request.mjs"
157
151
  },
158
- "./src/lib/components/user-request-approval": {
159
- "types": "./src/lib/components/user-request-approval/index.d.ts",
160
- "esm2022": "./esm2022/src/lib/components/user-request-approval/verben-authentication-ui-src-lib-components-user-request-approval.mjs",
161
- "esm": "./esm2022/src/lib/components/user-request-approval/verben-authentication-ui-src-lib-components-user-request-approval.mjs",
162
- "default": "./fesm2022/verben-authentication-ui-src-lib-components-user-request-approval.mjs"
152
+ "./src/lib/components/two-factor-auth-setup": {
153
+ "types": "./src/lib/components/two-factor-auth-setup/index.d.ts",
154
+ "esm2022": "./esm2022/src/lib/components/two-factor-auth-setup/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs",
155
+ "esm": "./esm2022/src/lib/components/two-factor-auth-setup/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs",
156
+ "default": "./fesm2022/verben-authentication-ui-src-lib-components-two-factor-auth-setup.mjs"
163
157
  },
164
158
  "./src/lib/components/user-request-process": {
165
159
  "types": "./src/lib/components/user-request-process/index.d.ts",
166
160
  "esm2022": "./esm2022/src/lib/components/user-request-process/verben-authentication-ui-src-lib-components-user-request-process.mjs",
167
161
  "esm": "./esm2022/src/lib/components/user-request-process/verben-authentication-ui-src-lib-components-user-request-process.mjs",
168
162
  "default": "./fesm2022/verben-authentication-ui-src-lib-components-user-request-process.mjs"
163
+ },
164
+ "./src/lib/components/user-request-approval": {
165
+ "types": "./src/lib/components/user-request-approval/index.d.ts",
166
+ "esm2022": "./esm2022/src/lib/components/user-request-approval/verben-authentication-ui-src-lib-components-user-request-approval.mjs",
167
+ "esm": "./esm2022/src/lib/components/user-request-approval/verben-authentication-ui-src-lib-components-user-request-approval.mjs",
168
+ "default": "./fesm2022/verben-authentication-ui-src-lib-components-user-request-approval.mjs"
169
169
  }
170
170
  }
171
171
  }
@@ -25,7 +25,7 @@ export declare class UserManagementService {
25
25
  * @returns Promise containing the filtered list of users
26
26
  */
27
27
  getUsersWithParam(param: string, skip: number, limit: number, sortParam: string, sortOrder: string): Promise<User[]>;
28
- getRealUsers(role: string | null, skip: number, limit: number, sortParam: string, sortOrder: string): Promise<PagedResult<User> | ErrorResponse>;
28
+ getRealUsers(role: string | null, skip: number, limit: number, sortParam: string, sortOrder: string): Promise<ErrorResponse | PagedResult<User>>;
29
29
  /**
30
30
  * Save multiple users
31
31
  * @param users Array of users to save