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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/README.md +128 -2
  2. package/config/account-config.module.d.ts +8 -8
  3. package/config/enums/index.d.ts +1 -1
  4. package/config/enums/route-names.d.ts +8 -8
  5. package/config/index.d.ts +5 -5
  6. package/config/providers/index.d.ts +1 -1
  7. package/config/providers/route.provider.d.ts +8 -8
  8. package/config/public-api.d.ts +3 -3
  9. package/config/utils/factories.d.ts +2 -2
  10. package/{esm2020 → esm2022}/abp-ng.account.mjs +4 -4
  11. package/{esm2020 → esm2022}/config/abp-ng.account-config.mjs +4 -4
  12. package/esm2022/config/account-config.module.mjs +28 -0
  13. package/{esm2020 → esm2022}/config/enums/index.mjs +1 -1
  14. package/{esm2020 → esm2022}/config/enums/route-names.mjs +1 -1
  15. package/{esm2020 → esm2022}/config/providers/index.mjs +1 -1
  16. package/{esm2020 → esm2022}/config/providers/route.provider.mjs +49 -49
  17. package/{esm2020 → esm2022}/config/public-api.mjs +3 -3
  18. package/{esm2020 → esm2022}/config/utils/factories.mjs +10 -10
  19. package/esm2022/lib/account-routing.module.mjs +91 -0
  20. package/esm2022/lib/account.module.mjs +104 -0
  21. package/esm2022/lib/components/change-password/change-password.component.mjs +88 -0
  22. package/esm2022/lib/components/forgot-password/forgot-password.component.mjs +44 -0
  23. package/{esm2020 → esm2022}/lib/components/index.mjs +8 -8
  24. package/esm2022/lib/components/login/login.component.mjs +65 -0
  25. package/esm2022/lib/components/manage-profile/manage-profile.component.mjs +40 -0
  26. package/{esm2020 → esm2022}/lib/components/personal-settings/personal-settings-half-row.component.mjs +27 -26
  27. package/esm2022/lib/components/personal-settings/personal-settings.component.mjs +90 -0
  28. package/{esm2020 → esm2022}/lib/components/register/register.component.mjs +84 -83
  29. package/esm2022/lib/components/reset-password/reset-password.component.mjs +69 -0
  30. package/{esm2020 → esm2022}/lib/defaults/default-personal-settings-form-props.mjs +45 -45
  31. package/{esm2020 → esm2022}/lib/enums/components.mjs +1 -1
  32. package/{esm2020 → esm2022}/lib/enums/index.mjs +1 -1
  33. package/esm2022/lib/guards/authentication-flow.guard.mjs +21 -0
  34. package/esm2022/lib/guards/extensions.guard.mjs +28 -0
  35. package/{esm2020 → esm2022}/lib/guards/index.mjs +2 -2
  36. package/{esm2020 → esm2022}/lib/models/account.mjs +2 -2
  37. package/{esm2020 → esm2022}/lib/models/config-options.mjs +1 -1
  38. package/{esm2020 → esm2022}/lib/models/index.mjs +2 -2
  39. package/{esm2020 → esm2022}/lib/services/index.mjs +1 -1
  40. package/esm2022/lib/services/manage-profile.state.service.mjs +28 -0
  41. package/{esm2020 → esm2022}/lib/tokens/config-options.token.mjs +2 -2
  42. package/{esm2020 → esm2022}/lib/tokens/extensions.token.mjs +6 -6
  43. package/{esm2020 → esm2022}/lib/tokens/index.mjs +3 -3
  44. package/{esm2020 → esm2022}/lib/tokens/re-login-confirmation.token.mjs +2 -2
  45. package/{esm2020 → esm2022}/lib/utils/auth-utils.mjs +7 -7
  46. package/{esm2020 → esm2022}/lib/utils/factory-utils.mjs +6 -6
  47. package/{esm2020 → esm2022}/public-api.mjs +7 -7
  48. package/{fesm2015 → fesm2022}/abp-ng.account-config.mjs +75 -75
  49. package/{fesm2020 → fesm2022}/abp-ng.account-config.mjs.map +1 -1
  50. package/{fesm2020 → fesm2022}/abp-ng.account.mjs +646 -645
  51. package/fesm2022/abp-ng.account.mjs.map +1 -0
  52. package/index.d.ts +5 -5
  53. package/lib/account-routing.module.d.ts +7 -7
  54. package/lib/account.module.d.ts +24 -24
  55. package/lib/components/change-password/change-password.component.d.ts +24 -24
  56. package/lib/components/forgot-password/forgot-password.component.d.ts +14 -14
  57. package/lib/components/index.d.ts +8 -8
  58. package/lib/components/login/login.component.d.ts +24 -24
  59. package/lib/components/manage-profile/manage-profile.component.d.ts +18 -18
  60. package/lib/components/personal-settings/personal-settings-half-row.component.d.ts +13 -13
  61. package/lib/components/personal-settings/personal-settings.component.d.ts +30 -30
  62. package/lib/components/register/register.component.d.ts +26 -26
  63. package/lib/components/reset-password/reset-password.component.d.ts +22 -22
  64. package/lib/defaults/default-personal-settings-form-props.d.ts +3 -3
  65. package/lib/enums/components.d.ts +11 -11
  66. package/lib/enums/index.d.ts +1 -1
  67. package/lib/guards/authentication-flow.guard.d.ts +8 -10
  68. package/lib/guards/extensions.guard.d.ts +11 -11
  69. package/lib/guards/index.d.ts +2 -2
  70. package/lib/models/account.d.ts +14 -14
  71. package/lib/models/config-options.d.ts +11 -11
  72. package/lib/models/index.d.ts +2 -2
  73. package/lib/services/index.d.ts +1 -1
  74. package/lib/services/manage-profile.state.service.d.ts +29 -29
  75. package/lib/tokens/config-options.token.d.ts +3 -3
  76. package/lib/tokens/extensions.token.d.ts +9 -9
  77. package/lib/tokens/index.d.ts +3 -3
  78. package/lib/tokens/re-login-confirmation.token.d.ts +2 -2
  79. package/lib/utils/auth-utils.d.ts +2 -2
  80. package/lib/utils/factory-utils.d.ts +8 -8
  81. package/package.json +25 -19
  82. package/public-api.d.ts +7 -7
  83. package/esm2020/config/account-config.module.mjs +0 -27
  84. package/esm2020/lib/account-routing.module.mjs +0 -90
  85. package/esm2020/lib/account.module.mjs +0 -103
  86. package/esm2020/lib/components/change-password/change-password.component.mjs +0 -87
  87. package/esm2020/lib/components/forgot-password/forgot-password.component.mjs +0 -43
  88. package/esm2020/lib/components/login/login.component.mjs +0 -64
  89. package/esm2020/lib/components/manage-profile/manage-profile.component.mjs +0 -39
  90. package/esm2020/lib/components/personal-settings/personal-settings.component.mjs +0 -89
  91. package/esm2020/lib/components/reset-password/reset-password.component.mjs +0 -68
  92. package/esm2020/lib/guards/authentication-flow.guard.mjs +0 -21
  93. package/esm2020/lib/guards/extensions.guard.mjs +0 -27
  94. package/esm2020/lib/services/manage-profile.state.service.mjs +0 -27
  95. package/fesm2015/abp-ng.account-config.mjs.map +0 -1
  96. package/fesm2015/abp-ng.account.mjs +0 -726
  97. package/fesm2015/abp-ng.account.mjs.map +0 -1
  98. package/fesm2020/abp-ng.account-config.mjs +0 -90
  99. package/fesm2020/abp-ng.account.mjs.map +0 -1
