@abp/ng.account 5.3.4 → 5.3.5

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.
@@ -14,6 +14,7 @@ import { accountConfigOptionsFactory } from './utils/factory-utils';
14
14
  import { AuthenticationFlowGuard } from './guards/authentication-flow.guard';
15
15
  import { ForgotPasswordComponent } from './components/forgot-password/forgot-password.component';
16
16
  import { ResetPasswordComponent } from './components/reset-password/reset-password.component';
17
+ import { RE_LOGIN_CONFIRMATION_TOKEN } from './tokens';
17
18
  import * as i0 from "@angular/core";
18
19
  const declarations = [
19
20
  LoginComponent,
@@ -36,6 +37,10 @@ export class AccountModule {
36
37
  useFactory: accountConfigOptionsFactory,
37
38
  deps: [ACCOUNT_CONFIG_OPTIONS],
38
39
  },
40
+ {
41
+ provide: RE_LOGIN_CONFIRMATION_TOKEN,
42
+ useValue: options.isPersonalSettingsChangedConfirmationActive ?? true,
43
+ },
39
44
  ],
40
45
  };
41
46
  }
@@ -82,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
82
87
  exports: [...declarations],
83
88
  }]
84
89
  }] });
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQXVCLFFBQVEsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTdFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOztBQUU5RixNQUFNLFlBQVksR0FBRztJQUNuQixjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLHVCQUF1QjtJQUN2QixzQkFBc0I7SUFDdEIseUJBQXlCO0lBQ3pCLHVCQUF1QjtJQUN2QixzQkFBc0I7Q0FDdkIsQ0FBQztBQWFGLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUEwQjtRQUNsRCxPQUFPO1lBQ0wsUUFBUSxFQUFFLGFBQWE7WUFDdkIsU0FBUyxFQUFFO2dCQUNULHVCQUF1QjtnQkFDdkIsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRTtnQkFDdEQ7b0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsVUFBVSxFQUFFLDJCQUEyQjtvQkFDdkMsSUFBSSxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQy9CO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUEwQjtRQUNqRCxPQUFPLElBQUksaUJBQWlCLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7OzBHQWxCVSxhQUFhOzJHQUFiLGFBQWEsaUJBcEJ4QixjQUFjO1FBQ2QsaUJBQWlCO1FBQ2pCLHVCQUF1QjtRQUN2QixzQkFBc0I7UUFDdEIseUJBQXlCO1FBQ3pCLHVCQUF1QjtRQUN2QixzQkFBc0IsYUFNcEIsVUFBVTtRQUNWLG9CQUFvQjtRQUNwQixpQkFBaUI7UUFDakIsaUJBQWlCO1FBQ2pCLHFCQUFxQixhQWhCdkIsY0FBYztRQUNkLGlCQUFpQjtRQUNqQix1QkFBdUI7UUFDdkIsc0JBQXNCO1FBQ3RCLHlCQUF5QjtRQUN6Qix1QkFBdUI7UUFDdkIsc0JBQXNCOzJHQWNYLGFBQWEsWUFUZjtZQUNQLFVBQVU7WUFDVixvQkFBb0I7WUFDcEIsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixxQkFBcUI7U0FDdEI7MkZBR1UsYUFBYTtrQkFYekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxHQUFHLFlBQVksQ0FBQztvQkFDL0IsT0FBTyxFQUFFO3dCQUNQLFVBQVU7d0JBQ1Ysb0JBQW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFlBQVksQ0FBQztpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlLCBMYXp5TW9kdWxlRmFjdG9yeSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgTmdNb2R1bGVGYWN0b3J5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBBY2NvdW50Um91dGluZ01vZHVsZSB9IGZyb20gJy4vYWNjb3VudC1yb3V0aW5nLm1vZHVsZSc7XHJcbmltcG9ydCB7IENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTG9naW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWFuYWdlUHJvZmlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tYW5hZ2UtcHJvZmlsZS9tYW5hZ2UtcHJvZmlsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQZXJzb25hbFNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BlcnNvbmFsLXNldHRpbmdzL3BlcnNvbmFsLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlZ2lzdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjY291bnRDb25maWdPcHRpb25zIH0gZnJvbSAnLi9tb2RlbHMvY29uZmlnLW9wdGlvbnMnO1xyXG5pbXBvcnQgeyBBQ0NPVU5UX0NPTkZJR19PUFRJT05TIH0gZnJvbSAnLi90b2tlbnMvY29uZmlnLW9wdGlvbnMudG9rZW4nO1xyXG5pbXBvcnQgeyBhY2NvdW50Q29uZmlnT3B0aW9uc0ZhY3RvcnkgfSBmcm9tICcuL3V0aWxzL2ZhY3RvcnktdXRpbHMnO1xyXG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbkZsb3dHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL2F1dGhlbnRpY2F0aW9uLWZsb3cuZ3VhcmQnO1xyXG5pbXBvcnQgeyBGb3Jnb3RQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mb3Jnb3QtcGFzc3dvcmQvZm9yZ290LXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlc2V0UGFzc3dvcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVzZXQtcGFzc3dvcmQvcmVzZXQtcGFzc3dvcmQuY29tcG9uZW50JztcclxuXHJcbmNvbnN0IGRlY2xhcmF0aW9ucyA9IFtcclxuICBMb2dpbkNvbXBvbmVudCxcclxuICBSZWdpc3RlckNvbXBvbmVudCxcclxuICBDaGFuZ2VQYXNzd29yZENvbXBvbmVudCxcclxuICBNYW5hZ2VQcm9maWxlQ29tcG9uZW50LFxyXG4gIFBlcnNvbmFsU2V0dGluZ3NDb21wb25lbnQsXHJcbiAgRm9yZ290UGFzc3dvcmRDb21wb25lbnQsXHJcbiAgUmVzZXRQYXNzd29yZENvbXBvbmVudCxcclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbLi4uZGVjbGFyYXRpb25zXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb3JlTW9kdWxlLFxyXG4gICAgQWNjb3VudFJvdXRpbmdNb2R1bGUsXHJcbiAgICBUaGVtZVNoYXJlZE1vZHVsZSxcclxuICAgIE5nYkRyb3Bkb3duTW9kdWxlLFxyXG4gICAgTmd4VmFsaWRhdGVDb3JlTW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogWy4uLmRlY2xhcmF0aW9uc10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY2NvdW50TW9kdWxlIHtcclxuICBzdGF0aWMgZm9yQ2hpbGQob3B0aW9ucyA9IHt9IGFzIEFjY291bnRDb25maWdPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxBY2NvdW50TW9kdWxlPiB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogQWNjb3VudE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgQXV0aGVudGljYXRpb25GbG93R3VhcmQsXHJcbiAgICAgICAgeyBwcm92aWRlOiBBQ0NPVU5UX0NPTkZJR19PUFRJT05TLCB1c2VWYWx1ZTogb3B0aW9ucyB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHByb3ZpZGU6ICdBQ0NPVU5UX09QVElPTlMnLFxyXG4gICAgICAgICAgdXNlRmFjdG9yeTogYWNjb3VudENvbmZpZ09wdGlvbnNGYWN0b3J5LFxyXG4gICAgICAgICAgZGVwczogW0FDQ09VTlRfQ09ORklHX09QVElPTlNdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF0sXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIGZvckxhenkob3B0aW9ucyA9IHt9IGFzIEFjY291bnRDb25maWdPcHRpb25zKTogTmdNb2R1bGVGYWN0b3J5PEFjY291bnRNb2R1bGU+IHtcclxuICAgIHJldHVybiBuZXcgTGF6eU1vZHVsZUZhY3RvcnkoQWNjb3VudE1vZHVsZS5mb3JDaGlsZChvcHRpb25zKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvYWNjb3VudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQXVCLFFBQVEsRUFBbUIsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDakcsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRTdFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFFdkQsTUFBTSxZQUFZLEdBQUc7SUFDbkIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQix1QkFBdUI7SUFDdkIsc0JBQXNCO0lBQ3RCLHlCQUF5QjtJQUN6Qix1QkFBdUI7SUFDdkIsc0JBQXNCO0NBQ3ZCLENBQUM7QUFhRixNQUFNLE9BQU8sYUFBYTtJQUN4QixNQUFNLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBMEI7UUFDbEQsT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVCx1QkFBdUI7Z0JBQ3ZCLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUU7Z0JBQ3REO29CQUNFLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFVBQVUsRUFBRSwyQkFBMkI7b0JBQ3ZDLElBQUksRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUMvQjtnQkFDRDtvQkFDRSxPQUFPLEVBQUUsMkJBQTJCO29CQUNwQyxRQUFRLEVBQUUsT0FBTyxDQUFDLDJDQUEyQyxJQUFJLElBQUk7aUJBQ3RFO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUEwQjtRQUNqRCxPQUFPLElBQUksaUJBQWlCLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7OzBHQXRCVSxhQUFhOzJHQUFiLGFBQWEsaUJBcEJ4QixjQUFjO1FBQ2QsaUJBQWlCO1FBQ2pCLHVCQUF1QjtRQUN2QixzQkFBc0I7UUFDdEIseUJBQXlCO1FBQ3pCLHVCQUF1QjtRQUN2QixzQkFBc0IsYUFNcEIsVUFBVTtRQUNWLG9CQUFvQjtRQUNwQixpQkFBaUI7UUFDakIsaUJBQWlCO1FBQ2pCLHFCQUFxQixhQWhCdkIsY0FBYztRQUNkLGlCQUFpQjtRQUNqQix1QkFBdUI7UUFDdkIsc0JBQXNCO1FBQ3RCLHlCQUF5QjtRQUN6Qix1QkFBdUI7UUFDdkIsc0JBQXNCOzJHQWNYLGFBQWEsWUFUZjtZQUNQLFVBQVU7WUFDVixvQkFBb0I7WUFDcEIsaUJBQWlCO1lBQ2pCLGlCQUFpQjtZQUNqQixxQkFBcUI7U0FDdEI7MkZBR1UsYUFBYTtrQkFYekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxHQUFHLFlBQVksQ0FBQztvQkFDL0IsT0FBTyxFQUFFO3dCQUNQLFVBQVU7d0JBQ1Ysb0JBQW9CO3dCQUNwQixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIscUJBQXFCO3FCQUN0QjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxHQUFHLFlBQVksQ0FBQztpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb3JlTW9kdWxlLCBMYXp5TW9kdWxlRmFjdG9yeSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IFRoZW1lU2hhcmVkTW9kdWxlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xyXG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgTmdNb2R1bGVGYWN0b3J5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nYkRyb3Bkb3duTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUgfSBmcm9tICdAbmd4LXZhbGlkYXRlL2NvcmUnO1xyXG5pbXBvcnQgeyBBY2NvdW50Um91dGluZ01vZHVsZSB9IGZyb20gJy4vYWNjb3VudC1yb3V0aW5nLm1vZHVsZSc7XHJcbmltcG9ydCB7IENoYW5nZVBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTG9naW5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9naW4vbG9naW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWFuYWdlUHJvZmlsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tYW5hZ2UtcHJvZmlsZS9tYW5hZ2UtcHJvZmlsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQZXJzb25hbFNldHRpbmdzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BlcnNvbmFsLXNldHRpbmdzL3BlcnNvbmFsLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlZ2lzdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlZ2lzdGVyL3JlZ2lzdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjY291bnRDb25maWdPcHRpb25zIH0gZnJvbSAnLi9tb2RlbHMvY29uZmlnLW9wdGlvbnMnO1xyXG5pbXBvcnQgeyBBQ0NPVU5UX0NPTkZJR19PUFRJT05TIH0gZnJvbSAnLi90b2tlbnMvY29uZmlnLW9wdGlvbnMudG9rZW4nO1xyXG5pbXBvcnQgeyBhY2NvdW50Q29uZmlnT3B0aW9uc0ZhY3RvcnkgfSBmcm9tICcuL3V0aWxzL2ZhY3RvcnktdXRpbHMnO1xyXG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbkZsb3dHdWFyZCB9IGZyb20gJy4vZ3VhcmRzL2F1dGhlbnRpY2F0aW9uLWZsb3cuZ3VhcmQnO1xyXG5pbXBvcnQgeyBGb3Jnb3RQYXNzd29yZENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mb3Jnb3QtcGFzc3dvcmQvZm9yZ290LXBhc3N3b3JkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlc2V0UGFzc3dvcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVzZXQtcGFzc3dvcmQvcmVzZXQtcGFzc3dvcmQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUkVfTE9HSU5fQ09ORklSTUFUSU9OX1RPS0VOIH0gZnJvbSAnLi90b2tlbnMnO1xyXG5cclxuY29uc3QgZGVjbGFyYXRpb25zID0gW1xyXG4gIExvZ2luQ29tcG9uZW50LFxyXG4gIFJlZ2lzdGVyQ29tcG9uZW50LFxyXG4gIENoYW5nZVBhc3N3b3JkQ29tcG9uZW50LFxyXG4gIE1hbmFnZVByb2ZpbGVDb21wb25lbnQsXHJcbiAgUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudCxcclxuICBGb3Jnb3RQYXNzd29yZENvbXBvbmVudCxcclxuICBSZXNldFBhc3N3b3JkQ29tcG9uZW50LFxyXG5dO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFsuLi5kZWNsYXJhdGlvbnNdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvcmVNb2R1bGUsXHJcbiAgICBBY2NvdW50Um91dGluZ01vZHVsZSxcclxuICAgIFRoZW1lU2hhcmVkTW9kdWxlLFxyXG4gICAgTmdiRHJvcGRvd25Nb2R1bGUsXHJcbiAgICBOZ3hWYWxpZGF0ZUNvcmVNb2R1bGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbLi4uZGVjbGFyYXRpb25zXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjY291bnRNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JDaGlsZChvcHRpb25zID0ge30gYXMgQWNjb3VudENvbmZpZ09wdGlvbnMpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFjY291bnRNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBBY2NvdW50TW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICBBdXRoZW50aWNhdGlvbkZsb3dHdWFyZCxcclxuICAgICAgICB7IHByb3ZpZGU6IEFDQ09VTlRfQ09ORklHX09QVElPTlMsIHVzZVZhbHVlOiBvcHRpb25zIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgcHJvdmlkZTogJ0FDQ09VTlRfT1BUSU9OUycsXHJcbiAgICAgICAgICB1c2VGYWN0b3J5OiBhY2NvdW50Q29uZmlnT3B0aW9uc0ZhY3RvcnksXHJcbiAgICAgICAgICBkZXBzOiBbQUNDT1VOVF9DT05GSUdfT1BUSU9OU10sXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBSRV9MT0dJTl9DT05GSVJNQVRJT05fVE9LRU4sXHJcbiAgICAgICAgICB1c2VWYWx1ZTogb3B0aW9ucy5pc1BlcnNvbmFsU2V0dGluZ3NDaGFuZ2VkQ29uZmlybWF0aW9uQWN0aXZlID8/IHRydWUsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgZm9yTGF6eShvcHRpb25zID0ge30gYXMgQWNjb3VudENvbmZpZ09wdGlvbnMpOiBOZ01vZHVsZUZhY3Rvcnk8QWNjb3VudE1vZHVsZT4ge1xyXG4gICAgcmV0dXJuIG5ldyBMYXp5TW9kdWxlRmFjdG9yeShBY2NvdW50TW9kdWxlLmZvckNoaWxkKG9wdGlvbnMpKTtcclxuICB9XHJcbn1cclxuIl19
@@ -1,41 +1,50 @@
1
1
  import { ProfileService } from '@abp/ng.account.core/proxy';
