From 57c1b72f0110959d442f16ec3599792df95e0be8 Mon Sep 17 00:00:00 2001 From: mehmet-erim Date: Mon, 16 Mar 2020 15:27:41 +0300 Subject: [PATCH] fix(account): add dispatch appconfig action after the switching tenant --- .../dev-app/src/app/shared/shared.module.ts | 3 -- npm/ng-packs/package.json | 26 +++++----- .../tenant-box/tenant-box.component.ts | 49 ++++++++++--------- .../scripts/install-new-dependencies.ts | 2 +- 4 files changed, 40 insertions(+), 40 deletions(-) diff --git a/npm/ng-packs/apps/dev-app/src/app/shared/shared.module.ts b/npm/ng-packs/apps/dev-app/src/app/shared/shared.module.ts index 6c4c9b016c..1f268b4572 100644 --- a/npm/ng-packs/apps/dev-app/src/app/shared/shared.module.ts +++ b/npm/ng-packs/apps/dev-app/src/app/shared/shared.module.ts @@ -3,7 +3,6 @@ import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap'; import { NgModule } from '@angular/core'; import { ThemeBasicModule } from '@abp/ng.theme.basic'; import { ThemeSharedModule } from '@abp/ng.theme.shared'; -import { TableModule } from 'primeng/table'; import { NgxValidateCoreModule } from '@ngx-validate/core'; @NgModule({ @@ -12,7 +11,6 @@ import { NgxValidateCoreModule } from '@ngx-validate/core'; CoreModule, ThemeSharedModule, ThemeBasicModule, - TableModule, NgbDropdownModule, NgxValidateCoreModule, ], @@ -20,7 +18,6 @@ import { NgxValidateCoreModule } from '@ngx-validate/core'; CoreModule, ThemeSharedModule, ThemeBasicModule, - TableModule, NgbDropdownModule, NgxValidateCoreModule, ], diff --git a/npm/ng-packs/package.json b/npm/ng-packs/package.json index e020b3f235..93ef5c8ae7 100644 --- a/npm/ng-packs/package.json +++ b/npm/ng-packs/package.json @@ -21,19 +21,19 @@ "generate:changelog": "conventional-changelog -p angular -i CHANGELOG.md -s" }, "devDependencies": { - "@abp/ng.account": "~2.1.0", - "@abp/ng.account.config": "~2.1.0", - "@abp/ng.core": "~2.1.0", - "@abp/ng.feature-management": "~2.1.0", - "@abp/ng.identity": "~2.1.0", - "@abp/ng.identity.config": "~2.1.0", - "@abp/ng.permission-management": "~2.1.0", - "@abp/ng.setting-management": "~2.1.0", - "@abp/ng.setting-management.config": "~2.1.0", - "@abp/ng.tenant-management": "~2.1.0", - "@abp/ng.tenant-management.config": "~2.1.0", - "@abp/ng.theme.basic": "~2.1.0", - "@abp/ng.theme.shared": "~2.1.0", + "@abp/ng.account": "~2.2.0", + "@abp/ng.account.config": "~2.2.0", + "@abp/ng.core": "~2.2.0", + "@abp/ng.feature-management": "~2.2.0", + "@abp/ng.identity": "~2.2.0", + "@abp/ng.identity.config": "~2.2.0", + "@abp/ng.permission-management": "~2.2.0", + "@abp/ng.setting-management": "~2.2.0", + "@abp/ng.setting-management.config": "~2.2.0", + "@abp/ng.tenant-management": "~2.2.0", + "@abp/ng.tenant-management.config": "~2.2.0", + "@abp/ng.theme.basic": "~2.2.0", + "@abp/ng.theme.shared": "~2.2.0", "@angular-builders/jest": "^8.2.0", "@angular-devkit/build-angular": "~0.803.21", "@angular-devkit/build-ng-packagr": "~0.803.21", diff --git a/npm/ng-packs/packages/account/src/lib/components/tenant-box/tenant-box.component.ts b/npm/ng-packs/packages/account/src/lib/components/tenant-box/tenant-box.component.ts index d8fe9762e1..fd66913ca5 100644 --- a/npm/ng-packs/packages/account/src/lib/components/tenant-box/tenant-box.component.ts +++ b/npm/ng-packs/packages/account/src/lib/components/tenant-box/tenant-box.component.ts @@ -1,9 +1,9 @@ -import { ABP, SetTenant, SessionState } from '@abp/ng.core'; +import { ABP, SetTenant, SessionState, GetAppConfiguration } from '@abp/ng.core'; import { ToasterService } from '@abp/ng.theme.shared'; import { Component, OnInit } from '@angular/core'; import { Store } from '@ngxs/store'; import { throwError } from 'rxjs'; -import { catchError, take, finalize } from 'rxjs/operators'; +import { catchError, take, finalize, switchMap } from 'rxjs/operators'; import snq from 'snq'; import { AccountService } from '../../services/account.service'; import { Account } from '../../models/account'; @@ -52,29 +52,32 @@ export class TenantBoxComponent ); return throwError(err); }), + switchMap(({ success, tenantId }) => { + if (success) { + this.tenant = { + id: tenantId, + name: this.tenant.name, + }; + this.tenantName = this.tenant.name; + this.isModalVisible = false; + } else { + this.toasterService.error( + 'AbpUiMultiTenancy::GivenTenantIsNotAvailable', + 'AbpUi::Error', + { + messageLocalizationParams: [this.tenant.name], + }, + ); + this.tenant = {} as ABP.BasicItem; + this.tenantName = ''; + } + this.store.dispatch(new SetTenant(success ? this.tenant : null)); + return this.store.dispatch(new GetAppConfiguration()); + }), ) - .subscribe(({ success, tenantId }) => { - if (success) { - this.tenant = { - id: tenantId, - name: this.tenant.name, - }; - this.tenantName = this.tenant.name; - this.isModalVisible = false; - } else { - this.toasterService.error( - 'AbpUiMultiTenancy::GivenTenantIsNotAvailable', - 'AbpUi::Error', - { - messageLocalizationParams: [this.tenant.name], - }, - ); - this.tenant = {} as ABP.BasicItem; - } - this.store.dispatch(new SetTenant(success ? this.tenant : null)); - }); + .subscribe(); } else { - this.store.dispatch(new SetTenant(null)); + this.store.dispatch([new SetTenant(null), new GetAppConfiguration()]); this.tenantName = null; this.isModalVisible = false; } diff --git a/npm/ng-packs/scripts/install-new-dependencies.ts b/npm/ng-packs/scripts/install-new-dependencies.ts index 52f93f23d4..156851f657 100644 --- a/npm/ng-packs/scripts/install-new-dependencies.ts +++ b/npm/ng-packs/scripts/install-new-dependencies.ts @@ -17,7 +17,7 @@ const updateAndInstall = async () => { ...packageJson.devDependencies, ...dependencies, ...peerDependencies, - ...{ [name]: `^${version}` }, + ...{ [name]: `~${version}` }, }; packageJson.devDependencies = Object.keys(packageJson.devDependencies)