@@ -0,0 +1,104 @@
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
+ 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
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AccountModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
61
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.0.1", ngImport: i0, type: AccountModule, declarations: [LoginComponent,
62
+ RegisterComponent,
63
+ ChangePasswordComponent,
64
+ ManageProfileComponent,
65
+ PersonalSettingsComponent,
66
+ ForgotPasswordComponent,
67
+ ResetPasswordComponent,
68
+ PersonalSettingsHalfRowComponent], imports: [CoreModule,
69
+ AccountRoutingModule,
70
+ ThemeSharedModule,
71
+ NgbDropdownModule,
72
+ NgxValidateCoreModule,
73
+ UiExtensionsModule], exports: [LoginComponent,
74
+ RegisterComponent,
75
+ ChangePasswordComponent,
76
+ ManageProfileComponent,
77
+ PersonalSettingsComponent,
78
+ ForgotPasswordComponent,
79
+ ResetPasswordComponent,
80
+ PersonalSettingsHalfRowComponent] }); }
81
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AccountModule, imports: [CoreModule,
82
+ AccountRoutingModule,
83
+ ThemeSharedModule,
84
+ NgbDropdownModule,
85
+ NgxValidateCoreModule,
86
+ UiExtensionsModule] }); }
87
+ }
88
+ export { AccountModule };
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: AccountModule, decorators: [{
90
+ type: NgModule,
91
+ args: [{
92
+ declarations: [...declarations],
93
+ imports: [
94
+ CoreModule,
95
+ AccountRoutingModule,
96
+ ThemeSharedModule,
97
+ NgbDropdownModule,
98
+ NgxValidateCoreModule,
99
+ UiExtensionsModule,
100
+ ],
101
+ exports: [...declarations],
102
+ }]
103
+ }] });
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQXVCLFFBQVEsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTdFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxxRUFBcUUsQ0FBQzs7QUFFdkgsTUFBTSxZQUFZLEdBQUc7SUFDbkIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQix1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLGdDQUFnQztDQUNqQyxDQUFDO0FBRUYsTUFZYSxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUEwQjtRQUNsRCxPQUFPO1lBQ0wsUUFBUSxFQUFFLGFBQWE7WUFDdkIsU0FBUyxFQUFFO2dCQUNULHVCQUF1QjtnQkFDdkIsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRTtnQkFDdEQ7b0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsVUFBVSxFQUFFLDJCQUEyQjtvQkFDdkMsSUFBSSxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQy9CO2dCQUNEO29CQUNFLE9BQU8sRUFBRSwyQkFBMkI7b0JBQ3BDLFFBQVEsRUFBRSxPQUFPLENBQUMsMkNBQTJDLElBQUksSUFBSTtpQkFDdEU7Z0JBQ0Q7b0JBQ0UsT0FBTyxFQUFFLG1DQUFtQztvQkFDNUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyx3QkFBd0I7aUJBQzNDO2dCQUNELHNCQUFzQjthQUN2QjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQTBCO1FBQ2pELE9BQU8sSUFBSSxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDaEUsQ0FBQzs4R0EzQlUsYUFBYTsrR0FBYixhQUFhLGlCQXRCeEIsY0FBYztZQUNkLGlCQUFpQjtZQUNqQix1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLHlCQUF5QjtZQUN6Qix1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLGdDQUFnQyxhQU05QixVQUFVO1lBQ1Ysb0JBQW9CO1lBQ3BCLGlCQUFpQjtZQUNqQixpQkFBaUI7WUFDakIscUJBQXFCO1lBQ3JCLGtCQUFrQixhQWxCcEIsY0FBYztZQUNkLGlCQUFpQjtZQUNqQix1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLHlCQUF5QjtZQUN6Qix1QkFBdUI7WUFDdkIsc0JBQXNCO1lBQ3RCLGdDQUFnQzsrR0FlckIsYUFBYSxZQVR0QixVQUFVO1lBQ1Ysb0JBQW9CO1lBQ3BCLGlCQUFpQjtZQUNqQixpQkFBaUI7WUFDakIscUJBQXFCO1lBQ3JCLGtCQUFrQjs7U0FJVCxhQUFhOzJGQUFiLGFBQWE7a0JBWnpCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsR0FBRyxZQUFZLENBQUM7b0JBQy9CLE9BQU8sRUFBRTt3QkFDUCxVQUFVO3dCQUNWLG9CQUFvQjt3QkFDcEIsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLHFCQUFxQjt3QkFDckIsa0JBQWtCO3FCQUNuQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFlBQVksQ0FBQztpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlLCBMYXp5TW9kdWxlRmFjdG9yeSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgTmdNb2R1bGVGYWN0b3J5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBBY2NvdW50Um91dGluZ01vZHVsZSB9IGZyb20gJy4vYWNjb3VudC1yb3V0aW5nLm1vZHVsZSc7XHJcbmltcG9ydCB7IENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTG9naW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWFuYWdlUHJvZmlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tYW5hZ2UtcHJvZmlsZS9tYW5hZ2UtcHJvZmlsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQZXJzb25hbFNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BlcnNvbmFsLXNldHRpbmdzL3BlcnNvbmFsLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlZ2lzdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjY291bnRDb25maWdPcHRpb25zIH0gZnJvbSAnLi9tb2RlbHMvY29uZmlnLW9wdGlvbnMnO1xyXG5pbXBvcnQgeyBBQ0NPVU5UX0NPTkZJR19PUFRJT05TIH0gZnJvbSAnLi90b2tlbnMvY29uZmlnLW9wdGlvbnMudG9rZW4nO1xyXG5pbXBvcnQgeyBhY2NvdW50Q29uZmlnT3B0aW9uc0ZhY3RvcnkgfSBmcm9tICcuL3V0aWxzL2ZhY3RvcnktdXRpbHMnO1xyXG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbkZsb3dHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL2F1dGhlbnRpY2F0aW9uLWZsb3cuZ3VhcmQnO1xyXG5pbXBvcnQgeyBGb3Jnb3RQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mb3Jnb3QtcGFzc3dvcmQvZm9yZ290LXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlc2V0UGFzc3dvcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVzZXQtcGFzc3dvcmQvcmVzZXQtcGFzc3dvcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUkVfTE9HSU5fQ09ORklSTUFUSU9OX1RPS0VOIH0gZnJvbSAnLi90b2tlbnMnO1xyXG5pbXBvcnQgeyBVaUV4dGVuc2lvbnNNb2R1bGUgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgQUNDT1VOVF9FRElUX0ZPUk1fUFJPUF9DT05UUklCVVRPUlMgfSBmcm9tICcuL3Rva2Vucy9leHRlbnNpb25zLnRva2VuJztcclxuaW1wb3J0IHsgQWNjb3VudEV4dGVuc2lvbnNHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL2V4dGVuc2lvbnMuZ3VhcmQnO1xyXG5pbXBvcnQgeyBQZXJzb25hbFNldHRpbmdzSGFsZlJvd0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wZXJzb25hbC1zZXR0aW5ncy9wZXJzb25hbC1zZXR0aW5ncy1oYWxmLXJvdy5jb21wb25lbnQnO1xyXG5cclxuY29uc3QgZGVjbGFyYXRpb25zID0gW1xyXG4gIExvZ2luQ29tcG9uZW50LFxyXG4gIFJlZ2lzdGVyQ29tcG9uZW50LFxyXG4gIENoYW5nZVBhc3N3b3JkQ29tcG9uZW50LFxyXG4gIE1hbmFnZVByb2ZpbGVDb21wb25lbnQsXHJcbiAgUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudCxcclxuICBGb3Jnb3RQYXNzd29yZENvbXBvbmVudCxcclxuICBSZXNldFBhc3N3b3JkQ29tcG9uZW50LFxyXG4gIFBlcnNvbmFsU2V0dGluZ3NIYWxmUm93Q29tcG9uZW50LFxyXG5dO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFsuLi5kZWNsYXJhdGlvbnNdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvcmVNb2R1bGUsXHJcbiAgICBBY2NvdW50Um91dGluZ01vZHVsZSxcclxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxyXG4gICAgTmdiRHJvcGRvd25Nb2R1bGUsXHJcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUsXHJcbiAgICBVaUV4dGVuc2lvbnNNb2R1bGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbLi4uZGVjbGFyYXRpb25zXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjY291bnRNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JDaGlsZChvcHRpb25zID0ge30gYXMgQWNjb3VudENvbmZpZ09wdGlvbnMpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFjY291bnRNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBBY2NvdW50TW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBBdXRoZW50aWNhdGlvbkZsb3dHdWFyZCxcclxuICAgICAgICB7IHByb3ZpZGU6IEFDQ09VTlRfQ09ORklHX09QVElPTlMsIHVzZVZhbHVlOiBvcHRpb25zIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogJ0FDQ09VTlRfT1BUSU9OUycsXHJcbiAgICAgICAgICB1c2VGYWN0b3J5OiBhY2NvdW50Q29uZmlnT3B0aW9uc0ZhY3RvcnksXHJcbiAgICAgICAgICBkZXBzOiBbQUNDT1VOVF9DT05GSUdfT1BUSU9OU10sXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBSRV9MT0dJTl9DT05GSVJNQVRJT05fVE9LRU4sXHJcbiAgICAgICAgICB1c2VWYWx1ZTogb3B0aW9ucy5pc1BlcnNvbmFsU2V0dGluZ3NDaGFuZ2VkQ29uZmlybWF0aW9uQWN0aXZlID8/IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBBQ0NPVU5UX0VESVRfRk9STV9QUk9QX0NPTlRSSUJVVE9SUyxcclxuICAgICAgICAgIHVzZVZhbHVlOiBvcHRpb25zLmVkaXRGb3JtUHJvcENvbnRyaWJ1dG9ycyxcclxuICAgICAgICB9LFxyXG4gICAgICAgIEFjY291bnRFeHRlbnNpb25zR3VhcmQsXHJcbiAgICAgIF0sXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGZvckxhenkob3B0aW9ucyA9IHt9IGFzIEFjY291bnRDb25maWdPcHRpb25zKTogTmdNb2R1bGVGYWN0b3J5PEFjY291bnRNb2R1bGU+IHtcclxuICAgIHJldHVybiBuZXcgTGF6eU1vZHVsZUZhY3RvcnkoQWNjb3VudE1vZHVsZS5mb3JDaGlsZChvcHRpb25zKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,88 @@
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
+ 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
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ChangePasswordComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i0.Injector }, { token: i2.ToasterService }, { token: i3.ProfileService }, { token: i4.ManageProfileStateService }], target: i0.ɵɵFactoryTarget.Component }); }
81
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", 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" }] }); }
82
+ }
83
+ export { ChangePasswordComponent };
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ChangePasswordComponent, decorators: [{
85
+ type: Component,
86
+ 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" }]
87
+ }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i0.Injector }, { type: i2.ToasterService }, { type: i3.ProfileService }, { type: i4.ManageProfileStateService }]; } });
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhbmdlLXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBRWxCLFVBQVUsR0FDWCxNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBYyxNQUFNLG9CQUFvQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7Ozs7Ozs7O0FBRXhGLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxVQUFVLENBQUM7QUFFaEMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztBQUU3RCxNQUthLHVCQUF1QjtJQWVsQyxZQUNVLEVBQXNCLEVBQ3RCLFFBQWtCLEVBQ2xCLGNBQThCLEVBQzlCLGNBQThCLEVBQzlCLGtCQUE2QztRQUo3QyxPQUFFLEdBQUYsRUFBRSxDQUFvQjtRQUN0QixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEyQjtRQVh2RCxnQkFBVyxHQUEyQixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLEVBQUU7WUFDckUsSUFBSSxlQUFlLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDO2dCQUFFLE9BQU8sTUFBTSxDQUFDO1lBRXRFLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLGtCQUFrQixDQUFDLENBQUMsQ0FBQztRQUNwRixDQUFDLENBQUM7SUFRQyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsRUFBRSxXQUFXLENBQUM7UUFFOUUsTUFBTSxtQkFBbUIsR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFakUsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FDdkI7WUFDRSxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDO1lBQ3hCLFdBQVcsRUFBRTtnQkFDWCxFQUFFO2dCQUNGO29CQUNFLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxHQUFHLG1CQUFtQixDQUFDO2lCQUMvQzthQUNGO1lBQ0QsaUJBQWlCLEVBQUU7Z0JBQ2pCLEVBQUU7Z0JBQ0Y7b0JBQ0UsVUFBVSxFQUFFLENBQUMsUUFBUSxFQUFFLEdBQUcsbUJBQW1CLENBQUM7aUJBQy9DO2FBQ0Y7U0FDRixFQUNEO1lBQ0UsVUFBVSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDaEQsQ0FDRixDQUFDO1FBRUYsSUFBSSxJQUFJLENBQUMsbUJBQW1CO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFDOUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLGNBQWM7YUFDaEIsY0FBYyxDQUFDO1lBQ2QsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixJQUFJLEVBQUUsZUFBZSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3ZGLFdBQVcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxLQUFLO1NBQ2pELENBQUM7YUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQy9DLFNBQVMsQ0FBQztZQUNULElBQUksRUFBRSxHQUFHLEVBQUU7Z0JBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsb0NBQW9DLEVBQUUsRUFBRSxFQUFFO29CQUNwRSxJQUFJLEVBQUUsSUFBSTtpQkFDWCxDQUFDLENBQUM7Z0JBRUgsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7b0JBQzVCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUM7b0JBQ2pDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxJQUFJLGtCQUFrQixDQUFDLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDMUU7WUFDSCxDQUFDO1lBQ0QsS0FBSyxFQUFFLEdBQUcsQ0FBQyxFQUFFO2dCQUNYLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO1lBQzVGLENBQUM7U0FDRixDQUFDLENBQUM7SUFDUCxDQUFDOzhHQTdFVSx1QkFBdUI7a0dBQXZCLHVCQUF1QixxR0N2QnBDLHNxREFrREE7O1NEM0JhLHVCQUF1QjsyRkFBdkIsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLDBCQUEwQixZQUUxQix1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9maWxlU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuYWNjb3VudC5jb3JlL3Byb3h5JztcclxuaW1wb3J0IHsgZ2V0UGFzc3dvcmRWYWxpZGF0b3JzLCBUb2FzdGVyU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gIFVudHlwZWRGb3JtQ29udHJvbCxcclxuICBVbnR5cGVkRm9ybUdyb3VwLFxyXG4gIFZhbGlkYXRvcnMsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBjb21wYXJlUGFzc3dvcmRzLCBWYWxpZGF0aW9uIH0gZnJvbSAnQG5neC12YWxpZGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEFjY291bnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudCc7XHJcbmltcG9ydCB7IE1hbmFnZVByb2ZpbGVTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYW5hZ2UtcHJvZmlsZS5zdGF0ZS5zZXJ2aWNlJztcclxuXHJcbmNvbnN0IHsgcmVxdWlyZWQgfSA9IFZhbGlkYXRvcnM7XHJcblxyXG5jb25zdCBQQVNTV09SRF9GSUVMRFMgPSBbJ25ld1Bhc3N3b3JkJywgJ3JlcGVhdE5ld1Bhc3N3b3JkJ107XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1jaGFuZ2UtcGFzc3dvcmQtZm9ybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NoYW5nZS1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgZXhwb3J0QXM6ICdhYnBDaGFuZ2VQYXNzd29yZEZvcm0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2hhbmdlUGFzc3dvcmRDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWNjb3VudC5DaGFuZ2VQYXNzd29yZENvbXBvbmVudElucHV0cywgQWNjb3VudC5DaGFuZ2VQYXNzd29yZENvbXBvbmVudE91dHB1dHNcclxue1xyXG4gIGZvcm0hOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBpblByb2dyZXNzPzogYm9vbGVhbjtcclxuXHJcbiAgaGlkZUN1cnJlbnRQYXNzd29yZD86IGJvb2xlYW47XHJcblxyXG4gIG1hcEVycm9yc0ZuOiBWYWxpZGF0aW9uLk1hcEVycm9yc0ZuID0gKGVycm9ycywgZ3JvdXBFcnJvcnMsIGNvbnRyb2wpID0+IHtcclxuICAgIGlmIChQQVNTV09SRF9GSUVMRFMuaW5kZXhPZihTdHJpbmcoY29udHJvbD8ubmFtZSkpIDwgMCkgcmV0dXJuIGVycm9ycztcclxuXHJcbiAgICByZXR1cm4gZXJyb3JzLmNvbmNhdChncm91cEVycm9ycy5maWx0ZXIoKHsga2V5IH0pID0+IGtleSA9PT0gJ3Bhc3N3b3JkTWlzbWF0Y2gnKSk7XHJcbiAgfTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZiOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBwcm9maWxlU2VydmljZTogUHJvZmlsZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1hbmFnZVByb2ZpbGVTdGF0ZTogTWFuYWdlUHJvZmlsZVN0YXRlU2VydmljZSxcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5oaWRlQ3VycmVudFBhc3N3b3JkID0gIXRoaXMubWFuYWdlUHJvZmlsZVN0YXRlLmdldFByb2ZpbGUoKT8uaGFzUGFzc3dvcmQ7XHJcblxyXG4gICAgY29uc3QgcGFzc3dvcmRWYWxpZGF0aW9ucyA9IGdldFBhc3N3b3JkVmFsaWRhdG9ycyh0aGlzLmluamVjdG9yKTtcclxuXHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKFxyXG4gICAgICB7XHJcbiAgICAgICAgcGFzc3dvcmQ6IFsnJywgcmVxdWlyZWRdLFxyXG4gICAgICAgIG5ld1Bhc3N3b3JkOiBbXHJcbiAgICAgICAgICAnJyxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgdmFsaWRhdG9yczogW3JlcXVpcmVkLCAuLi5wYXNzd29yZFZhbGlkYXRpb25zXSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgXSxcclxuICAgICAgICByZXBlYXROZXdQYXNzd29yZDogW1xyXG4gICAgICAgICAgJycsXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHZhbGlkYXRvcnM6IFtyZXF1aXJlZCwgLi4ucGFzc3dvcmRWYWxpZGF0aW9uc10sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIF0sXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB2YWxpZGF0b3JzOiBbY29tcGFyZVBhc3N3b3JkcyhQQVNTV09SRF9GSUVMRFMpXSxcclxuICAgICAgfSxcclxuICAgICk7XHJcblxyXG4gICAgaWYgKHRoaXMuaGlkZUN1cnJlbnRQYXNzd29yZCkgdGhpcy5mb3JtLnJlbW92ZUNvbnRyb2woJ3Bhc3N3b3JkJyk7XHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdCgpIHtcclxuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkgcmV0dXJuO1xyXG4gICAgdGhpcy5pblByb2dyZXNzID0gdHJ1ZTtcclxuICAgIHRoaXMucHJvZmlsZVNlcnZpY2VcclxuICAgICAgLmNoYW5nZVBhc3N3b3JkKHtcclxuICAgICAgICAuLi4oIXRoaXMuaGlkZUN1cnJlbnRQYXNzd29yZCAmJiB7IGN1cnJlbnRQYXNzd29yZDogdGhpcy5mb3JtLmdldCgncGFzc3dvcmQnKT8udmFsdWUgfSksXHJcbiAgICAgICAgbmV3UGFzc3dvcmQ6IHRoaXMuZm9ybS5nZXQoJ25ld1Bhc3N3b3JkJyk/LnZhbHVlLFxyXG4gICAgICB9KVxyXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5pblByb2dyZXNzID0gZmFsc2UpKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5mb3JtLnJlc2V0KCk7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnN1Y2Nlc3MoJ0FicEFjY291bnQ6OlBhc3N3b3JkQ2hhbmdlZE1lc3NhZ2UnLCAnJywge1xyXG4gICAgICAgICAgICBsaWZlOiA1MDAwLFxyXG4gICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgaWYgKHRoaXMuaGlkZUN1cnJlbnRQYXNzd29yZCkge1xyXG4gICAgICAgICAgICB0aGlzLmhpZGVDdXJyZW50UGFzc3dvcmQgPSBmYWxzZTtcclxuICAgICAgICAgICAgdGhpcy5mb3JtLmFkZENvbnRyb2woJ3Bhc3N3b3JkJywgbmV3IFVudHlwZWRGb3JtQ29udHJvbCgnJywgW3JlcXVpcmVkXSkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IGVyciA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0ZXJTZXJ2aWNlLmVycm9yKGVyci5lcnJvcj8uZXJyb3I/Lm1lc3NhZ2UgfHwgJ0FicEFjY291bnQ6OkRlZmF1bHRFcnJvck1lc3NhZ2UnKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIiBbbWFwRXJyb3JzRm5dPVwibWFwRXJyb3JzRm5cIiB2YWxpZGF0ZU9uU3VibWl0PlxyXG4gIDxkaXYgKm5nSWY9XCIhaGlkZUN1cnJlbnRQYXNzd29yZFwiIGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwiY3VycmVudC1wYXNzd29yZFwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6Q3VycmVudFBhc3N3b3JkJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PHNwYW4+ICogPC9zcGFuXHJcbiAgICA+PGlucHV0XHJcbiAgICAgIHR5cGU9XCJwYXNzd29yZFwiXHJcbiAgICAgIGlkPVwiY3VycmVudC1wYXNzd29yZFwiXHJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIlxyXG4gICAgICBhdXRvZm9jdXNcclxuICAgICAgYXV0b2NvbXBsZXRlPVwiY3VycmVudC1wYXNzd29yZFwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0zIGZvcm0tZ3JvdXBcIj5cclxuICAgIDxsYWJlbCBmb3I9XCJuZXctcGFzc3dvcmRcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOk5ld1Bhc3N3b3JkJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PHNwYW4+ICogPC9zcGFuXHJcbiAgICA+PGlucHV0XHJcbiAgICAgIHR5cGU9XCJwYXNzd29yZFwiXHJcbiAgICAgIGlkPVwibmV3LXBhc3N3b3JkXCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJuZXdQYXNzd29yZFwiXHJcbiAgICAgIGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0zIGZvcm0tZ3JvdXBcIj5cclxuICAgIDxsYWJlbCBmb3I9XCJjb25maXJtLW5ldy1wYXNzd29yZFwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6TmV3UGFzc3dvcmRDb25maXJtJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PHNwYW4+ICogPC9zcGFuXHJcbiAgICA+PGlucHV0XHJcbiAgICAgIHR5cGU9XCJwYXNzd29yZFwiXHJcbiAgICAgIGlkPVwiY29uZmlybS1uZXctcGFzc3dvcmRcIlxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cInJlcGVhdE5ld1Bhc3N3b3JkXCJcclxuICAgICAgYXV0b2NvbXBsZXRlPVwibmV3LXBhc3N3b3JkXCJcclxuICAgIC8+XHJcbiAgPC9kaXY+XHJcbiAgPGFicC1idXR0b25cclxuICAgIGljb25DbGFzcz1cImZhIGZhLWNoZWNrXCJcclxuICAgIGJ1dHRvbkNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGNvbG9yLXdoaXRlXCJcclxuICAgIGJ1dHRvblR5cGU9XCJzdWJtaXRcIlxyXG4gICAgW2xvYWRpbmddPVwiaW5Qcm9ncmVzc1wiXHJcbiAgICBbZGlzYWJsZWRdPVwiZm9ybT8uaW52YWxpZFwiXHJcbiAgICA+e3sgJ0FicElkZW50aXR5OjpTYXZlJyB8IGFicExvY2FsaXphdGlvbiB9fTwvYWJwLWJ1dHRvblxyXG4gID5cclxuPC9mb3JtPlxyXG4iXX0=
@@ -0,0 +1,44 @@
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
+ 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
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ForgotPasswordComponent, deps: [{ token: i1.UntypedFormBuilder }, { token: i2.AccountService }], target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", 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\" aria-hidden=\"true\"></i\r\n >{{ '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\" aria-hidden=\"true\"></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" }] }); }
38
+ }
39
+ export { ForgotPasswordComponent };
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ForgotPasswordComponent, decorators: [{
41
+ type: Component,
42
+ 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\" aria-hidden=\"true\"></i\r\n >{{ '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\" aria-hidden=\"true\"></i>\r\n {{ 'AbpAccount::BackToLogin' | abpLocalization }}\r\n </button>\r\n </a>\r\n</ng-template>\r\n" }]
43
+ }], ctorParameters: function () { return [{ type: i1.UntypedFormBuilder }, { type: i2.AccountService }]; } });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yZ290LXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FjY291bnQvc3JjL2xpYi9jb21wb25lbnRzL2ZvcmdvdC1wYXNzd29yZC9mb3Jnb3QtcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsa0JBQWtCLEVBQW9CLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBRTFDLE1BSWEsdUJBQXVCO0lBT2xDLFlBQW9CLEVBQXNCLEVBQVUsY0FBOEI7UUFBOUQsT0FBRSxHQUFGLEVBQUUsQ0FBb0I7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFGbEYsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFHbEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyRCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUU5QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUV2QixJQUFJLENBQUMsY0FBYzthQUNoQixxQkFBcUIsQ0FBQztZQUNyQixLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSztZQUNwQyxPQUFPLEVBQUUsU0FBUztTQUNuQixDQUFDO2FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUMvQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQTNCVSx1QkFBdUI7a0dBQXZCLHVCQUF1QiwyRENUcEMsZytDQTJDQTs7U0RsQ2EsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7K0JBQ0UscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmFjY291bnQuY29yZS9wcm94eSc7XHJcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtZm9yZ290LXBhc3N3b3JkJyxcclxuICB0ZW1wbGF0ZVVybDogJ2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3Jnb3RQYXNzd29yZENvbXBvbmVudCB7XHJcbiAgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcclxuXHJcbiAgaW5Qcm9ncmVzcz86IGJvb2xlYW47XHJcblxyXG4gIGlzRW1haWxTZW50ID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZmI6IFVudHlwZWRGb3JtQnVpbGRlciwgcHJpdmF0ZSBhY2NvdW50U2VydmljZTogQWNjb3VudFNlcnZpY2UpIHtcclxuICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICBlbWFpbDogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5lbWFpbF1dLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblN1Ym1pdCgpIHtcclxuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuaW5Qcm9ncmVzcyA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5hY2NvdW50U2VydmljZVxyXG4gICAgICAuc2VuZFBhc3N3b3JkUmVzZXRDb2RlKHtcclxuICAgICAgICBlbWFpbDogdGhpcy5mb3JtLmdldCgnZW1haWwnKT8udmFsdWUsXHJcbiAgICAgICAgYXBwTmFtZTogJ0FuZ3VsYXInLFxyXG4gICAgICB9KVxyXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5pblByb2dyZXNzID0gZmFsc2UpKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc0VtYWlsU2VudCA9IHRydWU7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8aDQ+e3sgJ0FicEFjY291bnQ6OkZvcmdvdFBhc3N3b3JkJyB8IGFicExvY2FsaXphdGlvbiB9fTwvaDQ+XHJcblxyXG48Zm9ybVxyXG4gICpuZ0lmPVwiIWlzRW1haWxTZW50OyBlbHNlIGVtYWlsU2VudFRlbXBsYXRlXCJcclxuICBbZm9ybUdyb3VwXT1cImZvcm1cIlxyXG4gIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCJcclxuICB2YWxpZGF0ZU9uU3VibWl0XHJcbj5cclxuICA8cD57eyAnQWJwQWNjb3VudDo6U2VuZFBhc3N3b3JkUmVzZXRMaW5rX0luZm9ybWF0aW9uJyB8IGFicExvY2FsaXphdGlvbiB9fTwvcD5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwiaW5wdXQtZW1haWwtYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBBY2NvdW50OjpFbWFpbEFkZHJlc3MnIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgICB9fTwvbGFiZWxcclxuICAgID48c3Bhbj4gKiA8L3NwYW4+XHJcbiAgICA8aW5wdXQgdHlwZT1cImVtYWlsXCIgaWQ9XCJpbnB1dC1lbWFpbC1hZGRyZXNzXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBmb3JtQ29udHJvbE5hbWU9XCJlbWFpbFwiIC8+XHJcbiAgPC9kaXY+XHJcbiAgPGFicC1idXR0b25cclxuICAgIGNsYXNzPVwiZC1ibG9ja1wiXHJcbiAgICBidXR0b25DbGFzcz1cIm10LTIgbWItMyBidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrXCJcclxuICAgIFtsb2FkaW5nXT1cImluUHJvZ3Jlc3NcIlxyXG4gICAgYnV0dG9uVHlwZT1cInN1Ym1pdFwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZm9ybT8uaW52YWxpZFwiXHJcbiAgPlxyXG4gICAge3sgJ0FicEFjY291bnQ6OlN1Ym1pdCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICA8L2FicC1idXR0b24+XHJcbiAgPGEgcm91dGVyTGluaz1cIi9hY2NvdW50L2xvZ2luXCJcclxuICAgID48aSBjbGFzcz1cImZhIGZhLWxvbmctYXJyb3ctbGVmdCBtZS0xXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pXHJcbiAgICA+e3sgJ0FicEFjY291bnQ6OkxvZ2luJyB8IGFicExvY2FsaXphdGlvbiB9fTwvYVxyXG4gID5cclxuPC9mb3JtPlxyXG5cclxuPG5nLXRlbXBsYXRlICNlbWFpbFNlbnRUZW1wbGF0ZT5cclxuICA8cD5cclxuICAgIHt7ICdBYnBBY2NvdW50OjpQYXNzd29yZFJlc2V0TWFpbFNlbnRNZXNzYWdlJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gIDwvcD5cclxuXHJcbiAgPGEgcm91dGVyTGluaz1cIi9hY2NvdW50L2xvZ2luXCI+XHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiZC1ibG9jayBtdC0yIG1iLTMgYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9ja1wiPlxyXG4gICAgICA8aSBjbGFzcz1cImZhIGZhLWxvbmctYXJyb3ctbGVmdCBtZS0xXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxyXG4gICAgICB7eyAnQWJwQWNjb3VudDo6QmFja1RvTG9naW4nIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2E+XHJcbjwvbmctdGVtcGxhdGU+XHJcbiJdfQ==
@@ -1,9 +1,9 @@
1
- export * from './change-password/change-password.component';
2
- export * from './forgot-password/forgot-password.component';
3
- export * from './login/login.component';
4
- export * from './manage-profile/manage-profile.component';
5
- export * from './register/register.component';
6
- export * from './personal-settings/personal-settings.component';
7
- export * from './personal-settings/personal-settings-half-row.component';
8
- export * from './reset-password/reset-password.component';
1
+ export * from './change-password/change-password.component';
2
+ export * from './forgot-password/forgot-password.component';
3
+ export * from './login/login.component';
4
+ export * from './manage-profile/manage-profile.component';
5
+ export * from './register/register.component';
6
+ export * from './personal-settings/personal-settings.component';
7
+ export * from './personal-settings/personal-settings-half-row.component';
8
+ export * from './reset-password/reset-password.component';
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsMkNBQTJDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9mb3Jnb3QtcGFzc3dvcmQvZm9yZ290LXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vbG9naW4uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9tYW5hZ2UtcHJvZmlsZS9tYW5hZ2UtcHJvZmlsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9wZXJzb25hbC1zZXR0aW5ncy9wZXJzb25hbC1zZXR0aW5ncy1oYWxmLXJvdy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3Jlc2V0LXBhc3N3b3JkL3Jlc2V0LXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbiJdfQ==
@@ -0,0 +1,65 @@
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
+ 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
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: LoginComponent, deps: [{ token: i0.Injector }, { token: i1.UntypedFormBuilder }, { token: i2.ToasterService }, { token: i3.AuthService }, { token: i3.ConfigStateService }], target: i0.ɵɵFactoryTarget.Component }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", 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" }] }); }
59
+ }
60
+ export { LoginComponent };
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: LoginComponent, decorators: [{
62
+ type: Component,
63
+ 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" }]
64
+ }], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.UntypedFormBuilder }, { type: i2.ToasterService }, { type: i3.AuthService }, { type: i3.ConfigStateService }]; } });
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFvQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7OztBQUV4RCxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxHQUFHLFVBQVUsQ0FBQztBQUUzQyxNQUlhLGNBQWM7SUFTekIsWUFDWSxRQUFrQixFQUNsQixFQUFzQixFQUN0QixjQUE4QixFQUM5QixXQUF3QixFQUN4QixXQUErQjtRQUovQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLE9BQUUsR0FBRixFQUFFLENBQW9CO1FBQ3RCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFUM0MsOEJBQXlCLEdBQUcsSUFBSSxDQUFDO1FBRWpDLG1CQUFjLHVFQUFrQztJQVE3QyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRVMsSUFBSTtRQUNaLElBQUksQ0FBQyx5QkFBeUI7WUFDNUIsQ0FDRyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyx1Q0FBdUMsQ0FBWSxJQUFJLEVBQUUsQ0FDdkYsQ0FBQyxXQUFXLEVBQUUsS0FBSyxPQUFPLENBQUM7SUFDaEMsQ0FBQztJQUVTLFNBQVM7UUFDakIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzFDLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQztTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUU5QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUV2QixNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUzRCxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRWxELElBQUksQ0FBQyxXQUFXO2FBQ2IsS0FBSyxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLENBQUM7YUFDdEQsSUFBSSxDQUNILFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNmLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUN2QixHQUFHLENBQUMsS0FBSyxFQUFFLGlCQUFpQjtnQkFDMUIsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsT0FBTztnQkFDeEIsaUNBQWlDLEVBQ25DLEVBQUUsRUFDRixFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FDZixDQUFDO1lBQ0YsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekIsQ0FBQyxDQUFDLEVBQ0YsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUMxQzthQUNBLFNBQVMsRUFBRSxDQUFDO0lBQ2pCLENBQUM7OEdBOURVLGNBQWM7a0dBQWQsY0FBYyxpRENmM0Isb29FQThEQTs7U0QvQ2EsY0FBYzsyRkFBZCxjQUFjO2tCQUoxQixTQUFTOytCQUNFLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoU2VydmljZSwgQ29uZmlnU3RhdGVTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0b3IsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmluYWxpemUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGVBY2NvdW50Q29tcG9uZW50cyB9IGZyb20gJy4uLy4uL2VudW1zL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBnZXRSZWRpcmVjdFVybCB9IGZyb20gJy4uLy4uL3V0aWxzL2F1dGgtdXRpbHMnO1xyXG5cclxuY29uc3QgeyBtYXhMZW5ndGgsIHJlcXVpcmVkIH0gPSBWYWxpZGF0b3JzO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtbG9naW4nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2dpbi5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZm9ybSE6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIGluUHJvZ3Jlc3M/OiBib29sZWFuO1xyXG5cclxuICBpc1NlbGZSZWdpc3RyYXRpb25FbmFibGVkID0gdHJ1ZTtcclxuXHJcbiAgYXV0aFdyYXBwZXJLZXkgPSBlQWNjb3VudENvbXBvbmVudHMuQXV0aFdyYXBwZXI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcclxuICAgIHByb3RlY3RlZCBmYjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJvdGVjdGVkIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgY29uZmlnU3RhdGU6IENvbmZpZ1N0YXRlU2VydmljZSxcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5pbml0KCk7XHJcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGluaXQoKSB7XHJcbiAgICB0aGlzLmlzU2VsZlJlZ2lzdHJhdGlvbkVuYWJsZWQgPVxyXG4gICAgICAoXHJcbiAgICAgICAgKHRoaXMuY29uZmlnU3RhdGUuZ2V0U2V0dGluZygnQWJwLkFjY291bnQuSXNTZWxmUmVnaXN0cmF0aW9uRW5hYmxlZCcpIGFzIHN0cmluZykgfHwgJydcclxuICAgICAgKS50b0xvd2VyQ2FzZSgpICE9PSAnZmFsc2UnO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGJ1aWxkRm9ybSgpIHtcclxuICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICB1c2VybmFtZTogWycnLCBbcmVxdWlyZWQsIG1heExlbmd0aCgyNTUpXV0sXHJcbiAgICAgIHBhc3N3b3JkOiBbJycsIFtyZXF1aXJlZCwgbWF4TGVuZ3RoKDEyOCldXSxcclxuICAgICAgcmVtZW1iZXJNZTogW2ZhbHNlXSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb25TdWJtaXQoKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLmluUHJvZ3Jlc3MgPSB0cnVlO1xyXG5cclxuICAgIGNvbnN0IHsgdXNlcm5hbWUsIHBhc3N3b3JkLCByZW1lbWJlck1lIH0gPSB0aGlzLmZvcm0udmFsdWU7XHJcblxyXG4gICAgY29uc3QgcmVkaXJlY3RVcmwgPSBnZXRSZWRpcmVjdFVybCh0aGlzLmluamVjdG9yKTtcclxuXHJcbiAgICB0aGlzLmF1dGhTZXJ2aWNlXHJcbiAgICAgIC5sb2dpbih7IHVzZXJuYW1lLCBwYXNzd29yZCwgcmVtZW1iZXJNZSwgcmVkaXJlY3RVcmwgfSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xyXG4gICAgICAgICAgdGhpcy50b2FzdGVyU2VydmljZS5lcnJvcihcclxuICAgICAgICAgICAgZXJyLmVycm9yPy5lcnJvcl9kZXNjcmlwdGlvbiB8fFxyXG4gICAgICAgICAgICAgIGVyci5lcnJvcj8uZXJyb3IubWVzc2FnZSB8fFxyXG4gICAgICAgICAgICAgICdBYnBBY2NvdW50OjpEZWZhdWx0RXJyb3JNZXNzYWdlJyxcclxuICAgICAgICAgICAgJycsXHJcbiAgICAgICAgICAgIHsgbGlmZTogNzAwMCB9LFxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycik7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgZmluYWxpemUoKCkgPT4gKHRoaXMuaW5Qcm9ncmVzcyA9IGZhbHNlKSksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZSgpO1xyXG4gIH1cclxufVxyXG4iLCI8aDQ+e3sgJ0FicEFjY291bnQ6OkxvZ2luJyB8IGFicExvY2FsaXphdGlvbiB9fTwvaDQ+XHJcbjxzdHJvbmcgKm5nSWY9XCJpc1NlbGZSZWdpc3RyYXRpb25FbmFibGVkXCI+XHJcbiAge3sgJ0FicEFjY291bnQ6OkFyZVlvdUFOZXdVc2VyJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gIDxhIGNsYXNzPVwidGV4dC1kZWNvcmF0aW9uLW5vbmVcIiByb3V0ZXJMaW5rPVwiL2FjY291bnQvcmVnaXN0ZXJcIiBxdWVyeVBhcmFtc0hhbmRsaW5nPVwicHJlc2VydmVcIj57e1xyXG4gICAgJ0FicEFjY291bnQ6OlJlZ2lzdGVyJyB8IGFicExvY2FsaXphdGlvblxyXG4gIH19PC9hPlxyXG48L3N0cm9uZz5cclxuPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIiB2YWxpZGF0ZU9uU3VibWl0IGNsYXNzPVwibXQtNFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0zIGZvcm0tZ3JvdXBcIj5cclxuICAgIDxsYWJlbCBmb3I9XCJsb2dpbi1pbnB1dC11c2VyLW5hbWUtb3ItZW1haWwtYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBBY2NvdW50OjpVc2VyTmFtZU9yRW1haWxBZGRyZXNzJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsPlxyXG4gICAgPGlucHV0XHJcbiAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICBpZD1cImxvZ2luLWlucHV0LXVzZXItbmFtZS1vci1lbWFpbC1hZGRyZXNzXCJcclxuICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIlxyXG4gICAgICBhdXRvY29tcGxldGU9XCJ1c2VybmFtZVwiXHJcbiAgICAgIGF1dG9mb2N1c1xyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwibG9naW4taW5wdXQtcGFzc3dvcmRcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57eyAnQWJwQWNjb3VudDo6UGFzc3dvcmQnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9sYWJlbD5cclxuICAgIDxpbnB1dFxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIHR5cGU9XCJwYXNzd29yZFwiXHJcbiAgICAgIGlkPVwibG9naW4taW5wdXQtcGFzc3dvcmRcIlxyXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiXHJcbiAgICAgIGF1dG9jb21wbGV0ZT1cImN1cnJlbnQtcGFzc3dvcmRcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVja1wiPlxyXG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgbWItMlwiIGZvcj1cImxvZ2luLWlucHV0LXJlbWVtYmVyLW1lXCI+XHJcbiAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCJcclxuICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgaWQ9XCJsb2dpbi1pbnB1dC1yZW1lbWJlci1tZVwiXHJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInJlbWVtYmVyTWVcIlxyXG4gICAgICAgICAgLz5cclxuICAgICAgICAgIHt7ICdBYnBBY2NvdW50OjpSZW1lbWJlck1lJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgIDwvbGFiZWw+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbmQgY29sXCI+XHJcbiAgICAgIDxhIHJvdXRlckxpbms9XCIvYWNjb3VudC9mb3Jnb3QtcGFzc3dvcmRcIj57e1xyXG4gICAgICAgICdBYnBBY2NvdW50OjpGb3Jnb3RQYXNzd29yZCcgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgICAgfX08L2E+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGFicC1idXR0b25cclxuICAgIFtsb2FkaW5nXT1cImluUHJvZ3Jlc3NcIlxyXG4gICAgYnV0dG9uVHlwZT1cInN1Ym1pdFwiXHJcbiAgICBuYW1lPVwiQWN0aW9uXCJcclxuICAgIGJ1dHRvbkNsYXNzPVwiYnRuLWJsb2NrIGJ0bi1sZyBtdC0zIGJ0biBidG4tcHJpbWFyeVwiXHJcbiAgPlxyXG4gICAge3sgJ0FicEFjY291bnQ6OkxvZ2luJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gIDwvYWJwLWJ1dHRvbj5cclxuPC9mb3JtPlxyXG4iXX0=
@@ -0,0 +1,40 @@
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
+ 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
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ManageProfileComponent, deps: [{ token: i1.ProfileService }, { token: i2.ManageProfileStateService }], target: i0.ɵɵFactoryTarget.Component }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", 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))])] }); }
34
+ }
35
+ export { ManageProfileComponent };
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: ManageProfileComponent, decorators: [{
37
+ type: Component,
38
+ 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"] }]
39
+ }], ctorParameters: function () { return [{ type: i1.ProfileService }, { type: i2.ManageProfileStateService }]; } });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXByb2ZpbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbWFuYWdlLXByb2ZpbGUvbWFuYWdlLXByb2ZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvbWFuYWdlLXByb2ZpbGUvbWFuYWdlLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7Ozs7Ozs7QUFFeEYsTUFZYSxzQkFBc0I7SUFXakMsWUFDWSxjQUE4QixFQUM5QixrQkFBNkM7UUFEN0MsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBMkI7UUFaekQsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFFaEIsc0JBQWlCLDZFQUFxQztRQUV0RCx3QkFBbUIsaUZBQXVDO1FBRTFELGFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFPOUMsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM1QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzVDLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRTtnQkFDdEIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQztnQkFDbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7YUFDdEI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBeEJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDBEQ25CbkMsZzBFQThEQSwrNkJEcERjLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDOztTQVNsRSxzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFabEMsU0FBUzsrQkFDRSxvQkFBb0IsY0FFbEIsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9maWxlU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuYWNjb3VudC5jb3JlL3Byb3h5JztcclxuaW1wb3J0IHsgZmFkZUluIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyB0cmFuc2l0aW9uLCB0cmlnZ2VyLCB1c2VBbmltYXRpb24gfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZUFjY291bnRDb21wb25lbnRzIH0gZnJvbSAnLi4vLi4vZW51bXMvY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IE1hbmFnZVByb2ZpbGVTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYW5hZ2UtcHJvZmlsZS5zdGF0ZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLW1hbmFnZS1wcm9maWxlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWFuYWdlLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGFuaW1hdGlvbnM6IFt0cmlnZ2VyKCdmYWRlSW4nLCBbdHJhbnNpdGlvbignOmVudGVyJywgdXNlQW5pbWF0aW9uKGZhZGVJbikpXSldLFxyXG4gIHN0eWxlczogW1xyXG4gICAgYFxyXG4gICAgICAubWluLWgtNDAwIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0MDBweDtcclxuICAgICAgfVxyXG4gICAgYCxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWFuYWdlUHJvZmlsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgc2VsZWN0ZWRUYWIgPSAwO1xyXG5cclxuICBjaGFuZ2VQYXNzd29yZEtleSA9IGVBY2NvdW50Q29tcG9uZW50cy5DaGFuZ2VQYXNzd29yZDtcclxuXHJcbiAgcGVyc29uYWxTZXR0aW5nc0tleSA9IGVBY2NvdW50Q29tcG9uZW50cy5QZXJzb25hbFNldHRpbmdzO1xyXG5cclxuICBwcm9maWxlJCA9IHRoaXMubWFuYWdlUHJvZmlsZVN0YXRlLmdldFByb2ZpbGUkKCk7XHJcblxyXG4gIGhpZGVDaGFuZ2VQYXNzd29yZFRhYj86IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIHByb2ZpbGVTZXJ2aWNlOiBQcm9maWxlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBtYW5hZ2VQcm9maWxlU3RhdGU6IE1hbmFnZVByb2ZpbGVTdGF0ZVNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMucHJvZmlsZVNlcnZpY2UuZ2V0KCkuc3Vic2NyaWJlKHByb2ZpbGUgPT4ge1xyXG4gICAgICB0aGlzLm1hbmFnZVByb2ZpbGVTdGF0ZS5zZXRQcm9maWxlKHByb2ZpbGUpO1xyXG4gICAgICBpZiAocHJvZmlsZS5pc0V4dGVybmFsKSB7XHJcbiAgICAgICAgdGhpcy5oaWRlQ2hhbmdlUGFzc3dvcmRUYWIgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSAxO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBpZD1cIkFicENvbnRlbnRUb29sYmFyXCI+PC9kaXY+XHJcblxyXG48ZGl2IGNsYXNzPVwiY2FyZCBib3JkZXItMCBzaGFkb3ctc20gbWluLWgtNDAwXCIgW2FicExvYWRpbmddPVwiIShwcm9maWxlJCB8IGFzeW5jKT8udXNlck5hbWVcIj5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgY29sLW1kLTNcIj5cclxuICAgICAgICA8dWwgY2xhc3M9XCJuYXYgZmxleC1jb2x1bW4gbmF2LXBpbGxzXCIgaWQ9XCJuYXYtdGFiXCIgcm9sZT1cInRhYmxpc3RcIj5cclxuICAgICAgICAgIDxsaVxyXG4gICAgICAgICAgICAqbmdJZj1cIiFoaWRlQ2hhbmdlUGFzc3dvcmRUYWIgJiYgKHByb2ZpbGUkIHwgYXN5bmMpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJuYXYtaXRlbVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RlZFRhYiA9IDBcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmtcIlxyXG4gICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgYWN0aXZlOiBzZWxlY3RlZFRhYiA9PT0gMCB9XCJcclxuICAgICAgICAgICAgICByb2xlPVwidGFiXCJcclxuICAgICAgICAgICAgICBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCJcclxuICAgICAgICAgICAgICA+e3sgJ0FicFVpOjpDaGFuZ2VQYXNzd29yZCcgfCBhYnBMb2NhbGl6YXRpb24gfX08L2FcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICAgIDxsaSBjbGFzcz1cIm5hdi1pdGVtIG1iLTJcIiAoY2xpY2spPVwic2VsZWN0ZWRUYWIgPSAxXCI+XHJcbiAgICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGlua1wiXHJcbiAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieyBhY3RpdmU6IHNlbGVjdGVkVGFiID09PSAxIH1cIlxyXG4gICAgICAgICAgICAgIHJvbGU9XCJ0YWJcIlxyXG4gICAgICAgICAgICAgIGhyZWY9XCJqYXZhc2NyaXB0OnZvaWQoMClcIlxyXG4gICAgICAgICAgICAgID57eyAnQWJwQWNjb3VudDo6UGVyc29uYWxTZXR0aW5ncycgfCBhYnBMb2NhbGl6YXRpb24gfX08L2FcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICA8L3VsPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiAqbmdJZj1cInByb2ZpbGUkIHwgYXN5bmNcIiBjbGFzcz1cImNvbC0xMiBjb2wtbWQtOVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0YWItY29udGVudFwiICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09IDBcIiBbQGZhZGVJbl0+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFiLXBhbmUgYWN0aXZlXCIgcm9sZT1cInRhYnBhbmVsXCI+XHJcbiAgICAgICAgICAgIDxoND5cclxuICAgICAgICAgICAgICB7eyAnQWJwSWRlbnRpdHk6OkNoYW5nZVBhc3N3b3JkJyB8IGFicExvY2FsaXphdGlvbiB9fVxyXG4gICAgICAgICAgICAgIDxociAvPlxyXG4gICAgICAgICAgICA8L2g0PlxyXG4gICAgICAgICAgICA8YWJwLWNoYW5nZS1wYXNzd29yZC1mb3JtXHJcbiAgICAgICAgICAgICAgKmFicFJlcGxhY2VhYmxlVGVtcGxhdGU9XCJ7XHJcbiAgICAgICAgICAgICAgICBjb21wb25lbnRLZXk6IGNoYW5nZVBhc3N3b3JkS2V5XHJcbiAgICAgICAgICAgICAgfVwiXHJcbiAgICAgICAgICAgID48L2FicC1jaGFuZ2UtcGFzc3dvcmQtZm9ybT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0YWItY29udGVudFwiICpuZ0lmPVwic2VsZWN0ZWRUYWIgPT09IDFcIiBbQGZhZGVJbl0+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFiLXBhbmUgYWN0aXZlXCIgcm9sZT1cInRhYnBhbmVsXCI+XHJcbiAgICAgICAgICAgIDxoND5cclxuICAgICAgICAgICAgICB7eyAnQWJwSWRlbnRpdHk6OlBlcnNvbmFsU2V0dGluZ3MnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICAgICAgICAgICAgPGhyIC8+XHJcbiAgICAgICAgICAgIDwvaDQ+XHJcbiAgICAgICAgICAgIDxhYnAtcGVyc29uYWwtc2V0dGluZ3MtZm9ybVxyXG4gICAgICAgICAgICAgICphYnBSZXBsYWNlYWJsZVRlbXBsYXRlPVwie1xyXG4gICAgICAgICAgICAgICAgY29tcG9uZW50S2V5OiBwZXJzb25hbFNldHRpbmdzS2V5XHJcbiAgICAgICAgICAgICAgfVwiXHJcbiAgICAgICAgICAgID48L2FicC1wZXJzb25hbC1zZXR0aW5ncy1mb3JtPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -1,20 +1,19 @@
1
- import { Component, Inject } from '@angular/core';
2
- import { EXTENSIONS_FORM_PROP, FormProp, EXTENSIBLE_FORM_VIEW_PROVIDER, } from '@abp/ng.theme.shared/extensions';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/forms";
5
- import * as i2 from "@ngx-validate/core";
6
- import * as i3 from "@abp/ng.core";
7
- import * as i4 from "@abp/ng.theme.shared/extensions";
8
- export class PersonalSettingsHalfRowComponent {
9
- constructor(propData) {
10
- this.propData = propData;
11
- this.displayName = propData.displayName;
12
- this.name = propData.name;
13
- this.id = propData.id || '';
14
- }
15
- }
16
- PersonalSettingsHalfRowComponentfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PersonalSettingsHalfRowComponent, deps: [{ token: EXTENSIONS_FORM_PROP }], target: i0.ɵɵFactoryTarget.Component });
17
- PersonalSettingsHalfRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: PersonalSettingsHalfRowComponent, selector: "abp-personal-settings-half-row", ngImport: i0, template: ` <div class="w-50 d-inline">
1
+ import { Component, Inject } from '@angular/core';
2
+ import { EXTENSIONS_FORM_PROP, FormProp, EXTENSIBLE_FORM_VIEW_PROVIDER, } from '@abp/ng.theme.shared/extensions';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/forms";
5
+ import * as i2 from "@ngx-validate/core";
6
+ import * as i3 from "@abp/ng.core";
7
+ import * as i4 from "@abp/ng.theme.shared/extensions";
8
+ class PersonalSettingsHalfRowComponent {
9
+ constructor(propData) {
10
+ this.propData = propData;
11
+ this.displayName = propData.displayName;
12
+ this.name = propData.name;
13
+ this.id = propData.id || '';
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: PersonalSettingsHalfRowComponent, deps: [{ token: EXTENSIONS_FORM_PROP }], target: i0.ɵɵFactoryTarget.Component }); }
16
+ static { thiscmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.1", type: PersonalSettingsHalfRowComponent, selector: "abp-personal-settings-half-row", ngImport: i0, template: ` <div class="w-50 d-inline">
18
17
  <label [attr.for]="name" class="form-label">{{ displayName | abpLocalization }} </label>