2
- import { ToasterService } from '@abp/ng.theme.shared';
3
- import { Component } from '@angular/core';
2
+ import { Confirmation, ConfirmationService, ToasterService } from '@abp/ng.theme.shared';
3
+ import { Component, Inject } from '@angular/core';
4
4
  import { FormBuilder, Validators } from '@angular/forms';
5
- import { finalize } from 'rxjs/operators';
5
+ import { finalize, filter } from 'rxjs/operators';
6
6
  import { ManageProfileStateService } from '../../services/manage-profile.state.service';
7
+ import { AuthService } from '@abp/ng.core';
8
+ import { RE_LOGIN_CONFIRMATION_TOKEN } from '../../tokens';
7
9
  import * as i0 from "@angular/core";
8
10
  import * as i1 from "@angular/forms";
9
11
  import * as i2 from "@abp/ng.theme.shared";
10
12
  import * as i3 from "@abp/ng.account.core/proxy";
11
13
  import * as i4 from "../../services/manage-profile.state.service";
12
- import * as i5 from "@angular/common";
13
- import * as i6 from "@abp/ng.core";
14
+ import * as i5 from "@abp/ng.core";
15
+ import * as i6 from "@angular/common";
14
16
  import * as i7 from "@ngx-validate/core";
15
17
  const { maxLength, required, email } = Validators;
