@abp/ng.account 7.2.2 → 7.3.0-rc.2

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 (99) hide show
  1. package/README.md +128 -2
  2. package/config/account-config.module.d.ts +8 -8
  3. package/config/enums/index.d.ts +1 -1
  4. package/config/enums/route-names.d.ts +8 -8
  5. package/config/index.d.ts +5 -5
  6. package/config/providers/index.d.ts +1 -1
  7. package/config/providers/route.provider.d.ts +8 -8
  8. package/config/public-api.d.ts +3 -3
  9. package/config/utils/factories.d.ts +2 -2
  10. package/{esm2020 → esm2022}/abp-ng.account.mjs +4 -4
  11. package/{esm2020 → esm2022}/config/abp-ng.account-config.mjs +4 -4
  12. package/esm2022/config/account-config.module.mjs +28 -0
  13. package/{esm2020 → esm2022}/config/enums/index.mjs +1 -1
  14. package/{esm2020 → esm2022}/config/enums/route-names.mjs +1 -1
  15. package/{esm2020 → esm2022}/config/providers/index.mjs +1 -1
  16. package/{esm2020 → esm2022}/config/providers/route.provider.mjs +49 -49
  17. package/{esm2020 → esm2022}/config/public-api.mjs +3 -3
  18. package/{esm2020 → esm2022}/config/utils/factories.mjs +10 -10
  19. package/esm2022/lib/account-routing.module.mjs +91 -0
  20. package/esm2022/lib/account.module.mjs +104 -0
  21. package/esm2022/lib/components/change-password/change-password.component.mjs +88 -0
  22. package/esm2022/lib/components/forgot-password/forgot-password.component.mjs +44 -0
  23. package/{esm2020 → esm2022}/lib/components/index.mjs +8 -8
  24. package/esm2022/lib/components/login/login.component.mjs +65 -0
  25. package/esm2022/lib/components/manage-profile/manage-profile.component.mjs +40 -0
  26. package/{esm2020 → esm2022}/lib/components/personal-settings/personal-settings-half-row.component.mjs +27 -26
  27. package/esm2022/lib/components/personal-settings/personal-settings.component.mjs +90 -0
  28. package/{esm2020 → esm2022}/lib/components/register/register.component.mjs +84 -83
  29. package/esm2022/lib/components/reset-password/reset-password.component.mjs +69 -0
  30. package/{esm2020 → esm2022}/lib/defaults/default-personal-settings-form-props.mjs +45 -45
  31. package/{esm2020 → esm2022}/lib/enums/components.mjs +1 -1
  32. package/{esm2020 → esm2022}/lib/enums/index.mjs +1 -1
  33. package/esm2022/lib/guards/authentication-flow.guard.mjs +21 -0
  34. package/esm2022/lib/guards/extensions.guard.mjs +28 -0
  35. package/{esm2020 → esm2022}/lib/guards/index.mjs +2 -2
  36. package/{esm2020 → esm2022}/lib/models/account.mjs +2 -2
  37. package/{esm2020 → esm2022}/lib/models/config-options.mjs +1 -1
  38. package/{esm2020 → esm2022}/lib/models/index.mjs +2 -2
  39. package/{esm2020 → esm2022}/lib/services/index.mjs +1 -1
  40. package/esm2022/lib/services/manage-profile.state.service.mjs +28 -0
  41. package/{esm2020 → esm2022}/lib/tokens/config-options.token.mjs +2 -2
  42. package/{esm2020 → esm2022}/lib/tokens/extensions.token.mjs +6 -6
  43. package/{esm2020 → esm2022}/lib/tokens/index.mjs +3 -3
  44. package/{esm2020 → esm2022}/lib/tokens/re-login-confirmation.token.mjs +2 -2
  45. package/{esm2020 → esm2022}/lib/utils/auth-utils.mjs +7 -7
  46. package/{esm2020 → esm2022}/lib/utils/factory-utils.mjs +6 -6
  47. package/{esm2020 → esm2022}/public-api.mjs +7 -7
  48. package/{fesm2015 → fesm2022}/abp-ng.account-config.mjs +75 -75
  49. package/{fesm2020 → fesm2022}/abp-ng.account-config.mjs.map +1 -1
  50. package/{fesm2020 → fesm2022}/abp-ng.account.mjs +646 -645
  51. package/fesm2022/abp-ng.account.mjs.map +1 -0
  52. package/index.d.ts +5 -5
  53. package/lib/account-routing.module.d.ts +7 -7
  54. package/lib/account.module.d.ts +24 -24
  55. package/lib/components/change-password/change-password.component.d.ts +24 -24
  56. package/lib/components/forgot-password/forgot-password.component.d.ts +14 -14
  57. package/lib/components/index.d.ts +8 -8
  58. package/lib/components/login/login.component.d.ts +24 -24
  59. package/lib/components/manage-profile/manage-profile.component.d.ts +18 -18
  60. package/lib/components/personal-settings/personal-settings-half-row.component.d.ts +13 -13
  61. package/lib/components/personal-settings/personal-settings.component.d.ts +30 -30
  62. package/lib/components/register/register.component.d.ts +26 -26
  63. package/lib/components/reset-password/reset-password.component.d.ts +22 -22
  64. package/lib/defaults/default-personal-settings-form-props.d.ts +3 -3
  65. package/lib/enums/components.d.ts +11 -11
  66. package/lib/enums/index.d.ts +1 -1
  67. package/lib/guards/authentication-flow.guard.d.ts +8 -10
  68. package/lib/guards/extensions.guard.d.ts +11 -11
  69. package/lib/guards/index.d.ts +2 -2
  70. package/lib/models/account.d.ts +14 -14
  71. package/lib/models/config-options.d.ts +11 -11
  72. package/lib/models/index.d.ts +2 -2
  73. package/lib/services/index.d.ts +1 -1
  74. package/lib/services/manage-profile.state.service.d.ts +29 -29
  75. package/lib/tokens/config-options.token.d.ts +3 -3
  76. package/lib/tokens/extensions.token.d.ts +9 -9
  77. package/lib/tokens/index.d.ts +3 -3
  78. package/lib/tokens/re-login-confirmation.token.d.ts +2 -2
  79. package/lib/utils/auth-utils.d.ts +2 -2
  80. package/lib/utils/factory-utils.d.ts +8 -8
  81. package/package.json +25 -19
  82. package/public-api.d.ts +7 -7
  83. package/esm2020/config/account-config.module.mjs +0 -27
  84. package/esm2020/lib/account-routing.module.mjs +0 -90
  85. package/esm2020/lib/account.module.mjs +0 -103
  86. package/esm2020/lib/components/change-password/change-password.component.mjs +0 -87
  87. package/esm2020/lib/components/forgot-password/forgot-password.component.mjs +0 -43
  88. package/esm2020/lib/components/login/login.component.mjs +0 -64
  89. package/esm2020/lib/components/manage-profile/manage-profile.component.mjs +0 -39
  90. package/esm2020/lib/components/personal-settings/personal-settings.component.mjs +0 -89
  91. package/esm2020/lib/components/reset-password/reset-password.component.mjs +0 -68
  92. package/esm2020/lib/guards/authentication-flow.guard.mjs +0 -21
  93. package/esm2020/lib/guards/extensions.guard.mjs +0 -27
  94. package/esm2020/lib/services/manage-profile.state.service.mjs +0 -27
  95. package/fesm2015/abp-ng.account-config.mjs.map +0 -1
  96. package/fesm2015/abp-ng.account.mjs +0 -726
  97. package/fesm2015/abp-ng.account.mjs.map +0 -1
  98. package/fesm2020/abp-ng.account-config.mjs +0 -90
  99. package/fesm2020/abp-ng.account.mjs.map +0 -1
