2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * Modifications Copyright (C) 2019 Nokia. All rights reserved.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
22 import { BrowserModule } from '@angular/platform-browser';
23 import { NgModule, APP_INITIALIZER } from '@angular/core';
24 import { FormsModule } from '@angular/forms';
25 import { forwardRef } from '@angular/core';
26 import { AppComponent } from './app.component';
27 import { UpgradeAdapter } from '@angular/upgrade';
28 import { UpgradeModule } from '@angular/upgrade/static';
29 import { SdcUiComponentsModule, SdcUiComponents } from "sdc-ui/lib/angular";
30 import { PropertiesAssignmentModule } from './pages/properties-assignment/properties-assignment.module';
31 import { PropertyCreatorModule } from './pages/properties-assignment/property-creator/property-creator.module';
33 DataTypesServiceProvider, SharingServiceProvider, CookieServiceProvider, StateServiceFactory,
34 StateParamsServiceFactory, CacheServiceProvider, EventListenerServiceProvider, ScopeServiceFactory,
35 NotificationServiceProvider, ComponentFactoryProvider
36 } from "./utils/ng1-upgraded-provider";
37 import { ConfigService } from "./services/config.service";
38 import { HttpModule } from '@angular/http';
39 import { HttpService } from './services/http.service';
40 import { AuthenticationService } from './services/authentication.service';
41 import { Cookie2Service } from "./services/cookie.service";
42 import { ComponentServiceNg2 } from "./services/component-services/component.service";
43 import { ComponentServiceFactoryNg2 } from "./services/component-services/component.service.factory";
44 import { ServiceServiceNg2 } from "./services/component-services/service.service";
45 import { ComponentInstanceServiceNg2 } from "./services/component-instance-services/component-instance.service";
46 import { WorkflowServiceNg2 } from './services/workflow.service';
47 import {ToscaTypesServiceNg2} from "./services/tosca-types.service";
48 import { ModalService } from "./services/modal.service";
49 import { UiElementsModule } from "./components/ui/ui-elements.module";
50 import { ConnectionWizardModule } from "./pages/connection-wizard/connection-wizard.module";
51 import { InterfaceOperationModule } from "./pages/interface-operation/interface-operation.module";
52 import { OperationCreatorModule } from "./pages/interface-operation/operation-creator/operation-creator.module";
53 import { LayoutModule } from "./components/layout/layout.module";
54 import { UserService } from "./services/user.service";
55 import { DynamicComponentService } from "./services/dynamic-component.service";
56 import { SdcConfig } from "./config/sdc-config.config";
57 import { SdcMenu } from "./config/sdc-menu.config";
58 import { TranslateModule } from "./shared/translator/translate.module";
59 import { TranslationServiceConfig } from "./config/translation.service.config";
60 import { MultilineEllipsisModule } from "./shared/multiline-ellipsis/multiline-ellipsis.module";
61 import { ServicePathCreatorModule } from './pages/service-path-creator/service-path-creator.module';
62 import { ServicePathsListModule } from './pages/service-paths-list/service-paths-list.module';
63 import { ServicePathModule } from 'app/ng2/components/logic/service-path/service-path.module';
64 import { ServicePathSelectorModule } from 'app/ng2/components/logic/service-path-selector/service-path-selector.module';
65 import { ServiceConsumptionModule } from 'app/ng2/components/logic/service-consumption/service-consumption.module';
66 import { ServiceConsumptionCreatorModule } from './pages/service-consumption-editor/service-consumption-editor.module';
67 import {ServiceDependenciesModule} from 'app/ng2/components/logic/service-dependencies/service-dependencies.module';
68 import {ServiceDependenciesEditorModule} from './pages/service-dependencies-editor/service-dependencies-editor.module';
69 import { CompositionPanelModule } from 'app/ng2/pages/composition/panel/panel.module';
70 import { WindowRef } from "./services/window.service";
71 import {ArchiveService} from "./services/archive.service";
72 import { ModalsHandlerProvider } from './utils/ng1-upgraded-provider';
73 import {PluginFrameModule} from "./components/ui/plugin/plugin-frame.module";
74 import {PluginsService} from "./services/plugins.service";
75 import {EventBusService} from "./services/event-bus.service";
76 import {GroupsService} from "./services/groups.service";
77 import {PoliciesService} from "./services/policies.service";
78 import {AutomatedUpgradeService} from "./pages/automated-upgrade/automated-upgrade.service";
79 import {AutomatedUpgradeModule} from "./pages/automated-upgrade/automated-upgrade.module";
80 import {RequirementsEditorModule} from "./pages/req-and-capabilities-editor/requirements-editor/requirements-editor.module"
81 import {CapabilitiesEditorModule} from "./pages/req-and-capabilities-editor/capabilities-editor/capabilities-editor.module"
82 import {GenericArtifactBrowserModule} from "./components/logic/generic-artifact-browser/generic-artifact-browser.module";
83 import {GabService} from "./services/gab.service";
84 import {DeclareListModule} from "./pages/properties-assignment/declare-list/declare-list.module"
86 export const upgradeAdapter = new UpgradeAdapter(forwardRef(() => AppModule));
88 export function configServiceFactory(config: ConfigService) {
91 config.loadValidationConfiguration(),
92 config.loadPluginsConfiguration()
109 MultilineEllipsisModule,
111 CompositionPanelModule,
112 SdcUiComponentsModule,
113 AutomatedUpgradeModule,
114 //We need to import them here since we use them in angular1
115 ConnectionWizardModule,
116 PropertiesAssignmentModule,
117 PropertyCreatorModule,
120 InterfaceOperationModule,
121 OperationCreatorModule,
122 ServicePathCreatorModule,
123 ServicePathsListModule,
125 ServicePathSelectorModule,
126 ServiceConsumptionModule,
127 ServiceConsumptionCreatorModule,
128 ServiceDependenciesModule,
129 ServiceDependenciesEditorModule,
130 RequirementsEditorModule,
131 CapabilitiesEditorModule,
132 GenericArtifactBrowserModule
136 // *** sdc-ui components to be used as downgraded:
137 SdcUiComponents.SvgIconComponent
141 DataTypesServiceProvider,
142 SharingServiceProvider,
143 ComponentFactoryProvider,
144 CookieServiceProvider,
146 StateParamsServiceFactory,
148 CacheServiceProvider,
149 EventListenerServiceProvider,
150 NotificationServiceProvider,
151 ModalsHandlerProvider,
152 AuthenticationService,
156 ComponentServiceFactoryNg2,
159 AutomatedUpgradeService,
161 ToscaTypesServiceNg2,
166 DynamicComponentService,
169 ComponentInstanceServiceNg2,
170 TranslationServiceConfig,
176 provide: APP_INITIALIZER,
177 useFactory: configServiceFactory,
178 deps: [ConfigService],
182 bootstrap: [AppComponent]
186 export class AppModule {
187 constructor(public upgrade: UpgradeModule, public eventBusService:EventBusService) {