16
18
  export class PersonalSettingsComponent {
17
- constructor(fb, toasterService, profileService, manageProfileState) {
19
+ constructor(fb, toasterService, profileService, manageProfileState, authService, confirmationService, isPersonalSettingsChangedConfirmationActive) {
18
20
  this.fb = fb;
19
21
  this.toasterService = toasterService;
20
22
  this.profileService = profileService;
21
23
  this.manageProfileState = manageProfileState;
24
+ this.authService = authService;
25
+ this.confirmationService = confirmationService;
26
+ this.isPersonalSettingsChangedConfirmationActive = isPersonalSettingsChangedConfirmationActive;
27
+ this.logoutConfirmation = () => {
28
+ this.authService.logout().subscribe();
29
+ };
22
30
  }
23
31
  ngOnInit() {
24
32
  this.buildForm();
25
33
  }
26
34
  buildForm() {
27
- const profile = this.manageProfileState.getProfile();
35
+ this.profile = this.manageProfileState.getProfile();
28
36
  this.form = this.fb.group({
29
- userName: [profile.userName, [required, maxLength(256)]],
30
- email: [profile.email, [required, email, maxLength(256)]],
31
- name: [profile.name || '', [maxLength(64)]],
32
- surname: [profile.surname || '', [maxLength(64)]],
33
- phoneNumber: [profile.phoneNumber || '', [maxLength(16)]],
37
+ userName: [this.profile.userName, [required, maxLength(256)]],
38
+ email: [this.profile.email, [required, email, maxLength(256)]],
39
+ name: [this.profile.name || '', [maxLength(64)]],
40
+ surname: [this.profile.surname || '', [maxLength(64)]],
41
+ phoneNumber: [this.profile.phoneNumber || '', [maxLength(16)]],
34
42
  });
35
43
  }
36
44
  submit() {
37
45
  if (this.form.invalid)
38
46
  return;
47
+ const isLogOutConfirmMessageVisible = this.isLogoutConfirmMessageActive();
39
48
  this.inProgress = true;
40
49
  this.profileService
41
50
  .update(this.form.value)
@@ -43,13 +52,39 @@ export class PersonalSettingsComponent {
43
52
  .subscribe(profile => {
44
53
  this.manageProfileState.setProfile(profile);
45
54
  this.toasterService.success('AbpAccount::PersonalSettingsSaved', 'Success', { life: 5000 });
55
+ if (isLogOutConfirmMessageVisible) {
56
+ this.showLogoutConfirmMessage();
57
+ }
46
58
  });
47
59
  }
60
+ isDataSame(oldValue, newValue) {
61
+ return Object.entries(oldValue).some(([key, value]) => {
62
+ if (key in newValue) {
63
+ return value !== newValue[key];
64
+ }
65
+ return false;
66
+ });
67
+ }
68
+ isLogoutConfirmMessageActive() {
69
+ if (!this.isPersonalSettingsChangedConfirmationActive) {
70
+ return false;
71
+ }
72
+ return this.isDataSame(this.profile, this.form.value);
73
+ }
74
+ showLogoutConfirmMessage() {
75
+ this.confirmationService
76
+ .info('AbpAccount::PersonalSettingsChangedConfirmationModalDescription', 'AbpAccount::PersonalSettingsChangedConfirmationModalTitle')
77
+ .pipe(filter(status => status === Confirmation.Status.confirm))
78
+ .subscribe(this.logoutConfirmation);
79
+ }
48
80
  }
49
- PersonalSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: PersonalSettingsComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ToasterService }, { token: i3.ProfileService }, { token: i4.ManageProfileStateService }], target: i0.ɵɵFactoryTarget.Component });
50
- PersonalSettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.6", type: PersonalSettingsComponent, selector: "abp-personal-settings-form", exportAs: ["abpPersonalSettingsForm"], ngImport: i0, template: "<form validateOnSubmit *ngIf=\"form\" [formGroup]=\"form\" (ngSubmit)=\"submit()\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"username\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"text\"\r\n id=\"username\"\r\n class=\"form-control\"\r\n formControlName=\"userName\"\r\n autofocus\r\n (keydown.space)=\"$event.preventDefault()\"\r\n />\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"name\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Name' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\r\n </div>\r\n </div>\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"surname\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Surname' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"surname\" class=\"form-control\" formControlName=\"surname\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"email-address\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Email' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"text\" id=\"email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"phone-number\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:PhoneNumber' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"phone-number\" class=\"form-control\" formControlName=\"phoneNumber\" />\r\n </div>\r\n <abp-button\r\n buttonType=\"submit\"\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n [loading]=\"inProgress\"\r\n [disabled]=\"form?.invalid\"\r\n >\r\n {{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\r\n</form>\r\n", components: [{ type: i2.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { 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]" }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i7.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { type: i6.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }], pipes: { "abpLocalization": i6.LocalizationPipe } });
81
+ PersonalSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: PersonalSettingsComponent, deps: [{ token: i1.FormBuilder }, { token: i2.ToasterService }, { token: i3.ProfileService }, { token: i4.ManageProfileStateService }, { token: i5.AuthService }, { token: i2.ConfirmationService }, { token: RE_LOGIN_CONFIRMATION_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
82
+ PersonalSettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.6", type: PersonalSettingsComponent, selector: "abp-personal-settings-form", exportAs: ["abpPersonalSettingsForm"], ngImport: i0, template: "<form validateOnSubmit *ngIf=\"form\" [formGroup]=\"form\" (ngSubmit)=\"submit()\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"username\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"text\"\r\n id=\"username\"\r\n class=\"form-control\"\r\n formControlName=\"userName\"\r\n autofocus\r\n (keydown.space)=\"$event.preventDefault()\"\r\n />\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"name\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Name' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\r\n </div>\r\n </div>\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"surname\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Surname' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"surname\" class=\"form-control\" formControlName=\"surname\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"email-address\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Email' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"text\" id=\"email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"phone-number\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:PhoneNumber' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"phone-number\" class=\"form-control\" formControlName=\"phoneNumber\" />\r\n </div>\r\n <abp-button\r\n buttonType=\"submit\"\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n [loading]=\"inProgress\"\r\n [disabled]=\"form?.invalid\"\r\n >\r\n {{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\r\n</form>\r\n", components: [{ type: i2.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i5.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { 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]" }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i7.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { type: i5.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }], pipes: { "abpLocalization": i5.LocalizationPipe } });
51
83
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: PersonalSettingsComponent, decorators: [{
52
84
  type: Component,
53
85
  args: [{ selector: 'abp-personal-settings-form', exportAs: 'abpPersonalSettingsForm', template: "<form validateOnSubmit *ngIf=\"form\" [formGroup]=\"form\" (ngSubmit)=\"submit()\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"username\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"text\"\r\n id=\"username\"\r\n class=\"form-control\"\r\n formControlName=\"userName\"\r\n autofocus\r\n (keydown.space)=\"$event.preventDefault()\"\r\n />\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"name\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Name' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\r\n </div>\r\n </div>\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"surname\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Surname' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"surname\" class=\"form-control\" formControlName=\"surname\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"email-address\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Email' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"text\" id=\"email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"phone-number\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:PhoneNumber' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"phone-number\" class=\"form-control\" formControlName=\"phoneNumber\" />\r\n </div>\r\n <abp-button\r\n buttonType=\"submit\"\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n [loading]=\"inProgress\"\r\n [disabled]=\"form?.invalid\"\r\n >\r\n {{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\r\n</form>\r\n" }]
54
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.ToasterService }, { type: i3.ProfileService }, { type: i4.ManageProfileStateService }]; } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxXQUFXLEVBQWEsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7Ozs7Ozs7QUFFeEYsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsVUFBVSxDQUFDO0FBT2xELE1BQU0sT0FBTyx5QkFBeUI7SUFVcEMsWUFDVSxFQUFlLEVBQ2YsY0FBOEIsRUFDOUIsY0FBOEIsRUFDOUIsa0JBQTZDO1FBSDdDLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBMkI7SUFDcEQsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFNBQVM7UUFDUCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDckQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hELEtBQUssRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3pELElBQUksRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDM0MsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNqRCxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsV0FBVyxJQUFJLEVBQUUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzFELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxjQUFjO2FBQ2hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQy9DLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNuQixJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLG1DQUFtQyxFQUFFLFNBQVMsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzlGLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7c0hBMUNVLHlCQUF5QjswR0FBekIseUJBQXlCLHlHQ2Z0Qyw2bEVBd0RBOzJGRHpDYSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UsNEJBQTRCLFlBRTVCLHlCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2ZpbGVTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5hY2NvdW50LmNvcmUvcHJveHknO1xyXG5pbXBvcnQgeyBUb2FzdGVyU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEFjY291bnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudCc7XHJcbmltcG9ydCB7IE1hbmFnZVByb2ZpbGVTdGF0ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9tYW5hZ2UtcHJvZmlsZS5zdGF0ZS5zZXJ2aWNlJztcclxuXHJcbmNvbnN0IHsgbWF4TGVuZ3RoLCByZXF1aXJlZCwgZW1haWwgfSA9IFZhbGlkYXRvcnM7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1wZXJzb25hbC1zZXR0aW5ncy1mb3JtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGV4cG9ydEFzOiAnYWJwUGVyc29uYWxTZXR0aW5nc0Zvcm0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudFxyXG4gIGltcGxlbWVudHNcclxuICAgIE9uSW5pdCxcclxuICAgIEFjY291bnQuUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudElucHV0cyxcclxuICAgIEFjY291bnQuUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudE91dHB1dHNcclxue1xyXG4gIGZvcm06IEZvcm1Hcm91cDtcclxuXHJcbiAgaW5Qcm9ncmVzczogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBwcm9maWxlU2VydmljZTogUHJvZmlsZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIG1hbmFnZVByb2ZpbGVTdGF0ZTogTWFuYWdlUHJvZmlsZVN0YXRlU2VydmljZSxcclxuICApIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuICB9XHJcblxyXG4gIGJ1aWxkRm9ybSgpIHtcclxuICAgIGNvbnN0IHByb2ZpbGUgPSB0aGlzLm1hbmFnZVByb2ZpbGVTdGF0ZS5nZXRQcm9maWxlKCk7XHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgdXNlck5hbWU6IFtwcm9maWxlLnVzZXJOYW1lLCBbcmVxdWlyZWQsIG1heExlbmd0aCgyNTYpXV0sXHJcbiAgICAgIGVtYWlsOiBbcHJvZmlsZS5lbWFpbCwgW3JlcXVpcmVkLCBlbWFpbCwgbWF4TGVuZ3RoKDI1NildXSxcclxuICAgICAgbmFtZTogW3Byb2ZpbGUubmFtZSB8fCAnJywgW21heExlbmd0aCg2NCldXSxcclxuICAgICAgc3VybmFtZTogW3Byb2ZpbGUuc3VybmFtZSB8fCAnJywgW21heExlbmd0aCg2NCldXSxcclxuICAgICAgcGhvbmVOdW1iZXI6IFtwcm9maWxlLnBob25lTnVtYmVyIHx8ICcnLCBbbWF4TGVuZ3RoKDE2KV1dLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzdWJtaXQoKSB7XHJcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQpIHJldHVybjtcclxuICAgIHRoaXMuaW5Qcm9ncmVzcyA9IHRydWU7XHJcbiAgICB0aGlzLnByb2ZpbGVTZXJ2aWNlXHJcbiAgICAgIC51cGRhdGUodGhpcy5mb3JtLnZhbHVlKVxyXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5pblByb2dyZXNzID0gZmFsc2UpKSlcclxuICAgICAgLnN1YnNjcmliZShwcm9maWxlID0+IHtcclxuICAgICAgICB0aGlzLm1hbmFnZVByb2ZpbGVTdGF0ZS5zZXRQcm9maWxlKHByb2ZpbGUpO1xyXG4gICAgICAgIHRoaXMudG9hc3RlclNlcnZpY2Uuc3VjY2VzcygnQWJwQWNjb3VudDo6UGVyc29uYWxTZXR0aW5nc1NhdmVkJywgJ1N1Y2Nlc3MnLCB7IGxpZmU6IDUwMDAgfSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSB2YWxpZGF0ZU9uU3VibWl0ICpuZ0lmPVwiZm9ybVwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJzdWJtaXQoKVwiPlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0zIGZvcm0tZ3JvdXBcIj5cclxuICAgIDxsYWJlbCBmb3I9XCJ1c2VybmFtZVwiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6VXNlck5hbWUnIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgICB9fTwvbGFiZWxcclxuICAgID48c3Bhbj4gKiA8L3NwYW5cclxuICAgID48aW5wdXRcclxuICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICBpZD1cInVzZXJuYW1lXCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBmb3JtQ29udHJvbE5hbWU9XCJ1c2VyTmFtZVwiXHJcbiAgICAgIGF1dG9mb2N1c1xyXG4gICAgICAoa2V5ZG93bi5zcGFjZSk9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXHJcbiAgICAvPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wgY29sLW1kLTZcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJuYW1lXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgICAgICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6TmFtZScgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgICAgICB9fTwvbGFiZWxcclxuICAgICAgICA+PGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJuYW1lXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBmb3JtQ29udHJvbE5hbWU9XCJuYW1lXCIgLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wgY29sLW1kLTZcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJzdXJuYW1lXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgICAgICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6U3VybmFtZScgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgICAgICB9fTwvbGFiZWxcclxuICAgICAgICA+PGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJzdXJuYW1lXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBmb3JtQ29udHJvbE5hbWU9XCJzdXJuYW1lXCIgLz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwiZW1haWwtYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1sYWJlbFwiPnt7XHJcbiAgICAgICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6RW1haWwnIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgICB9fTwvbGFiZWxcclxuICAgID48c3Bhbj4gKiA8L3NwYW5cclxuICAgID48aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cImVtYWlsLWFkZHJlc3NcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCIgLz5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICA8bGFiZWwgZm9yPVwicGhvbmUtbnVtYmVyXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpQaG9uZU51bWJlcicgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgIH19PC9sYWJlbFxyXG4gICAgPjxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwicGhvbmUtbnVtYmVyXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBmb3JtQ29udHJvbE5hbWU9XCJwaG9uZU51bWJlclwiIC8+XHJcbiAgPC9kaXY+XHJcbiAgPGFicC1idXR0b25cclxuICAgIGJ1dHRvblR5cGU9XCJzdWJtaXRcIlxyXG4gICAgaWNvbkNsYXNzPVwiZmEgZmEtY2hlY2tcIlxyXG4gICAgYnV0dG9uQ2xhc3M9XCJidG4gYnRuLXByaW1hcnkgY29sb3Itd2hpdGVcIlxyXG4gICAgW2xvYWRpbmddPVwiaW5Qcm9ncmVzc1wiXHJcbiAgICBbZGlzYWJsZWRdPVwiZm9ybT8uaW52YWxpZFwiXHJcbiAgPlxyXG4gICAge3sgJ0FicElkZW50aXR5OjpTYXZlJyB8IGFicExvY2FsaXphdGlvbiB9fTwvYWJwLWJ1dHRvblxyXG4gID5cclxuPC9mb3JtPlxyXG4iXX0=
86
+ }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.ToasterService }, { type: i3.ProfileService }, { type: i4.ManageProfileStateService }, { type: i5.AuthService }, { type: i2.ConfirmationService }, { type: undefined, decorators: [{
87
+ type: Inject,
88
+ args: [RE_LOGIN_CONFIRMATION_TOKEN]
89
+ }] }]; } });
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL2NvbXBvbmVudHMvcGVyc29uYWwtc2V0dGluZ3MvcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7Ozs7QUFFM0QsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsVUFBVSxDQUFDO0FBT2xELE1BQU0sT0FBTyx5QkFBeUI7SUFXcEMsWUFDVSxFQUFlLEVBQ2YsY0FBOEIsRUFDOUIsY0FBOEIsRUFDOUIsa0JBQTZDLEVBQ3BDLFdBQXdCLEVBQ2pDLG1CQUF3QyxFQUV4QywyQ0FBb0Q7UUFQcEQsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUEyQjtRQUNwQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUNqQyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBRXhDLGdEQUEyQyxHQUEzQywyQ0FBMkMsQ0FBUztRQTJDOUQsdUJBQWtCLEdBQUcsR0FBRyxFQUFFO1lBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDeEMsQ0FBQyxDQUFDO0lBNUNDLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUM3RCxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDOUQsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDaEQsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEQsV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLElBQUksRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDL0QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFDOUIsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztRQUMxRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYzthQUNoQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUMvQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDbkIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxtQ0FBbUMsRUFBRSxTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM1RixJQUFJLDZCQUE2QixFQUFFO2dCQUNqQyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQzthQUNqQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFVBQVUsQ0FBQyxRQUFRLEVBQUUsUUFBUTtRQUMzQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUNwRCxJQUFJLEdBQUcsSUFBSSxRQUFRLEVBQUU7Z0JBQ25CLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNoQztZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBTU8sNEJBQTRCO1FBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsMkNBQTJDLEVBQUU7WUFDckQsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVPLHdCQUF3QjtRQUM5QixJQUFJLENBQUMsbUJBQW1CO2FBQ3JCLElBQUksQ0FDSCxpRUFBaUUsRUFDakUsMkRBQTJELENBQzVEO2FBQ0EsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sS0FBSyxZQUFZLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzlELFNBQVMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN4QyxDQUFDOztzSEFqRlUseUJBQXlCLGdOQWtCMUIsMkJBQTJCOzBHQWxCMUIseUJBQXlCLHlHQ2pCdEMsNmxFQXdEQTsyRkR2Q2EseUJBQXlCO2tCQUxyQyxTQUFTOytCQUNFLDRCQUE0QixZQUU1Qix5QkFBeUI7OzBCQW9CaEMsTUFBTTsyQkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9maWxlRHRvLCBQcm9maWxlU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuYWNjb3VudC5jb3JlL3Byb3h5JztcclxuaW1wb3J0IHsgQ29uZmlybWF0aW9uLCBDb25maXJtYXRpb25TZXJ2aWNlLCBUb2FzdGVyU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBmaW5hbGl6ZSwgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBBY2NvdW50IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjY291bnQnO1xyXG5pbXBvcnQgeyBNYW5hZ2VQcm9maWxlU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWFuYWdlLXByb2ZpbGUuc3RhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgUkVfTE9HSU5fQ09ORklSTUFUSU9OX1RPS0VOIH0gZnJvbSAnLi4vLi4vdG9rZW5zJztcclxuXHJcbmNvbnN0IHsgbWF4TGVuZ3RoLCByZXF1aXJlZCwgZW1haWwgfSA9IFZhbGlkYXRvcnM7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC1wZXJzb25hbC1zZXR0aW5ncy1mb3JtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGVyc29uYWwtc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGV4cG9ydEFzOiAnYWJwUGVyc29uYWxTZXR0aW5nc0Zvcm0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudFxyXG4gIGltcGxlbWVudHNcclxuICAgIE9uSW5pdCxcclxuICAgIEFjY291bnQuUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudElucHV0cyxcclxuICAgIEFjY291bnQuUGVyc29uYWxTZXR0aW5nc0NvbXBvbmVudE91dHB1dHNcclxue1xyXG4gIGZvcm06IEZvcm1Hcm91cDtcclxuXHJcbiAgaW5Qcm9ncmVzczogYm9vbGVhbjtcclxuICBwcml2YXRlIHByb2ZpbGU6IFByb2ZpbGVEdG87XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtYW5hZ2VQcm9maWxlU3RhdGU6IE1hbmFnZVByb2ZpbGVTdGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlybWF0aW9uU2VydmljZTogQ29uZmlybWF0aW9uU2VydmljZSxcclxuICAgIEBJbmplY3QoUkVfTE9HSU5fQ09ORklSTUFUSU9OX1RPS0VOKVxyXG4gICAgcHJpdmF0ZSBpc1BlcnNvbmFsU2V0dGluZ3NDaGFuZ2VkQ29uZmlybWF0aW9uQWN0aXZlOiBib29sZWFuLFxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xyXG4gIH1cclxuXHJcbiAgYnVpbGRGb3JtKCkge1xyXG4gICAgdGhpcy5wcm9maWxlID0gdGhpcy5tYW5hZ2VQcm9maWxlU3RhdGUuZ2V0UHJvZmlsZSgpO1xyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgIHVzZXJOYW1lOiBbdGhpcy5wcm9maWxlLnVzZXJOYW1lLCBbcmVxdWlyZWQsIG1heExlbmd0aCgyNTYpXV0sXHJcbiAgICAgIGVtYWlsOiBbdGhpcy5wcm9maWxlLmVtYWlsLCBbcmVxdWlyZWQsIGVtYWlsLCBtYXhMZW5ndGgoMjU2KV1dLFxyXG4gICAgICBuYW1lOiBbdGhpcy5wcm9maWxlLm5hbWUgfHwgJycsIFttYXhMZW5ndGgoNjQpXV0sXHJcbiAgICAgIHN1cm5hbWU6IFt0aGlzLnByb2ZpbGUuc3VybmFtZSB8fCAnJywgW21heExlbmd0aCg2NCldXSxcclxuICAgICAgcGhvbmVOdW1iZXI6IFt0aGlzLnByb2ZpbGUucGhvbmVOdW1iZXIgfHwgJycsIFttYXhMZW5ndGgoMTYpXV0sXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHN1Ym1pdCgpIHtcclxuICAgIGlmICh0aGlzLmZvcm0uaW52YWxpZCkgcmV0dXJuO1xyXG4gICAgY29uc3QgaXNMb2dPdXRDb25maXJtTWVzc2FnZVZpc2libGUgPSB0aGlzLmlzTG9nb3V0Q29uZmlybU1lc3NhZ2VBY3RpdmUoKTtcclxuICAgIHRoaXMuaW5Qcm9ncmVzcyA9IHRydWU7XHJcbiAgICB0aGlzLnByb2ZpbGVTZXJ2aWNlXHJcbiAgICAgIC51cGRhdGUodGhpcy5mb3JtLnZhbHVlKVxyXG4gICAgICAucGlwZShmaW5hbGl6ZSgoKSA9PiAodGhpcy5pblByb2dyZXNzID0gZmFsc2UpKSlcclxuICAgICAgLnN1YnNjcmliZShwcm9maWxlID0+IHtcclxuICAgICAgICB0aGlzLm1hbmFnZVByb2ZpbGVTdGF0ZS5zZXRQcm9maWxlKHByb2ZpbGUpO1xyXG4gICAgICAgIHRoaXMudG9hc3RlclNlcnZpY2Uuc3VjY2VzcygnQWJwQWNjb3VudDo6UGVyc29uYWxTZXR0aW5nc1NhdmVkJywgJ1N1Y2Nlc3MnLCB7IGxpZmU6IDUwMDAgfSk7XHJcbiAgICAgICAgaWYgKGlzTG9nT3V0Q29uZmlybU1lc3NhZ2VWaXNpYmxlKSB7XHJcbiAgICAgICAgICB0aGlzLnNob3dMb2dvdXRDb25maXJtTWVzc2FnZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBpc0RhdGFTYW1lKG9sZFZhbHVlLCBuZXdWYWx1ZSkge1xyXG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKG9sZFZhbHVlKS5zb21lKChba2V5LCB2YWx1ZV0pID0+IHtcclxuICAgICAgaWYgKGtleSBpbiBuZXdWYWx1ZSkge1xyXG4gICAgICAgIHJldHVybiB2YWx1ZSAhPT0gbmV3VmFsdWVba2V5XTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGxvZ291dENvbmZpcm1hdGlvbiA9ICgpID0+IHtcclxuICAgIHRoaXMuYXV0aFNlcnZpY2UubG9nb3V0KCkuc3Vic2NyaWJlKCk7XHJcbiAgfTtcclxuXHJcbiAgcHJpdmF0ZSBpc0xvZ291dENvbmZpcm1NZXNzYWdlQWN0aXZlKCkge1xyXG4gICAgaWYgKCF0aGlzLmlzUGVyc29uYWxTZXR0aW5nc0NoYW5nZWRDb25maXJtYXRpb25BY3RpdmUpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuaXNEYXRhU2FtZSh0aGlzLnByb2ZpbGUsIHRoaXMuZm9ybS52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNob3dMb2dvdXRDb25maXJtTWVzc2FnZSgpIHtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uU2VydmljZVxyXG4gICAgICAuaW5mbyhcclxuICAgICAgICAnQWJwQWNjb3VudDo6UGVyc29uYWxTZXR0aW5nc0NoYW5nZWRDb25maXJtYXRpb25Nb2RhbERlc2NyaXB0aW9uJyxcclxuICAgICAgICAnQWJwQWNjb3VudDo6UGVyc29uYWxTZXR0aW5nc0NoYW5nZWRDb25maXJtYXRpb25Nb2RhbFRpdGxlJyxcclxuICAgICAgKVxyXG4gICAgICAucGlwZShmaWx0ZXIoc3RhdHVzID0+IHN0YXR1cyA9PT0gQ29uZmlybWF0aW9uLlN0YXR1cy5jb25maXJtKSlcclxuICAgICAgLnN1YnNjcmliZSh0aGlzLmxvZ291dENvbmZpcm1hdGlvbik7XHJcbiAgfVxyXG59XHJcbiIsIjxmb3JtIHZhbGlkYXRlT25TdWJtaXQgKm5nSWY9XCJmb3JtXCIgW2Zvcm1Hcm91cF09XCJmb3JtXCIgKG5nU3VibWl0KT1cInN1Ym1pdCgpXCI+XHJcbiAgPGRpdiBjbGFzcz1cIm1iLTMgZm9ybS1ncm91cFwiPlxyXG4gICAgPGxhYmVsIGZvcj1cInVzZXJuYW1lXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpVc2VyTmFtZScgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgIH19PC9sYWJlbFxyXG4gICAgPjxzcGFuPiAqIDwvc3BhblxyXG4gICAgPjxpbnB1dFxyXG4gICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgIGlkPVwidXNlcm5hbWVcIlxyXG4gICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiXHJcbiAgICAgIGZvcm1Db250cm9sTmFtZT1cInVzZXJOYW1lXCJcclxuICAgICAgYXV0b2ZvY3VzXHJcbiAgICAgIChrZXlkb3duLnNwYWNlKT1cIiRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCJcclxuICAgIC8+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbCBjb2wtbWQtNlwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cIm5hbWVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAgICAgJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpOYW1lJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgICAgIH19PC9sYWJlbFxyXG4gICAgICAgID48aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cIm5hbWVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIiAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbCBjb2wtbWQtNlwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibWItMyBmb3JtLWdyb3VwXCI+XHJcbiAgICAgICAgPGxhYmVsIGZvcj1cInN1cm5hbWVcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAgICAgJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpTdXJuYW1lJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgICAgIH19PC9sYWJlbFxyXG4gICAgICAgID48aW5wdXQgdHlwZT1cInRleHRcIiBpZD1cInN1cm5hbWVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cInN1cm5hbWVcIiAvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0zIGZvcm0tZ3JvdXBcIj5cclxuICAgIDxsYWJlbCBmb3I9XCJlbWFpbC1hZGRyZXNzXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3tcclxuICAgICAgJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpFbWFpbCcgfCBhYnBMb2NhbGl6YXRpb25cclxuICAgIH19PC9sYWJlbFxyXG4gICAgPjxzcGFuPiAqIDwvc3BhblxyXG4gICAgPjxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiZW1haWwtYWRkcmVzc1wiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxcIiAvPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJtYi0zIGZvcm0tZ3JvdXBcIj5cclxuICAgIDxsYWJlbCBmb3I9XCJwaG9uZS1udW1iZXJcIiBjbGFzcz1cImZvcm0tbGFiZWxcIj57e1xyXG4gICAgICAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOlBob25lTnVtYmVyJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2xhYmVsXHJcbiAgICA+PGlucHV0IHR5cGU9XCJ0ZXh0XCIgaWQ9XCJwaG9uZS1udW1iZXJcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cInBob25lTnVtYmVyXCIgLz5cclxuICA8L2Rpdj5cclxuICA8YWJwLWJ1dHRvblxyXG4gICAgYnV0dG9uVHlwZT1cInN1Ym1pdFwiXHJcbiAgICBpY29uQ2xhc3M9XCJmYSBmYS1jaGVja1wiXHJcbiAgICBidXR0b25DbGFzcz1cImJ0biBidG4tcHJpbWFyeSBjb2xvci13aGl0ZVwiXHJcbiAgICBbbG9hZGluZ109XCJpblByb2dyZXNzXCJcclxuICAgIFtkaXNhYmxlZF09XCJmb3JtPy5pbnZhbGlkXCJcclxuICA+XHJcbiAgICB7eyAnQWJwSWRlbnRpdHk6OlNhdmUnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hYnAtYnV0dG9uXHJcbiAgPlxyXG48L2Zvcm0+XHJcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvbW9kZWxzL2NvbmZpZy1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEFjY291bnRDb25maWdPcHRpb25zIHtcclxuICByZWRpcmVjdFVybD86IHN0cmluZztcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLW9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvbW9kZWxzL2NvbmZpZy1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIEFjY291bnRDb25maWdPcHRpb25zIHtcclxuICByZWRpcmVjdFVybD86IHN0cmluZztcclxuICBpc1BlcnNvbmFsU2V0dGluZ3NDaGFuZ2VkQ29uZmlybWF0aW9uQWN0aXZlPzogYm9vbGVhbjtcclxufVxyXG4iXX0=
@@ -1,2 +1,3 @@
1
1
  export * from './config-options.token';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvdG9rZW5zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbmZpZy1vcHRpb25zLnRva2VuJztcclxuIl19
