Browse Source

feature(core): add tenantId to session state

pull/1573/head
TheDiaval 7 years ago
parent
commit
86c16b5ee0
  1. 4
      npm/ng-packs/packages/core/src/lib/actions/session.actions.ts
  2. 1
      npm/ng-packs/packages/core/src/lib/models/session.ts
  3. 16
      npm/ng-packs/packages/core/src/lib/states/session.state.ts
  4. 3
      npm/ng-packs/packages/theme-shared/src/lib/handlers/error.handler.ts

4
npm/ng-packs/packages/core/src/lib/actions/session.actions.ts

@ -2,3 +2,7 @@ export class SessionSetLanguage {
static readonly type = '[Session] Set Language';
constructor(public payload: string) {}
}
export class SessionSetTenantId {
static readonly type = '[Session] Set Tenant Id';
constructor(public payload: string) {}
}

1
npm/ng-packs/packages/core/src/lib/models/session.ts

@ -1,5 +1,6 @@
export namespace Session {
export interface State {
language: string;
tenantId: string;
}
}

16
npm/ng-packs/packages/core/src/lib/states/session.state.ts

@ -1,5 +1,5 @@
import { State, Action, StateContext, Selector } from '@ngxs/store';
import { SessionSetLanguage } from '../actions/session.actions';
import { Action, Selector, State, StateContext } from '@ngxs/store';
import { SessionSetLanguage, SessionSetTenantId } from '../actions/session.actions';
import { Session } from '../models/session';
@State<Session.State>({
@ -12,6 +12,11 @@ export class SessionState {
return language;
}
@Selector()
static getSelectedTenantId({ tenantId }: Session.State): string {
return tenantId;
}
constructor() {}
@Action(SessionSetLanguage)
@ -20,4 +25,11 @@ export class SessionState {
language: payload,
});
}
@Action(SessionSetTenantId)
sessionSetTenantId({ patchState }: StateContext<Session.State>, { payload }: SessionSetTenantId) {
patchState({
tenantId: payload,
});
}
}

3
npm/ng-packs/packages/theme-shared/src/lib/handlers/error.handler.ts

@ -14,6 +14,7 @@ import { Observable } from 'rxjs';
import { ErrorComponent } from '../components/errors/error.component';
import { Toaster } from '../models/toaster';
import { ConfirmationService } from '../services/confirmation.service';
import snq from 'snq';
const DEFAULTS = {
defaultError: {
@ -50,7 +51,7 @@ export class ErrorHandler {
) {
actions.pipe(ofActionSuccessful(RestOccurError)).subscribe(res => {
const { payload: err = {} as HttpErrorResponse | any } = res;
const body = (err as HttpErrorResponse).error.error;
const body = snq(() => (err as HttpErrorResponse).error.error, DEFAULTS.defaultError.message);
if (err.headers.get('_AbpErrorFormat')) {
const confirmation$ = this.showError(null, null, body);

Loading…
Cancel
Save