@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
@@ -1,103 +0,0 @@
1
- import { CoreModule, LazyModuleFactory } from '@abp/ng.core';
2
- import { ThemeSharedModule } from '@abp/ng.theme.shared';
3
- import { NgModule } from '@angular/core';
4
- import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
5
- import { NgxValidateCoreModule } from '@ngx-validate/core';
6
- import { AccountRoutingModule } from './account-routing.module';
7
- import { ChangePasswordComponent } from './components/change-password/change-password.component';
8
- import { LoginComponent } from './components/login/login.component';
9
- import { ManageProfileComponent } from './components/manage-profile/manage-profile.component';
10
- import { PersonalSettingsComponent } from './components/personal-settings/personal-settings.component';
11
- import { RegisterComponent } from './components/register/register.component';
12
- import { ACCOUNT_CONFIG_OPTIONS } from './tokens/config-options.token';
13
- import { accountConfigOptionsFactory } from './utils/factory-utils';
14
- import { AuthenticationFlowGuard } from './guards/authentication-flow.guard';
15
- import { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';
16
- import { ResetPasswordComponent } from './components/reset-password/reset-password.component';
17
- import { RE_LOGIN_CONFIRMATION_TOKEN } from './tokens';
18
- import { UiExtensionsModule } from '@abp/ng.theme.shared/extensions';
19
- import { ACCOUNT_EDIT_FORM_PROP_CONTRIBUTORS } from './tokens/extensions.token';
20
- import { AccountExtensionsGuard } from './guards/extensions.guard';
21
- import { PersonalSettingsHalfRowComponent } from './components/personal-settings/personal-settings-half-row.component';
22
- import * as i0 from "@angular/core";
23
- const declarations = [
24
- LoginComponent,
25
- RegisterComponent,
26
- ChangePasswordComponent,
27
- ManageProfileComponent,
28
- PersonalSettingsComponent,
29
- ForgotPasswordComponent,
30
- ResetPasswordComponent,
31
- PersonalSettingsHalfRowComponent,
32
- ];
33
- export class AccountModule {
34
- static forChild(options = {}) {
35
- return {
36
- ngModule: AccountModule,
37
- providers: [
38
- AuthenticationFlowGuard,
39
- { provide: ACCOUNT_CONFIG_OPTIONS, useValue: options },
40
- {
41
- provide: 'ACCOUNT_OPTIONS',
42
- useFactory: accountConfigOptionsFactory,
43
- deps: [ACCOUNT_CONFIG_OPTIONS],
44
- },
45
- {
46
- provide: RE_LOGIN_CONFIRMATION_TOKEN,
47
- useValue: options.isPersonalSettingsChangedConfirmationActive ?? true,
48
- },
49
- {
50
- provide: ACCOUNT_EDIT_FORM_PROP_CONTRIBUTORS,
51
- useValue: options.editFormPropContributors,
52
- },
53
- AccountExtensionsGuard,
54
- ],
55
- };
56
- }
57
- static forLazy(options = {}) {
58
- return new LazyModuleFactory(AccountModule.forChild(options));
59
- }
60
- }
61
- AccountModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AccountModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
62
- AccountModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: AccountModule, declarations: [LoginComponent,
63
- RegisterComponent,
64
- ChangePasswordComponent,
65
- ManageProfileComponent,
66
- PersonalSettingsComponent,
67
- ForgotPasswordComponent,
68
- ResetPasswordComponent,
69
- PersonalSettingsHalfRowComponent], imports: [CoreModule,
70
- AccountRoutingModule,
71
- ThemeSharedModule,
72
- NgbDropdownModule,
73
- NgxValidateCoreModule,
74
- UiExtensionsModule], exports: [LoginComponent,
75
- RegisterComponent,
76
- ChangePasswordComponent,
77
- ManageProfileComponent,
78
- PersonalSettingsComponent,
79
- ForgotPasswordComponent,
80
- ResetPasswordComponent,
81
- PersonalSettingsHalfRowComponent] });
82
- AccountModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AccountModule, imports: [CoreModule,
83
- AccountRoutingModule,
84
- ThemeSharedModule,
85
- NgbDropdownModule,
86
- NgxValidateCoreModule,
87
- UiExtensionsModule] });
88
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: AccountModule, decorators: [{
89
- type: NgModule,
90
- args: [{
91
- declarations: [...declarations],
92
- imports: [
93
- CoreModule,
94
- AccountRoutingModule,
95
- ThemeSharedModule,
96
- NgbDropdownModule,
97
- NgxValidateCoreModule,
98
- UiExtensionsModule,
99
- ],
100
- exports: [...declarations],
101
- }]
102
- }] });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQXVCLFFBQVEsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTdFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQzs7QUFFdkgsTUFBTSxZQUFZLEdBQUc7SUFDbkIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQix1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLGdDQUFnQztDQUNqQyxDQUFDO0FBY0YsTUFBTSxPQUFPLGFBQWE7SUFDeEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQTBCO1FBQ2xELE9BQU87WUFDTCxRQUFRLEVBQUUsYUFBYTtZQUN2QixTQUFTLEVBQUU7Z0JBQ1QsdUJBQXVCO2dCQUN2QixFQUFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFO2dCQUN0RDtvQkFDRSxPQUFPLEVBQUUsaUJBQWlCO29CQUMxQixVQUFVLEVBQUUsMkJBQTJCO29CQUN2QyxJQUFJLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDL0I7Z0JBQ0Q7b0JBQ0UsT0FBTyxFQUFFLDJCQUEyQjtvQkFDcEMsUUFBUSxFQUFFLE9BQU8sQ0FBQywyQ0FBMkMsSUFBSSxJQUFJO2lCQUN0RTtnQkFDRDtvQkFDRSxPQUFPLEVBQUUsbUNBQW1DO29CQUM1QyxRQUFRLEVBQUUsT0FBTyxDQUFDLHdCQUF3QjtpQkFDM0M7Z0JBQ0Qsc0JBQXNCO2FBQ3ZCO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBMEI7UUFDakQsT0FBTyxJQUFJLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDOzswR0EzQlUsYUFBYTsyR0FBYixhQUFhLGlCQXRCeEIsY0FBYztRQUNkLGlCQUFpQjtRQUNqQix1QkFBdUI7UUFDdkIsc0JBQXNCO1FBQ3RCLHlCQUF5QjtRQUN6Qix1QkFBdUI7UUFDdkIsc0JBQXNCO1FBQ3RCLGdDQUFnQyxhQU05QixVQUFVO1FBQ1Ysb0JBQW9CO1FBQ3BCLGlCQUFpQjtRQUNqQixpQkFBaUI7UUFDakIscUJBQXFCO1FBQ3JCLGtCQUFrQixhQWxCcEIsY0FBYztRQUNkLGlCQUFpQjtRQUNqQix1QkFBdUI7UUFDdkIsc0JBQXNCO1FBQ3RCLHlCQUF5QjtRQUN6Qix1QkFBdUI7UUFDdkIsc0JBQXNCO1FBQ3RCLGdDQUFnQzsyR0FlckIsYUFBYSxZQVR0QixVQUFVO1FBQ1Ysb0JBQW9CO1FBQ3BCLGlCQUFpQjtRQUNqQixpQkFBaUI7UUFDakIscUJBQXFCO1FBQ3JCLGtCQUFrQjsyRkFJVCxhQUFhO2tCQVp6QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLEdBQUcsWUFBWSxDQUFDO29CQUMvQixPQUFPLEVBQUU7d0JBQ1AsVUFBVTt3QkFDVixvQkFBb0I7d0JBQ3BCLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQixxQkFBcUI7d0JBQ3JCLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFLENBQUMsR0FBRyxZQUFZLENBQUM7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29yZU1vZHVsZSwgTGF6eU1vZHVsZUZhY3RvcnkgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBUaGVtZVNoYXJlZE1vZHVsZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE5nTW9kdWxlRmFjdG9yeSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ2JEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgTmd4VmFsaWRhdGVDb3JlTW9kdWxlIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgQWNjb3VudFJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2FjY291bnQtcm91dGluZy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExvZ2luQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hbmFnZVByb2ZpbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbWFuYWdlLXByb2ZpbGUvbWFuYWdlLXByb2ZpbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wZXJzb25hbC1zZXR0aW5ncy9wZXJzb25hbC1zZXR0aW5ncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZWdpc3RlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9yZWdpc3Rlci9yZWdpc3Rlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY2NvdW50Q29uZmlnT3B0aW9ucyB9IGZyb20gJy4vbW9kZWxzL2NvbmZpZy1vcHRpb25zJztcclxuaW1wb3J0IHsgQUNDT1VOVF9DT05GSUdfT1BUSU9OUyB9IGZyb20gJy4vdG9rZW5zL2NvbmZpZy1vcHRpb25zLnRva2VuJztcclxuaW1wb3J0IHsgYWNjb3VudENvbmZpZ09wdGlvbnNGYWN0b3J5IH0gZnJvbSAnLi91dGlscy9mYWN0b3J5LXV0aWxzJztcclxuaW1wb3J0IHsgQXV0aGVudGljYXRpb25GbG93R3VhcmQgfSBmcm9tICcuL2d1YXJkcy9hdXRoZW50aWNhdGlvbi1mbG93Lmd1YXJkJztcclxuaW1wb3J0IHsgRm9yZ290UGFzc3dvcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXNldFBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Jlc2V0LXBhc3N3b3JkL3Jlc2V0LXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJFX0xPR0lOX0NPTkZJUk1BVElPTl9UT0tFTiB9IGZyb20gJy4vdG9rZW5zJztcclxuaW1wb3J0IHsgVWlFeHRlbnNpb25zTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7IEFDQ09VTlRfRURJVF9GT1JNX1BST1BfQ09OVFJJQlVUT1JTIH0gZnJvbSAnLi90b2tlbnMvZXh0ZW5zaW9ucy50b2tlbic7XHJcbmltcG9ydCB7IEFjY291bnRFeHRlbnNpb25zR3VhcmQgfSBmcm9tICcuL2d1YXJkcy9leHRlbnNpb25zLmd1YXJkJztcclxuaW1wb3J0IHsgUGVyc29uYWxTZXR0aW5nc0hhbGZSb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MtaGFsZi1yb3cuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IGRlY2xhcmF0aW9ucyA9IFtcclxuICBMb2dpbkNvbXBvbmVudCxcclxuICBSZWdpc3RlckNvbXBvbmVudCxcclxuICBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCxcclxuICBNYW5hZ2VQcm9maWxlQ29tcG9uZW50LFxyXG4gIFBlcnNvbmFsU2V0dGluZ3NDb21wb25lbnQsXHJcbiAgRm9yZ290UGFzc3dvcmRDb21wb25lbnQsXHJcbiAgUmVzZXRQYXNzd29yZENvbXBvbmVudCxcclxuICBQZXJzb25hbFNldHRpbmdzSGFsZlJvd0NvbXBvbmVudCxcclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbLi4uZGVjbGFyYXRpb25zXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb3JlTW9kdWxlLFxyXG4gICAgQWNjb3VudFJvdXRpbmdNb2R1bGUsXHJcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcclxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxyXG4gICAgTmd4VmFsaWRhdGVDb3JlTW9kdWxlLFxyXG4gICAgVWlFeHRlbnNpb25zTW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogWy4uLmRlY2xhcmF0aW9uc10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY2NvdW50TW9kdWxlIHtcclxuICBzdGF0aWMgZm9yQ2hpbGQob3B0aW9ucyA9IHt9IGFzIEFjY291bnRDb25maWdPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBY2NvdW50TW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogQWNjb3VudE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQXV0aGVudGljYXRpb25GbG93R3VhcmQsXHJcbiAgICAgICAgeyBwcm92aWRlOiBBQ0NPVU5UX0NPTkZJR19PUFRJT05TLCB1c2VWYWx1ZTogb3B0aW9ucyB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6ICdBQ0NPVU5UX09QVElPTlMnLFxyXG4gICAgICAgICAgdXNlRmFjdG9yeTogYWNjb3VudENvbmZpZ09wdGlvbnNGYWN0b3J5LFxyXG4gICAgICAgICAgZGVwczogW0FDQ09VTlRfQ09ORklHX09QVElPTlNdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogUkVfTE9HSU5fQ09ORklSTUFUSU9OX1RPS0VOLFxyXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnMuaXNQZXJzb25hbFNldHRpbmdzQ2hhbmdlZENvbmZpcm1hdGlvbkFjdGl2ZSA/PyB0cnVlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogQUNDT1VOVF9FRElUX0ZPUk1fUFJPUF9DT05UUklCVVRPUlMsXHJcbiAgICAgICAgICB1c2VWYWx1ZTogb3B0aW9ucy5lZGl0Rm9ybVByb3BDb250cmlidXRvcnMsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBBY2NvdW50RXh0ZW5zaW9uc0d1YXJkLFxyXG4gICAgICBdLFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyBmb3JMYXp5KG9wdGlvbnMgPSB7fSBhcyBBY2NvdW50Q29uZmlnT3B0aW9ucyk6IE5nTW9kdWxlRmFjdG9yeTxBY2NvdW50TW9kdWxlPiB7XHJcbiAgICByZXR1cm4gbmV3IExhenlNb2R1bGVGYWN0b3J5KEFjY291bnRNb2R1bGUuZm9yQ2hpbGQob3B0aW9ucykpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,87 +0,0 @@
1
- import { ProfileService } from '@abp/ng.account.core/proxy';
2
- import { getPasswordValidators, ToasterService } from '@abp/ng.theme.shared';
3
- import { Component, Injector } from '@angular/core';
4
- import { UntypedFormBuilder, UntypedFormControl, Validators, } from '@angular/forms';
5
- import { comparePasswords } from '@ngx-validate/core';
6
- import { finalize } from 'rxjs/operators';
7
- import { ManageProfileStateService } from '../../services/manage-profile.state.service';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/forms";
10
- import * as i2 from "@abp/ng.theme.shared";
11
- import * as i3 from "@abp/ng.account.core/proxy";
12
- import * as i4 from "../../services/manage-profile.state.service";
13
- import * as i5 from "@angular/common";
14
- import * as i6 from "@abp/ng.core";
15
- import * as i7 from "@ngx-validate/core";
16
- const { required } = Validators;
17
- const PASSWORD_FIELDS = ['newPassword', 'repeatNewPassword'];
18
- export class ChangePasswordComponent {
19
- constructor(fb, injector, toasterService, profileService, manageProfileState) {
20
- this.fb = fb;
21
- this.injector = injector;
22
- this.toasterService = toasterService;
23
- this.profileService = profileService;
24
- this.manageProfileState = manageProfileState;
25
- this.mapErrorsFn = (errors, groupErrors, control) => {
26
- if (PASSWORD_FIELDS.indexOf(String(control?.name)) < 0)
27
- return errors;
28
- return errors.concat(groupErrors.filter(({ key }) => key === 'passwordMismatch'));
29
- };
30
- }
31
- ngOnInit() {
32
- this.hideCurrentPassword = !this.manageProfileState.getProfile()?.hasPassword;
33
- const passwordValidations = getPasswordValidators(this.injector);
34
- this.form = this.fb.group({
35
- password: ['', required],
36
- newPassword: [
37
- '',
38
- {
39
- validators: [required, ...passwordValidations],
40
- },
41
- ],
42
- repeatNewPassword: [
43
- '',
44
- {
45
- validators: [required, ...passwordValidations],
46
- },
47
- ],
48
- }, {
49
- validators: [comparePasswords(PASSWORD_FIELDS)],
50
- });
51
- if (this.hideCurrentPassword)
52
- this.form.removeControl('password');
53
- }
54
- onSubmit() {
55
- if (this.form.invalid)
56
- return;
57
- this.inProgress = true;
58
- this.profileService
59
- .changePassword({
60
- ...(!this.hideCurrentPassword && { currentPassword: this.form.get('password')?.value }),
61
- newPassword: this.form.get('newPassword')?.value,
62
- })
63
- .pipe(finalize(() => (this.inProgress = false)))
64
- .subscribe({
65
- next: () => {
66
- this.form.reset();
67
- this.toasterService.success('AbpAccount::PasswordChangedMessage', '', {
68
- life: 5000,
69
- });
70
- if (this.hideCurrentPassword) {
71
- this.hideCurrentPassword = false;
72
- this.form.addControl('password', new UntypedFormControl('', [required]));
73
- }
74
- },
75
- error: err => {
76
- this.toasterService.error(err.error?.error?.message || 'AbpAccount::DefaultErrorMessage');
77
- },
78
- });
79
- }
80
- }
81
- ChangePasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ChangePasswordComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i0.Injector }, { token: i2.ToasterService }, { token: i3.ProfileService }, { token: i4.ManageProfileStateService }], target: i0.ɵɵFactoryTarget.Component });
82
- ChangePasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ChangePasswordComponent, selector: "abp-change-password-form", exportAs: ["abpChangePasswordForm"], ngImport: i0, template: "<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" [mapErrorsFn]=\"mapErrorsFn\" validateOnSubmit>\r\n <div *ngIf=\"!hideCurrentPassword\" class=\"mb-3 form-group\">\r\n <label for=\"current-password\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:CurrentPassword' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"current-password\"\r\n class=\"form-control\"\r\n formControlName=\"password\"\r\n autofocus\r\n autocomplete=\"current-password\"\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"new-password\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:NewPassword' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"new-password\"\r\n class=\"form-control\"\r\n formControlName=\"newPassword\"\r\n autocomplete=\"new-password\"\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"confirm-new-password\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:NewPasswordConfirm' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"confirm-new-password\"\r\n class=\"form-control\"\r\n formControlName=\"repeatNewPassword\"\r\n autocomplete=\"new-password\"\r\n />\r\n </div>\r\n <abp-button\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n buttonType=\"submit\"\r\n [loading]=\"inProgress\"\r\n [disabled]=\"form?.invalid\"\r\n >{{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\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.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }, { kind: "directive", type: i6.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: i2.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "pipe", type: i6.LocalizationPipe, name: "abpLocalization" }] });
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ChangePasswordComponent, decorators: [{
84
- type: Component,
85
- args: [{ selector: 'abp-change-password-form', exportAs: 'abpChangePasswordForm', template: "<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" [mapErrorsFn]=\"mapErrorsFn\" validateOnSubmit>\r\n <div *ngIf=\"!hideCurrentPassword\" class=\"mb-3 form-group\">\r\n <label for=\"current-password\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:CurrentPassword' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"current-password\"\r\n class=\"form-control\"\r\n formControlName=\"password\"\r\n autofocus\r\n autocomplete=\"current-password\"\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"new-password\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:NewPassword' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"new-password\"\r\n class=\"form-control\"\r\n formControlName=\"newPassword\"\r\n autocomplete=\"new-password\"\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"confirm-new-password\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:NewPasswordConfirm' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"password\"\r\n id=\"confirm-new-password\"\r\n class=\"form-control\"\r\n formControlName=\"repeatNewPassword\"\r\n autocomplete=\"new-password\"\r\n />\r\n </div>\r\n <abp-button\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n buttonType=\"submit\"\r\n [loading]=\"inProgress\"\r\n [disabled]=\"form?.invalid\"\r\n >{{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\r\n</form>\r\n" }]
86
- }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i0.Injector }, { type: i2.ToasterService }, { type: i3.ProfileService }, { type: i4.ManageProfileStateService }]; } });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBRWxCLFVBQVUsR0FDWCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBYyxNQUFNLG9CQUFvQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7Ozs7O0FBRXhGLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxVQUFVLENBQUM7QUFFaEMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztBQU83RCxNQUFNLE9BQU8sdUJBQXVCO0lBZWxDLFlBQ1UsRUFBc0IsRUFDdEIsUUFBa0IsRUFDbEIsY0FBOEIsRUFDOUIsY0FBOEIsRUFDOUIsa0JBQTZDO1FBSjdDLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQTJCO1FBWHZELGdCQUFXLEdBQTJCLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNyRSxJQUFJLGVBQWUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUM7Z0JBQUUsT0FBTyxNQUFNLENBQUM7WUFFdEUsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssa0JBQWtCLENBQUMsQ0FBQyxDQUFDO1FBQ3BGLENBQUMsQ0FBQztJQVFDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLG1CQUFtQixHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxFQUFFLFdBQVcsQ0FBQztRQUU5RSxNQUFNLG1CQUFtQixHQUFHLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUVqRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUN2QjtZQUNFLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUM7WUFDeEIsV0FBVyxFQUFFO2dCQUNYLEVBQUU7Z0JBQ0Y7b0JBQ0UsVUFBVSxFQUFFLENBQUMsUUFBUSxFQUFFLEdBQUcsbUJBQW1CLENBQUM7aUJBQy9DO2FBQ0Y7WUFDRCxpQkFBaUIsRUFBRTtnQkFDakIsRUFBRTtnQkFDRjtvQkFDRSxVQUFVLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxtQkFBbUIsQ0FBQztpQkFDL0M7YUFDRjtTQUNGLEVBQ0Q7WUFDRSxVQUFVLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUNoRCxDQUNGLENBQUM7UUFFRixJQUFJLElBQUksQ0FBQyxtQkFBbUI7WUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUM5QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYzthQUNoQixjQUFjLENBQUM7WUFDZCxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDdkYsV0FBVyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUs7U0FDakQsQ0FBQzthQUNELElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDL0MsU0FBUyxDQUFDO1lBQ1QsSUFBSSxFQUFFLEdBQUcsRUFBRTtnQkFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsRUFBRSxFQUFFLEVBQUU7b0JBQ3BFLElBQUksRUFBRSxJQUFJO2lCQUNYLENBQUMsQ0FBQztnQkFFSCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtvQkFDNUIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEtBQUssQ0FBQztvQkFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUMxRTtZQUNILENBQUM7WUFDRCxLQUFLLEVBQUUsR0FBRyxDQUFDLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsT0FBTyxJQUFJLGlDQUFpQyxDQUFDLENBQUM7WUFDNUYsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNQLENBQUM7O29IQTdFVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixxR0N2QnBDLHNxREFrREE7MkZEM0JhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSwwQkFBMEIsWUFFMUIsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZmlsZVNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmFjY291bnQuY29yZS9wcm94eSc7XHJcbmltcG9ydCB7IGdldFBhc3N3b3JkVmFsaWRhdG9ycywgVG9hc3RlclNlcnZpY2UgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIFVudHlwZWRGb3JtQnVpbGRlcixcclxuICBVbnR5cGVkRm9ybUNvbnRyb2wsXHJcbiAgVW50eXBlZEZvcm1Hcm91cCxcclxuICBWYWxpZGF0b3JzLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgY29tcGFyZVBhc3N3b3JkcywgVmFsaWRhdGlvbiB9IGZyb20gJ0BuZ3gtdmFsaWRhdGUvY29yZSc7XHJcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBY2NvdW50IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjY291bnQnO1xyXG5pbXBvcnQgeyBNYW5hZ2VQcm9maWxlU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWFuYWdlLXByb2ZpbGUuc3RhdGUuc2VydmljZSc7XHJcblxyXG5jb25zdCB7IHJlcXVpcmVkIH0gPSBWYWxpZGF0b3JzO1xyXG5cclxuY29uc3QgUEFTU1dPUkRfRklFTERTID0gWyduZXdQYXNzd29yZCcsICdyZXBlYXROZXdQYXNzd29yZCddO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtY2hhbmdlLXBhc3N3b3JkLWZvcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGV4cG9ydEFzOiAnYWJwQ2hhbmdlUGFzc3dvcmRGb3JtJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIENoYW5nZVBhc3N3b3JkQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFjY291bnQuQ2hhbmdlUGFzc3dvcmRDb21wb25lbnRJbnB1dHMsIEFjY291bnQuQ2hhbmdlUGFzc3dvcmRDb21wb25lbnRPdXRwdXRzXHJcbntcclxuICBmb3JtITogVW50eXBlZEZvcm1Hcm91cDtcclxuXHJcbiAgaW5Qcm9ncmVzcz86IGJvb2xlYW47XHJcblxyXG4gIGhpZGVDdXJyZW50UGFzc3dvcmQ/OiBib29sZWFuO1xyXG5cclxuICBtYXBFcnJvcnNGbjogVmFsaWRhdGlvbi5NYXBFcnJvcnNGbiA9IChlcnJvcnMsIGdyb3VwRXJyb3JzLCBjb250cm9sKSA9PiB7XHJcbiAgICBpZiAoUEFTU1dPUkRfRklFTERTLmluZGV4T2YoU3RyaW5nKGNvbnRyb2w/Lm5hbWUpKSA8IDApIHJldHVybiBlcnJvcnM7XHJcblxyXG4gICAgcmV0dXJuIGVycm9ycy5jb25jYXQoZ3JvdXBFcnJvcnMuZmlsdGVyKCh7IGtleSB9KSA9PiBrZXkgPT09ICdwYXNzd29yZE1pc21hdGNoJykpO1xyXG4gIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBmYjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcml2YXRlIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtYW5hZ2VQcm9maWxlU3RhdGU6IE1hbmFnZVByb2ZpbGVTdGF0ZVNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaGlkZUN1cnJlbnRQYXNzd29yZCA9ICF0aGlzLm1hbmFnZVByb2ZpbGVTdGF0ZS5nZXRQcm9maWxlKCk/Lmhhc1Bhc3N3b3JkO1xyXG5cclxuICAgIGNvbnN0IHBhc3N3b3JkVmFsaWRhdGlvbnMgPSBnZXRQYXNzd29yZFZhbGlkYXRvcnModGhpcy5pbmplY3Rvcik7XHJcblxyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cChcclxuICAgICAge1xyXG4gICAgICAgIHBhc3N3b3JkOiBbJycsIHJlcXVpcmVkXSxcclxuICAgICAgICBuZXdQYXNzd29yZDogW1xyXG4gICAgICAgICAgJycsXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbGlkYXRvcnM6IFtyZXF1aXJlZCwgLi4ucGFzc3dvcmRWYWxpZGF0aW9uc10sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgICAgcmVwZWF0TmV3UGFzc3dvcmQ6IFtcclxuICAgICAgICAgICcnLFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICB2YWxpZGF0b3JzOiBbcmVxdWlyZWQsIC4uLnBhc3N3b3JkVmFsaWRhdGlvbnNdLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICBdLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgdmFsaWRhdG9yczogW2NvbXBhcmVQYXNzd29yZHMoUEFTU1dPUkRfRklFTERTKV0sXHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG5cclxuICAgIGlmICh0aGlzLmhpZGVDdXJyZW50UGFzc3dvcmQpIHRoaXMuZm9ybS5yZW1vdmVDb250cm9sKCdwYXNzd29yZCcpO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHJldHVybjtcclxuICAgIHRoaXMuaW5Qcm9ncmVzcyA9IHRydWU7XHJcbiAgICB0aGlzLnByb2ZpbGVTZXJ2aWNlXHJcbiAgICAgIC5jaGFuZ2VQYXNzd29yZCh7XHJcbiAgICAgICAgLi4uKCF0aGlzLmhpZGVDdXJyZW50UGFzc3dvcmQgJiYgeyBjdXJyZW50UGFzc3dvcmQ6IHRoaXMuZm9ybS5nZXQoJ3Bhc3N3b3JkJyk/LnZhbHVlIH0pLFxyXG4gICAgICAgIG5ld1Bhc3N3b3JkOiB0aGlzLmZvcm0uZ2V0KCduZXdQYXNzd29yZCcpPy52YWx1ZSxcclxuICAgICAgfSlcclxuICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMuaW5Qcm9ncmVzcyA9IGZhbHNlKSkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuZm9ybS5yZXNldCgpO1xyXG4gICAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5zdWNjZXNzKCdBYnBBY2NvdW50OjpQYXNzd29yZENoYW5nZWRNZXNzYWdlJywgJycsIHtcclxuICAgICAgICAgICAgbGlmZTogNTAwMCxcclxuICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmhpZGVDdXJyZW50UGFzc3dvcmQpIHtcclxuICAgICAgICAgICAgdGhpcy5oaWRlQ3VycmVudFBhc3N3b3JkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKCdwYXNzd29yZCcsIG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycsIFtyZXF1aXJlZF0pKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiBlcnIgPT4ge1xyXG4gICAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5lcnJvcihlcnIuZXJyb3I/LmVycm9yPy5tZXNzYWdlIHx8ICdBYnBBY2NvdW50OjpEZWZhdWx0RXJyb3JNZXNzYWdlJyk7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCIgW21hcEVycm9yc0ZuXT1cIm1hcEVycm9yc0ZuXCIgdmFsaWRhdGVPblN1Ym1pdD5cclxuICA8ZGl2ICpuZ0lmPVwiIWhpZGVDdXJyZW50UGFzc3dvcmRcIiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgPGxhYmVsIGZvcj1cImN1cnJlbnQtcGFzc3dvcmRcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOkN1cnJlbnRQYXNzd29yZCcgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgIH19PC9sYWJlbFxyXG4gICAgPjxzcGFuPiAqIDwvc3BhblxyXG4gICAgPjxpbnB1dFxyXG4gICAgICB0eXBlPVwicGFzc3dvcmRcIlxyXG4gICAgICBpZD1cImN1cnJlbnQtcGFzc3dvcmRcIlxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCJcclxuICAgICAgYXV0b2ZvY3VzXHJcbiAgICAgIGF1dG9jb21wbGV0ZT1cImN1cnJlbnQtcGFzc3dvcmRcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwibmV3LXBhc3N3b3JkXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpOZXdQYXNzd29yZCcgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgIH19PC9sYWJlbFxyXG4gICAgPjxzcGFuPiAqIDwvc3BhblxyXG4gICAgPjxpbnB1dFxyXG4gICAgICB0eXBlPVwicGFzc3dvcmRcIlxyXG4gICAgICBpZD1cIm5ldy1wYXNzd29yZFwiXHJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibmV3UGFzc3dvcmRcIlxyXG4gICAgICBhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwiY29uZmlybS1uZXctcGFzc3dvcmRcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOk5ld1Bhc3N3b3JkQ29uZmlybScgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgIH19PC9sYWJlbFxyXG4gICAgPjxzcGFuPiAqIDwvc3BhblxyXG4gICAgPjxpbnB1dFxyXG4gICAgICB0eXBlPVwicGFzc3dvcmRcIlxyXG4gICAgICBpZD1cImNvbmZpcm0tbmV3LXBhc3N3b3JkXCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJyZXBlYXROZXdQYXNzd29yZFwiXHJcbiAgICAgIGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG4gIDxhYnAtYnV0dG9uXHJcbiAgICBpY29uQ2xhc3M9XCJmYSBmYS1jaGVja1wiXHJcbiAgICBidXR0b25DbGFzcz1cImJ0biBidG4tcHJpbWFyeSBjb2xvci13aGl0ZVwiXHJcbiAgICBidXR0b25UeXBlPVwic3VibWl0XCJcclxuICAgIFtsb2FkaW5nXT1cImluUHJvZ3Jlc3NcIlxyXG4gICAgW2Rpc2FibGVkXT1cImZvcm0/LmludmFsaWRcIlxyXG4gICAgPnt7ICdBYnBJZGVudGl0eTo6U2F2ZScgfCBhYnBMb2NhbGl6YXRpb24gfX08L2FicC1idXR0b25cclxuICA+XHJcbjwvZm9ybT5cclxuIl19
@@ -1,43 +0,0 @@
1
- import { AccountService } from '@abp/ng.account.core/proxy';
2
- import { Component } from '@angular/core';
3
- import { UntypedFormBuilder, Validators } from '@angular/forms';
4
- import { finalize } from 'rxjs/operators';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/forms";
7
- import * as i2 from "@abp/ng.account.core/proxy";
8
- import * as i3 from "@angular/common";
9
- import * as i4 from "@angular/router";
10
- import * as i5 from "@abp/ng.core";
11
- import * as i6 from "@ngx-validate/core";
12
- import * as i7 from "@abp/ng.theme.shared";
13
- export class ForgotPasswordComponent {
14
- constructor(fb, accountService) {
15
- this.fb = fb;
16
- this.accountService = accountService;
17
- this.isEmailSent = false;
18
- this.form = this.fb.group({
19
- email: ['', [Validators.required, Validators.email]],
20
- });
21
- }
22
- onSubmit() {
23
- if (this.form.invalid)
24
- return;
25
- this.inProgress = true;
26
- this.accountService
27
- .sendPasswordResetCode({
28
- email: this.form.get('email')?.value,
29
- appName: 'Angular',
30
- })
31
- .pipe(finalize(() => (this.inProgress = false)))
32
- .subscribe(() => {
33
- this.isEmailSent = true;
34
- });
35
- }
36
- }
37
- ForgotPasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ForgotPasswordComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.AccountService }], target: i0.ɵɵFactoryTarget.Component });
38
- ForgotPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ForgotPasswordComponent, selector: "abp-forgot-password", ngImport: i0, template: "<h4>{{ 'AbpAccount::ForgotPassword' | abpLocalization }}</h4>\r\n\r\n<form\r\n *ngIf=\"!isEmailSent; else emailSentTemplate\"\r\n [formGroup]=\"form\"\r\n (ngSubmit)=\"onSubmit()\"\r\n validateOnSubmit\r\n>\r\n <p>{{ 'AbpAccount::SendPasswordResetLink_Information' | abpLocalization }}</p>\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 <abp-button\r\n class=\"d-block\"\r\n buttonClass=\"mt-2 mb-3 btn btn-primary btn-block\"\r\n [loading]=\"inProgress\"\r\n buttonType=\"submit\"\r\n [disabled]=\"form?.invalid\"\r\n >\r\n {{ 'AbpAccount::Submit' | abpLocalization }}\r\n </abp-button>\r\n <a routerLink=\"/account/login\"\r\n ><i class=\"fa fa-long-arrow-left me-1\"></i>{{ 'AbpAccount::Login' | abpLocalization }}</a\r\n >\r\n</form>\r\n\r\n<ng-template #emailSentTemplate>\r\n <p>\r\n {{ 'AbpAccount::PasswordResetMailSentMessage' | 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 btn-block\">\r\n <i class=\"fa fa-long-arrow-left me-1\"></i>\r\n {{ 'AbpAccount::BackToLogin' | abpLocalization }}\r\n </button>\r\n </a>\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i3.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: i4.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" }] });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ForgotPasswordComponent, decorators: [{
40
- type: Component,
41
- args: [{ selector: 'abp-forgot-password', template: "<h4>{{ 'AbpAccount::ForgotPassword' | abpLocalization }}</h4>\r\n\r\n<form\r\n *ngIf=\"!isEmailSent; else emailSentTemplate\"\r\n [formGroup]=\"form\"\r\n (ngSubmit)=\"onSubmit()\"\r\n validateOnSubmit\r\n>\r\n <p>{{ 'AbpAccount::SendPasswordResetLink_Information' | abpLocalization }}</p>\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 <abp-button\r\n class=\"d-block\"\r\n buttonClass=\"mt-2 mb-3 btn btn-primary btn-block\"\r\n [loading]=\"inProgress\"\r\n buttonType=\"submit\"\r\n [disabled]=\"form?.invalid\"\r\n >\r\n {{ 'AbpAccount::Submit' | abpLocalization }}\r\n </abp-button>\r\n <a routerLink=\"/account/login\"\r\n ><i class=\"fa fa-long-arrow-left me-1\"></i>{{ 'AbpAccount::Login' | abpLocalization }}</a\r\n >\r\n</form>\r\n\r\n<ng-template #emailSentTemplate>\r\n <p>\r\n {{ 'AbpAccount::PasswordResetMailSentMessage' | 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 btn-block\">\r\n <i class=\"fa fa-long-arrow-left me-1\"></i>\r\n {{ 'AbpAccount::BackToLogin' | abpLocalization }}\r\n </button>\r\n </a>\r\n</ng-template>\r\n" }]
42
- }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.AccountService }]; } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yZ290LXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL2ZvcmdvdC1wYXNzd29yZC9mb3Jnb3QtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQW9CLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBTTFDLE1BQU0sT0FBTyx1QkFBdUI7SUFPbEMsWUFBb0IsRUFBc0IsRUFBVSxjQUE4QjtRQUE5RCxPQUFFLEdBQUYsRUFBRSxDQUFvQjtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUZsRixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUdsQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3hCLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3JELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRTlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBRXZCLElBQUksQ0FBQyxjQUFjO2FBQ2hCLHFCQUFxQixDQUFDO1lBQ3JCLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLO1lBQ3BDLE9BQU8sRUFBRSxTQUFTO1NBQ25CLENBQUM7YUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQy9DLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O29IQTNCVSx1QkFBdUI7d0dBQXZCLHVCQUF1QiwyRENUcEMsODZDQTBDQTsyRkRqQ2EsdUJBQXVCO2tCQUpuQyxTQUFTOytCQUNFLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5hY2NvdW50LmNvcmUvcHJveHknO1xyXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLWZvcmdvdC1wYXNzd29yZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICdmb3Jnb3QtcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9yZ290UGFzc3dvcmRDb21wb25lbnQge1xyXG4gIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIGluUHJvZ3Jlc3M/OiBib29sZWFuO1xyXG5cclxuICBpc0VtYWlsU2VudCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsIHByaXZhdGUgYWNjb3VudFNlcnZpY2U6IEFjY291bnRTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgZW1haWw6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMuZW1haWxdXSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLmluUHJvZ3Jlc3MgPSB0cnVlO1xyXG5cclxuICAgIHRoaXMuYWNjb3VudFNlcnZpY2VcclxuICAgICAgLnNlbmRQYXNzd29yZFJlc2V0Q29kZSh7XHJcbiAgICAgICAgZW1haWw6IHRoaXMuZm9ybS5nZXQoJ2VtYWlsJyk/LnZhbHVlLFxyXG4gICAgICAgIGFwcE5hbWU6ICdBbmd1bGFyJyxcclxuICAgICAgfSlcclxuICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMuaW5Qcm9ncmVzcyA9IGZhbHNlKSkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaXNFbWFpbFNlbnQgPSB0cnVlO1xyXG4gICAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGg0Pnt7ICdBYnBBY2NvdW50OjpGb3Jnb3RQYXNzd29yZCcgfCBhYnBMb2NhbGl6YXRpb24gfX08L2g0PlxyXG5cclxuPGZvcm1cclxuICAqbmdJZj1cIiFpc0VtYWlsU2VudDsgZWxzZSBlbWFpbFNlbnRUZW1wbGF0ZVwiXHJcbiAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcclxuICAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiXHJcbiAgdmFsaWRhdGVPblN1Ym1pdFxyXG4+XHJcbiAgPHA+e3sgJ0FicEFjY291bnQ6OlNlbmRQYXNzd29yZFJlc2V0TGlua19JbmZvcm1hdGlvbicgfCBhYnBMb2NhbGl6YXRpb24gfX08L3A+XHJcbiAgPGRpdiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgPGxhYmVsIGZvcj1cImlucHV0LWVtYWlsLWFkZHJlc3NcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAnQWJwQWNjb3VudDo6RW1haWxBZGRyZXNzJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PHNwYW4+ICogPC9zcGFuPlxyXG4gICAgPGlucHV0IHR5cGU9XCJlbWFpbFwiIGlkPVwiaW5wdXQtZW1haWwtYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxcIiAvPlxyXG4gIDwvZGl2PlxyXG4gIDxhYnAtYnV0dG9uXHJcbiAgICBjbGFzcz1cImQtYmxvY2tcIlxyXG4gICAgYnV0dG9uQ2xhc3M9XCJtdC0yIG1iLTMgYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9ja1wiXHJcbiAgICBbbG9hZGluZ109XCJpblByb2dyZXNzXCJcclxuICAgIGJ1dHRvblR5cGU9XCJzdWJtaXRcIlxyXG4gICAgW2Rpc2FibGVkXT1cImZvcm0/LmludmFsaWRcIlxyXG4gID5cclxuICAgIHt7ICdBYnBBY2NvdW50OjpTdWJtaXQnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgPC9hYnAtYnV0dG9uPlxyXG4gIDxhIHJvdXRlckxpbms9XCIvYWNjb3VudC9sb2dpblwiXHJcbiAgICA+PGkgY2xhc3M9XCJmYSBmYS1sb25nLWFycm93LWxlZnQgbWUtMVwiPjwvaT57eyAnQWJwQWNjb3VudDo6TG9naW4nIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hXHJcbiAgPlxyXG48L2Zvcm0+XHJcblxyXG48bmctdGVtcGxhdGUgI2VtYWlsU2VudFRlbXBsYXRlPlxyXG4gIDxwPlxyXG4gICAge3sgJ0FicEFjY291bnQ6OlBhc3N3b3JkUmVzZXRNYWlsU2VudE1lc3NhZ2UnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgPC9wPlxyXG5cclxuICA8YSByb3V0ZXJMaW5rPVwiL2FjY291bnQvbG9naW5cIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJkLWJsb2NrIG10LTIgbWItMyBidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrXCI+XHJcbiAgICAgIDxpIGNsYXNzPVwiZmEgZmEtbG9uZy1hcnJvdy1sZWZ0IG1lLTFcIj48L2k+XHJcbiAgICAgIHt7ICdBYnBBY2NvdW50OjpCYWNrVG9Mb2dpbicgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvYT5cclxuPC9uZy10ZW1wbGF0ZT5cclxuIl19
@@ -1,64 +0,0 @@
1
- import { AuthService, ConfigStateService } from '@abp/ng.core';
2
- import { ToasterService } from '@abp/ng.theme.shared';
3
- import { Component, Injector } from '@angular/core';
4
- import { UntypedFormBuilder, Validators } from '@angular/forms';
5
- import { throwError } from 'rxjs';
6
- import { catchError, finalize } from 'rxjs/operators';
7
- import { getRedirectUrl } from '../../utils/auth-utils';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/forms";
10
- import * as i2 from "@abp/ng.theme.shared";
11
- import * as i3 from "@abp/ng.core";
12
- import * as i4 from "@angular/common";
13
- import * as i5 from "@angular/router";
14
- import * as i6 from "@ngx-validate/core";
15
- const { maxLength, required } = Validators;
16
- export class LoginComponent {
17
- constructor(injector, fb, toasterService, authService, configState) {
18
- this.injector = injector;
19
- this.fb = fb;
20
- this.toasterService = toasterService;
21
- this.authService = authService;
22
- this.configState = configState;
23
- this.isSelfRegistrationEnabled = true;
24
- this.authWrapperKey = "Account.AuthWrapperComponent" /* eAccountComponents.AuthWrapper */;
25
- }
26
- ngOnInit() {
27
- this.init();
28
- this.buildForm();
29
- }
30
- init() {
31
- this.isSelfRegistrationEnabled =
32
- (this.configState.getSetting('Abp.Account.IsSelfRegistrationEnabled') || '').toLowerCase() !== 'false';
33
- }
34
- buildForm() {
35
- this.form = this.fb.group({
36
- username: ['', [required, maxLength(255)]],
37
- password: ['', [required, maxLength(128)]],
38
- rememberMe: [false],
39
- });
40
- }
41
- onSubmit() {
42
- if (this.form.invalid)
43
- return;
44
- this.inProgress = true;
45
- const { username, password, rememberMe } = this.form.value;
46
- const redirectUrl = getRedirectUrl(this.injector);
47
- this.authService
48
- .login({ username, password, rememberMe, redirectUrl })
49
- .pipe(catchError(err => {
50
- this.toasterService.error(err.error?.error_description ||
51
- err.error?.error.message ||
52
- 'AbpAccount::DefaultErrorMessage', '', { life: 7000 });
53
- return throwError(err);
54
- }), finalize(() => (this.inProgress = false)))
55
- .subscribe();
56
- }
57
- }
58
- LoginComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LoginComponent, deps: [{ token: i0.Injector }, { token: i1.UntypedFormBuilder }, { token: i2.ToasterService }, { token: i3.AuthService }, { token: i3.ConfigStateService }], target: i0.ɵɵFactoryTarget.Component });
59
- LoginComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: LoginComponent, selector: "abp-login", ngImport: i0, template: "<h4>{{ 'AbpAccount::Login' | abpLocalization }}</h4>\r\n<strong *ngIf=\"isSelfRegistrationEnabled\">\r\n {{ 'AbpAccount::AreYouANewUser' | abpLocalization }}\r\n <a class=\"text-decoration-none\" routerLink=\"/account/register\" queryParamsHandling=\"preserve\">{{\r\n 'AbpAccount::Register' | abpLocalization\r\n }}</a>\r\n</strong>\r\n<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" validateOnSubmit class=\"mt-4\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"login-input-user-name-or-email-address\" class=\"form-label\">{{\r\n 'AbpAccount::UserNameOrEmailAddress' | abpLocalization\r\n }}</label>\r\n <input\r\n class=\"form-control\"\r\n type=\"text\"\r\n id=\"login-input-user-name-or-email-address\"\r\n formControlName=\"username\"\r\n autocomplete=\"username\"\r\n autofocus\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"login-input-password\" class=\"form-label\">{{ 'AbpAccount::Password' | abpLocalization }}</label>\r\n <input\r\n class=\"form-control\"\r\n type=\"password\"\r\n id=\"login-input-password\"\r\n formControlName=\"password\"\r\n autocomplete=\"current-password\"\r\n />\r\n </div>\r\n\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <div class=\"form-check\">\r\n <label class=\"form-check-label mb-2\" for=\"login-input-remember-me\">\r\n <input\r\n class=\"form-check-input\"\r\n type=\"checkbox\"\r\n id=\"login-input-remember-me\"\r\n formControlName=\"rememberMe\"\r\n />\r\n {{ 'AbpAccount::RememberMe' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"text-end col\">\r\n <a routerLink=\"/account/forgot-password\">{{\r\n 'AbpAccount::ForgotPassword' | abpLocalization\r\n }}</a>\r\n </div>\r\n </div>\r\n\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::Login' | abpLocalization }}\r\n </abp-button>\r\n</form>\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.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { 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: i5.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: i6.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i6.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { 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: "pipe", type: i3.LocalizationPipe, name: "abpLocalization" }] });
60
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: LoginComponent, decorators: [{
61
- type: Component,
62
- args: [{ selector: 'abp-login', template: "<h4>{{ 'AbpAccount::Login' | abpLocalization }}</h4>\r\n<strong *ngIf=\"isSelfRegistrationEnabled\">\r\n {{ 'AbpAccount::AreYouANewUser' | abpLocalization }}\r\n <a class=\"text-decoration-none\" routerLink=\"/account/register\" queryParamsHandling=\"preserve\">{{\r\n 'AbpAccount::Register' | abpLocalization\r\n }}</a>\r\n</strong>\r\n<form [formGroup]=\"form\" (ngSubmit)=\"onSubmit()\" validateOnSubmit class=\"mt-4\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"login-input-user-name-or-email-address\" class=\"form-label\">{{\r\n 'AbpAccount::UserNameOrEmailAddress' | abpLocalization\r\n }}</label>\r\n <input\r\n class=\"form-control\"\r\n type=\"text\"\r\n id=\"login-input-user-name-or-email-address\"\r\n formControlName=\"username\"\r\n autocomplete=\"username\"\r\n autofocus\r\n />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"login-input-password\" class=\"form-label\">{{ 'AbpAccount::Password' | abpLocalization }}</label>\r\n <input\r\n class=\"form-control\"\r\n type=\"password\"\r\n id=\"login-input-password\"\r\n formControlName=\"password\"\r\n autocomplete=\"current-password\"\r\n />\r\n </div>\r\n\r\n <div class=\"row\">\r\n <div class=\"col\">\r\n <div class=\"form-check\">\r\n <label class=\"form-check-label mb-2\" for=\"login-input-remember-me\">\r\n <input\r\n class=\"form-check-input\"\r\n type=\"checkbox\"\r\n id=\"login-input-remember-me\"\r\n formControlName=\"rememberMe\"\r\n />\r\n {{ 'AbpAccount::RememberMe' | abpLocalization }}\r\n </label>\r\n </div>\r\n </div>\r\n <div class=\"text-end col\">\r\n <a routerLink=\"/account/forgot-password\">{{\r\n 'AbpAccount::ForgotPassword' | abpLocalization\r\n }}</a>\r\n </div>\r\n </div>\r\n\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::Login' | abpLocalization }}\r\n </abp-button>\r\n</form>\r\n" }]
63
- }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.UntypedFormBuilder }, { type: i2.ToasterService }, { type: i3.AuthService }, { type: i3.ConfigStateService }]; } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFvQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7OztBQUV4RCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxHQUFHLFVBQVUsQ0FBQztBQU0zQyxNQUFNLE9BQU8sY0FBYztJQVN6QixZQUNZLFFBQWtCLEVBQ2xCLEVBQXNCLEVBQ3RCLGNBQThCLEVBQzlCLFdBQXdCLEVBQ3hCLFdBQStCO1FBSi9CLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsT0FBRSxHQUFGLEVBQUUsQ0FBb0I7UUFDdEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQVQzQyw4QkFBeUIsR0FBRyxJQUFJLENBQUM7UUFFakMsbUJBQWMsdUVBQWtDO0lBUTdDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ1osSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFUyxJQUFJO1FBQ1osSUFBSSxDQUFDLHlCQUF5QjtZQUM1QixDQUNHLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLHVDQUF1QyxDQUFZLElBQUksRUFBRSxDQUN2RixDQUFDLFdBQVcsRUFBRSxLQUFLLE9BQU8sQ0FBQztJQUNoQyxDQUFDO0lBRVMsU0FBUztRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3hCLFFBQVEsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMxQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDO1NBQ3BCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRTlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBRXZCLE1BQU0sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRTNELE1BQU0sV0FBVyxHQUFHLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFbEQsSUFBSSxDQUFDLFdBQVc7YUFDYixLQUFLLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsQ0FBQzthQUN0RCxJQUFJLENBQ0gsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ2YsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQ3ZCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsaUJBQWlCO2dCQUMxQixHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPO2dCQUN4QixpQ0FBaUMsRUFDbkMsRUFBRSxFQUNGLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUNmLENBQUM7WUFDRixPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsRUFDRixRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQzFDO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQzs7MkdBOURVLGNBQWM7K0ZBQWQsY0FBYyxpRENmM0Isb29FQThEQTsyRkQvQ2EsY0FBYztrQkFKMUIsU0FBUzsrQkFDRSxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aFNlcnZpY2UsIENvbmZpZ1N0YXRlU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdG9yLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGZpbmFsaXplIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBlQWNjb3VudENvbXBvbmVudHMgfSBmcm9tICcuLi8uLi9lbnVtcy9jb21wb25lbnRzJztcclxuaW1wb3J0IHsgZ2V0UmVkaXJlY3RVcmwgfSBmcm9tICcuLi8uLi91dGlscy9hdXRoLXV0aWxzJztcclxuXHJcbmNvbnN0IHsgbWF4TGVuZ3RoLCByZXF1aXJlZCB9ID0gVmFsaWRhdG9ycztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLWxvZ2luJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbG9naW4uY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTG9naW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGZvcm0hOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBpblByb2dyZXNzPzogYm9vbGVhbjtcclxuXHJcbiAgaXNTZWxmUmVnaXN0cmF0aW9uRW5hYmxlZCA9IHRydWU7XHJcblxyXG4gIGF1dGhXcmFwcGVyS2V5ID0gZUFjY291bnRDb21wb25lbnRzLkF1dGhXcmFwcGVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBwcm90ZWN0ZWQgZmI6IFVudHlwZWRGb3JtQnVpbGRlcixcclxuICAgIHByb3RlY3RlZCB0b2FzdGVyU2VydmljZTogVG9hc3RlclNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGNvbmZpZ1N0YXRlOiBDb25maWdTdGF0ZVNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBpbml0KCkge1xyXG4gICAgdGhpcy5pc1NlbGZSZWdpc3RyYXRpb25FbmFibGVkID1cclxuICAgICAgKFxyXG4gICAgICAgICh0aGlzLmNvbmZpZ1N0YXRlLmdldFNldHRpbmcoJ0FicC5BY2NvdW50LklzU2VsZlJlZ2lzdHJhdGlvbkVuYWJsZWQnKSBhcyBzdHJpbmcpIHx8ICcnXHJcbiAgICAgICkudG9Mb3dlckNhc2UoKSAhPT0gJ2ZhbHNlJztcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBidWlsZEZvcm0oKSB7XHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgdXNlcm5hbWU6IFsnJywgW3JlcXVpcmVkLCBtYXhMZW5ndGgoMjU1KV1dLFxyXG4gICAgICBwYXNzd29yZDogWycnLCBbcmVxdWlyZWQsIG1heExlbmd0aCgxMjgpXV0sXHJcbiAgICAgIHJlbWVtYmVyTWU6IFtmYWxzZV0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uU3VibWl0KCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5pblByb2dyZXNzID0gdHJ1ZTtcclxuXHJcbiAgICBjb25zdCB7IHVzZXJuYW1lLCBwYXNzd29yZCwgcmVtZW1iZXJNZSB9ID0gdGhpcy5mb3JtLnZhbHVlO1xyXG5cclxuICAgIGNvbnN0IHJlZGlyZWN0VXJsID0gZ2V0UmVkaXJlY3RVcmwodGhpcy5pbmplY3Rvcik7XHJcblxyXG4gICAgdGhpcy5hdXRoU2VydmljZVxyXG4gICAgICAubG9naW4oeyB1c2VybmFtZSwgcGFzc3dvcmQsIHJlbWVtYmVyTWUsIHJlZGlyZWN0VXJsIH0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyID0+IHtcclxuICAgICAgICAgIHRoaXMudG9hc3RlclNlcnZpY2UuZXJyb3IoXHJcbiAgICAgICAgICAgIGVyci5lcnJvcj8uZXJyb3JfZGVzY3JpcHRpb24gfHxcclxuICAgICAgICAgICAgICBlcnIuZXJyb3I/LmVycm9yLm1lc3NhZ2UgfHxcclxuICAgICAgICAgICAgICAnQWJwQWNjb3VudDo6RGVmYXVsdEVycm9yTWVzc2FnZScsXHJcbiAgICAgICAgICAgICcnLFxyXG4gICAgICAgICAgICB7IGxpZmU6IDcwMDAgfSxcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnIpO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGZpbmFsaXplKCgpID0+ICh0aGlzLmluUHJvZ3Jlc3MgPSBmYWxzZSkpLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIiwiPGg0Pnt7ICdBYnBBY2NvdW50OjpMb2dpbicgfCBhYnBMb2NhbGl6YXRpb24gfX08L2g0PlxyXG48c3Ryb25nICpuZ0lmPVwiaXNTZWxmUmVnaXN0cmF0aW9uRW5hYmxlZFwiPlxyXG4gIHt7ICdBYnBBY2NvdW50OjpBcmVZb3VBTmV3VXNlcicgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICA8YSBjbGFzcz1cInRleHQtZGVjb3JhdGlvbi1ub25lXCIgcm91dGVyTGluaz1cIi9hY2NvdW50L3JlZ2lzdGVyXCIgcXVlcnlQYXJhbXNIYW5kbGluZz1cInByZXNlcnZlXCI+e3tcclxuICAgICdBYnBBY2NvdW50OjpSZWdpc3RlcicgfCBhYnBMb2NhbGl6YXRpb25cclxuICB9fTwvYT5cclxuPC9zdHJvbmc+XHJcbjxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCIgdmFsaWRhdGVPblN1Ym1pdCBjbGFzcz1cIm10LTRcIj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwibG9naW4taW5wdXQtdXNlci1uYW1lLW9yLWVtYWlsLWFkZHJlc3NcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAnQWJwQWNjb3VudDo6VXNlck5hbWVPckVtYWlsQWRkcmVzcycgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgIH19PC9sYWJlbD5cclxuICAgIDxpbnB1dFxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgaWQ9XCJsb2dpbi1pbnB1dC11c2VyLW5hbWUtb3ItZW1haWwtYWRkcmVzc1wiXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cInVzZXJuYW1lXCJcclxuICAgICAgYXV0b2NvbXBsZXRlPVwidXNlcm5hbWVcIlxyXG4gICAgICBhdXRvZm9jdXNcclxuICAgIC8+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgPGxhYmVsIGZvcj1cImxvZ2luLWlucHV0LXBhc3N3b3JkXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3sgJ0FicEFjY291bnQ6OlBhc3N3b3JkJyB8IGFicExvY2FsaXphdGlvbiB9fTwvbGFiZWw+XHJcbiAgICA8aW5wdXRcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICB0eXBlPVwicGFzc3dvcmRcIlxyXG4gICAgICBpZD1cImxvZ2luLWlucHV0LXBhc3N3b3JkXCJcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIlxyXG4gICAgICBhdXRvY29tcGxldGU9XCJjdXJyZW50LXBhc3N3b3JkXCJcclxuICAgIC8+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2tcIj5cclxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIG1iLTJcIiBmb3I9XCJsb2dpbi1pbnB1dC1yZW1lbWJlci1tZVwiPlxyXG4gICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jaGVjay1pbnB1dFwiXHJcbiAgICAgICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgICAgIGlkPVwibG9naW4taW5wdXQtcmVtZW1iZXItbWVcIlxyXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJyZW1lbWJlck1lXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgICB7eyAnQWJwQWNjb3VudDo6UmVtZW1iZXJNZScgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICA8L2xhYmVsPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInRleHQtZW5kIGNvbFwiPlxyXG4gICAgICA8YSByb3V0ZXJMaW5rPVwiL2FjY291bnQvZm9yZ290LXBhc3N3b3JkXCI+e3tcclxuICAgICAgICAnQWJwQWNjb3VudDo6Rm9yZ290UGFzc3dvcmQnIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgICAgIH19PC9hPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxhYnAtYnV0dG9uXHJcbiAgICBbbG9hZGluZ109XCJpblByb2dyZXNzXCJcclxuICAgIGJ1dHRvblR5cGU9XCJzdWJtaXRcIlxyXG4gICAgbmFtZT1cIkFjdGlvblwiXHJcbiAgICBidXR0b25DbGFzcz1cImJ0bi1ibG9jayBidG4tbGcgbXQtMyBidG4gYnRuLXByaW1hcnlcIlxyXG4gID5cclxuICAgIHt7ICdBYnBBY2NvdW50OjpMb2dpbicgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICA8L2FicC1idXR0b24+XHJcbjwvZm9ybT5cclxuIl19
@@ -1,39 +0,0 @@
1
- import { ProfileService } from '@abp/ng.account.core/proxy';
2
- import { fadeIn } from '@abp/ng.theme.shared';
3
- import { transition, trigger, useAnimation } from '@angular/animations';
4
- import { Component } from '@angular/core';
5
- import { ManageProfileStateService } from '../../services/manage-profile.state.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@abp/ng.account.core/proxy";
8
- import * as i2 from "../../services/manage-profile.state.service";
9
- import * as i3 from "@angular/common";
10
- import * as i4 from "@abp/ng.core";
11
- import * as i5 from "@abp/ng.theme.shared";
12
- import * as i6 from "../change-password/change-password.component";
13
- import * as i7 from "../personal-settings/personal-settings.component";
14
- export class ManageProfileComponent {
15
- constructor(profileService, manageProfileState) {
16
- this.profileService = profileService;
17
- this.manageProfileState = manageProfileState;
18
- this.selectedTab = 0;
19
- this.changePasswordKey = "Account.ChangePasswordComponent" /* eAccountComponents.ChangePassword */;
20
- this.personalSettingsKey = "Account.PersonalSettingsComponent" /* eAccountComponents.PersonalSettings */;
21
- this.profile$ = this.manageProfileState.getProfile$();
22
- }
23
- ngOnInit() {
24
- this.profileService.get().subscribe(profile => {
25
- this.manageProfileState.setProfile(profile);
26
- if (profile.isExternal) {
27
- this.hideChangePasswordTab = true;
28
- this.selectedTab = 1;
29
- }
30
- });
31
- }
32
- }
33
- ManageProfileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ManageProfileComponent, deps: [{ token: i1.ProfileService }, { token: i2.ManageProfileStateService }], target: i0.ɵɵFactoryTarget.Component });
34
- ManageProfileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: ManageProfileComponent, selector: "abp-manage-profile", ngImport: i0, template: "<div id=\"AbpContentToolbar\"></div>\r\n\r\n<div class=\"card border-0 shadow-sm min-h-400\" [abpLoading]=\"!(profile$ | async)?.userName\">\r\n <div class=\"card-body\">\r\n <div class=\"row\">\r\n <div class=\"col-12 col-md-3\">\r\n <ul class=\"nav flex-column nav-pills\" id=\"nav-tab\" role=\"tablist\">\r\n <li\r\n *ngIf=\"!hideChangePasswordTab && (profile$ | async)\"\r\n class=\"nav-item\"\r\n (click)=\"selectedTab = 0\"\r\n >\r\n <a\r\n class=\"nav-link\"\r\n [ngClass]=\"{ active: selectedTab === 0 }\"\r\n role=\"tab\"\r\n href=\"javascript:void(0)\"\r\n >{{ 'AbpUi::ChangePassword' | abpLocalization }}</a\r\n >\r\n </li>\r\n <li class=\"nav-item mb-2\" (click)=\"selectedTab = 1\">\r\n <a\r\n class=\"nav-link\"\r\n [ngClass]=\"{ active: selectedTab === 1 }\"\r\n role=\"tab\"\r\n href=\"javascript:void(0)\"\r\n >{{ 'AbpAccount::PersonalSettings' | abpLocalization }}</a\r\n >\r\n </li>\r\n </ul>\r\n </div>\r\n <div *ngIf=\"profile$ | async\" class=\"col-12 col-md-9\">\r\n <div class=\"tab-content\" *ngIf=\"selectedTab === 0\" [@fadeIn]>\r\n <div class=\"tab-pane active\" role=\"tabpanel\">\r\n <h4>\r\n {{ 'AbpIdentity::ChangePassword' | abpLocalization }}\r\n <hr />\r\n </h4>\r\n <abp-change-password-form\r\n *abpReplaceableTemplate=\"{\r\n componentKey: changePasswordKey\r\n }\"\r\n ></abp-change-password-form>\r\n </div>\r\n </div>\r\n <div class=\"tab-content\" *ngIf=\"selectedTab === 1\" [@fadeIn]>\r\n <div class=\"tab-pane active\" role=\"tabpanel\">\r\n <h4>\r\n {{ 'AbpIdentity::PersonalSettings' | abpLocalization }}\r\n <hr />\r\n </h4>\r\n <abp-personal-settings-form\r\n *abpReplaceableTemplate=\"{\r\n componentKey: personalSettingsKey\r\n }\"\r\n ></abp-personal-settings-form>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".min-h-400{min-height:400px}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { kind: "directive", type: i5.LoadingDirective, selector: "[abpLoading]", inputs: ["abpLoading", "abpLoadingTargetElement", "abpLoadingDelay"] }, { kind: "component", type: i6.ChangePasswordComponent, selector: "abp-change-password-form", exportAs: ["abpChangePasswordForm"] }, { kind: "component", type: i7.PersonalSettingsComponent, selector: "abp-personal-settings-form", exportAs: ["abpPersonalSettingsForm"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.LocalizationPipe, name: "abpLocalization" }], animations: [trigger('fadeIn', [transition(':enter', useAnimation(fadeIn))])] });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: ManageProfileComponent, decorators: [{
36
- type: Component,
37
- args: [{ selector: 'abp-manage-profile', animations: [trigger('fadeIn', [transition(':enter', useAnimation(fadeIn))])], template: "<div id=\"AbpContentToolbar\"></div>\r\n\r\n<div class=\"card border-0 shadow-sm min-h-400\" [abpLoading]=\"!(profile$ | async)?.userName\">\r\n <div class=\"card-body\">\r\n <div class=\"row\">\r\n <div class=\"col-12 col-md-3\">\r\n <ul class=\"nav flex-column nav-pills\" id=\"nav-tab\" role=\"tablist\">\r\n <li\r\n *ngIf=\"!hideChangePasswordTab && (profile$ | async)\"\r\n class=\"nav-item\"\r\n (click)=\"selectedTab = 0\"\r\n >\r\n <a\r\n class=\"nav-link\"\r\n [ngClass]=\"{ active: selectedTab === 0 }\"\r\n role=\"tab\"\r\n href=\"javascript:void(0)\"\r\n >{{ 'AbpUi::ChangePassword' | abpLocalization }}</a\r\n >\r\n </li>\r\n <li class=\"nav-item mb-2\" (click)=\"selectedTab = 1\">\r\n <a\r\n class=\"nav-link\"\r\n [ngClass]=\"{ active: selectedTab === 1 }\"\r\n role=\"tab\"\r\n href=\"javascript:void(0)\"\r\n >{{ 'AbpAccount::PersonalSettings' | abpLocalization }}</a\r\n >\r\n </li>\r\n </ul>\r\n </div>\r\n <div *ngIf=\"profile$ | async\" class=\"col-12 col-md-9\">\r\n <div class=\"tab-content\" *ngIf=\"selectedTab === 0\" [@fadeIn]>\r\n <div class=\"tab-pane active\" role=\"tabpanel\">\r\n <h4>\r\n {{ 'AbpIdentity::ChangePassword' | abpLocalization }}\r\n <hr />\r\n </h4>\r\n <abp-change-password-form\r\n *abpReplaceableTemplate=\"{\r\n componentKey: changePasswordKey\r\n }\"\r\n ></abp-change-password-form>\r\n </div>\r\n </div>\r\n <div class=\"tab-content\" *ngIf=\"selectedTab === 1\" [@fadeIn]>\r\n <div class=\"tab-pane active\" role=\"tabpanel\">\r\n <h4>\r\n {{ 'AbpIdentity::PersonalSettings' | abpLocalization }}\r\n <hr />\r\n </h4>\r\n <abp-personal-settings-form\r\n *abpReplaceableTemplate=\"{\r\n componentKey: personalSettingsKey\r\n }\"\r\n ></abp-personal-settings-form>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".min-h-400{min-height:400px}\n"] }]
38
- }], ctorParameters: function () { return [{ type: i1.ProfileService }, { type: i2.ManageProfileStateService }]; } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXByb2ZpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbWFuYWdlLXByb2ZpbGUvbWFuYWdlLXByb2ZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbWFuYWdlLXByb2ZpbGUvbWFuYWdlLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7Ozs7Ozs7QUFjeEYsTUFBTSxPQUFPLHNCQUFzQjtJQVdqQyxZQUNZLGNBQThCLEVBQzlCLGtCQUE2QztRQUQ3QyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEyQjtRQVp6RCxnQkFBVyxHQUFHLENBQUMsQ0FBQztRQUVoQixzQkFBaUIsNkVBQXFDO1FBRXRELHdCQUFtQixpRkFBdUM7UUFFMUQsYUFBUSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQU85QyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzVDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDNUMsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFO2dCQUN0QixJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDO2dCQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQzthQUN0QjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7bUhBeEJVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLDBEQ25CbkMsZzBFQThEQSwrNkJEcERjLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDOzJGQVNsRSxzQkFBc0I7a0JBWmxDLFNBQVM7K0JBQ0Usb0JBQW9CLGNBRWxCLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZmlsZVNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmFjY291bnQuY29yZS9wcm94eSc7XHJcbmltcG9ydCB7IGZhZGVJbiB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGVBY2NvdW50Q29tcG9uZW50cyB9IGZyb20gJy4uLy4uL2VudW1zL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBNYW5hZ2VQcm9maWxlU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWFuYWdlLXByb2ZpbGUuc3RhdGUuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1tYW5hZ2UtcHJvZmlsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21hbmFnZS1wcm9maWxlLmNvbXBvbmVudC5odG1sJyxcclxuICBhbmltYXRpb25zOiBbdHJpZ2dlcignZmFkZUluJywgW3RyYW5zaXRpb24oJzplbnRlcicsIHVzZUFuaW1hdGlvbihmYWRlSW4pKV0pXSxcclxuICBzdHlsZXM6IFtcclxuICAgIGBcclxuICAgICAgLm1pbi1oLTQwMCB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XHJcbiAgICAgIH1cclxuICAgIGAsXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hbmFnZVByb2ZpbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHNlbGVjdGVkVGFiID0gMDtcclxuXHJcbiAgY2hhbmdlUGFzc3dvcmRLZXkgPSBlQWNjb3VudENvbXBvbmVudHMuQ2hhbmdlUGFzc3dvcmQ7XHJcblxyXG4gIHBlcnNvbmFsU2V0dGluZ3NLZXkgPSBlQWNjb3VudENvbXBvbmVudHMuUGVyc29uYWxTZXR0aW5ncztcclxuXHJcbiAgcHJvZmlsZSQgPSB0aGlzLm1hbmFnZVByb2ZpbGVTdGF0ZS5nZXRQcm9maWxlJCgpO1xyXG5cclxuICBoaWRlQ2hhbmdlUGFzc3dvcmRUYWI/OiBib29sZWFuO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByb3RlY3RlZCBwcm9maWxlU2VydmljZTogUHJvZmlsZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgbWFuYWdlUHJvZmlsZVN0YXRlOiBNYW5hZ2VQcm9maWxlU3RhdGVTZXJ2aWNlLFxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnByb2ZpbGVTZXJ2aWNlLmdldCgpLnN1YnNjcmliZShwcm9maWxlID0+IHtcclxuICAgICAgdGhpcy5tYW5hZ2VQcm9maWxlU3RhdGUuc2V0UHJvZmlsZShwcm9maWxlKTtcclxuICAgICAgaWYgKHByb2ZpbGUuaXNFeHRlcm5hbCkge1xyXG4gICAgICAgIHRoaXMuaGlkZUNoYW5nZVBhc3N3b3JkVGFiID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkVGFiID0gMTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgaWQ9XCJBYnBDb250ZW50VG9vbGJhclwiPjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cImNhcmQgYm9yZGVyLTAgc2hhZG93LXNtIG1pbi1oLTQwMFwiIFthYnBMb2FkaW5nXT1cIiEocHJvZmlsZSQgfCBhc3luYyk/LnVzZXJOYW1lXCI+XHJcbiAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1tZC0zXCI+XHJcbiAgICAgICAgPHVsIGNsYXNzPVwibmF2IGZsZXgtY29sdW1uIG5hdi1waWxsc1wiIGlkPVwibmF2LXRhYlwiIHJvbGU9XCJ0YWJsaXN0XCI+XHJcbiAgICAgICAgICA8bGlcclxuICAgICAgICAgICAgKm5nSWY9XCIhaGlkZUNoYW5nZVBhc3N3b3JkVGFiICYmIChwcm9maWxlJCB8IGFzeW5jKVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwibmF2LWl0ZW1cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0ZWRUYWIgPSAwXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAgPGFcclxuICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rXCJcclxuICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7IGFjdGl2ZTogc2VsZWN0ZWRUYWIgPT09IDAgfVwiXHJcbiAgICAgICAgICAgICAgcm9sZT1cInRhYlwiXHJcbiAgICAgICAgICAgICAgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiXHJcbiAgICAgICAgICAgICAgPnt7ICdBYnBVaTo6Q2hhbmdlUGFzc3dvcmQnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICA8bGkgY2xhc3M9XCJuYXYtaXRlbSBtYi0yXCIgKGNsaWNrKT1cInNlbGVjdGVkVGFiID0gMVwiPlxyXG4gICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmtcIlxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiBzZWxlY3RlZFRhYiA9PT0gMSB9XCJcclxuICAgICAgICAgICAgICByb2xlPVwidGFiXCJcclxuICAgICAgICAgICAgICBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCJcclxuICAgICAgICAgICAgICA+e3sgJ0FicEFjY291bnQ6OlBlcnNvbmFsU2V0dGluZ3MnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgPC91bD5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgKm5nSWY9XCJwcm9maWxlJCB8IGFzeW5jXCIgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTlcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGFiLWNvbnRlbnRcIiAqbmdJZj1cInNlbGVjdGVkVGFiID09PSAwXCIgW0BmYWRlSW5dPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhYi1wYW5lIGFjdGl2ZVwiIHJvbGU9XCJ0YWJwYW5lbFwiPlxyXG4gICAgICAgICAgICA8aDQ+XHJcbiAgICAgICAgICAgICAge3sgJ0FicElkZW50aXR5OjpDaGFuZ2VQYXNzd29yZCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgICAgICAgICAgICA8aHIgLz5cclxuICAgICAgICAgICAgPC9oND5cclxuICAgICAgICAgICAgPGFicC1jaGFuZ2UtcGFzc3dvcmQtZm9ybVxyXG4gICAgICAgICAgICAgICphYnBSZXBsYWNlYWJsZVRlbXBsYXRlPVwie1xyXG4gICAgICAgICAgICAgICAgY29tcG9uZW50S2V5OiBjaGFuZ2VQYXNzd29yZEtleVxyXG4gICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICA+PC9hYnAtY2hhbmdlLXBhc3N3b3JkLWZvcm0+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGFiLWNvbnRlbnRcIiAqbmdJZj1cInNlbGVjdGVkVGFiID09PSAxXCIgW0BmYWRlSW5dPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhYi1wYW5lIGFjdGl2ZVwiIHJvbGU9XCJ0YWJwYW5lbFwiPlxyXG4gICAgICAgICAgICA8aDQ+XHJcbiAgICAgICAgICAgICAge3sgJ0FicElkZW50aXR5OjpQZXJzb25hbFNldHRpbmdzJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgIDxociAvPlxyXG4gICAgICAgICAgICA8L2g0PlxyXG4gICAgICAgICAgICA8YWJwLXBlcnNvbmFsLXNldHRpbmdzLWZvcm1cclxuICAgICAgICAgICAgICAqYWJwUmVwbGFjZWFibGVUZW1wbGF0ZT1cIntcclxuICAgICAgICAgICAgICAgIGNvbXBvbmVudEtleTogcGVyc29uYWxTZXR0aW5nc0tleVxyXG4gICAgICAgICAgICAgIH1cIlxyXG4gICAgICAgICAgICA+PC9hYnAtcGVyc29uYWwtc2V0dGluZ3MtZm9ybT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -1,89 +0,0 @@
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
- export 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
- }
70
- PersonalSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", 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 });
71
- PersonalSettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PersonalSettingsComponent, selector: "abp-personal-settings-form", providers: [
72
- {
73
- provide: EXTENSIONS_IDENTIFIER,
74
- useValue: "Account.PersonalSettingsComponent" /* eAccountComponents.PersonalSettings */,
75
- },
76
- ], 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" }] });
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PersonalSettingsComponent, decorators: [{
78
- type: Component,
79
- args: [{ selector: 'abp-personal-settings-form', exportAs: 'abpPersonalSettingsForm', providers: [
80
- {
81
- provide: EXTENSIONS_IDENTIFIER,
82
- useValue: "Account.PersonalSettingsComponent" /* eAccountComponents.PersonalSettings */,
83
- },
84
- ], 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" }]
85
- }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.ToasterService }, { type: i3.ProfileService }, { type: i4.ManageProfileStateService }, { type: i5.AuthService }, { type: i2.ConfirmationService }, { type: undefined, decorators: [{
86
- type: Inject,
87
- args: [RE_LOGIN_CONFIRMATION_TOKEN]
88
- }] }, { type: i0.Injector }]; } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUE2QixNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN4RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMzRCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLFlBQVksRUFDWixxQkFBcUIsR0FDdEIsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7OztBQWN6QyxNQUFNLE9BQU8seUJBQXlCO0lBWXBDLFlBQ1UsRUFBc0IsRUFDdEIsY0FBOEIsRUFDOUIsY0FBOEIsRUFDOUIsa0JBQTZDLEVBQ3BDLFdBQXdCLEVBQ2pDLG1CQUF3QyxFQUV4QywyQ0FBb0QsRUFDbEQsUUFBa0I7UUFScEIsT0FBRSxHQUFGLEVBQUUsQ0FBb0I7UUFDdEIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQTJCO1FBQ3BDLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ2pDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFFeEMsZ0RBQTJDLEdBQTNDLDJDQUEyQyxDQUFTO1FBQ2xELGFBQVEsR0FBUixRQUFRLENBQVU7UUFnQzlCLHVCQUFrQixHQUFHLEdBQUcsRUFBRTtZQUN4QixJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3hDLENBQUMsQ0FBQztJQWpDQyxDQUFDO0lBRUosU0FBUztRQUNQLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3JELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLE9BQU87U0FDUjtRQUNELE1BQU0sSUFBSSxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxJQUFJLEdBQUcscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFDOUIsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztRQUMxRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYzthQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUMvQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbkIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxtQ0FBbUMsRUFBRSxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM1RixJQUFJLDZCQUE2QixFQUFFO2dCQUNqQyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQzthQUNqQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQU1PLDRCQUE0QjtRQUNsQyxPQUFPLElBQUksQ0FBQywyQ0FBMkMsQ0FBQztJQUMxRCxDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLElBQUksQ0FBQyxtQkFBbUI7YUFDckIsSUFBSSxDQUNILGlFQUFpRSxFQUNqRSwyREFBMkQsQ0FDNUQ7YUFDQSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxLQUFLLFlBQVksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDOUQsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7O3NIQXJFVSx5QkFBeUIsdU5BbUIxQiwyQkFBMkI7MEdBbkIxQix5QkFBeUIscURBUHpCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUscUJBQXFCO1lBQzlCLFFBQVEsK0VBQXFDO1NBQzlDO0tBQ0YsaUVDekJILHlhQVlBOzJGRGVhLHlCQUF5QjtrQkFYckMsU0FBUzsrQkFDRSw0QkFBNEIsWUFFNUIseUJBQXlCLGFBQ3hCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFFBQVEsK0VBQXFDO3lCQUM5QztxQkFDRjs7MEJBcUJFLE1BQU07MkJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvZmlsZUR0bywgUHJvZmlsZVNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmFjY291bnQuY29yZS9wcm94eSc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvbiwgQ29uZmlybWF0aW9uU2VydmljZSwgVG9hc3RlclNlcnZpY2UgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbmplY3RvciwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IGZpbmFsaXplLCBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEFjY291bnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudCc7XHJcbmltcG9ydCB7IE1hbmFnZVByb2ZpbGVTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYW5hZ2UtcHJvZmlsZS5zdGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBSRV9MT0dJTl9DT05GSVJNQVRJT05fVE9LRU4gfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5pbXBvcnQge1xyXG4gIEVYVEVOU0lPTlNfSURFTlRJRklFUixcclxuICBGb3JtUHJvcERhdGEsXHJcbiAgZ2VuZXJhdGVGb3JtRnJvbVByb3BzLFxyXG59IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBlQWNjb3VudENvbXBvbmVudHMgfSBmcm9tICcuLi8uLi9lbnVtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1wZXJzb25hbC1zZXR0aW5ncy1mb3JtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGV4cG9ydEFzOiAnYWJwUGVyc29uYWxTZXR0aW5nc0Zvcm0nLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBFWFRFTlNJT05TX0lERU5USUZJRVIsXHJcbiAgICAgIHVzZVZhbHVlOiBlQWNjb3VudENvbXBvbmVudHMuUGVyc29uYWxTZXR0aW5ncyxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcnNvbmFsU2V0dGluZ3NDb21wb25lbnRcclxuICBpbXBsZW1lbnRzXHJcbiAgICBPbkluaXQsXHJcbiAgICBBY2NvdW50LlBlcnNvbmFsU2V0dGluZ3NDb21wb25lbnRJbnB1dHMsXHJcbiAgICBBY2NvdW50LlBlcnNvbmFsU2V0dGluZ3NDb21wb25lbnRPdXRwdXRzXHJcbntcclxuICBzZWxlY3RlZD86IFByb2ZpbGVEdG87XHJcblxyXG4gIGZvcm0hOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBpblByb2dyZXNzPzogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtYW5hZ2VQcm9maWxlU3RhdGU6IE1hbmFnZVByb2ZpbGVTdGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uU2VydmljZTogQ29uZmlybWF0aW9uU2VydmljZSxcclxuICAgIEBJbmplY3QoUkVfTE9HSU5fQ09ORklSTUFUSU9OX1RPS0VOKVxyXG4gICAgcHJpdmF0ZSBpc1BlcnNvbmFsU2V0dGluZ3NDaGFuZ2VkQ29uZmlybWF0aW9uQWN0aXZlOiBib29sZWFuLFxyXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcclxuICApIHt9XHJcblxyXG4gIGJ1aWxkRm9ybSgpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWQgPSB0aGlzLm1hbmFnZVByb2ZpbGVTdGF0ZS5nZXRQcm9maWxlKCk7XHJcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZGF0YSA9IG5ldyBGb3JtUHJvcERhdGEodGhpcy5pbmplY3RvciwgdGhpcy5zZWxlY3RlZCk7XHJcbiAgICB0aGlzLmZvcm0gPSBnZW5lcmF0ZUZvcm1Gcm9tUHJvcHMoZGF0YSk7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYnVpbGRGb3JtKCk7XHJcbiAgfVxyXG5cclxuICBzdWJtaXQoKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHJldHVybjtcclxuICAgIGNvbnN0IGlzTG9nT3V0Q29uZmlybU1lc3NhZ2VWaXNpYmxlID0gdGhpcy5pc0xvZ291dENvbmZpcm1NZXNzYWdlQWN0aXZlKCk7XHJcbiAgICB0aGlzLmluUHJvZ3Jlc3MgPSB0cnVlO1xyXG4gICAgdGhpcy5wcm9maWxlU2VydmljZVxyXG4gICAgICAudXBkYXRlKHRoaXMuZm9ybS52YWx1ZSlcclxuICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMuaW5Qcm9ncmVzcyA9IGZhbHNlKSkpXHJcbiAgICAgIC5zdWJzY3JpYmUocHJvZmlsZSA9PiB7XHJcbiAgICAgICAgdGhpcy5tYW5hZ2VQcm9maWxlU3RhdGUuc2V0UHJvZmlsZShwcm9maWxlKTtcclxuICAgICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnN1Y2Nlc3MoJ0FicEFjY291bnQ6OlBlcnNvbmFsU2V0dGluZ3NTYXZlZCcsICdTdWNjZXNzJywgeyBsaWZlOiA1MDAwIH0pO1xyXG4gICAgICAgIGlmIChpc0xvZ091dENvbmZpcm1NZXNzYWdlVmlzaWJsZSkge1xyXG4gICAgICAgICAgdGhpcy5zaG93TG9nb3V0Q29uZmlybU1lc3NhZ2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbG9nb3V0Q29uZmlybWF0aW9uID0gKCkgPT4ge1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5sb2dvdXQoKS5zdWJzY3JpYmUoKTtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIGlzTG9nb3V0Q29uZmlybU1lc3NhZ2VBY3RpdmUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5pc1BlcnNvbmFsU2V0dGluZ3NDaGFuZ2VkQ29uZmlybWF0aW9uQWN0aXZlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzaG93TG9nb3V0Q29uZmlybU1lc3NhZ2UoKSB7XHJcbiAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2VcclxuICAgICAgLmluZm8oXHJcbiAgICAgICAgJ0FicEFjY291bnQ6OlBlcnNvbmFsU2V0dGluZ3NDaGFuZ2VkQ29uZmlybWF0aW9uTW9kYWxEZXNjcmlwdGlvbicsXHJcbiAgICAgICAgJ0FicEFjY291bnQ6OlBlcnNvbmFsU2V0dGluZ3NDaGFuZ2VkQ29uZmlybWF0aW9uTW9kYWxUaXRsZScsXHJcbiAgICAgIClcclxuICAgICAgLnBpcGUoZmlsdGVyKHN0YXR1cyA9PiBzdGF0dXMgPT09IENvbmZpcm1hdGlvbi5TdGF0dXMuY29uZmlybSkpXHJcbiAgICAgIC5zdWJzY3JpYmUodGhpcy5sb2dvdXRDb25maXJtYXRpb24pO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiAgICpuZ0lmPVwiZm9ybVwiICAobmdTdWJtaXQpPVwic3VibWl0KClcIiB2YWxpZGF0ZU9uU3VibWl0PlxyXG4gIDxhYnAtZXh0ZW5zaWJsZS1mb3JtIFtzZWxlY3RlZFJlY29yZF09XCJzZWxlY3RlZFwiPjwvYWJwLWV4dGVuc2libGUtZm9ybT5cclxuXHJcbiAgPGFicC1idXR0b25cclxuICAgIGJ1dHRvblR5cGU9XCJzdWJtaXRcIlxyXG4gICAgaWNvbkNsYXNzPVwiZmEgZmEtY2hlY2tcIlxyXG4gICAgYnV0dG9uQ2xhc3M9XCJidG4gYnRuLXByaW1hcnkgY29sb3Itd2hpdGVcIlxyXG4gICAgW2xvYWRpbmddPVwiaW5Qcm9ncmVzc1wiXHJcbiAgPlxyXG4gICAge3sgJ0FicElkZW50aXR5OjpTYXZlJyB8IGFicExvY2FsaXphdGlvbiB9fTwvYWJwLWJ1dHRvblxyXG4gID5cclxuPC9mb3JtPlxyXG4iXX0=