2
+ export * from './re-login-confirmation.token';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hY2NvdW50L3NyYy9saWIvdG9rZW5zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29uZmlnLW9wdGlvbnMudG9rZW4nO1xyXG5leHBvcnQgKiBmcm9tICcuL3JlLWxvZ2luLWNvbmZpcm1hdGlvbi50b2tlbic7XHJcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const RE_LOGIN_CONFIRMATION_TOKEN = new InjectionToken('RE_LOGIN_CONFIRMATION_TOKEN');
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmUtbG9naW4tY29uZmlybWF0aW9uLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYWNjb3VudC9zcmMvbGliL3Rva2Vucy9yZS1sb2dpbi1jb25maXJtYXRpb24udG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLGNBQWMsQ0FDM0QsNkJBQTZCLENBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuZXhwb3J0IGNvbnN0IFJFX0xPR0lOX0NPTkZJUk1BVElPTl9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxib29sZWFuPihcclxuICAnUkVfTE9HSU5fQ09ORklSTUFUSU9OX1RPS0VOJyxcclxuKTtcclxuIl19
@@ -1,9 +1,9 @@
1
1
  import * as i3 from '@abp/ng.core';
2
2
  import { InternalStore, RouterOutletComponent, ReplaceableRouteContainerComponent, AuthGuard, LazyModuleFactory, CoreModule } from '@abp/ng.core';