@@ -0,0 +1,90 @@
1
+ import { ProfileService } from '@abp/ng.account.core/proxy';
2
+ import { Confirmation, ConfirmationService, ToasterService } from '@abp/ng.theme.shared';
3
+ import { Component, Inject, Injector } from '@angular/core';
4
+ import { UntypedFormBuilder } from '@angular/forms';
5
+ import { finalize, filter } from 'rxjs/operators';
6
+ import { ManageProfileStateService } from '../../services/manage-profile.state.service';
7
+ import { AuthService } from '@abp/ng.core';
8
+ import { RE_LOGIN_CONFIRMATION_TOKEN } from '../../tokens';
9
+ import { EXTENSIONS_IDENTIFIER, FormPropData, generateFormFromProps, } from '@abp/ng.theme.shared/extensions';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@angular/forms";
12
+ import * as i2 from "@abp/ng.theme.shared";
13
+ import * as i3 from "@abp/ng.account.core/proxy";
14
+ import * as i4 from "../../services/manage-profile.state.service";
15
+ import * as i5 from "@abp/ng.core";
16
+ import * as i6 from "@angular/common";
17
+ import * as i7 from "@ngx-validate/core";
18
+ import * as i8 from "@abp/ng.theme.shared/extensions";
19
+ class PersonalSettingsComponent {
20
+ constructor(fb, toasterService, profileService, manageProfileState, authService, confirmationService, isPersonalSettingsChangedConfirmationActive, injector) {
21
+ this.fb = fb;
22
+ this.toasterService = toasterService;
23
+ this.profileService = profileService;
24
+ this.manageProfileState = manageProfileState;
25
+ this.authService = authService;
26
+ this.confirmationService = confirmationService;
27
+ this.isPersonalSettingsChangedConfirmationActive = isPersonalSettingsChangedConfirmationActive;
28
+ this.injector = injector;
29
+ this.logoutConfirmation = () => {
30
+ this.authService.logout().subscribe();
31
+ };
32
+ }
33
+ buildForm() {
34
+ this.selected = this.manageProfileState.getProfile();
35
+ if (!this.selected) {
36
+ return;
37
+ }
38
+ const data = new FormPropData(this.injector, this.selected);
39
+ this.form = generateFormFromProps(data);
40
+ }
41
+ ngOnInit() {
42
+ this.buildForm();
43
+ }
44
+ submit() {
45
+ if (this.form.invalid)
46
+ return;
47
+ const isLogOutConfirmMessageVisible = this.isLogoutConfirmMessageActive();
48
+ this.inProgress = true;
49
+ this.profileService
50
+ .update(this.form.value)
51
+ .pipe(finalize(() => (this.inProgress = false)))
52
+ .subscribe(profile => {
53
+ this.manageProfileState.setProfile(profile);
54
+ this.toasterService.success('AbpAccount::PersonalSettingsSaved', 'Success', { life: 5000 });
55
+ if (isLogOutConfirmMessageVisible) {
56
+ this.showLogoutConfirmMessage();
57
+ }
58
+ });
59
+ }
60
+ isLogoutConfirmMessageActive() {
61
+ return this.isPersonalSettingsChangedConfirmationActive;
62
+ }
63
+ showLogoutConfirmMessage() {
64
+ this.confirmationService
65
+ .info('AbpAccount::PersonalSettingsChangedConfirmationModalDescription', 'AbpAccount::PersonalSettingsChangedConfirmationModalTitle')
66
+ .pipe(filter(status => status === Confirmation.Status.confirm))
67
+ .subscribe(this.logoutConfirmation);
68
+ }
69
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: PersonalSettingsComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.ToasterService }, { token: i3.ProfileService }, { token: i4.ManageProfileStateService }, { token: i5.AuthService }, { token: i2.ConfirmationService }, { token: RE_LOGIN_CONFIRMATION_TOKEN }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
70
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: PersonalSettingsComponent, selector: "abp-personal-settings-form", providers: [
71
+ {
72
+ provide: EXTENSIONS_IDENTIFIER,
73
+ useValue: "Account.PersonalSettingsComponent" /* eAccountComponents.PersonalSettings */,
74
+ },
75
+ ], exportAs: ["abpPersonalSettingsForm"], ngImport: i0, template: "<form [formGroup]=\"form\" *ngIf=\"form\" (ngSubmit)=\"submit()\" validateOnSubmit>\r\n <abp-extensible-form [selectedRecord]=\"selected\"></abp-extensible-form>\r\n\r\n <abp-button\r\n buttonType=\"submit\"\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n [loading]=\"inProgress\"\r\n >\r\n {{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "component", type: i2.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "component", type: i8.ExtensibleFormComponent, selector: "abp-extensible-form", inputs: ["selectedRecord"], exportAs: ["abpExtensibleForm"] }, { kind: "pipe", type: i5.LocalizationPipe, name: "abpLocalization" }] }); }
76
+ }
77
+ export { PersonalSettingsComponent };
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: PersonalSettingsComponent, decorators: [{
79
+ type: Component,
80
+ args: [{ selector: 'abp-personal-settings-form', exportAs: 'abpPersonalSettingsForm', providers: [
81
+ {
82
+ provide: EXTENSIONS_IDENTIFIER,
83
+ useValue: "Account.PersonalSettingsComponent" /* eAccountComponents.PersonalSettings */,
84
+ },
85
+ ], template: "<form [formGroup]=\"form\" *ngIf=\"form\" (ngSubmit)=\"submit()\" validateOnSubmit>\r\n <abp-extensible-form [selectedRecord]=\"selected\"></abp-extensible-form>\r\n\r\n <abp-button\r\n buttonType=\"submit\"\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n [loading]=\"inProgress\"\r\n >\r\n {{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\r\n</form>\r\n" }]
86
+ }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.ToasterService }, { type: i3.ProfileService }, { type: i4.ManageProfileStateService }, { type: i5.AuthService }, { type: i2.ConfirmationService }, { type: undefined, decorators: [{
87
+ type: Inject,
88
+ args: [RE_LOGIN_CONFIRMATION_TOKEN]
89
+ }] }, { type: i0.Injector }]; } });
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUE2QixNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMzRCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLFlBQVksRUFDWixxQkFBcUIsR0FDdEIsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7OztBQUd6QyxNQVdhLHlCQUF5QjtJQVlwQyxZQUNVLEVBQXNCLEVBQ3RCLGNBQThCLEVBQzlCLGNBQThCLEVBQzlCLGtCQUE2QyxFQUNwQyxXQUF3QixFQUNqQyxtQkFBd0MsRUFFeEMs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QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2ZpbGVEdG8sIFByb2ZpbGVTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5hY2NvdW50LmNvcmUvcHJveHknO1xyXG5pbXBvcnQgeyBDb25maXJtYXRpb24sIENvbmZpcm1hdGlvblNlcnZpY2UsIFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5qZWN0b3IsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBY2NvdW50IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjY291bnQnO1xyXG5pbXBvcnQgeyBNYW5hZ2VQcm9maWxlU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWFuYWdlLXByb2ZpbGUuc3RhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgUkVfTE9HSU5fQ09ORklSTUFUSU9OX1RPS0VOIH0gZnJvbSAnLi4vLi4vdG9rZW5zJztcclxuaW1wb3J0IHtcclxuICBFWFRFTlNJT05TX0lERU5USUZJRVIsXHJcbiAgRm9ybVByb3BEYXRhLFxyXG4gIGdlbmVyYXRlRm9ybUZyb21Qcm9wcyxcclxufSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgZUFjY291bnRDb21wb25lbnRzIH0gZnJvbSAnLi4vLi4vZW51bXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtcGVyc29uYWwtc2V0dGluZ3MtZm9ybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BlcnNvbmFsLXNldHRpbmdzLmNvbXBvbmVudC5odG1sJyxcclxuICBleHBvcnRBczogJ2FicFBlcnNvbmFsU2V0dGluZ3NGb3JtJyxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogRVhURU5TSU9OU19JREVOVElGSUVSLFxyXG4gICAgICB1c2VWYWx1ZTogZUFjY291bnRDb21wb25lbnRzLlBlcnNvbmFsU2V0dGluZ3MsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZXJzb25hbFNldHRpbmdzQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50c1xyXG4gICAgT25Jbml0LFxyXG4gICAgQWNjb3VudC5QZXJzb25hbFNldHRpbmdzQ29tcG9uZW50SW5wdXRzLFxyXG4gICAgQWNjb3VudC5QZXJzb25hbFNldHRpbmdzQ29tcG9uZW50T3V0cHV0c1xyXG57XHJcbiAgc2VsZWN0ZWQ/OiBQcm9maWxlRHRvO1xyXG5cclxuICBmb3JtITogVW50eXBlZEZvcm1Hcm91cDtcclxuXHJcbiAgaW5Qcm9ncmVzcz86IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBmYjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSB0b2FzdGVyU2VydmljZTogVG9hc3RlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHByb2ZpbGVTZXJ2aWNlOiBQcm9maWxlU2VydmljZSxcclxuICAgIHByaXZhdGUgbWFuYWdlUHJvZmlsZVN0YXRlOiBNYW5hZ2VQcm9maWxlU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsXHJcbiAgICBASW5qZWN0KFJFX0xPR0lOX0NPTkZJUk1BVElPTl9UT0tFTilcclxuICAgIHByaXZhdGUgaXNQZXJzb25hbFNldHRpbmdzQ2hhbmdlZENvbmZpcm1hdGlvbkFjdGl2ZTogYm9vbGVhbixcclxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgKSB7fVxyXG5cclxuICBidWlsZEZvcm0oKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkID0gdGhpcy5tYW5hZ2VQcm9maWxlU3RhdGUuZ2V0UHJvZmlsZSgpO1xyXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IGRhdGEgPSBuZXcgRm9ybVByb3BEYXRhKHRoaXMuaW5qZWN0b3IsIHRoaXMuc2VsZWN0ZWQpO1xyXG4gICAgdGhpcy5mb3JtID0gZ2VuZXJhdGVGb3JtRnJvbVByb3BzKGRhdGEpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xyXG4gIH1cclxuXHJcbiAgc3VibWl0KCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSByZXR1cm47XHJcbiAgICBjb25zdCBpc0xvZ091dENvbmZpcm1NZXNzYWdlVmlzaWJsZSA9IHRoaXMuaXNMb2dvdXRDb25maXJtTWVzc2FnZUFjdGl2ZSgpO1xyXG4gICAgdGhpcy5pblByb2dyZXNzID0gdHJ1ZTtcclxuICAgIHRoaXMucHJvZmlsZVNlcnZpY2VcclxuICAgICAgLnVwZGF0ZSh0aGlzLmZvcm0udmFsdWUpXHJcbiAgICAgIC5waXBlKGZpbmFsaXplKCgpID0+ICh0aGlzLmluUHJvZ3Jlc3MgPSBmYWxzZSkpKVxyXG4gICAgICAuc3Vic2NyaWJlKHByb2ZpbGUgPT4ge1xyXG4gICAgICAgIHRoaXMubWFuYWdlUHJvZmlsZVN0YXRlLnNldFByb2ZpbGUocHJvZmlsZSk7XHJcbiAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5zdWNjZXNzKCdBYnBBY2NvdW50OjpQZXJzb25hbFNldHRpbmdzU2F2ZWQnLCAnU3VjY2VzcycsIHsgbGlmZTogNTAwMCB9KTtcclxuICAgICAgICBpZiAoaXNMb2dPdXRDb25maXJtTWVzc2FnZVZpc2libGUpIHtcclxuICAgICAgICAgIHRoaXMuc2hvd0xvZ291dENvbmZpcm1NZXNzYWdlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGxvZ291dENvbmZpcm1hdGlvbiA9ICgpID0+IHtcclxuICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nb3V0KCkuc3Vic2NyaWJlKCk7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSBpc0xvZ291dENvbmZpcm1NZXNzYWdlQWN0aXZlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuaXNQZXJzb25hbFNldHRpbmdzQ2hhbmdlZENvbmZpcm1hdGlvbkFjdGl2ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2hvd0xvZ291dENvbmZpcm1NZXNzYWdlKCkge1xyXG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlXHJcbiAgICAgIC5pbmZvKFxyXG4gICAgICAgICdBYnBBY2NvdW50OjpQZXJzb25hbFNldHRpbmdzQ2hhbmdlZENvbmZpcm1hdGlvbk1vZGFsRGVzY3JpcHRpb24nLFxyXG4gICAgICAgICdBYnBBY2NvdW50OjpQZXJzb25hbFNldHRpbmdzQ2hhbmdlZENvbmZpcm1hdGlvbk1vZGFsVGl0bGUnLFxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKGZpbHRlcihzdGF0dXMgPT4gc3RhdHVzID09PSBDb25maXJtYXRpb24uU3RhdHVzLmNvbmZpcm0pKVxyXG4gICAgICAuc3Vic2NyaWJlKHRoaXMubG9nb3V0Q29uZmlybWF0aW9uKTtcclxuICB9XHJcbn1cclxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgICAqbmdJZj1cImZvcm1cIiAgKG5nU3VibWl0KT1cInN1Ym1pdCgpXCIgdmFsaWRhdGVPblN1Ym1pdD5cclxuICA8YWJwLWV4dGVuc2libGUtZm9ybSBbc2VsZWN0ZWRSZWNvcmRdPVwic2VsZWN0ZWRcIj48L2FicC1leHRlbnNpYmxlLWZvcm0+XHJcblxyXG4gIDxhYnAtYnV0dG9uXHJcbiAgICBidXR0b25UeXBlPVwic3VibWl0XCJcclxuICAgIGljb25DbGFzcz1cImZhIGZhLWNoZWNrXCJcclxuICAgIGJ1dHRvbkNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGNvbG9yLXdoaXRlXCJcclxuICAgIFtsb2FkaW5nXT1cImluUHJvZ3Jlc3NcIlxyXG4gID5cclxuICAgIHt7ICdBYnBJZGVudGl0eTo6U2F2ZScgfCBhYnBMb2NhbGl6YXRpb24gfX08L2FicC1idXR0b25cclxuICA+XHJcbjwvZm9ybT5cclxuIl19
@@ -1,83 +1,84 @@
1
- import { AccountService } from '@abp/ng.account.core/proxy';
2
- import { AuthService, ConfigStateService } from '@abp/ng.core';
3
- import { getPasswordValidators, ToasterService } from '@abp/ng.theme.shared';
4
- import { Component, Injector } from '@angular/core';
5
- import { UntypedFormBuilder, Validators } from '@angular/forms';
6
- import { throwError } from 'rxjs';
7
- import { catchError, finalize, switchMap } from 'rxjs/operators';
8
- import { getRedirectUrl } from '../../utils/auth-utils';
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/forms";
11
- import * as i2 from "@abp/ng.account.core/proxy";
12
- import * as i3 from "@abp/ng.core";
13
- import * as i4 from "@abp/ng.theme.shared";
14
- import * as i5 from "@angular/common";
15
- import * as i6 from "@angular/router";
16
- import * as i7 from "@ngx-validate/core";
17
- const { maxLength, required, email } = Validators;
18
- export class RegisterComponent {
19
- constructor(fb, accountService, configState, toasterService, authService, injector) {
20
- this.fb = fb;
21
- this.accountService = accountService;
22
- this.configState = configState;
23
- this.toasterService = toasterService;
24
- this.authService = authService;
25
- this.injector = injector;
26
- this.isSelfRegistrationEnabled = true;
27
- this.authWrapperKey = "Account.AuthWrapperComponent" /* eAccountComponents.AuthWrapper */;
28
- }
29
- ngOnInit() {
30
- this.init();
31
- this.buildForm();
32
- }
33
- init() {
34
- this.isSelfRegistrationEnabled =
35
- (this.configState.getSetting('Abp.Account.IsSelfRegistrationEnabled') || '').toLowerCase() !==
36
- 'false';
37
- if (!this.isSelfRegistrationEnabled) {
38
- this.toasterService.warn({
39
- key: 'AbpAccount::SelfRegistrationDisabledMessage',
40
- defaultValue: 'Self registration is disabled.',
41
- }, '', { life: 10000 });
42
- return;
43
- }
44
- }
45
- buildForm() {
46
- this.form = this.fb.group({
47
- username: ['', [required, maxLength(255)]],
48
- password: ['', [required, ...getPasswordValidators(this.injector)]],
49
- email: ['', [required, email]],
50
- });
51
- }
52
- onSubmit() {
53
- if (this.form.invalid)
54
- return;
55
- this.inProgress = true;
56
- const newUser = {
57
- userName: this.form.get('username')?.value,
58
- password: this.form.get('password')?.value,
59
- emailAddress: this.form.get('email')?.value,
60
- appName: 'Angular',
61
- };
62
- this.accountService
63
- .register(newUser)
64
- .pipe(switchMap(() => this.authService.login({
65
- username: newUser.userName,
66
- password: newUser.password,
67
- redirectUrl: getRedirectUrl(this.injector),
68
- })), catchError(err => {
69
- this.toasterService.error(err.error?.error_description ||
70
- err.error?.error.message ||
71
- 'AbpAccount::DefaultErrorMessage', '', { life: 7000 });
72
- return throwError(err);
73
- }), finalize(() => (this.inProgress = false)))
74
- .subscribe();
75
- }
76
- }
77
- RegisterComponentfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: RegisterComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.AccountService }, { token: i3.ConfigStateService }, { token: i4.ToasterService }, { token: i3.AuthService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
78
- RegisterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: RegisterComponent, selector: "abp-register", ngImport: i0, template: "<h4>{{ 'AbpAccount::Register' | abpLocalization }}</h4>\r\n<strong>\r\n {{ 'AbpAccount::AlreadyRegistered' | abpLocalization }}\r\n <a class=\"text-decoration-none\" routerLink=\"/account/login\">{{\r\n 'AbpAccount::Login' | abpLocalization\r\n }}</a>\r\n</strong>\r\n<form\r\n *ngIf=\"isSelfRegistrationEnabled\"\r\n [formGroup]=\"form\"\r\n (ngSubmit)=\"onSubmit()\"\r\n validateOnSubmit\r\n class=\"mt-4\"\r\n>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-user-name\" class=\"form-label\">{{\r\n 'AbpAccount::UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n autofocus\r\n type=\"text\"\r\n id=\"input-user-name\"\r\n class=\"form-control\"\r\n formControlName=\"username\"\r\n autocomplete=\"username\"\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-email-address\" class=\"form-label\">{{\r\n 'AbpAccount::EmailAddress' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-password\" class=\"form-label\">{{\r\n 'AbpAccount::Password' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"input-password\"\r\n class=\"form-control\"\r\n formControlName=\"password\"\r\n autocomplete=\"current-password\"\r\n />\r\n </div>\r\n <abp-button\r\n [loading]=\"inProgress\"\r\n buttonType=\"submit\"\r\n name=\"Action\"\r\n buttonClass=\"btn-block btn-lg mt-3 btn btn-primary\"\r\n >\r\n {{ 'AbpAccount::Register' | abpLocalization }}\r\n </abp-button>\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i3.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i7.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i4.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "pipe", type: i3.LocalizationPipe, name: "abpLocalization" }] });
79
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: RegisterComponent, decorators: [{
80
- type: Component,
81
- args: [{ selector: 'abp-register', template: "<h4>{{ 'AbpAccount::Register' | abpLocalization }}</h4>\r\n<strong>\r\n {{ 'AbpAccount::AlreadyRegistered' | abpLocalization }}\r\n <a class=\"text-decoration-none\" routerLink=\"/account/login\">{{\r\n 'AbpAccount::Login' | abpLocalization\r\n }}</a>\r\n</strong>\r\n<form\r\n *ngIf=\"isSelfRegistrationEnabled\"\r\n [formGroup]=\"form\"\r\n (ngSubmit)=\"onSubmit()\"\r\n validateOnSubmit\r\n class=\"mt-4\"\r\n>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-user-name\" class=\"form-label\">{{\r\n 'AbpAccount::UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n autofocus\r\n type=\"text\"\r\n id=\"input-user-name\"\r\n class=\"form-control\"\r\n formControlName=\"username\"\r\n autocomplete=\"username\"\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-email-address\" class=\"form-label\">{{\r\n 'AbpAccount::EmailAddress' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-password\" class=\"form-label\">{{\r\n 'AbpAccount::Password' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"input-password\"\r\n class=\"form-control\"\r\n formControlName=\"password\"\r\n autocomplete=\"current-password\"\r\n />\r\n </div>\r\n <abp-button\r\n [loading]=\"inProgress\"\r\n buttonType=\"submit\"\r\n name=\"Action\"\r\n buttonClass=\"btn-block btn-lg mt-3 btn btn-primary\"\r\n >\r\n {{ 'AbpAccount::Register' | abpLocalization }}\r\n </abp-button>\r\n</form>\r\n" }]
82
- }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.AccountService }, { type: i3.ConfigStateService }, { type: i4.ToasterService }, { type: i3.AuthService }, { type: i0.Injector }]; } });
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxrQkFBa0IsRUFBb0IsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7OztBQUV4RCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsR0FBRyxVQUFVLENBQUM7QUFNbEQsTUFBTSxPQUFPLGlCQUFpQjtJQVM1QixZQUNZLEVBQXNCLEVBQ3RCLGNBQThCLEVBQzlCLFdBQStCLEVBQy9CLGNBQThCLEVBQzlCLFdBQXdCLEVBQ3hCLFFBQWtCO1FBTGxCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLG1CQUFjLEdBQWQsY0FBYyxD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QUssQ0FBQyxDQUFDLENBQzFDO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7OEdBckZVLGlCQUFpQjtrR0FBakIsaUJBQWlCLG9EQ2hCOUIsNndEQXlEQTsyRkR6Q2EsaUJBQWlCO2tCQUo3QixTQUFTOytCQUNFLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY2NvdW50U2VydmljZSwgUmVnaXN0ZXJEdG8gfSBmcm9tICdAYWJwL25nLmFjY291bnQuY29yZS9wcm94eSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlLCBDb25maWdTdGF0ZVNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBnZXRQYXNzd29yZFZhbGlkYXRvcnMsIFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpbmFsaXplLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGVBY2NvdW50Q29tcG9uZW50cyB9IGZyb20gJy4uLy4uL2VudW1zL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBnZXRSZWRpcmVjdFVybCB9IGZyb20gJy4uLy4uL3V0aWxzL2F1dGgtdXRpbHMnO1xyXG5cclxuY29uc3QgeyBtYXhMZW5ndGgsIHJlcXVpcmVkLCBlbWFpbCB9ID0gVmFsaWRhdG9ycztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLXJlZ2lzdGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmVnaXN0ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVnaXN0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGZvcm0hOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBpblByb2dyZXNzPzogYm9vbGVhbjtcclxuXHJcbiAgaXNTZWxmUmVnaXN0cmF0aW9uRW5hYmxlZCA9IHRydWU7XHJcblxyXG4gIGF1dGhXcmFwcGVyS2V5ID0gZUFjY291bnRDb21wb25lbnRzLkF1dGhXcmFwcGVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBmYjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJvdGVjdGVkIGFjY291bnRTZXJ2aWNlOiBBY2NvdW50U2VydmljZSxcclxuICAgIHByb3RlY3RlZCBjb25maWdTdGF0ZTogQ29uZmlnU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmluaXQoKTtcclxuICAgIHRoaXMuYnVpbGRGb3JtKCk7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgaW5pdCgpIHtcclxuICAgIHRoaXMuaXNTZWxmUmVnaXN0cmF0aW9uRW5hYmxlZCA9XHJcbiAgICAgICh0aGlzLmNvbmZpZ1N0YXRlLmdldFNldHRpbmcoJ0FicC5BY2NvdW50LklzU2VsZlJlZ2lzdHJhdGlvbkVuYWJsZWQnKSB8fCAnJykudG9Mb3dlckNhc2UoKSAhPT1cclxuICAgICAgJ2ZhbHNlJztcclxuXHJcbiAgICBpZiAoIXRoaXMuaXNTZWxmUmVnaXN0cmF0aW9uRW5hYmxlZCkge1xyXG4gICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLndhcm4oXHJcbiAgICAgICAge1xyXG4gICAgICAgICAga2V5OiAnQWJwQWNjb3VudDo6U2VsZlJlZ2lzdHJhdGlvbkRpc2FibGVkTWVzc2FnZScsXHJcbiAgICAgICAgICBkZWZhdWx0VmFsdWU6ICdTZWxmIHJlZ2lzdHJhdGlvbiBpcyBkaXNhYmxlZC4nLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJycsXHJcbiAgICAgICAgeyBsaWZlOiAxMDAwMCB9LFxyXG4gICAgICApO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgYnVpbGRGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIHVzZXJuYW1lOiBbJycsIFtyZXF1aXJlZCwgbWF4TGVuZ3RoKDI1NSldXSxcclxuICAgICAgcGFzc3dvcmQ6IFsnJywgW3JlcXVpcmVkLCAuLi5nZXRQYXNzd29yZFZhbGlkYXRvcnModGhpcy5pbmplY3RvcildXSxcclxuICAgICAgZW1haWw6IFsnJywgW3JlcXVpcmVkLCBlbWFpbF1dLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdCgpIHtcclxuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuaW5Qcm9ncmVzcyA9IHRydWU7XHJcblxyXG4gICAgY29uc3QgbmV3VXNlciA9IHtcclxuICAgICAgdXNlck5hbWU6IHRoaXMuZm9ybS5nZXQoJ3VzZXJuYW1lJyk/LnZhbHVlLFxyXG4gICAgICBwYXNzd29yZDogdGhpcy5mb3JtLmdldCgncGFzc3dvcmQnKT8udmFsdWUsXHJcbiAgICAgIGVtYWlsQWRkcmVzczogdGhpcy5mb3JtLmdldCgnZW1haWwnKT8udmFsdWUsXHJcbiAgICAgIGFwcE5hbWU6ICdBbmd1bGFyJyxcclxuICAgIH0gYXMgUmVnaXN0ZXJEdG87XHJcblxyXG4gICAgdGhpcy5hY2NvdW50U2VydmljZVxyXG4gICAgICAucmVnaXN0ZXIobmV3VXNlcilcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+XHJcbiAgICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ2luKHtcclxuICAgICAgICAgICAgdXNlcm5hbWU6IG5ld1VzZXIudXNlck5hbWUsXHJcbiAgICAgICAgICAgIHBhc3N3b3JkOiBuZXdVc2VyLnBhc3N3b3JkLFxyXG4gICAgICAgICAgICByZWRpcmVjdFVybDogZ2V0UmVkaXJlY3RVcmwodGhpcy5pbmplY3RvciksXHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICApLFxyXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcclxuICAgICAgICAgIHRoaXMudG9hc3RlclNlcnZpY2UuZXJyb3IoXHJcbiAgICAgICAgICAgIGVyci5lcnJvcj8uZXJyb3JfZGVzY3JpcHRpb24gfHxcclxuICAgICAgICAgICAgICBlcnIuZXJyb3I/LmVycm9yLm1lc3NhZ2UgfHxcclxuICAgICAgICAgICAgICAnQWJwQWNjb3VudDo6RGVmYXVsdEVycm9yTWVzc2FnZScsXHJcbiAgICAgICAgICAgICcnLFxyXG4gICAgICAgICAgICB7IGxpZmU6IDcwMDAgfSxcclxuICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyKTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBmaW5hbGl6ZSgoKSA9PiAodGhpcy5pblByb2dyZXNzID0gZmFsc2UpKSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxoND57eyAnQWJwQWNjb3VudDo6UmVnaXN0ZXInIHwgYWJwTG9jYWxpemF0aW9uIH19PC9oND5cclxuPHN0cm9uZz5cclxuICB7eyAnQWJwQWNjb3VudDo6QWxyZWFkeVJlZ2lzdGVyZWQnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgPGEgY2xhc3M9XCJ0ZXh0LWRlY29yYXRpb24tbm9uZVwiIHJvdXRlckxpbms9XCIvYWNjb3VudC9sb2dpblwiPnt7XHJcbiAgICAnQWJwQWNjb3VudDo6TG9naW4nIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgfX08L2E+XHJcbjwvc3Ryb25nPlxyXG48Zm9ybVxyXG4gICpuZ0lmPVwiaXNTZWxmUmVnaXN0cmF0aW9uRW5hYmxlZFwiXHJcbiAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcclxuICAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiXHJcbiAgdmFsaWRhdGVPblN1Ym1pdFxyXG4gIGNsYXNzPVwibXQtNFwiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwiaW5wdXQtdXNlci1uYW1lXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgJ0FicEFjY291bnQ6OlVzZXJOYW1lJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PHNwYW4+ICogPC9zcGFuXHJcbiAgICA+PGlucHV0XHJcbiAgICAgIGF1dG9mb2N1c1xyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIGlkPVwiaW5wdXQtdXNlci1uYW1lXCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1c2VybmFtZVwiXHJcbiAgICAgIGF1dG9jb21wbGV0ZT1cInVzZXJuYW1lXCJcclxuICAgIC8+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgPGxhYmVsIGZvcj1cImlucHV0LWVtYWlsLWFkZHJlc3NcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAnQWJwQWNjb3VudDo6RW1haWxBZGRyZXNzJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PHNwYW4+ICogPC9zcGFuXHJcbiAgICA+PGlucHV0IHR5cGU9XCJlbWFpbFwiIGlkPVwiaW5wdXQtZW1haWwtYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxcIiAvPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0zIGZvcm0tZ3JvdXBcIj5cclxuICAgIDxsYWJlbCBmb3I9XCJpbnB1dC1wYXNzd29yZFwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBBY2NvdW50OjpQYXNzd29yZCcgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgIH19PC9sYWJlbFxyXG4gICAgPjxzcGFuPiAqIDwvc3BhblxyXG4gICAgPjxpbnB1dFxyXG4gICAgICB0eXBlPVwicGFzc3dvcmRcIlxyXG4gICAgICBpZD1cImlucHV0LXBhc3N3b3JkXCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiXHJcbiAgICAgIGF1dG9jb21wbGV0ZT1cImN1cnJlbnQtcGFzc3dvcmRcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuICA8YWJwLWJ1dHRvblxyXG4gICAgW2xvYWRpbmddPVwiaW5Qcm9ncmVzc1wiXHJcbiAgICBidXR0b25UeXBlPVwic3VibWl0XCJcclxuICAgIG5hbWU9XCJBY3Rpb25cIlxyXG4gICAgYnV0dG9uQ2xhc3M9XCJidG4tYmxvY2sgYnRuLWxnIG10LTMgYnRuIGJ0bi1wcmltYXJ5XCJcclxuICA+XHJcbiAgICB7eyAnQWJwQWNjb3VudDo6UmVnaXN0ZXInIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgPC9hYnAtYnV0dG9uPlxyXG48L2Zvcm0+XHJcbiJdfQ==
1
+ import { AccountService } from '@abp/ng.account.core/proxy';
2
+ import { AuthService, ConfigStateService } from '@abp/ng.core';
3
+ import { getPasswordValidators, ToasterService } from '@abp/ng.theme.shared';
4
+ import { Component, Injector } from '@angular/core';
5
+ import { UntypedFormBuilder, Validators } from '@angular/forms';
6
+ import { throwError } from 'rxjs';
7
+ import { catchError, finalize, switchMap } from 'rxjs/operators';
8
+ import { getRedirectUrl } from '../../utils/auth-utils';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/forms";
11
+ import * as i2 from "@abp/ng.account.core/proxy";
12
+ import * as i3 from "@abp/ng.core";
13
+ import * as i4 from "@abp/ng.theme.shared";
14
+ import * as i5 from "@angular/common";
15
+ import * as i6 from "@angular/router";
16
+ import * as i7 from "@ngx-validate/core";
17
+ const { maxLength, required, email } = Validators;
18
+ class RegisterComponent {
19
+ constructor(fb, accountService, configState, toasterService, authService, injector) {
20
+ this.fb = fb;
21
+ this.accountService = accountService;
22
+ this.configState = configState;
23
+ this.toasterService = toasterService;
24
+ this.authService = authService;
25
+ this.injector = injector;
26
+ this.isSelfRegistrationEnabled = true;
27
+ this.authWrapperKey = "Account.AuthWrapperComponent" /* eAccountComponents.AuthWrapper */;
28
+ }
29
+ ngOnInit() {
30
+ this.init();
31
+ this.buildForm();
32
+ }
33
+ init() {
34
+ this.isSelfRegistrationEnabled =
35
+ (this.configState.getSetting('Abp.Account.IsSelfRegistrationEnabled') || '').toLowerCase() !==
36
+ 'false';
37
+ if (!this.isSelfRegistrationEnabled) {
38
+ this.toasterService.warn({
39
+ key: 'AbpAccount::SelfRegistrationDisabledMessage',
40
+ defaultValue: 'Self registration is disabled.',
41
+ }, '', { life: 10000 });
42
+ return;
43
+ }
44
+ }
45
+ buildForm() {
46
+ this.form = this.fb.group({
47
+ username: ['', [required, maxLength(255)]],
48
+ password: ['', [required, ...getPasswordValidators(this.injector)]],
49
+ email: ['', [required, email]],
50
+ });
51
+ }
52
+ onSubmit() {
53
+ if (this.form.invalid)
54
+ return;
55
+ this.inProgress = true;
56
+ const newUser = {
57
+ userName: this.form.get('username')?.value,
58
+ password: this.form.get('password')?.value,
59
+ emailAddress: this.form.get('email')?.value,
60
+ appName: 'Angular',
61
+ };
62
+ this.accountService
63
+ .register(newUser)
64
+ .pipe(switchMap(() => this.authService.login({
65
+ username: newUser.userName,
66
+ password: newUser.password,
67
+ redirectUrl: getRedirectUrl(this.injector),
68
+ })), catchError(err => {
69
+ this.toasterService.error(err.error?.error_description ||
70
+ err.error?.error.message ||
71
+ 'AbpAccount::DefaultErrorMessage', '', { life: 7000 });
72
+ return throwError(err);
73
+ }), finalize(() => (this.inProgress = false)))
74
+ .subscribe();
75
+ }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: RegisterComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.AccountService }, { token: i3.ConfigStateService }, { token: i4.ToasterService }, { token: i3.AuthService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
77
+ static { thiscmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: RegisterComponent, selector: "abp-register", ngImport: i0, template: "<h4>{{ 'AbpAccount::Register' | abpLocalization }}</h4>\r\n<strong>\r\n {{ 'AbpAccount::AlreadyRegistered' | abpLocalization }}\r\n <a class=\"text-decoration-none\" routerLink=\"/account/login\">{{\r\n 'AbpAccount::Login' | abpLocalization\r\n }}</a>\r\n</strong>\r\n<form\r\n *ngIf=\"isSelfRegistrationEnabled\"\r\n [formGroup]=\"form\"\r\n (ngSubmit)=\"onSubmit()\"\r\n validateOnSubmit\r\n class=\"mt-4\"\r\n>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-user-name\" class=\"form-label\">{{\r\n 'AbpAccount::UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n autofocus\r\n type=\"text\"\r\n id=\"input-user-name\"\r\n class=\"form-control\"\r\n formControlName=\"username\"\r\n autocomplete=\"username\"\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-email-address\" class=\"form-label\">{{\r\n 'AbpAccount::EmailAddress' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-password\" class=\"form-label\">{{\r\n 'AbpAccount::Password' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"input-password\"\r\n class=\"form-control\"\r\n formControlName=\"password\"\r\n autocomplete=\"current-password\"\r\n />\r\n </div>\r\n <abp-button\r\n [loading]=\"inProgress\"\r\n buttonType=\"submit\"\r\n name=\"Action\"\r\n buttonClass=\"btn-block btn-lg mt-3 btn btn-primary\"\r\n >\r\n {{ 'AbpAccount::Register' | abpLocalization }}\r\n </abp-button>\r\n</form>\r\n", dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i3.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i3.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i7.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i4.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "pipe", type: i3.LocalizationPipe, name: "abpLocalization" }] }); }
78
+ }
79
+ export { RegisterComponent };
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: RegisterComponent, decorators: [{
81
+ type: Component,
82
+ args: [{ selector: 'abp-register', template: "<h4>{{ 'AbpAccount::Register' | abpLocalization }}</h4>\r\n<strong>\r\n {{ 'AbpAccount::AlreadyRegistered' | abpLocalization }}\r\n <a class=\"text-decoration-none\" routerLink=\"/account/login\">{{\r\n 'AbpAccount::Login' | abpLocalization\r\n }}</a>\r\n</strong>\r\n<form\r\n *ngIf=\"isSelfRegistrationEnabled\"\r\n [formGroup]=\"form\"\r\n (ngSubmit)=\"onSubmit()\"\r\n validateOnSubmit\r\n class=\"mt-4\"\r\n>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-user-name\" class=\"form-label\">{{\r\n 'AbpAccount::UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n autofocus\r\n type=\"text\"\r\n id=\"input-user-name\"\r\n class=\"form-control\"\r\n formControlName=\"username\"\r\n autocomplete=\"username\"\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-email-address\" class=\"form-label\">{{\r\n 'AbpAccount::EmailAddress' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"email\" id=\"input-email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-password\" class=\"form-label\">{{\r\n 'AbpAccount::Password' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"input-password\"\r\n class=\"form-control\"\r\n formControlName=\"password\"\r\n autocomplete=\"current-password\"\r\n />\r\n </div>\r\n <abp-button\r\n [loading]=\"inProgress\"\r\n buttonType=\"submit\"\r\n name=\"Action\"\r\n buttonClass=\"btn-block btn-lg mt-3 btn btn-primary\"\r\n >\r\n {{ 'AbpAccount::Register' | abpLocalization }}\r\n </abp-button>\r\n</form>\r\n" }]
83
+ }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.AccountService }, { type: i3.ConfigStateService }, { type: i4.ToasterService }, { type: i3.AuthService }, { type: i0.Injector }]; } });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcmVnaXN0ZXIvcmVnaXN0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxrQkFBa0IsRUFBb0IsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7OztBQUV4RCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsR0FBRyxVQUFVLENBQUM7QUFFbEQsTUFJYSxpQkFBaUI7SUFTNUIsWUFDWSxFQUFzQixFQUN0QixjQUE4QixFQUM5QixXQUErQixFQUMvQixjQUE4QixFQUM5QixXQUF3QixFQUN4QixRQUFrQjtRQUxsQixPQUFFLEdBQUYsRUFBRSxDQUFvQjtRQUN0QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7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QUMsQ0FBQyxDQUMxQzthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7OEdBckZVLGlCQUFpQjtrR0FBakIsaUJBQWlCLG9EQ2hCOUIsNndEQXlEQTs7U0R6Q2EsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBSjdCLFNBQVM7K0JBQ0UsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY291bnRTZXJ2aWNlLCBSZWdpc3RlckR0byB9IGZyb20gJ0BhYnAvbmcuYWNjb3VudC5jb3JlL3Byb3h5JztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UsIENvbmZpZ1N0YXRlU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IGdldFBhc3N3b3JkVmFsaWRhdG9ycywgVG9hc3RlclNlcnZpY2UgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmluYWxpemUsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgZUFjY291bnRDb21wb25lbnRzIH0gZnJvbSAnLi4vLi4vZW51bXMvY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IGdldFJlZGlyZWN0VXJsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYXV0aC11dGlscyc7XHJcblxyXG5jb25zdCB7IG1heExlbmd0aCwgcmVxdWlyZWQsIGVtYWlsIH0gPSBWYWxpZGF0b3JzO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtcmVnaXN0ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWdpc3Rlci5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZWdpc3RlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIGluUHJvZ3Jlc3M/OiBib29sZWFuO1xyXG5cclxuICBpc1NlbGZSZWdpc3RyYXRpb25FbmFibGVkID0gdHJ1ZTtcclxuXHJcbiAgYXV0aFdyYXBwZXJLZXkgPSBlQWNjb3VudENvbXBvbmVudHMuQXV0aFdyYXBwZXI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXHJcbiAgICBwcm90ZWN0ZWQgYWNjb3VudFNlcnZpY2U6IEFjY291bnRTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBpbml0KCkge1xyXG4gICAgdGhpcy5pc1NlbGZSZWdpc3RyYXRpb25FbmFibGVkID1cclxuICAgICAgKHRoaXMuY29uZmlnU3RhdGUuZ2V0U2V0dGluZygnQWJwLkFjY291bnQuSXNTZWxmUmVnaXN0cmF0aW9uRW5hYmxlZCcpIHx8ICcnKS50b0xvd2VyQ2FzZSgpICE9PVxyXG4gICAgICAnZmFsc2UnO1xyXG5cclxuICAgIGlmICghdGhpcy5pc1NlbGZSZWdpc3RyYXRpb25FbmFibGVkKSB7XHJcbiAgICAgIHRoaXMudG9hc3RlclNlcnZpY2Uud2FybihcclxuICAgICAgICB7XHJcbiAgICAgICAgICBrZXk6ICdBYnBBY2NvdW50OjpTZWxmUmVnaXN0cmF0aW9uRGlzYWJsZWRNZXNzYWdlJyxcclxuICAgICAgICAgIGRlZmF1bHRWYWx1ZTogJ1NlbGYgcmVnaXN0cmF0aW9uIGlzIGRpc2FibGVkLicsXHJcbiAgICAgICAgfSxcclxuICAgICAgICAnJyxcclxuICAgICAgICB7IGxpZmU6IDEwMDAwIH0sXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBidWlsZEZvcm0oKSB7XHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgdXNlcm5hbWU6IFsnJywgW3JlcXVpcmVkLCBtYXhMZW5ndGgoMjU1KV1dLFxyXG4gICAgICBwYXNzd29yZDogWycnLCBbcmVxdWlyZWQsIC4uLmdldFBhc3N3b3JkVmFsaWRhdG9ycyh0aGlzLmluamVjdG9yKV1dLFxyXG4gICAgICBlbWFpbDogWycnLCBbcmVxdWlyZWQsIGVtYWlsXV0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5pblByb2dyZXNzID0gdHJ1ZTtcclxuXHJcbiAgICBjb25zdCBuZXdVc2VyID0ge1xyXG4gICAgICB1c2VyTmFtZTogdGhpcy5mb3JtLmdldCgndXNlcm5hbWUnKT8udmFsdWUsXHJcbiAgICAgIHBhc3N3b3JkOiB0aGlzLmZvcm0uZ2V0KCdwYXNzd29yZCcpPy52YWx1ZSxcclxuICAgICAgZW1haWxBZGRyZXNzOiB0aGlzLmZvcm0uZ2V0KCdlbWFpbCcpPy52YWx1ZSxcclxuICAgICAgYXBwTmFtZTogJ0FuZ3VsYXInLFxyXG4gICAgfSBhcyBSZWdpc3RlckR0bztcclxuXHJcbiAgICB0aGlzLmFjY291bnRTZXJ2aWNlXHJcbiAgICAgIC5yZWdpc3RlcihuZXdVc2VyKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT5cclxuICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UubG9naW4oe1xyXG4gICAgICAgICAgICB1c2VybmFtZTogbmV3VXNlci51c2VyTmFtZSxcclxuICAgICAgICAgICAgcGFzc3dvcmQ6IG5ld1VzZXIucGFzc3dvcmQsXHJcbiAgICAgICAgICAgIHJlZGlyZWN0VXJsOiBnZXRSZWRpcmVjdFVybCh0aGlzLmluamVjdG9yKSxcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgICksXHJcbiAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xyXG4gICAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5lcnJvcihcclxuICAgICAgICAgICAgZXJyLmVycm9yPy5lcnJvcl9kZXNjcmlwdGlvbiB8fFxyXG4gICAgICAgICAgICAgIGVyci5lcnJvcj8uZXJyb3IubWVzc2FnZSB8fFxyXG4gICAgICAgICAgICAgICdBYnBBY2NvdW50OjpEZWZhdWx0RXJyb3JNZXNzYWdlJyxcclxuICAgICAgICAgICAgJycsXHJcbiAgICAgICAgICAgIHsgbGlmZTogNzAwMCB9LFxyXG4gICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnIpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmluUHJvZ3Jlc3MgPSBmYWxzZSkpLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIiwiPGg0Pnt7ICdBYnBBY2NvdW50OjpSZWdpc3RlcicgfCBhYnBMb2NhbGl6YXRpb24gfX08L2g0PlxyXG48c3Ryb25nPlxyXG4gIHt7ICdBYnBBY2NvdW50OjpBbHJlYWR5UmVnaXN0ZXJlZCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICA8YSBjbGFzcz1cInRleHQtZGVjb3JhdGlvbi1ub25lXCIgcm91dGVyTGluaz1cIi9hY2NvdW50L2xvZ2luXCI+e3tcclxuICAgICdBYnBBY2NvdW50OjpMb2dpbicgfCBhYnBMb2NhbGl6YXRpb25cclxuICB9fTwvYT5cclxuPC9zdHJvbmc+XHJcbjxmb3JtXHJcbiAgKm5nSWY9XCJpc1NlbGZSZWdpc3RyYXRpb25FbmFibGVkXCJcclxuICBbZm9ybUdyb3VwXT1cImZvcm1cIlxyXG4gIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCJcclxuICB2YWxpZGF0ZU9uU3VibWl0XHJcbiAgY2xhc3M9XCJtdC00XCJcclxuPlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0zIGZvcm0tZ3JvdXBcIj5cclxuICAgIDxsYWJlbCBmb3I9XCJpbnB1dC11c2VyLW5hbWVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAnQWJwQWNjb3VudDo6VXNlck5hbWUnIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgICB9fTwvbGFiZWxcclxuICAgID48c3Bhbj4gKiA8L3NwYW5cclxuICAgID48aW5wdXRcclxuICAgICAgYXV0b2ZvY3VzXHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgaWQ9XCJpbnB1dC11c2VyLW5hbWVcIlxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cInVzZXJuYW1lXCJcclxuICAgICAgYXV0b2NvbXBsZXRlPVwidXNlcm5hbWVcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwiaW5wdXQtZW1haWwtYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBBY2NvdW50OjpFbWFpbEFkZHJlc3MnIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgICB9fTwvbGFiZWxcclxuICAgID48c3Bhbj4gKiA8L3NwYW5cclxuICAgID48aW5wdXQgdHlwZT1cImVtYWlsXCIgaWQ9XCJpbnB1dC1lbWFpbC1hZGRyZXNzXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBmb3JtQ29udHJvbE5hbWU9XCJlbWFpbFwiIC8+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgPGxhYmVsIGZvcj1cImlucHV0LXBhc3N3b3JkXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgJ0FicEFjY291bnQ6OlBhc3N3b3JkJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PHNwYW4+ICogPC9zcGFuXHJcbiAgICA+PGlucHV0XHJcbiAgICAgIHR5cGU9XCJwYXNzd29yZFwiXHJcbiAgICAgIGlkPVwiaW5wdXQtcGFzc3dvcmRcIlxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCJcclxuICAgICAgYXV0b2NvbXBsZXRlPVwiY3VycmVudC1wYXNzd29yZFwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG4gIDxhYnAtYnV0dG9uXHJcbiAgICBbbG9hZGluZ109XCJpblByb2dyZXNzXCJcclxuICAgIGJ1dHRvblR5cGU9XCJzdWJtaXRcIlxyXG4gICAgbmFtZT1cIkFjdGlvblwiXHJcbiAgICBidXR0b25DbGFzcz1cImJ0bi1ibG9jayBidG4tbGcgbXQtMyBidG4gYnRuLXByaW1hcnlcIlxyXG4gID5cclxuICAgIHt7ICdBYnBBY2NvdW50OjpSZWdpc3RlcicgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICA8L2FicC1idXR0b24+XHJcbjwvZm9ybT5cclxuIl19
@@ -0,0 +1,69 @@
1
+ import { AccountService } from '@abp/ng.account.core/proxy';
2
+ import { getPasswordValidators } from '@abp/ng.theme.shared';
3
+ import { Component, Injector } from '@angular/core';
4
+ import { UntypedFormBuilder, Validators } from '@angular/forms';
5
+ import { ActivatedRoute, Router } from '@angular/router';
6
+ import { comparePasswords } from '@ngx-validate/core';
7
+ import { finalize } from 'rxjs/operators';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/forms";
10
+ import * as i2 from "@abp/ng.account.core/proxy";
11
+ import * as i3 from "@angular/router";
12
+ import * as i4 from "@angular/common";
13
+ import * as i5 from "@abp/ng.core";
14
+ import * as i6 from "@ngx-validate/core";
15
+ import * as i7 from "@abp/ng.theme.shared";
16
+ const PASSWORD_FIELDS = ['password', 'confirmPassword'];
17
+ class ResetPasswordComponent {
18
+ constructor(fb, accountService, route, router, injector) {
19
+ this.fb = fb;
20
+ this.accountService = accountService;
21
+ this.route = route;
22
+ this.router = router;
23
+ this.injector = injector;
24
+ this.inProgress = false;
25
+ this.isPasswordReset = false;
26
+ this.mapErrorsFn = (errors, groupErrors, control) => {
27
+ if (PASSWORD_FIELDS.indexOf(String(control?.name)) < 0)
28
+ return errors;
29
+ return errors.concat(groupErrors.filter(({ key }) => key === 'passwordMismatch'));
30
+ };
31
+ }
32
+ ngOnInit() {
33
+ this.route.queryParams.subscribe(({ userId, resetToken }) => {
34
+ if (!userId || !resetToken)
35
+ this.router.navigateByUrl('/account/login');
36
+ this.form = this.fb.group({
37
+ userId: [userId, [Validators.required]],
38
+ resetToken: [resetToken, [Validators.required]],
39
+ password: ['', [Validators.required, ...getPasswordValidators(this.injector)]],
40
+ confirmPassword: ['', [Validators.required, ...getPasswordValidators(this.injector)]],
41
+ }, {
42
+ validators: [comparePasswords(PASSWORD_FIELDS)],
43
+ });
44
+ });
45
+ }
46
+ onSubmit() {
47
+ if (this.form.invalid || this.inProgress)
48
+ return;
49
+ this.inProgress = true;
50
+ this.accountService
51
+ .resetPassword({
52
+ userId: this.form.get('userId')?.value,
53
+ resetToken: this.form.get('resetToken')?.value,
54
+ password: this.form.get('password')?.value,
55
+ })
56
+ .pipe(finalize(() => (this.inProgress = false)))
57
+ .subscribe(() => {
58
+ this.isPasswordReset = true;
59
+ });
60
+ }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ResetPasswordComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.AccountService }, { token: i3.ActivatedRoute }, { token: i3.Router }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: ResetPasswordComponent, selector: "abp-reset-password", ngImport: i0, template: "<h4>{{ 'AbpAccount::ResetPassword' | abpLocalization }}</h4>\r\n\r\n<form\r\n *ngIf=\"!isPasswordReset; else passwordResetTemplate\"\r\n [formGroup]=\"form\"\r\n [mapErrorsFn]=\"mapErrorsFn\"\r\n (ngSubmit)=\"onSubmit()\"\r\n validateOnSubmit\r\n>\r\n <p>{{ 'AbpAccount::ResetPassword_Information' | abpLocalization }}</p>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-password\" class=\"form-label\">{{\r\n 'AbpAccount::Password' | abpLocalization\r\n }}</label\r\n ><span> * </span>\r\n <input type=\"password\" id=\"input-password\" class=\"form-control\" formControlName=\"password\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-confirm-password\" class=\"form-label\">{{\r\n 'AbpAccount::ConfirmPassword' | abpLocalization\r\n }}</label\r\n ><span> * </span>\r\n <input\r\n type=\"password\"\r\n id=\"input-confirm-password\"\r\n class=\"form-control\"\r\n formControlName=\"confirmPassword\"\r\n />\r\n </div>\r\n <button class=\"me-2 btn btn-secondary\" type=\"button\" routerLink=\"/account/login\">\r\n {{ 'AbpAccount::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button\r\n buttonType=\"submit\"\r\n buttonClass=\"me-2 btn btn-primary\"\r\n [loading]=\"inProgress\"\r\n (click)=\"onSubmit()\"\r\n >\r\n {{ 'AbpAccount::Submit' | abpLocalization }}\r\n </abp-button>\r\n</form>\r\n\r\n<ng-template #passwordResetTemplate>\r\n <p>\r\n {{ 'AbpAccount::YourPasswordIsSuccessfullyReset' | abpLocalization }}\r\n </p>\r\n\r\n <a routerLink=\"/account/login\">\r\n <button class=\"d-block mt-2 mb-3 btn btn-primary\">\r\n {{ 'AbpAccount::BackToLogin' | abpLocalization }}\r\n </button>\r\n </a>\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i5.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i6.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i6.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i7.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "pipe", type: i5.LocalizationPipe, name: "abpLocalization" }] }); }
63
+ }
64
+ export { ResetPasswordComponent };
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ResetPasswordComponent, decorators: [{
66
+ type: Component,
67
+ args: [{ selector: 'abp-reset-password', template: "<h4>{{ 'AbpAccount::ResetPassword' | abpLocalization }}</h4>\r\n\r\n<form\r\n *ngIf=\"!isPasswordReset; else passwordResetTemplate\"\r\n [formGroup]=\"form\"\r\n [mapErrorsFn]=\"mapErrorsFn\"\r\n (ngSubmit)=\"onSubmit()\"\r\n validateOnSubmit\r\n>\r\n <p>{{ 'AbpAccount::ResetPassword_Information' | abpLocalization }}</p>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-password\" class=\"form-label\">{{\r\n 'AbpAccount::Password' | abpLocalization\r\n }}</label\r\n ><span> * </span>\r\n <input type=\"password\" id=\"input-password\" class=\"form-control\" formControlName=\"password\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"input-confirm-password\" class=\"form-label\">{{\r\n 'AbpAccount::ConfirmPassword' | abpLocalization\r\n }}</label\r\n ><span> * </span>\r\n <input\r\n type=\"password\"\r\n id=\"input-confirm-password\"\r\n class=\"form-control\"\r\n formControlName=\"confirmPassword\"\r\n />\r\n </div>\r\n <button class=\"me-2 btn btn-secondary\" type=\"button\" routerLink=\"/account/login\">\r\n {{ 'AbpAccount::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button\r\n buttonType=\"submit\"\r\n buttonClass=\"me-2 btn btn-primary\"\r\n [loading]=\"inProgress\"\r\n (click)=\"onSubmit()\"\r\n >\r\n {{ 'AbpAccount::Submit' | abpLocalization }}\r\n </abp-button>\r\n</form>\r\n\r\n<ng-template #passwordResetTemplate>\r\n <p>\r\n {{ 'AbpAccount::YourPasswordIsSuccessfullyReset' | abpLocalization }}\r\n </p>\r\n\r\n <a routerLink=\"/account/login\">\r\n <button class=\"d-block mt-2 mb-3 btn btn-primary\">\r\n {{ 'AbpAccount::BackToLogin' | abpLocalization }}\r\n </button>\r\n </a>\r\n</ng-template>\r\n" }]
68
+ }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.AccountService }, { type: i3.ActivatedRoute }, { type: i3.Router }, { type: i0.Injector }]; } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtcGFzc3dvcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcmVzZXQtcGFzc3dvcmQvcmVzZXQtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcmVzZXQtcGFzc3dvcmQvcmVzZXQtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFBRSxrQkFBa0IsRUFBb0IsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQWMsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7OztBQUUxQyxNQUFNLGVBQWUsR0FBRyxDQUFDLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBRXhELE1BSWEsc0JBQXNCO0lBYWpDLFlBQ1UsRUFBc0IsRUFDdEIsY0FBOEIsRUFDOUIsS0FBcUIsRUFDckIsTUFBYyxFQUNkLFFBQWtCO1FBSmxCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQWY1QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRW5CLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBRXhCLGdCQUFXLEdBQTJCLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNyRSxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUM7Z0JBQUUsT0FBTyxNQUFNLENBQUM7WUFFdEUsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssa0JBQWtCLENBQUMsQ0FBQyxDQUFDO1FBQ3BGLENBQUMsQ0FBQztJQVFDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRTtZQUMxRCxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVTtnQkFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBRXhFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQ3ZCO2dCQUNFLE1BQU0sRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDdkMsVUFBVSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMvQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLEdBQUcscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQzlFLGVBQWUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQzthQUN0RixFQUNEO2dCQUNFLFVBQVUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxDQUFDO2FBQ2hELENBQ0YsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxVQUFVO1lBQUUsT0FBTztRQUVqRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUV2QixJQUFJLENBQUMsY0FBYzthQUNoQixhQUFhLENBQUM7WUFDYixNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSztZQUN0QyxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSztZQUM5QyxRQUFRLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsS0FBSztTQUMzQyxDQUFDO2FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUMvQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUM7UUFDOUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQXREVSxzQkFBc0I7a0dBQXRCLHNCQUFzQiwwRENkbkMsaXZEQXFEQTs7U0R2Q2Esc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBSmxDLFNBQVM7K0JBQ0Usb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmFjY291bnQuY29yZS9wcm94eSc7XHJcbmltcG9ydCB7IGdldFBhc3N3b3JkVmFsaWRhdG9ycyB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFVudHlwZWRGb3JtQnVpbGRlciwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IGNvbXBhcmVQYXNzd29yZHMsIFZhbGlkYXRpb24gfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmNvbnN0IFBBU1NXT1JEX0ZJRUxEUyA9IFsncGFzc3dvcmQnLCAnY29uZmlybVBhc3N3b3JkJ107XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1yZXNldC1wYXNzd29yZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Jlc2V0LXBhc3N3b3JkLmNvbXBvbmVudC5odG1sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJlc2V0UGFzc3dvcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGZvcm0hOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBpblByb2dyZXNzID0gZmFsc2U7XHJcblxyXG4gIGlzUGFzc3dvcmRSZXNldCA9IGZhbHNlO1xyXG5cclxuICBtYXBFcnJvcnNGbjogVmFsaWRhdGlvbi5NYXBFcnJvcnNGbiA9IChlcnJvcnMsIGdyb3VwRXJyb3JzLCBjb250cm9sKSA9PiB7XHJcbiAgICBpZiAoUEFTU1dPUkRfRklFTERTLmluZGV4T2YoU3RyaW5nKGNvbnRyb2w/Lm5hbWUpKSA8IDApIHJldHVybiBlcnJvcnM7XHJcblxyXG4gICAgcmV0dXJuIGVycm9ycy5jb25jYXQoZ3JvdXBFcnJvcnMuZmlsdGVyKCh7IGtleSB9KSA9PiBrZXkgPT09ICdwYXNzd29yZE1pc21hdGNoJykpO1xyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBmYjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBhY2NvdW50U2VydmljZTogQWNjb3VudFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUoKHsgdXNlcklkLCByZXNldFRva2VuIH0pID0+IHtcclxuICAgICAgaWYgKCF1c2VySWQgfHwgIXJlc2V0VG9rZW4pIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9hY2NvdW50L2xvZ2luJyk7XHJcblxyXG4gICAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHVzZXJJZDogW3VzZXJJZCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXSxcclxuICAgICAgICAgIHJlc2V0VG9rZW46IFtyZXNldFRva2VuLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICAgICAgcGFzc3dvcmQ6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIC4uLmdldFBhc3N3b3JkVmFsaWRhdG9ycyh0aGlzLmluamVjdG9yKV1dLFxyXG4gICAgICAgICAgY29uZmlybVBhc3N3b3JkOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCAuLi5nZXRQYXNzd29yZFZhbGlkYXRvcnModGhpcy5pbmplY3RvcildXSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHZhbGlkYXRvcnM6IFtjb21wYXJlUGFzc3dvcmRzKFBBU1NXT1JEX0ZJRUxEUyldLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkIHx8IHRoaXMuaW5Qcm9ncmVzcykgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuaW5Qcm9ncmVzcyA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5hY2NvdW50U2VydmljZVxyXG4gICAgICAucmVzZXRQYXNzd29yZCh7XHJcbiAgICAgICAgdXNlcklkOiB0aGlzLmZvcm0uZ2V0KCd1c2VySWQnKT8udmFsdWUsXHJcbiAgICAgICAgcmVzZXRUb2tlbjogdGhpcy5mb3JtLmdldCgncmVzZXRUb2tlbicpPy52YWx1ZSxcclxuICAgICAgICBwYXNzd29yZDogdGhpcy5mb3JtLmdldCgncGFzc3dvcmQnKT8udmFsdWUsXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKGZpbmFsaXplKCgpID0+ICh0aGlzLmluUHJvZ3Jlc3MgPSBmYWxzZSkpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmlzUGFzc3dvcmRSZXNldCA9IHRydWU7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8aDQ+e3sgJ0FicEFjY291bnQ6OlJlc2V0UGFzc3dvcmQnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9oND5cclxuXHJcbjxmb3JtXHJcbiAgKm5nSWY9XCIhaXNQYXNzd29yZFJlc2V0OyBlbHNlIHBhc3N3b3JkUmVzZXRUZW1wbGF0ZVwiXHJcbiAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcclxuICBbbWFwRXJyb3JzRm5dPVwibWFwRXJyb3JzRm5cIlxyXG4gIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCJcclxuICB2YWxpZGF0ZU9uU3VibWl0XHJcbj5cclxuICA8cD57eyAnQWJwQWNjb3VudDo6UmVzZXRQYXNzd29yZF9JbmZvcm1hdGlvbicgfCBhYnBMb2NhbGl6YXRpb24gfX08L3A+XHJcbiAgPGRpdiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgPGxhYmVsIGZvcj1cImlucHV0LXBhc3N3b3JkXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgJ0FicEFjY291bnQ6OlBhc3N3b3JkJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PHNwYW4+ICogPC9zcGFuPlxyXG4gICAgPGlucHV0IHR5cGU9XCJwYXNzd29yZFwiIGlkPVwiaW5wdXQtcGFzc3dvcmRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCIgLz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwiaW5wdXQtY29uZmlybS1wYXNzd29yZFwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBBY2NvdW50OjpDb25maXJtUGFzc3dvcmQnIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgICB9fTwvbGFiZWxcclxuICAgID48c3Bhbj4gKiA8L3NwYW4+XHJcbiAgICA8aW5wdXRcclxuICAgICAgdHlwZT1cInBhc3N3b3JkXCJcclxuICAgICAgaWQ9XCJpbnB1dC1jb25maXJtLXBhc3N3b3JkXCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb25maXJtUGFzc3dvcmRcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuICA8YnV0dG9uIGNsYXNzPVwibWUtMiBidG4gYnRuLXNlY29uZGFyeVwiIHR5cGU9XCJidXR0b25cIiByb3V0ZXJMaW5rPVwiL2FjY291bnQvbG9naW5cIj5cclxuICAgIHt7ICdBYnBBY2NvdW50OjpDYW5jZWwnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgPC9idXR0b24+XHJcbiAgPGFicC1idXR0b25cclxuICAgIGJ1dHRvblR5cGU9XCJzdWJtaXRcIlxyXG4gICAgYnV0dG9uQ2xhc3M9XCJtZS0yIGJ0biBidG4tcHJpbWFyeVwiXHJcbiAgICBbbG9hZGluZ109XCJpblByb2dyZXNzXCJcclxuICAgIChjbGljayk9XCJvblN1Ym1pdCgpXCJcclxuICA+XHJcbiAgICB7eyAnQWJwQWNjb3VudDo6U3VibWl0JyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gIDwvYWJwLWJ1dHRvbj5cclxuPC9mb3JtPlxyXG5cclxuPG5nLXRlbXBsYXRlICNwYXNzd29yZFJlc2V0VGVtcGxhdGU+XHJcbiAgPHA+XHJcbiAgICB7eyAnQWJwQWNjb3VudDo6WW91clBhc3N3b3JkSXNTdWNjZXNzZnVsbHlSZXNldCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICA8L3A+XHJcblxyXG4gIDxhIHJvdXRlckxpbms9XCIvYWNjb3VudC9sb2dpblwiPlxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImQtYmxvY2sgbXQtMiBtYi0zIGJ0biBidG4tcHJpbWFyeVwiPlxyXG4gICAgICB7eyAnQWJwQWNjb3VudDo6QmFja1RvTG9naW4nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2E+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -1,46 +1,46 @@
1
- import { FormProp } from '@abp/ng.theme.shared/extensions';
2
- import { Validators } from '@angular/forms';
3
- import { PersonalSettingsHalfRowComponent } from '../components/personal-settings/personal-settings-half-row.component';
4
- const { maxLength, required, email } = Validators;
5
- export const DEFAULT_PERSONAL_SETTINGS_UPDATE_FORM_PROPS = FormProp.createMany([
6
- {
7
- type: "string" /* ePropType.String */,
8
- name: 'userName',
9
- displayName: 'AbpIdentity::DisplayName:UserName',
10
- id: 'username',
11
- validators: () => [required, maxLength(256)],
12
- },
13
- {
14
- type: "string" /* ePropType.String */,
15
- name: 'name',
16
- displayName: 'AbpIdentity::DisplayName:Name',
17
- id: 'name',
18
- validators: () => [maxLength(64)],
19
- template: PersonalSettingsHalfRowComponent,
20
- className: 'd-inline-block w-50',
21
- },
22
- {
23
- type: "string" /* ePropType.String */,
24
- name: 'surname',
25
- displayName: 'AbpIdentity::DisplayName:Surname',
26
- id: 'surname',
27
- validators: () => [maxLength(64)],
28
- className: 'd-inline-block w-50 ps-4',
29
- template: PersonalSettingsHalfRowComponent,
30
- },
31
- {
32
- type: "string" /* ePropType.String */,
33
- name: 'email',
34
- displayName: 'AbpIdentity::DisplayName:Email',
35
- id: 'email-address',
36
- validators: () => [required, email, maxLength(256)],
37
- },
38
- {
39
- type: "string" /* ePropType.String */,
40
- name: 'phoneNumber',
41
- displayName: 'AbpIdentity::DisplayName:PhoneNumber',
42
- id: 'phone-number',
43
- validators: () => [maxLength(16)],
44
- },
45
- ]);
1
+ import { FormProp } from '@abp/ng.theme.shared/extensions';
2
+ import { Validators } from '@angular/forms';
3
+ import { PersonalSettingsHalfRowComponent } from '../components/personal-settings/personal-settings-half-row.component';
4
+ const { maxLength, required, email } = Validators;
5
+ export const DEFAULT_PERSONAL_SETTINGS_UPDATE_FORM_PROPS = FormProp.createMany([
6
+ {
7
+ type: "string" /* ePropType.String */,
8
+ name: 'userName',
9
+ displayName: 'AbpIdentity::DisplayName:UserName',
10
+ id: 'username',
11
+ validators: () => [required, maxLength(256)],
12
+ },
13
+ {
14
+ type: "string" /* ePropType.String */,
15
+ name: 'name',
16
+ displayName: 'AbpIdentity::DisplayName:Name',
17
+ id: 'name',
18
+ validators: () => [maxLength(64)],
19
+ template: PersonalSettingsHalfRowComponent,
20
+ className: 'd-inline-block w-50',
21
+ },
22
+ {
23
+ type: "string" /* ePropType.String */,
24
+ name: 'surname',
25
+ displayName: 'AbpIdentity::DisplayName:Surname',
26
+ id: 'surname',
27
+ validators: () => [maxLength(64)],
28
+ className: 'd-inline-block w-50 ps-4',
29
+ template: PersonalSettingsHalfRowComponent,
30
+ },
31
+ {
32
+ type: "string" /* ePropType.String */,
33
+ name: 'email',
34
+ displayName: 'AbpIdentity::DisplayName:Email',
35
+ id: 'email-address',
36
+ validators: () => [required, email, maxLength(256)],
37
+ },
38
+ {
39
+ type: "string" /* ePropType.String */,
40
+ name: 'phoneNumber',
41
+ displayName: 'AbpIdentity::DisplayName:PhoneNumber',
42
+ id: 'phone-number',
43
+ validators: () => [maxLength(16)],
44
+ },
45
+ ]);
46
46
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1wZXJzb25hbC1zZXR0aW5ncy1mb3JtLXByb3BzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2RlZmF1bHRzL2RlZmF1bHQtcGVyc29uYWwtc2V0dGluZ3MtZm9ybS1wcm9wcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWEsUUFBUSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFdEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBRXhILE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztBQUNsRCxNQUFNLENBQUMsTUFBTSwyQ0FBMkMsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFtQjtJQUMvRjtRQUNFLElBQUksaUNBQWtCO1FBQ3RCLElBQUksRUFBRSxVQUFVO1FBQ2hCLFdBQVcsRUFBRSxtQ0FBbUM7UUFDaEQsRUFBRSxFQUFFLFVBQVU7UUFDZCxVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQzdDO0lBQ0Q7UUFDRSxJQUFJLGlDQUFrQjtRQUN0QixJQUFJLEVBQUUsTUFBTTtRQUNaLFdBQVcsRUFBRSwrQkFBK0I7UUFDNUMsRUFBRSxFQUFFLE1BQU07UUFDVixVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakMsUUFBUSxFQUFFLGdDQUFnQztRQUMxQyxTQUFTLEVBQUUscUJBQXFCO0tBQ2pDO0lBQ0Q7UUFDRSxJQUFJLGlDQUFrQjtRQUN0QixJQUFJLEVBQUUsU0FBUztRQUNmLFdBQVcsRUFBRSxrQ0FBa0M7UUFDL0MsRUFBRSxFQUFFLFNBQVM7UUFDYixVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakMsU0FBUyxFQUFFLDBCQUEwQjtRQUNyQyxRQUFRLEVBQUUsZ0NBQWdDO0tBQzNDO0lBQ0Q7UUFDRSxJQUFJLGlDQUFrQjtRQUN0QixJQUFJLEVBQUUsT0FBTztRQUNiLFdBQVcsRUFBRSxnQ0FBZ0M7UUFDN0MsRUFBRSxFQUFFLGVBQWU7UUFDbkIsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDcEQ7SUFDRDtRQUNFLElBQUksaUNBQWtCO1FBQ3RCLElBQUksRUFBRSxhQUFhO1FBQ25CLFdBQVcsRUFBRSxzQ0FBc0M7UUFDbkQsRUFBRSxFQUFFLGNBQWM7UUFDbEIsVUFBVSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQ2xDO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZVByb3BUeXBlLCBGb3JtUHJvcCB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBVcGRhdGVQcm9maWxlRHRvIH0gZnJvbSAnQGFicC9uZy5hY2NvdW50LmNvcmUvcHJveHknO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBQZXJzb25hbFNldHRpbmdzSGFsZlJvd0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MtaGFsZi1yb3cuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IHsgbWF4TGVuZ3RoLCByZXF1aXJlZCwgZW1haWwgfSA9IFZhbGlkYXRvcnM7XHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1BFUlNPTkFMX1NFVFRJTkdTX1VQREFURV9GT1JNX1BST1BTID0gRm9ybVByb3AuY3JlYXRlTWFueTxVcGRhdGVQcm9maWxlRHRvPihbXHJcbiAge1xyXG4gICAgdHlwZTogZVByb3BUeXBlLlN0cmluZyxcclxuICAgIG5hbWU6ICd1c2VyTmFtZScsXHJcbiAgICBkaXNwbGF5TmFtZTogJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpVc2VyTmFtZScsXHJcbiAgICBpZDogJ3VzZXJuYW1lJyxcclxuICAgIHZhbGlkYXRvcnM6ICgpID0+IFtyZXF1aXJlZCwgbWF4TGVuZ3RoKDI1NildLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdHlwZTogZVByb3BUeXBlLlN0cmluZyxcclxuICAgIG5hbWU6ICduYW1lJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOk5hbWUnLFxyXG4gICAgaWQ6ICduYW1lJyxcclxuICAgIHZhbGlkYXRvcnM6ICgpID0+IFttYXhMZW5ndGgoNjQpXSxcclxuICAgIHRlbXBsYXRlOiBQZXJzb25hbFNldHRpbmdzSGFsZlJvd0NvbXBvbmVudCxcclxuICAgIGNsYXNzTmFtZTogJ2QtaW5saW5lLWJsb2NrIHctNTAnLFxyXG4gIH0sXHJcbiAge1xyXG4gICAgdHlwZTogZVByb3BUeXBlLlN0cmluZyxcclxuICAgIG5hbWU6ICdzdXJuYW1lJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOlN1cm5hbWUnLFxyXG4gICAgaWQ6ICdzdXJuYW1lJyxcclxuICAgIHZhbGlkYXRvcnM6ICgpID0+IFttYXhMZW5ndGgoNjQpXSxcclxuICAgIGNsYXNzTmFtZTogJ2QtaW5saW5lLWJsb2NrIHctNTAgcHMtNCcsXHJcbiAgICB0ZW1wbGF0ZTogUGVyc29uYWxTZXR0aW5nc0hhbGZSb3dDb21wb25lbnQsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0eXBlOiBlUHJvcFR5cGUuU3RyaW5nLFxyXG4gICAgbmFtZTogJ2VtYWlsJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOkVtYWlsJyxcclxuICAgIGlkOiAnZW1haWwtYWRkcmVzcycsXHJcbiAgICB2YWxpZGF0b3JzOiAoKSA9PiBbcmVxdWlyZWQsIGVtYWlsLCBtYXhMZW5ndGgoMjU2KV0sXHJcbiAgfSxcclxuICB7XHJcbiAgICB0eXBlOiBlUHJvcFR5cGUuU3RyaW5nLFxyXG4gICAgbmFtZTogJ3Bob25lTnVtYmVyJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOlBob25lTnVtYmVyJyxcclxuICAgIGlkOiAncGhvbmUtbnVtYmVyJyxcclxuICAgIHZhbGlkYXRvcnM6ICgpID0+IFttYXhMZW5ndGgoMTYpXSxcclxuICB9LFxyXG5dKTtcclxuIl19
@@ -1,2 +1,2 @@
1
- export {};
1
+ export {};
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FjY291bnQvc3JjL2xpYi9lbnVtcy9jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBlQWNjb3VudENvbXBvbmVudHMge1xyXG4gIExvZ2luID0gJ0FjY291bnQuTG9naW5Db21wb25lbnQnLFxyXG4gIFJlZ2lzdGVyID0gJ0FjY291bnQuUmVnaXN0ZXJDb21wb25lbnQnLFxyXG4gIEZvcmdvdFBhc3N3b3JkID0gJ0FjY291bnQuRm9yZ290UGFzc3dvcmRDb21wb25lbnQnLFxyXG4gIFJlc2V0UGFzc3dvcmQgPSAnQWNjb3VudC5SZXNldFBhc3N3b3JkQ29tcG9uZW50JyxcclxuICBNYW5hZ2VQcm9maWxlID0gJ0FjY291bnQuTWFuYWdlUHJvZmlsZUNvbXBvbmVudCcsXHJcbiAgVGVuYW50Qm94ID0gJ0FjY291bnQuVGVuYW50Qm94Q29tcG9uZW50JyxcclxuICBBdXRoV3JhcHBlciA9ICdBY2NvdW50LkF1dGhXcmFwcGVyQ29tcG9uZW50JyxcclxuICBDaGFuZ2VQYXNzd29yZCA9ICdBY2NvdW50LkNoYW5nZVBhc3N3b3JkQ29tcG9uZW50JyxcclxuICBQZXJzb25hbFNldHRpbmdzID0gJ0FjY291bnQuUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudCcsXHJcbn1cclxuIl19
@@ -1,2 +1,2 @@
1
- export * from './components';
1
+ export * from './components';
2
2
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvZW51bXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbXBvbmVudHMnO1xyXG4iXX0=
@@ -0,0 +1,21 @@
1
+ import { AuthService } from '@abp/ng.core';
2
+ import { Injectable, inject } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ class AuthenticationFlowGuard {
5
+ constructor() {
6
+ this.authService = inject(AuthService);
7
+ }
8
+ canActivate() {
9
+ if (this.authService.isInternalAuth)
10
+ return true;
11
+ this.authService.navigateToLogin();
12
+ return false;
13
+ }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AuthenticationFlowGuard, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
15
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AuthenticationFlowGuard }); }
16
+ }
17
+ export { AuthenticationFlowGuard };
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AuthenticationFlowGuard, decorators: [{
19
+ type: Injectable
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24tZmxvdy5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FjY291bnQvc3JjL2xpYi9ndWFyZHMvYXV0aGVudGljYXRpb24tZmxvdy5ndWFyZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFhLE1BQU0sY0FBYyxDQUFDO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUVuRCxNQUNhLHVCQUF1QjtJQURwQztRQUVxQixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztLQVF0RDtJQU5DLFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRWpELElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDbkMsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzhHQVJVLHVCQUF1QjtrSEFBdkIsdUJBQXVCOztTQUF2Qix1QkFBdUI7MkZBQXZCLHVCQUF1QjtrQkFEbkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhTZXJ2aWNlLCBJQWJwR3VhcmQgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uRmxvd0d1YXJkIGltcGxlbWVudHMgSUFicEd1YXJkIHtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xyXG5cclxuICBjYW5BY3RpdmF0ZSgpIHtcclxuICAgIGlmICh0aGlzLmF1dGhTZXJ2aWNlLmlzSW50ZXJuYWxBdXRoKSByZXR1cm4gdHJ1ZTtcclxuXHJcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLm5hdmlnYXRlVG9Mb2dpbigpO1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxufVxyXG4iXX0=