| /*- |
| * ============LICENSE_START======================================================= |
| * SDC |
| * ================================================================================ |
| * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. |
| * ================================================================================ |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| * ============LICENSE_END========================================================= |
| */ |
| |
| import { BrowserModule } from '@angular/platform-browser'; |
| import { NgModule, APP_INITIALIZER } from '@angular/core'; |
| import { FormsModule } from '@angular/forms'; |
| import { forwardRef } from '@angular/core'; |
| import { AppComponent } from './app.component'; |
| import { UpgradeAdapter } from '@angular/upgrade'; |
| import { UpgradeModule } from '@angular/upgrade/static'; |
| import { SdcUiComponentsModule, SdcUiComponents } from "sdc-ui/lib/angular"; |
| import { PropertiesAssignmentModule } from './pages/properties-assignment/properties-assignment.module'; |
| import { |
| DataTypesServiceProvider, SharingServiceProvider, CookieServiceProvider, StateServiceFactory, |
| StateParamsServiceFactory, CacheServiceProvider, EventListenerServiceProvider, ScopeServiceFactory, |
| NotificationServiceProvider, ComponentFactoryProvider |
| } from "./utils/ng1-upgraded-provider"; |
| import { ConfigService } from "./services/config.service"; |
| import { HttpModule } from '@angular/http'; |
| import { HttpService } from './services/http.service'; |
| import { AuthenticationService } from './services/authentication.service'; |
| import { Cookie2Service } from "./services/cookie.service"; |
| import { ComponentServiceNg2 } from "./services/component-services/component.service"; |
| import { ComponentServiceFactoryNg2 } from "./services/component-services/component.service.factory"; |
| import { ServiceServiceNg2 } from "./services/component-services/service.service"; |
| import { ComponentInstanceServiceNg2 } from "./services/component-instance-services/component-instance.service"; |
| import { WorkflowServiceNg2 } from './services/workflow.service'; |
| import { ModalService } from "./services/modal.service"; |
| import { UiElementsModule } from "./components/ui/ui-elements.module"; |
| import { ConnectionWizardModule } from "./pages/connection-wizard/connection-wizard.module"; |
| import { InterfaceOperationModule } from "./pages/interface-operation/interface-operation.module"; |
| import { OperationCreatorModule } from "./pages/interface-operation/operation-creator/operation-creator.module"; |
| import { LayoutModule } from "./components/layout/layout.module"; |
| import { UserService } from "./services/user.service"; |
| import { DynamicComponentService } from "./services/dynamic-component.service"; |
| import { SdcConfig } from "./config/sdc-config.config"; |
| import { SdcMenu } from "./config/sdc-menu.config"; |
| import { TranslateModule } from "./shared/translator/translate.module"; |
| import { TranslationServiceConfig } from "./config/translation.service.config"; |
| import { MultilineEllipsisModule } from "./shared/multiline-ellipsis/multiline-ellipsis.module"; |
| import { ServicePathCreatorModule } from './pages/service-path-creator/service-path-creator.module'; |
| import { ServicePathsListModule } from './pages/service-paths-list/service-paths-list.module'; |
| import { ServicePathModule } from 'app/ng2/components/logic/service-path/service-path.module'; |
| import { ServicePathSelectorModule } from 'app/ng2/components/logic/service-path-selector/service-path-selector.module'; |
| import { CompositionPanelModule } from 'app/ng2/pages/composition/panel/panel.module'; |
| import { WindowRef } from "./services/window.service"; |
| import {ArchiveService} from "./services/archive.service"; |
| import { ModalsHandlerProvider } from './utils/ng1-upgraded-provider'; |
| import {PluginFrameModule} from "./components/ui/plugin/plugin-frame.module"; |
| import {PluginsService} from "./services/plugins.service"; |
| import {EventBusService} from "./services/event-bus.service"; |
| import {GroupsService} from "./services/groups.service"; |
| import {PoliciesService} from "./services/policies.service"; |
| import {AutomatedUpgradeService} from "./pages/automated-upgrade/automated-upgrade.service"; |
| import {AutomatedUpgradeModule} from "./pages/automated-upgrade/automated-upgrade.module"; |
| |
| export const upgradeAdapter = new UpgradeAdapter(forwardRef(() => AppModule)); |
| |
| export function configServiceFactory(config: ConfigService) { |
| return () => { |
| return Promise.all([ |
| config.loadValidationConfiguration(), |
| config.loadPluginsConfiguration() |
| ]); |
| } |
| } |
| |
| |
| @NgModule({ |
| declarations: [ |
| AppComponent |
| ], |
| imports: [ |
| BrowserModule, |
| UpgradeModule, |
| FormsModule, |
| HttpModule, |
| LayoutModule, |
| TranslateModule, |
| MultilineEllipsisModule, |
| UiElementsModule, |
| CompositionPanelModule, |
| SdcUiComponentsModule, |
| AutomatedUpgradeModule, |
| //We need to import them here since we use them in angular1 |
| ConnectionWizardModule, |
| PropertiesAssignmentModule, |
| PluginFrameModule, |
| InterfaceOperationModule, |
| OperationCreatorModule, |
| ServicePathCreatorModule, |
| ServicePathsListModule, |
| ServicePathModule, |
| ServicePathSelectorModule |
| ], |
| exports: [], |
| entryComponents: [ |
| // *** sdc-ui components to be used as downgraded: |
| // SdcUiComponents.ButtonComponent |
| ], |
| providers: [ |
| WindowRef, |
| DataTypesServiceProvider, |
| SharingServiceProvider, |
| ComponentFactoryProvider, |
| CookieServiceProvider, |
| StateServiceFactory, |
| StateParamsServiceFactory, |
| ScopeServiceFactory, |
| CacheServiceProvider, |
| EventListenerServiceProvider, |
| NotificationServiceProvider, |
| ModalsHandlerProvider, |
| AuthenticationService, |
| Cookie2Service, |
| ConfigService, |
| ComponentServiceNg2, |
| ComponentServiceFactoryNg2, |
| ModalService, |
| ServiceServiceNg2, |
| AutomatedUpgradeService, |
| WorkflowServiceNg2, |
| HttpService, |
| UserService, |
| PoliciesService, |
| GroupsService, |
| DynamicComponentService, |
| SdcConfig, |
| SdcMenu, |
| ComponentInstanceServiceNg2, |
| TranslationServiceConfig, |
| PluginsService, |
| ArchiveService, |
| EventBusService, |
| { |
| provide: APP_INITIALIZER, |
| useFactory: configServiceFactory, |
| deps: [ConfigService], |
| multi: true |
| }, |
| ], |
| bootstrap: [AppComponent] |
| }) |
| |
| |
| export class AppModule { |
| constructor(public upgrade: UpgradeModule, public eventBusService:EventBusService) { |
| |
| } |
| } |