3
3
  import * as i2$1 from '@abp/ng.theme.shared';
4
- import { getPasswordValidators, fadeIn, ThemeSharedModule } from '@abp/ng.theme.shared';
4
+ import { getPasswordValidators, Confirmation, fadeIn, ThemeSharedModule } from '@abp/ng.theme.shared';
5
5
  import * as i0 from '@angular/core';
6
- import { Component, InjectionToken, Injectable, NgModule } from '@angular/core';
6
+ import { Component, InjectionToken, Injectable, Inject, NgModule } from '@angular/core';
7
7
  import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
8
8
  import * as i6$1 from '@ngx-validate/core';
9
9
  import { comparePasswords, NgxValidateCoreModule } from '@ngx-validate/core';
@@ -11,7 +11,7 @@ import * as i3$1 from '@angular/router';
11
11
  import { ActivatedRoute, RouterModule } from '@angular/router';
12
12
  import * as i1 from '@angular/forms';
13
13
  import { Validators, FormControl } from '@angular/forms';
14
- import { finalize, catchError, switchMap } from 'rxjs/operators';
14
+ import { finalize, catchError, filter, switchMap } from 'rxjs/operators';
15
15
  import * as i2 from '@abp/ng.account.core/proxy';
16
16
  import * as i6 from '@angular/common';