19
18
  <input
20
19
  type="text"
@@ -23,9 +22,11 @@ PersonalSettingsHalfRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion:
23
22
  [attr.name]="name"
24
23
  [formControlName]="name"
25
24
  />
26
- </div>`, isInline: true, dependencies: [{ 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.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "pipe", type: i3.LocalizationPipe, name: "abpLocalization" }], viewProviders: [EXTENSIBLE_FORM_VIEW_PROVIDER] });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: PersonalSettingsHalfRowComponent, decorators: [{
28
- type: Component,
25
+ </div>`, isInline: true, dependencies: [{ 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.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "pipe", type: i3.LocalizationPipe, name: "abpLocalization" }], viewProviders: [EXTENSIBLE_FORM_VIEW_PROVIDER] }); }
26
+ }
27
+ export { PersonalSettingsHalfRowComponent };
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.1", ngImport: i0, type: PersonalSettingsHalfRowComponent, decorators: [{
29
+ type: Component,
29
30
  args: [{ selector: 'abp-personal-settings-half-row', template: ` <div class="w-50 d-inline">
30
31
  <label [attr.for]="name" class="form-label">{{ displayName | abpLocalization }} </label>
31
32
  <input
@@ -35,9 +36,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
35
36
  [attr.name]="name"
36
37
  [formControlName]="name"
37
38
  />
38
- </div>`, viewProviders: [EXTENSIBLE_FORM_VIEW_PROVIDER] }]
39
- }], ctorParameters: function () { return [{ type: i4.FormProp, decorators: [{
40
- type: Inject,
41
- args: [EXTENSIONS_FORM_PROP]
42
- }] }]; } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uYWwtc2V0dGluZ3MtaGFsZi1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MtaGFsZi1yb3cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsUUFBUSxFQUNSLDZCQUE2QixHQUM5QixNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7QUFrQnpDLE1BQU0sT0FBTyxnQ0FBZ0M7SUFNM0MsWUFBa0QsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsRSxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDeEMsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQzs7NkhBVlUsZ0NBQWdDLGtCQU12QixvQkFBb0I7aUhBTjdCLGdDQUFnQyxzRUFiakM7Ozs7Ozs7OztTQVNILG94QkFFUSxDQUFDLDZCQUE2QixDQUFDOzJGQUVuQyxnQ0FBZ0M7a0JBZjVDLFNBQVM7K0JBQ0UsZ0NBQWdDLFlBQ2hDOzs7Ozs7Ozs7U0FTSCxpQkFFUSxDQUFDLDZCQUE2QixDQUFDOzswQkFRakMsTUFBTTsyQkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIEVYVEVOU0lPTlNfRk9STV9QUk9QLFxyXG4gIEZvcm1Qcm9wLFxyXG4gIEVYVEVOU0lCTEVfRk9STV9WSUVXX1BST1ZJREVSLFxyXG59IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhYnAtcGVyc29uYWwtc2V0dGluZ3MtaGFsZi1yb3cnLFxyXG4gIHRlbXBsYXRlOiBgIDxkaXYgY2xhc3M9XCJ3LTUwIGQtaW5saW5lXCI+XHJcbiAgICA8bGFiZWwgW2F0dHIuZm9yXT1cIm5hbWVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57eyBkaXNwbGF5TmFtZSB8IGFicExvY2FsaXphdGlvbiB9fSA8L2xhYmVsPlxyXG4gICAgPGlucHV0XHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgW2F0dHIuaWRdPVwiaWRcIlxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIFthdHRyLm5hbWVdPVwibmFtZVwiXHJcbiAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwibmFtZVwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PmAsXHJcbiAgc3R5bGVzOiBbXSxcclxuICB2aWV3UHJvdmlkZXJzOiBbRVhURU5TSUJMRV9GT1JNX1ZJRVdfUFJPVklERVJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVyc29uYWxTZXR0aW5nc0hhbGZSb3dDb21wb25lbnQge1xyXG4gIHB1YmxpYyBkaXNwbGF5TmFtZTogc3RyaW5nO1xyXG4gIHB1YmxpYyBuYW1lOiBzdHJpbmc7XHJcbiAgcHVibGljIGlkOiBzdHJpbmc7XHJcbiAgcHVibGljIGZvcm1Hcm91cCE6IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRVhURU5TSU9OU19GT1JNX1BST1ApIHByaXZhdGUgcHJvcERhdGE6IEZvcm1Qcm9wKSB7XHJcbiAgICB0aGlzLmRpc3BsYXlOYW1lID0gcHJvcERhdGEuZGlzcGxheU5hbWU7XHJcbiAgICB0aGlzLm5hbWUgPSBwcm9wRGF0YS5uYW1lO1xyXG4gICAgdGhpcy5pZCA9IHByb3BEYXRhLmlkIHx8ICcnO1xyXG4gIH1cclxufVxyXG4iXX0=
39
+ </div>`, viewProviders: [EXTENSIBLE_FORM_VIEW_PROVIDER] }]
40
+ }], ctorParameters: function () { return [{ type: i4.FormProp, decorators: [{
41
+ type: Inject,
42
+ args: [EXTENSIONS_FORM_PROP]
43
+ }] }]; } });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uYWwtc2V0dGluZ3MtaGFsZi1yb3cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MtaGFsZi1yb3cuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsUUFBUSxFQUNSLDZCQUE2QixHQUM5QixNQUFNLGlDQUFpQyxDQUFDOzs7Ozs7QUFHekMsTUFlYSxnQ0FBZ0M7SUFNM0MsWUFBa0QsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsRSxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxXQUFXLENBQUM7UUFDeEMsSUFBSSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQzFCLElBQUksQ0FBQyxFQUFFLEdBQUcsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQzs4R0FWVSxnQ0FBZ0Msa0JBTXZCLG9CQUFvQjtrR0FON0IsZ0NBQWdDLHNFQWJqQzs7Ozs7Ozs7O1NBU0gsb3hCQUVRLENBQUMsNkJBQTZCLENBQUM7O1NBRW5DLGdDQUFnQzsyRkFBaEMsZ0NBQWdDO2tCQWY1QyxTQUFTOytCQUNFLGdDQUFnQyxZQUNoQzs7Ozs7Ozs7O1NBU0gsaUJBRVEsQ0FBQyw2QkFBNkIsQ0FBQzs7MEJBUWpDLE1BQU07MkJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBFWFRFTlNJT05TX0ZPUk1fUFJPUCxcclxuICBGb3JtUHJvcCxcclxuICBFWFRFTlNJQkxFX0ZPUk1fVklFV19QUk9WSURFUixcclxufSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLXBlcnNvbmFsLXNldHRpbmdzLWhhbGYtcm93JyxcclxuICB0ZW1wbGF0ZTogYCA8ZGl2IGNsYXNzPVwidy01MCBkLWlubGluZVwiPlxyXG4gICAgPGxhYmVsIFthdHRyLmZvcl09XCJuYW1lXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3sgZGlzcGxheU5hbWUgfCBhYnBMb2NhbGl6YXRpb24gfX0gPC9sYWJlbD5cclxuICAgIDxpbnB1dFxyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIFthdHRyLmlkXT1cImlkXCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxyXG4gICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIm5hbWVcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5gLFxyXG4gIHN0eWxlczogW10sXHJcbiAgdmlld1Byb3ZpZGVyczogW0VYVEVOU0lCTEVfRk9STV9WSUVXX1BST1ZJREVSXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcnNvbmFsU2V0dGluZ3NIYWxmUm93Q29tcG9uZW50IHtcclxuICBwdWJsaWMgZGlzcGxheU5hbWU6IHN0cmluZztcclxuICBwdWJsaWMgbmFtZTogc3RyaW5nO1xyXG4gIHB1YmxpYyBpZDogc3RyaW5nO1xyXG4gIHB1YmxpYyBmb3JtR3JvdXAhOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEVYVEVOU0lPTlNfRk9STV9QUk9QKSBwcml2YXRlIHByb3BEYXRhOiBGb3JtUHJvcCkge1xyXG4gICAgdGhpcy5kaXNwbGF5TmFtZSA9IHByb3BEYXRhLmRpc3BsYXlOYW1lO1xyXG4gICAgdGhpcy5uYW1lID0gcHJvcERhdGEubmFtZTtcclxuICAgIHRoaXMuaWQgPSBwcm9wRGF0YS5pZCB8fCAnJztcclxuICB9XHJcbn1cclxuIl19