Browse Source

feat(core): add skipGetAppConfiguration if control to initial-utils

#3536
pull/3610/head
mehmet-erim 7 years ago
parent
commit
14d27988eb
  1. 13
      npm/ng-packs/packages/core/src/lib/core.module.ts
  2. 10
      npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts

13
npm/ng-packs/packages/core/src/lib/core.module.ts

@ -9,13 +9,16 @@ import { NgxsModule, NGXS_PLUGINS } from '@ngxs/store';
import { OAuthModule, OAuthStorage } from 'angular-oauth2-oidc'; import { OAuthModule, OAuthStorage } from 'angular-oauth2-oidc';
import { AbstractNgModelComponent } from './abstracts/ng-model.component'; import { AbstractNgModelComponent } from './abstracts/ng-model.component';
import { DynamicLayoutComponent } from './components/dynamic-layout.component'; import { DynamicLayoutComponent } from './components/dynamic-layout.component';
import { ReplaceableRouteContainerComponent } from './components/replaceable-route-container.component';
import { RouterOutletComponent } from './components/router-outlet.component'; import { RouterOutletComponent } from './components/router-outlet.component';
import { AutofocusDirective } from './directives/autofocus.directive'; import { AutofocusDirective } from './directives/autofocus.directive';
import { InputEventDebounceDirective } from './directives/debounce.directive'; import { InputEventDebounceDirective } from './directives/debounce.directive';
import { EllipsisDirective } from './directives/ellipsis.directive'; import { EllipsisDirective } from './directives/ellipsis.directive';
import { ForDirective } from './directives/for.directive'; import { ForDirective } from './directives/for.directive';
import { FormSubmitDirective } from './directives/form-submit.directive'; import { FormSubmitDirective } from './directives/form-submit.directive';
import { InitDirective } from './directives/init.directive';
import { PermissionDirective } from './directives/permission.directive'; import { PermissionDirective } from './directives/permission.directive';
import { ReplaceableTemplateDirective } from './directives/replaceable-template.directive';
import { StopPropagationDirective } from './directives/stop-propagation.directive'; import { StopPropagationDirective } from './directives/stop-propagation.directive';
import { VisibilityDirective } from './directives/visibility.directive'; import { VisibilityDirective } from './directives/visibility.directive';
import { ApiInterceptor } from './interceptors/api.interceptor'; import { ApiInterceptor } from './interceptors/api.interceptor';
@ -26,13 +29,11 @@ import { ConfigPlugin, NGXS_CONFIG_PLUGIN_OPTIONS } from './plugins/config.plugi
import { LocaleProvider } from './providers/locale.provider'; import { LocaleProvider } from './providers/locale.provider';
import { ConfigState } from './states/config.state'; import { ConfigState } from './states/config.state';
import { ProfileState } from './states/profile.state'; import { ProfileState } from './states/profile.state';
import { ReplaceableComponentsState } from './states/replaceable-components.state';
import { SessionState } from './states/session.state'; import { SessionState } from './states/session.state';
import { CORE_OPTIONS } from './tokens/options.token';
import { getInitialData, localeInitializer } from './utils/initial-utils'; import { getInitialData, localeInitializer } from './utils/initial-utils';
import './utils/date-extensions'; import './utils/date-extensions';
import { ReplaceableRouteContainerComponent } from './components/replaceable-route-container.component';
import { ReplaceableComponentsState } from './states/replaceable-components.state';
import { InitDirective } from './directives/init.directive';
import { ReplaceableTemplateDirective } from './directives/replaceable-template.directive';
export function storageFactory(): OAuthStorage { export function storageFactory(): OAuthStorage {
return localStorage; return localStorage;
@ -111,6 +112,10 @@ export class CoreModule {
}, },
{ {
provide: NGXS_CONFIG_PLUGIN_OPTIONS, provide: NGXS_CONFIG_PLUGIN_OPTIONS,
useValue: { environment: options.environment },
},
{
provide: CORE_OPTIONS,
useValue: options, useValue: options,
}, },
{ {

10
npm/ng-packs/packages/core/src/lib/utils/initial-utils.ts

@ -1,16 +1,20 @@
import { registerLocaleData } from '@angular/common'; import { registerLocaleData } from '@angular/common';
import { Injector } from '@angular/core'; import { Injector } from '@angular/core';
import { Store } from '@ngxs/store'; import { Store } from '@ngxs/store';
import { OAuthService } from 'angular-oauth2-oidc';
import { tap } from 'rxjs/operators';
import { GetAppConfiguration } from '../actions/config.actions'; import { GetAppConfiguration } from '../actions/config.actions';
import differentLocales from '../constants/different-locales'; import differentLocales from '../constants/different-locales';
import { ApplicationConfiguration } from '../models/application-configuration'; import { ABP } from '../models/common';
import { tap } from 'rxjs/operators';
import { ConfigState } from '../states/config.state'; import { ConfigState } from '../states/config.state';
import { OAuthService } from 'angular-oauth2-oidc'; import { CORE_OPTIONS } from '../tokens/options.token';
export function getInitialData(injector: Injector) { export function getInitialData(injector: Injector) {
const fn = () => { const fn = () => {
const store: Store = injector.get(Store); const store: Store = injector.get(Store);
const { skipGetAppConfiguration } = injector.get(CORE_OPTIONS) as ABP.Root;
if (skipGetAppConfiguration) return;
return store return store
.dispatch(new GetAppConfiguration()) .dispatch(new GetAppConfiguration())

Loading…
Cancel
Save