17
17
  import { throwError } from 'rxjs';
@@ -202,30 +202,39 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
202
202
  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" }]
203
203
  }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i0.Injector }, { type: i2$1.ToasterService }, { type: i2.ProfileService }, { type: ManageProfileStateService }]; } });
204
204
 
205
+ const RE_LOGIN_CONFIRMATION_TOKEN = new InjectionToken('RE_LOGIN_CONFIRMATION_TOKEN');
206
+
205
207
  const { maxLength: maxLength$1, required: required$1, email: email$1 } = Validators;
206
208
  class PersonalSettingsComponent {
207
- constructor(fb, toasterService, profileService, manageProfileState) {
209
+ constructor(fb, toasterService, profileService, manageProfileState, authService, confirmationService, isPersonalSettingsChangedConfirmationActive) {
208
210
  this.fb = fb;
209
211
  this.toasterService = toasterService;
210
212
  this.profileService = profileService;
211
213
  this.manageProfileState = manageProfileState;
214
+ this.authService = authService;
215
+ this.confirmationService = confirmationService;
216
+ this.isPersonalSettingsChangedConfirmationActive = isPersonalSettingsChangedConfirmationActive;
217
+ this.logoutConfirmation = () => {
218
+ this.authService.logout().subscribe();
219
+ };
212
220
  }
213
221
  ngOnInit() {
214
222
  this.buildForm();
215
223
  }
216
224
  buildForm() {
217
- const profile = this.manageProfileState.getProfile();
225
+ this.profile = this.manageProfileState.getProfile();
218
226
  this.form = this.fb.group({
219
- userName: [profile.userName, [required$1, maxLength$1(256)]],
220
- email: [profile.email, [required$1, email$1, maxLength$1(256)]],
221
- name: [profile.name || '', [maxLength$1(64)]],
222
- surname: [profile.surname || '', [maxLength$1(64)]],
223
- phoneNumber: [profile.phoneNumber || '', [maxLength$1(16)]],
227
+ userName: [this.profile.userName, [required$1, maxLength$1(256)]],
228
+ email: [this.profile.email, [required$1, email$1, maxLength$1(256)]],
229
+ name: [this.profile.name || '', [maxLength$1(64)]],
230
+ surname: [this.profile.surname || '', [maxLength$1(64)]],
231
+ phoneNumber: [this.profile.phoneNumber || '', [maxLength$1(16)]],
224
232
  });
225
233
  }
226
234
  submit() {
227
235
  if (this.form.invalid)
228
236
  return;
237
+ const isLogOutConfirmMessageVisible = this.isLogoutConfirmMessageActive();
229
238
  this.inProgress = true;
230
239
  this.profileService
231
240
  .update(this.form.value)
@@ -233,15 +242,43 @@ class PersonalSettingsComponent {
233
242
  .subscribe(profile => {
234
243
  this.manageProfileState.setProfile(profile);
235
244
  this.toasterService.success('AbpAccount::PersonalSettingsSaved', 'Success', { life: 5000 });
245
+ if (isLogOutConfirmMessageVisible) {
246
+ this.showLogoutConfirmMessage();
247
+ }
248
+ });
249
+ }
250
+ isDataSame(oldValue, newValue) {
251
+ return Object.entries(oldValue).some(([key, value]) => {
252
+ if (key in newValue) {
253
+ return value !== newValue[key];
254
+ }
255
+ return false;
236
256
  });
237
257
  }
258
+ isLogoutConfirmMessageActive() {
259
+ if (!this.isPersonalSettingsChangedConfirmationActive) {
260
+ return false;
261
+ }
262
+ return this.isDataSame(this.profile, this.form.value);
263
+ }
264
+ showLogoutConfirmMessage() {
265
+ this.confirmationService
266
+ .info('AbpAccount::PersonalSettingsChangedConfirmationModalDescription', 'AbpAccount::PersonalSettingsChangedConfirmationModalTitle')
267
+ .pipe(filter(status => status === Confirmation.Status.confirm))
268
+ .subscribe(this.logoutConfirmation);
269
+ }
238
270
  }
239
- PersonalSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: PersonalSettingsComponent, deps: [{ token: i1.FormBuilder }, { token: i2$1.ToasterService }, { token: i2.ProfileService }, { token: ManageProfileStateService }], target: i0.ɵɵFactoryTarget.Component });
271
+ PersonalSettingsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: PersonalSettingsComponent, deps: [{ token: i1.FormBuilder }, { token: i2$1.ToasterService }, { token: i2.ProfileService }, { token: ManageProfileStateService }, { token: i3.AuthService }, { token: i2$1.ConfirmationService }, { token: RE_LOGIN_CONFIRMATION_TOKEN }], target: i0.ɵɵFactoryTarget.Component });
240
272
  PersonalSettingsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.6", type: PersonalSettingsComponent, selector: "abp-personal-settings-form", exportAs: ["abpPersonalSettingsForm"], ngImport: i0, template: "<form validateOnSubmit *ngIf=\"form\" [formGroup]=\"form\" (ngSubmit)=\"submit()\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"username\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"text\"\r\n id=\"username\"\r\n class=\"form-control\"\r\n formControlName=\"userName\"\r\n autofocus\r\n (keydown.space)=\"$event.preventDefault()\"\r\n />\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"name\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Name' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\r\n </div>\r\n </div>\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"surname\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Surname' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"surname\" class=\"form-control\" formControlName=\"surname\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"email-address\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Email' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"text\" id=\"email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"phone-number\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:PhoneNumber' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"phone-number\" class=\"form-control\" formControlName=\"phoneNumber\" />\r\n </div>\r\n <abp-button\r\n buttonType=\"submit\"\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n [loading]=\"inProgress\"\r\n [disabled]=\"form?.invalid\"\r\n >\r\n {{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\r\n</form>\r\n", components: [{ type: i2$1.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }], directives: [{ type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i3.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6$1.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { 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]" }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { type: i6$1.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { type: i3.AutofocusDirective, selector: "[autofocus]", inputs: ["autofocus"] }], pipes: { "abpLocalization": i3.LocalizationPipe } });
241
273
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImport: i0, type: PersonalSettingsComponent, decorators: [{
242
274
  type: Component,
243
275
  args: [{ selector: 'abp-personal-settings-form', exportAs: 'abpPersonalSettingsForm', template: "<form validateOnSubmit *ngIf=\"form\" [formGroup]=\"form\" (ngSubmit)=\"submit()\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"username\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:UserName' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input\r\n type=\"text\"\r\n id=\"username\"\r\n class=\"form-control\"\r\n formControlName=\"userName\"\r\n autofocus\r\n (keydown.space)=\"$event.preventDefault()\"\r\n />\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"name\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Name' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"name\" class=\"form-control\" formControlName=\"name\" />\r\n </div>\r\n </div>\r\n <div class=\"col col-md-6\">\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"surname\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Surname' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"surname\" class=\"form-control\" formControlName=\"surname\" />\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"email-address\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:Email' | abpLocalization\r\n }}</label\r\n ><span> * </span\r\n ><input type=\"text\" id=\"email-address\" class=\"form-control\" formControlName=\"email\" />\r\n </div>\r\n <div class=\"mb-3 form-group\">\r\n <label for=\"phone-number\" class=\"form-label\">{{\r\n 'AbpIdentity::DisplayName:PhoneNumber' | abpLocalization\r\n }}</label\r\n ><input type=\"text\" id=\"phone-number\" class=\"form-control\" formControlName=\"phoneNumber\" />\r\n </div>\r\n <abp-button\r\n buttonType=\"submit\"\r\n iconClass=\"fa fa-check\"\r\n buttonClass=\"btn btn-primary color-white\"\r\n [loading]=\"inProgress\"\r\n [disabled]=\"form?.invalid\"\r\n >\r\n {{ 'AbpIdentity::Save' | abpLocalization }}</abp-button\r\n >\r\n</form>\r\n" }]
244
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2$1.ToasterService }, { type: i2.ProfileService }, { type: ManageProfileStateService }]; } });
276
+ }], ctorParameters: function () {
277
+ return [{ type: i1.FormBuilder }, { type: i2$1.ToasterService }, { type: i2.ProfileService }, { type: ManageProfileStateService }, { type: i3.AuthService }, { type: i2$1.ConfirmationService }, { type: undefined, decorators: [{
278
+ type: Inject,
279
+ args: [RE_LOGIN_CONFIRMATION_TOKEN]
280
+ }] }];
281
+ } });
245
282
 
246
283
  class ManageProfileComponent {
247
284
  constructor(profileService, manageProfileState) {
@@ -506,6 +543,7 @@ const declarations = [
506
543
  ];
507
544
  class AccountModule {
508
545
  static forChild(options = {}) {
546
+ var _a;
509
547
  return {
510
548
  ngModule: AccountModule,
511
549
  providers: [
@@ -516,6 +554,10 @@ class AccountModule {
516
554
  useFactory: accountConfigOptionsFactory,
517
555
  deps: [ACCOUNT_CONFIG_OPTIONS],
518
556
  },
557
+ {
558
+ provide: RE_LOGIN_CONFIRMATION_TOKEN,
559
+ useValue: (_a = options.isPersonalSettingsChangedConfirmationActive) !== null && _a !== void 0 ? _a : true,
560
+ },
519
561
  ],
520
562
  };
521
563
  }
@@ -567,5 +609,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.6", ngImpor
567
609
  * Generated bundle index. Do not edit.
568
610
  */
569
611
 
570
- export { ACCOUNT_CONFIG_OPTIONS, AccountModule, AuthenticationFlowGuard, ChangePasswordComponent, ForgotPasswordComponent, LoginComponent, ManageProfileComponent, ManageProfileStateService, PersonalSettingsComponent, RegisterComponent, ResetPasswordComponent };
612
+ export { ACCOUNT_CONFIG_OPTIONS, AccountModule, AuthenticationFlowGuard, ChangePasswordComponent, ForgotPasswordComponent, LoginComponent, ManageProfileComponent, ManageProfileStateService, PersonalSettingsComponent, RE_LOGIN_CONFIRMATION_TOKEN, RegisterComponent, ResetPasswordComponent };
571
613
  //# sourceMappingURL=abp-ng.account.mjs.map